luobang 2 年之前
父節點
當前提交
184e1c7c49

+ 1 - 1
build/utils.js

@@ -20,7 +20,7 @@ const devPathSrc = path.resolve(__dirname, '../../../src') // node_modules应用
 // let devModules = ['index', 'inward']
 let devModules = ['all']
 
-// let devModules = ['index', 'statisticalReport', 'WMS']
+// let devModules = ['index', 'statisticalReport']
 
 if (pathSrc.indexOf('node_modules') > -1) {
   devModules = require('../../../cors.js').devModules

+ 134 - 133
src/views/statisticalReport/components/salesLogisticsStatistics/saleSpelling.vue

@@ -1,153 +1,154 @@
 <template>
   <div>
     <div class="dateQuery">
-        <label class="el-form-item__label" style="width: auto;"
-            >订单日期:</label
-          >
-          <el-date-picker
-            v-model="startTime"
-            type="date"
-            placeholder="选择日期"
-            style="width:150px"
-          >
-          </el-date-picker>
-          <span>至</span>
-          <el-date-picker
-            v-model="endTime"
-            type="date"
-            placeholder="选择日期"
-            style="width:150px"
-          >
-          </el-date-picker>
-          <el-button type="primary" class="btn" @click="onclick">
-            <i class="el-icon-search"></i>
-          </el-button>
-           <el-button type="primary" class="btn" @click="exportToExcel('销售钢材拼装统计报表')">
-            <i class="el-icon-download"></i>导出
-          </el-button>
+      <label class="el-form-item__label" style="width: auto;">订单日期:</label>
+      <el-date-picker
+        v-model="startTime"
+        type="date"
+        placeholder="选择日期"
+        style="width:150px"
+      >
+      </el-date-picker>
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>
+      </el-button>
+      <el-button
+        type="primary"
+        class="btn"
+        @click="exportToExcel('销售钢材拼装统计报表')"
+      >
+        <i class="el-icon-download"></i>导出
+      </el-button>
     </div>
-    <div class="saleSpellingtable" id='table'>
-        <el-table
-        :data="saleSpellingData"
-        border="true"
+    <div class="saleSpellingtable" id="table">
+      <el-table :data="saleSpellingData" border>
+        <el-table-column
+          label="拼装数量"
+          prop="pinZhuang"
+          style="font-size:20px"
+          align="center"
+          size="medium"
         >
-            <el-table-column
-            label="拼装数量"
-            prop="pinZhuang"
-            style="font-size:20px"
-            align="center"
-            size="medium"
-            >
-            </el-table-column>
-            <el-table-column
-            label="重庆直销部"
-            prop="chongQinSpellingData"
-            align="center"
-            size="medium"
-            >
-            </el-table-column>
-            <el-table-column
-            label="成都直销部"
-            prop="chengDuSpellingData"
-            align="center"
-            size="medium"
-            >
-            </el-table-column>
-            <el-table-column
-            label="工程部"
-            prop="gongChengSpellingData"
-            align="center"
-            size="medium"
-            >
-            </el-table-column>
-            <el-table-column
-            label="川东"
-            prop="chaungDongSpellingData"
-            align="center"
-            size="medium"
-            >
-            </el-table-column>
-            <el-table-column
-            label="合计"
-            prop="AllSpellingData"
-            align="center"
-            size="medium"
-            ></el-table-column>
-        </el-table>
+        </el-table-column>
+        <el-table-column
+          label="重庆直销部"
+          prop="chongQinSpellingData"
+          align="center"
+          size="medium"
+        >
+        </el-table-column>
+        <el-table-column
+          label="成都直销部"
+          prop="chengDuSpellingData"
+          align="center"
+          size="medium"
+        >
+        </el-table-column>
+        <el-table-column
+          label="工程部"
+          prop="gongChengSpellingData"
+          align="center"
+          size="medium"
+        >
+        </el-table-column>
+        <el-table-column
+          label="川东"
+          prop="chaungDongSpellingData"
+          align="center"
+          size="medium"
+        >
+        </el-table-column>
+        <el-table-column
+          label="自提"
+          prop="zitiSpellingData"
+          align="center"
+          size="medium"
+        >
+        </el-table-column>
+        <el-table-column
+          label="合计"
+          prop="AllSpellingData"
+          align="center"
+          size="medium"
+        ></el-table-column>
+      </el-table>
     </div>
-  </div>    
+  </div>
 </template>
 
 <script>
-import FileSaver from "file-saver";
-export default{
-    data(){
-        return{
-            startTime:new Date,
-            endTime:new Date,
-            saleSpellingData:[],
-            date:null
-        }
+import FileSaver from 'file-saver'
+import { sjTime } from '@/utils/sharedJsFile'
+export default {
+  data() {
+    return {
+      startTime: new Date(),
+      endTime: new Date(),
+      saleSpellingData: [],
+      date: null
+    }
+  },
+  created() {
+    this.getSpellingData()
+  },
+  methods: {
+    exportToExcel(tableTitle = '表格标题') {
+      let tables = document.getElementById('table') //此处是拿表格document元素,也可以取父div的ref
+      let table_book = XLSX.utils.table_to_book(tables)
+      var table_write = XLSX.write(table_book, {
+        bookType: 'xlsx',
+        bookSST: true,
+        type: 'array'
+      })
+      try {
+        FileSaver.saveAs(
+          new Blob([table_write], { type: 'application/octet-stream' }),
+          tableTitle + '.xlsx'
+        )
+      } catch (e) {
+        if (typeof console !== 'undefined') console.log(e, table_write)
+      }
+      return table_write
+    },
+    async getSpellingData() {
+      const loading = this.$loading({
+        lock: true,
+        text: '正在获取数据',
+        spinner: 'el-icon-loading',
+        background: 'rgba(0, 0, 0, 0.7)'
+      })
+
+      let map = {
+        startTime: sjTime(this.startTime),
+        endTime: sjTime(this.endTime)
+      }
+      await this.axios
+        .post('/api/v1/tms/getSaleSteelSpellingReport', map)
+        .then(res => {
+          this.saleSpellingData = res.data.data
+        })
+      loading.close()
     },
-    created(){
-        this.getSpellingData();
+    onclick() {
+      this.getSpellingData()
     },
-    methods:{
-        exportToExcel(tableTitle="表格标题") {
-            let tables = document.getElementById("table");//此处是拿表格document元素,也可以取父div的ref
-            let table_book = XLSX.utils.table_to_book(tables);
-            var table_write = XLSX.write(table_book, {
-                bookType: "xlsx",
-                bookSST: true,
-                type: "array"
-            });
-            try {
-                FileSaver.saveAs(
-                    new Blob([table_write], { type: "application/octet-stream" }),
-                    tableTitle+".xlsx"
-                );
-            } catch (e) {
-                if (typeof console !== "undefined") console.log(e, table_write);
-            }
-            return table_write;
-        },
-        async getSpellingData(){
-          const loading = this.$loading({
-                lock: true,
-                text: '正在获取数据',
-                spinner: 'el-icon-loading',
-                background: 'rgba(0, 0, 0, 0.7)'
-              })
-            let start=this.dateChange(this.startTime)
-            let startDate=start.slice(0,10)+" 00:00:00"
-            let end=this.dateChange(this.endTime) 
-            let endDate=end.slice(0,10)+" 23:59:59"
-            let map={
-              startTime:startDate,
-              endTime:endDate
-            }
-            await this.axios.post('/api/v1/tms/getSaleSteelSpellingReport',map).then(res=>{
-                this.saleSpellingData=res.data.data
-            })
-            loading.close();
-        },
-        onclick(){
-          this.getSpellingData();
-        },
-        dateChange(date){
-          var dateee = new Date(date).toJSON();
-          return new Date(+new Date(dateee) + 8 * 3600 * 1000).toISOString().replace(/T/g, ' ').replace(/\.[\d]{3}Z/, '')
-        }
+    dateChange(date) {
+      var dateee = new Date(date).toJSON()
+      return new Date(+new Date(dateee) + 8 * 3600 * 1000)
+        .toISOString()
+        .replace(/T/g, ' ')
+        .replace(/\.[\d]{3}Z/, '')
     }
+  }
 }
 </script>
 
 <style scoped>
-.saleSpellingtable{
-    margin-top: 20px;
-    margin-left: 30px;
+.saleSpellingtable {
+  margin-top: 20px;
+  margin-left: 30px;
 }
-.dateQuery{
+.dateQuery {
   margin-top: 20px;
   margin-left: 30px;
 }

+ 93 - 17
src/views/statisticalReport/components/salesLogisticsStatistics/saleSteelReports.vue

@@ -70,7 +70,7 @@
             :picker-options="pickerOptions1"
           >
           </el-date-picker>
-          <el-button type="primary" class="btn" @click="onclick">
+          <el-button type="primary" class="btn" @click="onclick(filterMap)">
             <i class="el-icon-search"></i>
           </el-button>
         </el-form-item>
@@ -241,6 +241,26 @@
           v-if="!columnNoRoutList.includes('订单日期')"
         >
         </el-table-column>
+        <el-table-column
+          prop="insertUploadTime"
+          column-key="insertUploadTime"
+          key="insertUploadTime"
+          label="订单上传时间"
+          width="120px"
+          show-overflow-tooltip
+          v-if="!columnNoRoutList.includes('订单上传时间')"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="isContinue"
+          column-key="isContinue"
+          key="isContinue"
+          label="是否继续装"
+          align="center"
+          :filters="filterIsContinue"
+          v-if="!columnNoRoutList.includes('是否继续装')"
+        >
+        </el-table-column>
         <el-table-column
           prop="saleMakeDate"
           label="制单日期"
@@ -417,6 +437,17 @@
           v-if="!columnNoRoutList.includes('司机电话')"
         >
         </el-table-column>
+        <el-table-column
+          prop="spellNum"
+          column-key="spellNum"
+          key="spellNum"
+          label="拼数"
+          width="120px"
+          align="center"
+          :filters="filterSpellNum"
+          v-if="!columnNoRoutList.includes('拼数')"
+        >
+        </el-table-column>
         <el-table-column
           prop="queueStartTime"
           column-key="queueStartTime"
@@ -665,6 +696,7 @@
           v-if="!columnNoRoutList.includes('订单变更时间')"
         >
         </el-table-column>
+
         <el-table-column
           prop="saleOrderInertUpdateRemark"
           column-key="saleOrderInertUpdateRemark"
@@ -1941,7 +1973,10 @@ export default {
         '订单变更时间',
         '异地库接收标志',
         '销售订单变更记录',
-        '运输订单变更记录'
+        '运输订单变更记录',
+        '拼数',
+        '是否继续装',
+        '订单上传时间'
       ],
       //钢材多拼车辆线路ID
       //索引从1-10为1-10拼路线ID
@@ -2021,6 +2056,20 @@ export default {
         { text: '已完成', value: '已完成' },
         { text: '已关闭', value: '已关闭' }
       ],
+      filterIsContinue: [
+        { text: '是', value: '是' },
+        { text: '否', value: '否' }
+      ],
+      filterSpellNum: [
+        { text: '0', value: '0' },
+        { text: '1', value: '1' },
+        { text: '2', value: '2' },
+        { text: '3', value: '3' },
+        { text: '4', value: '4' },
+        { text: '5', value: '5' },
+        { text: '6', value: '6' },
+        { text: '7', value: '7' }
+      ],
       filteraddressPlace: [],
       filtermaterialSpe: [],
       filterSaleRemark: [],
@@ -2426,7 +2475,7 @@ export default {
               this.$createElement(
                 'el-select',
                 {
-                  ref: 'filterSelectRef',
+                  ref: `filterSelectRef`,
                   style: {
                     'margin-bottom': '10px',
                     'border-bottom': '1px solid #efefef',
@@ -2437,6 +2486,13 @@ export default {
                     placeholder: '请输入查询',
                     reserveKeyword: true,
                     filterable: true,
+                    filterMethod: e => {
+                      this.filterMethodChange(
+                        e,
+                        filterVal,
+                        renderColumnFilterList
+                      )
+                    },
                     multiple: true,
                     collapseTags: true,
                     value: this.filterMap[filterVal]
@@ -2461,7 +2517,7 @@ export default {
                       props: {
                         label: item.text,
                         value: item.text,
-                        key: index
+                        key: item.text
                       }
                     })
                   })
@@ -2500,19 +2556,18 @@ export default {
         ]
       )
     },
+    filterMethodChange(e, filterVal, renderColumnFilterList) {
+      console.log(
+        e,
+        'e',
+        filterVal,
+        'filterVal',
+        renderColumnFilterList,
+        'renderColumnFilterList'
+      )
+      this.filterMap[filterVal] = [e]
+    },
     ctrlColumnShow() {
-      // this.axios
-      //   .post('/api/v1/uc/getColumnShowHidden', {
-      //     userName: getCookie('loginName'),
-      //     orgCode: getCookie('orgCode'),
-      //     tableName: '销售钢材报表'
-      //   })
-      //   .then(res => {
-      //     console.log(res.data.columnShowData)
-      //     console.log(res.data.columnHiddenData, 'columnHiddenData')
-      //     this.columnAllData = res.data.columnAllData
-      //     this.columnHiddenData = res.data.columnHiddenData
-      //   })
       this.columnShowDialog = true
     },
     columnShowOperation(item) {
@@ -2558,7 +2613,9 @@ export default {
         saleAreaList: [],
         materialNameList: [],
         carrierList: [],
-        capacityList: []
+        capacityList: [],
+        isContinueList: [],
+        spellNumList: []
       }
       this.onclick()
     },
@@ -3577,6 +3634,22 @@ export default {
         )
         delete this.filterMap.truckRemarkList
       }
+      if (typeof obj.isContinue != 'undefined' && obj.isContinue.length > 0) {
+        this.headColumnList.push('isContinue')
+        this.filterMap.isContinueList = obj.isContinue
+      }
+      if (typeof obj.isContinue != 'undefined' && obj.isContinue.length == 0) {
+        this.headColumnList.splice(this.headColumnList.indexOf('isContinue'), 1)
+        delete this.filterMap.isContinueList
+      }
+      if (typeof obj.spellNum != 'undefined' && obj.spellNum.length > 0) {
+        this.headColumnList.push('spellNum')
+        this.filterMap.spellNumList = obj.spellNum
+      }
+      if (typeof obj.spellNum != 'undefined' && obj.spellNum.length == 0) {
+        this.headColumnList.splice(this.headColumnList.indexOf('spellNum'), 1)
+        delete this.filterMap.spellNumList
+      }
       // if (obj)
       this.onclick(this.filterMap)
     },
@@ -4955,6 +5028,9 @@ export default {
       if (!obj.orderStatusList || obj.orderStatusList === 0) {
         this.filterorderStatus = data[0].filterorderStatus
       }
+      if (!obj.areaNameList || obj.areaNameList === 0) {
+        this.filterAreaName = data[0].filterAreaName
+      }
     },
     //重新获取表格数据
     refresh() {

+ 31 - 20
src/views/statisticalReport/components/salesLogisticsStatistics/steelTransportReport.vue

@@ -232,15 +232,15 @@ export default {
   },
   watch: {
     startTime() {
-      ;(this.titleTXT = `${this.startTime.getFullYear()}年${this.startTime.getMonth() +
+      this.titleTXT = `${this.startTime.getFullYear()}年${this.startTime.getMonth() +
         1}月${this.startTime.getDate()}日08:00 - ${new Date(
         sjTime(this.startTime) + 86400000
       ).getFullYear()}年${new Date(
         sjTime(this.startTime) + 86400000
       ).getMonth() + 1}月${new Date(
         sjTime(this.startTime) + 86400000
-      ).getDate()}日08:00`),
-        this.steelTransportReport()
+      ).getDate()}日08:00`
+      this.steelTransportReport()
     }
     // tableData: {
     //   immediate: true,
@@ -261,23 +261,34 @@ export default {
   },
   mounted() {},
   methods: {
-    exportToExcel(tableTitle="表格标题") {
-        let tables = document.getElementById("tableRef");//此处是拿表格document元素,也可以取父div的ref
-        let table_book = XLSX.utils.table_to_book(tables);
-        var table_write = XLSX.write(table_book, {
-            bookType: "xlsx",
-            bookSST: true,
-            type: "array"
-        });
-        try {
-            FileSaver.saveAs(
-                new Blob([table_write], { type: "application/octet-stream" }),
-                tableTitle+".xlsx"
-            );
-        } catch (e) {
-            if (typeof console !== "undefined") console.log(e, table_write);
-        }
-        return table_write;
+    onclick() {
+      this.titleTXT = `${this.startTime.getFullYear()}年${this.startTime.getMonth() +
+        1}月${this.startTime.getDate()}日08:00 - ${new Date(
+        sjTime(this.startTime) + 86400000
+      ).getFullYear()}年${new Date(
+        sjTime(this.startTime) + 86400000
+      ).getMonth() + 1}月${new Date(
+        sjTime(this.startTime) + 86400000
+      ).getDate()}日08:00`
+      this.steelTransportReport()
+    },
+    exportToExcel(tableTitle = '表格标题') {
+      let tables = document.getElementById('tableRef') //此处是拿表格document元素,也可以取父div的ref
+      let table_book = XLSX.utils.table_to_book(tables)
+      var table_write = XLSX.write(table_book, {
+        bookType: 'xlsx',
+        bookSST: true,
+        type: 'array'
+      })
+      try {
+        FileSaver.saveAs(
+          new Blob([table_write], { type: 'application/octet-stream' }),
+          tableTitle + '.xlsx'
+        )
+      } catch (e) {
+        if (typeof console !== 'undefined') console.log(e, table_write)
+      }
+      return table_write
     },
 
     steelTransportReport() {

+ 196 - 224
src/views/statisticalReport/components/salesLogisticsStatistics/yawnReport.vue

@@ -1,16 +1,20 @@
 <template>
   <!-- 万州港装船作业报表 -->
-  <div  style="width:100%;">
+  <div style="width:100%;">
     <div style="height:100%;width:100%">
-      <div  style="display:flex;margin: 10px;">
+      <div style="display:flex;margin: 10px;">
         <!-- <el-input
           placeholder="请输入"
           v-model="map.input"
           style="margin: 10px; width:10%"
           clearable
         ></el-input> -->
-       <el-date-picker style="margin: 10px;" v-model="map.startTime" type="datetime" placeholder="起始日期"></el-date-picker>
-      <el-date-picker style="margin: 10px;" v-model="map.endTime" type="datetime" placeholder="结束日期"></el-date-picker>
+        <el-date-picker
+          style="margin: 10px;"
+          v-model="map.startTime"
+          type="date"
+          placeholder="起始日期"
+        ></el-date-picker>
         <el-button
           type="primary"
           class="btn"
@@ -30,258 +34,226 @@
       </div>
 
       <!-- 装车出库详情 -->
-      <div ref="yawnReport" style="width:100%;height:500px;float:left;margin-left:5px">
-        <div  style="height:500px;width:100%;overflow:scroll;">
-             <el-table
-          ref="yawnReportData"
-          highlight-current-row
-          border
-          fit
-          :data="yawnReportData"
-          :span-method="objectSpanMethod"
-          :row-style="{height:'40px'}"
-          style="width: 100%;font-size: 18px">
-          <el-table-column
-          align="center"
-            prop="target"
-            label="方向">
-          </el-table-column>
-          <el-table-column
-          align="center"
-            prop="carrierName"
-            label="承运商">
-          </el-table-column>
-          <el-table-column
-          align="center"
-            prop="planNum"
-            label="下达计划">
-          </el-table-column>
-          <el-table-column
-          align="center"
-            prop="quxiaoNum"
-            label="取消计划">
-          </el-table-column>
-          <el-table-column
-          align="center"
-            prop="orderNum"
-            label="已派计划">
-          </el-table-column>
-          <el-table-column
-          align="center"
-            prop="notSendNum"
-            label="未派车数">
-          </el-table-column>
-          <el-table-column
-          align="center"
-            prop="notEnNum"
-            label="未进厂数">
-          </el-table-column>
-          <el-table-column
-          align="center"
-            prop="EnNum"
-            label="进厂待装数">
-          </el-table-column>
-           <el-table-column
-          align="center"
-            prop="percent"
-            label="派车率">
-          </el-table-column>
-          <el-table-column
-          align="center"
-            prop="numGong"
-            label="工厂">
-          </el-table-column>
-          <el-table-column
-          align="center"
-            prop="numCang"
-            label="库房">
-          </el-table-column>
-        </el-table>
-        </div >
+      <div
+        ref="yawnReport"
+        style="width:100%;height:500px;float:left;margin-left:5px"
+      >
+        <div>
+          <el-table
+            ref="yawnReportData"
+            highlight-current-row
+            border
+            fit
+            :data="yawnReportData"
+            :span-method="objectSpanMethod"
+            :row-style="{ height: '40px' }"
+            style="width: 100%;font-size: 18px"
+          >
+            <el-table-column align="center" prop="target" label="方向">
+            </el-table-column>
+            <el-table-column align="center" prop="carrierName" label="承运商">
+            </el-table-column>
+            <el-table-column align="center" prop="planNum" label="下达计划">
+            </el-table-column>
+            <el-table-column align="center" prop="quxiaoNum" label="取消计划">
+            </el-table-column>
+            <el-table-column align="center" prop="orderNum" label="已派计划">
+            </el-table-column>
+            <el-table-column align="center" prop="notSendNum" label="未派车数">
+            </el-table-column>
+            <el-table-column align="center" prop="notEnNum" label="未进厂数">
+            </el-table-column>
+            <el-table-column align="center" prop="EnNum" label="进厂待装数">
+            </el-table-column>
+            <el-table-column align="center" prop="percent" label="派车率">
+            </el-table-column>
+            <el-table-column align="center" prop="numGong" label="工厂">
+            </el-table-column>
+            <el-table-column align="center" prop="numCang" label="库房">
+            </el-table-column>
+          </el-table>
+        </div>
       </div>
     </div>
   </div>
 </template>
 
 <script>
-import PageTitle from "@/components/Page/Title";
-import { sjTime } from "@/utils/sharedJsFile";
-import FileSaver from "file-saver";
-import BigNumber from "bignumber.js";
+import PageTitle from '@/components/Page/Title'
+import { sjTime } from '@/utils/sharedJsFile'
+import FileSaver from 'file-saver'
+import BigNumber from 'bignumber.js'
 export default {
   components: { PageTitle },
   data() {
     return {
-        count:0,
-        yawnReportData:[],
-        map:{
-            input:"",
-            startTime:null,
-            endTime:null
-        },
-        spanArr: [], // 用于存放需要合并的行的个数
-        spanIndex: 0, // 记录spanArr数组的下标
-      
-    };
+      count: 0,
+      yawnReportData: [],
+      map: {
+        input: '',
+        startTime: null,
+        endTime: null
+      },
+      spanArr: [], // 用于存放需要合并的行的个数
+      spanIndex: 0 // 记录spanArr数组的下标
+    }
   },
-  created(){
-    let endTime=new Date();
-    endTime.setHours(8);
-    endTime.setMinutes(0);
-    endTime.setSeconds(0);
-    let startTime=new Date(endTime.getTime()-1000*60*60*24);
-    this.map.startTime=startTime;
-    this.map.endTime=endTime;
+  created() {
+    let endTime = new Date()
+    endTime.setHours(8)
+    endTime.setMinutes(0)
+    endTime.setSeconds(0)
+    let startTime = new Date(endTime.getTime() - 1000 * 60 * 60 * 24)
+    this.map.startTime = startTime
+    this.map.endTime = endTime
   },
-  mounted(){
-    this.search();
+  mounted() {
+    this.search()
   },
   methods: {
     //查询装车数据
-    search(){
+    search() {
       //时间校验
-      if(this.map.startTime && this.map.endTime){
-        if(this.map.startTime>=this.map.endTime){
-            this.$message({
-                message:"结束日期必须大于起始日期!",
-                type:"warning",
-                duration:2000
-            });
-            return;
+      if (this.map.startTime && this.map.endTime) {
+        if (this.map.startTime >= this.map.endTime) {
+          this.$message({
+            message: '结束日期必须大于起始日期!',
+            type: 'warning',
+            duration: 2000
+          })
+          return
         }
-        this.map.startTime=sjTime(this.map.startTime);
-        this.map.endTime=sjTime(this.map.endTime);
-      }else{
+        this.map.startTime = sjTime(this.map.startTime)
+        this.map.endTime = sjTime(this.map.endTime)
+      } else {
         this.$message({
-            message:"起止日期错误!",
-            type:"warning",
-            duration:2000
-        });
-        return;
+          message: '起止日期错误!',
+          type: 'warning',
+          duration: 2000
+        })
+        return
       }
-      this.axios.post('/api/v1/tms/yawnReport',this.map).then((res)=>{
-        if(res.data.code == "200"){
-          let countRow={
-            EnNum:0,
-            carrierName:'',
-            no:-1,
-            notEnNum:0,
-            notSendNum:0,
-            numCang:0,
-            numGong:0,
-            orderNum:0,
-            percent:'',
-            planNum:0,
-            quxiaoNum:0,
-            target:"合计"
+      this.axios.post('/api/v1/tms/yawnReport', this.map).then(res => {
+        if (res.data.code == '200') {
+          let countRow = {
+            EnNum: 0,
+            carrierName: '',
+            no: -1,
+            notEnNum: 0,
+            notSendNum: 0,
+            numCang: 0,
+            numGong: 0,
+            orderNum: 0,
+            percent: '',
+            planNum: 0,
+            quxiaoNum: 0,
+            target: '合计'
           }
-          res.data.data.forEach((item)=>{
-            countRow.EnNum+=item.EnNum;
-            countRow.notEnNum+=item.notEnNum;
-            countRow.notSendNum+=item.notSendNum;
-            countRow.numCang+=item.numCang;
-            countRow.numGong+=item.numGong;
-            countRow.orderNum+=item.orderNum;
-            countRow.planNum+=item.planNum;
-            countRow.quxiaoNum+=item.quxiaoNum;
-          });
-          if(countRow.planNum){
-            countRow.percent=(countRow.orderNum/countRow.planNum*100).toFixed(4)+"%";
-          }else{
-            countRow.percent='NAL'
+          res.data.data.forEach(item => {
+            countRow.EnNum += item.EnNum
+            countRow.notEnNum += item.notEnNum
+            countRow.notSendNum += item.notSendNum
+            countRow.numCang += item.numCang
+            countRow.numGong += item.numGong
+            countRow.orderNum += item.orderNum
+            countRow.planNum += item.planNum
+            countRow.quxiaoNum += item.quxiaoNum
+          })
+          if (countRow.planNum) {
+            countRow.percent =
+              ((countRow.orderNum / countRow.planNum) * 100).toFixed(4) + '%'
+          } else {
+            countRow.percent = 'NAL'
           }
-          res.data.data.push(countRow);
-          this.getSpanArr(res.data.data);
-          this.yawnReportData=res.data.data;
-        }else {
+          res.data.data.push(countRow)
+          this.getSpanArr(res.data.data)
+          this.yawnReportData = res.data.data
+        } else {
           this.$message({
-              type: "error", 
-              message: res.data.data,
-          });
+            type: 'error',
+            message: res.data.data
+          })
         }
       })
     },
     //处理数据,得到合并数组
     getSpanArr(data) {
-        this.spanArr=[];
-        for (let i = 0; i < data.length; i++) {
-            if (i == 0) {
-                this.spanArr.push(1);
-                this.spanIndex = 0;
-            } else {
-                // 判断当前行与前一行内容是否相同
-                if (data[i].target == data[i - 1].target) {
-                    this.spanArr[this.spanIndex] += 1; // 相同的话,当前下标所代表的值加一,例如:第一列的前三行可合并
-                    this.spanArr.push(0);// 记录完毕后,再往数组里添加一个元素0,作为下一次合并的初始值
-                } else {
-                    this.spanArr.push(1); // 否则,依旧是一行
-                    this.spanIndex = i;
-                }
-            }
+      this.spanArr = []
+      for (let i = 0; i < data.length; i++) {
+        if (i == 0) {
+          this.spanArr.push(1)
+          this.spanIndex = 0
+        } else {
+          // 判断当前行与前一行内容是否相同
+          if (data[i].target == data[i - 1].target) {
+            this.spanArr[this.spanIndex] += 1 // 相同的话,当前下标所代表的值加一,例如:第一列的前三行可合并
+            this.spanArr.push(0) // 记录完毕后,再往数组里添加一个元素0,作为下一次合并的初始值
+          } else {
+            this.spanArr.push(1) // 否则,依旧是一行
+            this.spanIndex = i
+          }
         }
+      }
     },
-     //合并
+    //合并
     objectSpanMethod({ row, column, rowIndex, columnIndex }) {
-        if (columnIndex === 0) {
-            const _row = this.spanArr[rowIndex]; // 行数
-            const _col = _row > 0 ? 1 : 0; // 列数
-            return {
-                rowspan: _row,
-                colspan: _col
-            };
+      if (columnIndex === 0) {
+        const _row = this.spanArr[rowIndex] // 行数
+        const _col = _row > 0 ? 1 : 0 // 列数
+        return {
+          rowspan: _row,
+          colspan: _col
         }
+      }
     },
     exportToExcel(tableTitle) {
-        let tables = this.$refs.yawnReport;
-        let table_book = XLSX.utils.table_to_book(tables);
-        var table_write = XLSX.write(table_book, {
-            bookType: "xlsx",
-            bookSST: true,
-            type: "array"
-        });
-        try {
-            FileSaver.saveAs(
-                new Blob([table_write], { type: "application/octet-stream" }),
-                tableTitle
-            );
-        } catch (e) {
-            if (typeof console !== "undefined") console.log(e, table_write);
-        }
-        return table_write;
-    },
-     getSummaries(param) {
-        console.log("param",param);
-        const { columns, data } = param;
-        const sums = [];
-        columns.forEach((column, index) => {
-          if (index === 0) {
-            sums[index] = '合计';
-            return;
-          }
-          if (index === 1 ) {
-            sums[index] = '';
-            return;
-          }
-          const values = data.map(item => Number(item[column.property]));
-          if (!values.every(value => isNaN(value))) {
-            sums[index] = values.reduce((prev, curr) => {
-              const value = Number(curr);
-              if (!isNaN(value)) {
-                return new BigNumber(prev).plus(curr).toNumber();
-              } else {
-                return prev;
-              }
-            }, 0);
-          } else {
-            sums[index] = '';
-          }
-        });
-        return sums;
+      let tables = this.$refs.yawnReport
+      let table_book = XLSX.utils.table_to_book(tables)
+      var table_write = XLSX.write(table_book, {
+        bookType: 'xlsx',
+        bookSST: true,
+        type: 'array'
+      })
+      try {
+        FileSaver.saveAs(
+          new Blob([table_write], { type: 'application/octet-stream' }),
+          tableTitle
+        )
+      } catch (e) {
+        if (typeof console !== 'undefined') console.log(e, table_write)
+      }
+      return table_write
     },
-  },
-};
+    getSummaries(param) {
+      console.log('param', param)
+      const { columns, data } = param
+      const sums = []
+      columns.forEach((column, index) => {
+        if (index === 0) {
+          sums[index] = '合计'
+          return
+        }
+        if (index === 1) {
+          sums[index] = ''
+          return
+        }
+        const values = data.map(item => Number(item[column.property]))
+        if (!values.every(value => isNaN(value))) {
+          sums[index] = values.reduce((prev, curr) => {
+            const value = Number(curr)
+            if (!isNaN(value)) {
+              return new BigNumber(prev).plus(curr).toNumber()
+            } else {
+              return prev
+            }
+          }, 0)
+        } else {
+          sums[index] = ''
+        }
+      })
+      return sums
+    }
+  }
+}
 </script>
-<style lang='scss'>
-
-</style>
-
+<style lang="scss"></style>