yangan
2024-07-02 a8cf1ec3eb69af71833a59c7b0f8adf5c4f5ad48
pages/customer-page/customer-my/faYunstatistics/faYunstatistics.vue
@@ -30,9 +30,7 @@
               </view>
            </view>
            <view class="filter-condition">
               <view class="f-button">
                  <u-button type="primary" :size="'mini'"  v-if="roleType == 1 || roleType == 2"  @click="download" text="导出详情"></u-button>
               </view>
         
            </view>
            <view class="date-information">
@@ -275,6 +273,9 @@
                     :plain="true"
                     shape="circle"
                     @click="resetCondition"></u-button></view>
                     <view class="f-button">
                  <u-button type="primary" :size="'mini'" shape="circle"    @click="download" text="导出详情"></u-button>
               </view>
               <view class="confirm-button"><u-button type="primary"
                     text="确定"
                     :plain="true"
@@ -305,6 +306,7 @@
            forwarderList: [],
            fleetList: [],
            filedList: [],
            btndisbled:false,
            page:{
               size:5,
               current:1,
@@ -333,6 +335,17 @@
            // 超过两行自动隐藏
            coalShow: 3,
            typeShow: 3,
            filterParams:{
               coalName:'',//煤种
               xsUserIdTwo:'',//货代
               fleetId:'', // 车队
               deptId:'',//单位
               customerId:'' ,// 客户
               carNo:'',//车牌
               startTime:'',//起始时间
               endTime:'',//结束时间
            },
            customerShow: 3,
            forwarderShow: 3,
            fleetShow: 3,
@@ -526,7 +539,7 @@
               customerName: this.customerList.filter(v => v.active == true).map(item => item.condition),
               xsUser2Name: this.forwarderList.filter(v => v.active == true).map(item => item.condition),
               fleetName: this.fleetList.filter(v => v.active == true).map(item => item.condition),
               filedName: this.filedList.filter(v => v.active == true).map(item => item.condition),
               deptName: this.filedList.filter(v => v.active == true).map(item => item.condition),
               carNo: this.carNoList.filter(v => v.active == true).map(item => item.condition)
            };
@@ -536,7 +549,7 @@
               customerName: validateFn('customerName'),
               xsUser2Name: validateFn('xsUser2Name'),
               fleetName: validateFn('fleetName'),
               filedName: validateFn('filedName'),
               deptName: validateFn('deptName'),
               carNo: validateFn('carNo')
            };
            this.filterList = this.taskList.map(val => {
@@ -727,17 +740,40 @@
            this.conditinonShow = false;
         },
         download(){
            wx.showLoading({
            let conditionMapping = {
               coalName: this.coalList.filter(v => v.active == true).map(item => item.condition).join(','), //煤种
               customerId: this.customerList.filter(v => v.active == true).map(item => item.conditionId).join(','), //  客户
               xsUserIdTwo: this.forwarderList.filter(v => v.active == true).map(item => item.conditionId).join(','), //货代
               fleetId: this.fleetList.filter(v => v.active == true).map(item => item.conditionId).join(','),  //车队
               deptId: this.filedList.filter(v => v.active == true).map(item => item.conditionId).join(','), //矿场
               carNo: this.carNoList.filter(v => v.active == true).map(item => item.condition).join(','), //车牌
               startTime:this.first + ' ' + '00:00:00',
               endTime:this.last + ' ' + '23:59:59',
            };
            //如果请求参数没值,则去除
            Object.keys(conditionMapping).forEach(item=>{
               if(!conditionMapping[item]){
                  delete conditionMapping[item]
               }
            })
            uni.showLoading({
               title: '加载中',
               mask:true,
               });
               this.$reqGet('downloadExcel',{startTime:this.first + ' ' + '00:00:00',endTime:this.last + ' ' + '23:59:59'}).then(res=>{
               this.$reqGet('downloadExcel',conditionMapping).then(res=>{
                  if(res.data){
                     const hostUrl = res.data.excelAddress.split("\\")[res.data.excelAddress.split("\\").length - 1]
                     const hostUrl = res.data.excelAddress.split("/")[res.data.excelAddress.split("/").length - 1]
                     // const hostUrl = res.data.excelAddress;
                     console.log(res.data,hostUrl,'res.data');
                     if(hostUrl){
                        wx.downloadFile({
                        url: `${BaseUrl}/${hostUrl}`,
                        filePath:wx.env.USER_DATA_PATH+'/test.xlsx',
                        url: `${BaseUrl}/admin/sys-file/local/${hostUrl}`,
                        filePath:wx.env.USER_DATA_PATH+`/${hostUrl}`,
                        header: {
                           Authorization: 'Bearer' + ' ' + uni.getStorageSync('token'),
                           CLIENT_TOC: 'Y'
                        },
                        success(res){
                           console.log(res)
                           let data = res.filePath;
@@ -746,12 +782,24 @@
                           fileType: 'xlsx',
                           showMenu: true  //表示右上角是否有转发按钮
                           })
                           uni.hideLoading();
                        }
               })
                     }
                     uni.hideLoading();
                  
                  }else{
                     uni.hideLoading();
                     uni.showToast({
                        icon: 'none',
                        title: '所选条件暂无数据'
                     })
                  }
               
               }).catch((err) => {
                  uni.hideLoading();
               })
         
         }
@@ -795,6 +843,7 @@
               this.first = newV.slice(0, 10);
               this.last = newV.slice(11);
               this.getTmTaskCoalData();
               this.getShipping();
            }
         }
      }
@@ -830,10 +879,11 @@
   }
   .utils-button {
      width: 94%;
      width: 100%;
      height: vww(30);
      margin: vww(50) auto;
      @include flex;
      justify-content: space-around;
      .reset-button {
         /deep/ .u-button {
@@ -851,7 +901,7 @@
      }
      /deep/ .u-button {
         width: 279rpx;
         width: 220rpx;
         height: 60rpx;
         font-size: 28rpx;
      }
@@ -973,11 +1023,6 @@
               width: auto !important;
               height: 30rpx!important;
               font-size: 25rpx!important;
               position: absolute;
               right: 35rpx;
               background: #3c9cff;;
               color: #fff;
               text-align: center;
            
            }