achao 3 gadi atpakaļ
vecāks
revīzija
dab0cccb23

+ 2 - 2
unimall-admin/config/dep.env.js

@@ -1,6 +1,6 @@
 module.exports = {
 	NODE_ENV: '"production"',
   ENV_CONFIG: '"dep"',
-  HOST: '"http://localhost:8080"',
-  BASE_API: '"http://localhost:8080/m.api"'
+  HOST: '"http://192.168.1.113:8080"',
+  BASE_API: '"http://192.168.1.113:8080/m.api"'
 }

+ 2 - 2
unimall-admin/config/dev.env.js

@@ -2,8 +2,8 @@ module.exports = {
 	NODE_ENV: '"development"',
   ENV_CONFIG: '"dev"',
 
-  HOST: '"http://localhost:8080"',
-  BASE_API: '"http://localhost:8080/m.api"'
+  HOST: '"http://192.168.1.113:8080"',
+  BASE_API: '"http://192.168.1.113:8080/m.api"'
   // HOST: '"http://192.168.1.115:8080"',
   // BASE_API: '"http://192.168.1.115:8080/m.api"'
   // HOST: '"http://192.168.1.113:8080"',

+ 593 - 542
unimall-admin/src/views/collectionPayment/collectionPayment.vue

@@ -1,148 +1,213 @@
 <template>
-    <div class="app-container">
-        <!-- 查询和其他操作 -->
-        <div class="filter-container">
-            <el-input v-model="listQuery.type.receivingWithdrawingPeople" clearable class="filter-item" size="small"
-                style="width: 200px;" placeholder="请输入收款人姓名" />
-            <!-- <el-input v-model="listQuery.type.receivingWithdrawingRegion" clearable class="filter-item" size="small"
+  <div class="app-container">
+    <!-- 查询和其他操作 -->
+    <div class="filter-container">
+      <el-input
+        v-model="listQuery.type.receivingWithdrawingPeople"
+        clearable
+        class="filter-item"
+        size="small"
+        style="width: 200px;"
+        placeholder="请输入收款人姓名" />
+      <!-- <el-input v-model="listQuery.type.receivingWithdrawingRegion" clearable class="filter-item" size="small"
                 style="width: 200px;" placeholder="请输入收款地" /> -->
 
-            <!-- <el-input v-model="listQuery.receiptPaymentDate" clearable class="filter-item" size="small"
+      <!-- <el-input v-model="listQuery.receiptPaymentDate" clearable class="filter-item" size="small"
                 style="width: 200px;" placeholder="请输入收款日期" /> -->
-            <el-select v-model="listQuery.type.receivingWithdrawingRegion" placeholder="请选择收款地" style="margin:0 20px;"
-                size="small">
-                <el-option :label="item.country" :value="item.country" v-for="(item, index) in placeList" :key="index">
-                </el-option>
-            </el-select>
-            <el-date-picker style="margin-right:20px" size="small" v-model="selectDate" type="daterange"
-                range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期">
-            </el-date-picker>
+      <el-select
+        v-model="listQuery.type.receivingWithdrawingRegion"
+        placeholder="请选择收款地"
+        style="margin:0 20px;"
+        size="small">
+        <el-option v-for="(item, index) in placeList" :label="item.country" :value="item.country" :key="index"/>
+      </el-select>
+      <el-date-picker
+        v-model="selectDate"
+        style="margin-right:20px"
+        size="small"
+        type="daterange"
+        range-separator="至"
+        start-placeholder="开始日期"
+        end-placeholder="结束日期"/>
 
-            <el-button v-permission="['collectionPayment:collectionpayment:list']" class="filter-item" type="primary"
-                size="mini" icon="el-icon-search" @click="handleFilter">查找</el-button>
-            <el-button v-permission="['collectionPayment:collectionpayment:create']" class="filter-item" type="primary"
-                size="mini" icon="el-icon-edit" @click="handleCreate">添加</el-button>
-            <el-button v-permission="['collectionPayment:collectionpayment:create']" class="filter-item" type="primary"
-                size="mini" icon="el-icon-edit" @click="exportlist">导出</el-button>
+      <el-button
+        v-permission="['collectionPayment:collectionpayment:list']"
+        class="filter-item"
+        type="primary"
+        size="mini"
+        icon="el-icon-search"
+        @click="handleFilter">查找</el-button>
+      <el-button
+        v-permission="['collectionPayment:collectionpayment:create']"
+        class="filter-item"
+        type="primary"
+        size="mini"
+        icon="el-icon-edit"
+        @click="handleCreate">添加</el-button>
+      <el-button
+        v-permission="['collectionPayment:collectionpayment:create']"
+        class="filter-item"
+        type="primary"
+        size="mini"
+        icon="el-icon-edit"
+        @click="exportlist">导出</el-button>
 
-            <el-upload style="margin-left: 8px;margin-bottom:0" class="filter-item" action="" :on-change="importClick"
-                :show-file-list="false"
-                accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
-                :auto-upload="false">
-                <el-button v-permission="['collectionPayment:collectionpayment:create']" class="filter-item"
-                    type="primary" size="mini" icon="el-icon-edit">导入</el-button>
-            </el-upload>
+      <el-upload
+        :on-change="importClick"
+        :show-file-list="false"
+        :auto-upload="false"
+        style="margin-left: 8px;margin-bottom:0"
+        class="filter-item"
+        action=""
+        accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel">
+        <el-button
+          v-permission="['collectionPayment:collectionpayment:create']"
+          class="filter-item"
+          type="primary"
+          size="mini"
+          icon="el-icon-edit">导入</el-button>
+      </el-upload>
 
-        </div>
+    </div>
 
-        <!-- 查询结果 -->
-        <el-table v-loading="listLoading" :data="list" size="small" element-loading-text="正在查询中。。。" border fit
-            highlight-current-row show-summary :summary-method="getSummaries" @selection-change="handleSelectionChange">
-            <el-table-column :selectable="selectInit" type="selection"></el-table-column>
-            <el-table-column type="index" label="序号">
-                <template scope="scope">
-                    <span v-if="scope.$index < 9">0{{ scope.$index + 1 }}</span>
-                    <span v-else>{{ scope.$index + 1 }}</span>
-                </template>
-            </el-table-column>
+    <!-- 查询结果 -->
+    <el-table
+      v-loading="listLoading"
+      :data="list"
+      :summary-method="getSummaries"
+      size="small"
+      element-loading-text="正在查询中。。。"
+      border
+      fit
+      highlight-current-row
+      show-summary
+      @selection-change="handleSelectionChange">
+      <el-table-column :selectable="selectInit" type="selection"/>
+      <el-table-column type="index" label="序号">
+        <template scope="scope">
+          <span v-if="scope.$index < 9">0{{ scope.$index + 1 }}</span>
+          <span v-else>{{ scope.$index + 1 }}</span>
+        </template>
+      </el-table-column>
 
-            <el-table-column align="center" label="收款日期" prop="receiptPaymentDate">
-                <template slot-scope="scope">
-                    {{ scope.row.receiptPaymentDate }}</template>
-            </el-table-column>
-            <el-table-column align="center" label="收款地" prop="receivingWithdrawingRegion" />
-            <el-table-column align="center" label="付款人" prop="receivingWithdrawingPeople" />
-            <el-table-column align="center" label="金额(欧元)" prop="deductionEuro" />
-            <el-table-column align="center" label="金额(人民币)" prop="deductionRmb" />
-            <el-table-column align="center" label="备注1" prop="remarks" />
-            <el-table-column align="center" label="备注2" prop="remark" />
-            <el-table-column align="center" label="状态" prop="status">
-                <template slot-scope="scope">
-                    {{ scope.row.status == 1 ? '已作废' : '' }}</template>
-            </el-table-column>
-            <el-table-column align="center" label="操作人" prop="updatePeople" />
-            <!-- <el-form-item label="操作人" prop="updatePeople">
+      <el-table-column align="center" label="收款日期" prop="receiptPaymentDate">
+        <template slot-scope="scope">
+          {{ scope.row.receiptPaymentDate }}</template>
+      </el-table-column>
+      <el-table-column align="center" label="收款地" prop="receivingWithdrawingRegion" />
+      <el-table-column align="center" label="付款人" prop="receivingWithdrawingPeople" />
+      <el-table-column align="center" label="金额(欧元)" prop="deductionEuro" />
+      <el-table-column align="center" label="金额(人民币)" prop="deductionRmb" />
+      <el-table-column align="center" label="备注1" prop="remarks" />
+      <el-table-column align="center" label="备注2" prop="remark" />
+      <el-table-column align="center" label="状态" prop="status">
+        <template slot-scope="scope">
+          {{ scope.row.status == 1 ? '已作废' : '' }}</template>
+      </el-table-column>
+      <el-table-column align="center" label="操作人" prop="updatePeople" />
+      <!-- <el-form-item label="操作人" prop="updatePeople">
                     <el-input v-model="dataForm.updatePeople" />
                 </el-form-item> -->
-            <el-table-column align="center" label="操作" class-name="small-padding fixed-width">
-                <template slot-scope="scope">
-                    <el-button v-permission="['collectionPayment:collectionpayment:edit']" type="primary" size="mini"
-                        @click="handleUpdate(scope.row)">编辑</el-button>
-                    <el-button v-permission="['collectionPayment:collectionpayment:edit']" type="primary" size="mini"
-                        @click="updateData1(scope.row)">作废</el-button>
-                    <!-- <el-button v-permission="['collectionPayment:collectionpayment:delete']" type="danger" size="mini"
+      <el-table-column align="center" label="操作" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button
+            v-permission="['collectionPayment:collectionpayment:edit']"
+            type="primary"
+            size="mini"
+            @click="handleUpdate(scope.row)">编辑</el-button>
+          <el-button
+            v-permission="['collectionPayment:collectionpayment:edit']"
+            type="primary"
+            size="mini"
+            @click="updateData1(scope.row)">作废</el-button>
+            <!-- <el-button v-permission="['collectionPayment:collectionpayment:delete']" type="danger" size="mini"
                         @click="handleDelete(scope.row)">删除</el-button> -->
-                </template>
-            </el-table-column>
-        </el-table>
+        </template>
+      </el-table-column>
+    </el-table>
 
-        <pagination v-show="total > 0" :total="total" :page.sync="listQuery.page" :limit.sync="listQuery.limit"
-            @pagination="getList" />
+    <pagination
+      v-show="total > 0"
+      :total="total"
+      :page.sync="listQuery.page"
+      :limit.sync="listQuery.limit"
+      @pagination="getList" />
 
-        <!-- 添加或修改对话框 -->
-        <el-dialog :title="textMap[dialogStatus]" :visible.sync="dialogFormVisible">
-            <el-form ref="dataForm" :rules="rules" :model="dataForm" status-icon label-position="left"
-                label-width="150px" style="width: 400px; margin-left:50px;">
-                <el-form-item label="id" prop="id" hidden>
-                    <el-input v-model="dataForm.id" />
-                </el-form-item>
-                <el-form-item label="付款人" prop="receivingWithdrawingPeople">
-                    <el-input v-model="dataForm.receivingWithdrawingPeople" />
-                </el-form-item>
-                <el-form-item label="收款地" prop="receivingWithdrawingRegion">
-                    <!-- <el-input v-model="dataForm.receivingWithdrawingRegion" /> -->
-                    <el-select v-model="dataForm.receivingWithdrawingRegion" placeholder="请选择收款地点" style="width:100%">
-                        <el-option :label="item.country" :value="item.country" v-for="(item, index) in placeList"
-                            :key="index"></el-option>
-                    </el-select>
-                </el-form-item>
-                <el-form-item label="收款日期" prop="receiptPaymentDate">
-                    <!-- <el-input v-model="dataForm.receiptPaymentDate" /> -->
-                    <el-date-picker v-model="dataForm.receiptPaymentDate" type="date" class="tkdate"
-                        style="width: 100%;">
-                    </el-date-picker>
-                </el-form-item>
-                <el-form-item label="金额(欧元)" prop="deductionEuro">
-                    <el-input v-model="dataForm.deductionEuro" />
-                </el-form-item>
-                <el-form-item label="金额(人民币)" prop="deductionRmb">
-                    <el-input v-model="dataForm.deductionRmb" />
-                </el-form-item>
-                <el-form-item label="备注1" prop="remarks">
-                    <el-input v-model="dataForm.remarks" />
-                </el-form-item>
-                <el-form-item label="备注2" prop="remark">
-                    <el-input v-model="dataForm.remark" />
-                </el-form-item>
-            </el-form>
-            <div slot="footer" class="dialog-footer">
-                <el-button @click="dialogFormVisible = false">取消</el-button>
-                <el-button v-if="dialogStatus == 'create'" :loading="submiting" type="primary" @click="createData">确定
-                </el-button>
-                <el-button v-else type="primary" :loading="submiting" @click="updateData">确定</el-button>
-            </div>
-        </el-dialog>
-    </div>
+    <!-- 添加或修改对话框 -->
+    <el-dialog :title="textMap[dialogStatus]" :visible.sync="dialogFormVisible">
+      <el-form
+        ref="dataForm"
+        :rules="rules"
+        :model="dataForm"
+        status-icon
+        label-position="left"
+        label-width="150px"
+        style="width: 400px; margin-left:50px;">
+        <el-form-item label="id" prop="id" hidden>
+          <el-input v-model="dataForm.id" />
+        </el-form-item>
+        <el-form-item label="付款人" prop="receivingWithdrawingPeople">
+          <el-input v-model="dataForm.receivingWithdrawingPeople" />
+        </el-form-item>
+        <el-form-item label="收款地" prop="receivingWithdrawingRegion">
+          <!-- <el-input v-model="dataForm.receivingWithdrawingRegion" /> -->
+          <el-select v-model="dataForm.receivingWithdrawingRegion" placeholder="请选择收款地点" style="width:100%">
+            <el-option
+              v-for="(item, index) in placeList"
+              :label="item.country"
+              :value="item.country"
+              :key="index"/>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="收款日期" prop="receiptPaymentDate">
+          <!-- <el-input v-model="dataForm.receiptPaymentDate" /> -->
+          <el-date-picker
+            v-model="dataForm.receiptPaymentDate"
+            type="date"
+            class="tkdate"
+            style="width: 100%;"/>
+        </el-form-item>
+        <el-form-item label="金额(欧元)" prop="deductionEuro">
+          <el-input v-model="dataForm.deductionEuro" />
+        </el-form-item>
+        <el-form-item label="金额(人民币)" prop="deductionRmb">
+          <el-input v-model="dataForm.deductionRmb" />
+        </el-form-item>
+        <el-form-item label="备注1" prop="remarks">
+          <el-input v-model="dataForm.remarks" />
+        </el-form-item>
+        <el-form-item label="备注2" prop="remark">
+          <el-input v-model="dataForm.remark" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="dialogFormVisible = false">取消</el-button>
+        <el-button v-if="dialogStatus == 'create'" :loading="submiting" type="primary" @click="createData">确定
+        </el-button>
+        <el-button v-else :loading="submiting" type="primary" @click="updateData">确定</el-button>
+      </div>
+    </el-dialog>
+  </div>
 </template>
 
 <script>
 import {
-    dayjs,
-    EventBus
+  dayjs,
+  EventBus
 } from 'base-core-lib'
 import {
-    listCountry
+  listCountry
 } from '@/api/country'
 import {
-    downloadFile
+  downloadFile
 } from '@/utils/batchDown'
 import {
-    importWord,
-    listCollectionPayment,
-    createCollectionPayment,
-    updateCollectionPayment,
-    deleteCollectionPayment,
-    exportXlsx
+  importWord,
+  listCollectionPayment,
+  createCollectionPayment,
+  updateCollectionPayment,
+  deleteCollectionPayment,
+  exportXlsx
 } from '@/api/collectionPayment'
 // import {
 //     exportXlsx
@@ -151,448 +216,434 @@ import {
 import Pagination from '@/components/Pagination'
 import store from '@/store'
 export default {
-    name: 'CollectionPayment',
-    components: { Pagination },
-    data() {
-        return {
-            isAllowExport: true,
-            countryList: [],
-            modification: [],
-            selectDate: '',
-            date: {
-                year: dayjs().format('YYYY'),
-                month: dayjs().format('MM'),
-            },
-            accessoryTFs: false,
-            fileList: [],
-            appendixIdsAdd: '',
-            excelFreightspace: [],
-            fileTemp: null,
-            placeList: [],
-            list: null,
-            total: 0,
-            listLoading: true,
-            listQuery: {
-                page: 1,
-                limit: 20,
-                type: {
-                    businessType: 1,
-                    receivingWithdrawingPeople: '',
-                    receivingWithdrawingRegion: '',
-                    startDate: '',
-                    endDate: '',
-                },
-
-
+  name: 'CollectionPayment',
+  components: { Pagination },
+  data() {
+    return {
+      isAllowExport: true,
+      countryList: [],
+      modification: [],
+      selectDate: '',
+      date: {
+        year: dayjs().format('YYYY'),
+        month: dayjs().format('MM')
+      },
+      accessoryTFs: false,
+      fileList: [],
+      appendixIdsAdd: '',
+      excelFreightspace: [],
+      fileTemp: null,
+      placeList: [],
+      list: null,
+      total: 0,
+      listLoading: true,
+      listQuery: {
+        page: 1,
+        limit: 20,
+        type: {
+          businessType: 1,
+          receivingWithdrawingPeople: '',
+          receivingWithdrawingRegion: '',
+          startDate: '',
+          endDate: ''
+        }
 
-            },
-            listPlace: {
-                page: 1,
-                limit: 2000,
-                type: {
-                    country: ''
-                }
-            },
-            dataForm: {
-                id: undefined,
-                updatePeople: store.getters.name
-            },
-            dialogFormVisible: false,
-            submiting: false,
-            dialogStatus: '',
-            textMap: {
-                update: '编辑',
-                create: '创建'
-            },
-            rules: {
-            }
+      },
+      listPlace: {
+        page: 1,
+        limit: 2000,
+        type: {
+          country: ''
         }
+      },
+      dataForm: {
+        id: undefined,
+        updatePeople: store.getters.name
+      },
+      dialogFormVisible: false,
+      submiting: false,
+      dialogStatus: '',
+      textMap: {
+        update: '编辑',
+        create: '创建'
+      },
+      rules: {
+      }
+    }
+  },
+  created() {
+    this.getList()
+    // let a = store.getters.name
+  },
+  methods: {
+    handleSelectionChange(val) {
+      this.modification = val
     },
-    created() {
-        this.getList()
-        // let a = store.getters.name
+    selectInit(row) {
+      return true
     },
-    methods: {
-        handleSelectionChange(val) {
-            this.modification = val
-        },
-        selectInit(row) {
-            return true
-        },
-        async exportlist() {
-            if (this.modification.length == 0) {
-                this.$message.warning('请选择要导出的条目!')
-            } else {
-                console.log('导出数据', this.modification)
-                let _data = {
-                    collectionPaymentDTOList: this.modification,
-                }
-                const {
-                    data
-                } = await exportXlsx(_data).then((response) => {
-                    this.download(response.data.data)
-                    //   downloadFile({
-                    //     res: data,
-                    //     fileName: `${
-                    //     this.date.year + (this.date.month ? `-${this.date.month}` : '')
-                    //     }付款信息`,
-                    //     type: 'xls',
-                    //     })
-                    if (response.status == '200') {
-
-                    }
-                })
+    async exportlist() {
+      if (this.modification.length == 0) {
+        this.$message.warning('请选择要导出的条目!')
+      } else {
+        console.log('导出数据', this.modification)
+        const _data = {
+          collectionPaymentDTOList: this.modification
+        }
+        const {
+          data
+        } = await exportXlsx(_data).then((response) => {
+          this.download(response.data.data)
+          //   downloadFile({
+          //     res: data,
+          //     fileName: `${
+          //     this.date.year + (this.date.month ? `-${this.date.month}` : '')
+          //     }付款信息`,
+          //     type: 'xls',
+          //     })
+          if (response.status == '200') {
 
+          }
+        })
+      }
+    },
+    importClick(file, fileList) {
+      this.fileTemp = file.raw
+      const fileName = file.raw.name
+      const fileType = fileName.substring(fileName.lastIndexOf('.') + 1)
+      // 判断上传文件格式
+      if (this.fileTemp) {
+        if (fileType == 'xlsx' || fileType == 'xls') {
+          this.importf(this.fileTemp)
+        } else {
+          this.$message({
+            type: 'warning',
+            message: '附件格式错误,请删除后重新上传!'
+          })
+        }
+      } else {
+        this.$message({
+          type: 'warning',
+          message: '请上传附件!'
+        })
+      }
+    },
+    importf(obj) {
+      this.countryList = []
+      this.excelFreightspace = []
+      // this.dialogVisible = true;
+      const _this = this
+      const inputDOM = this.$refs.inputer // 通过DOM取文件数据
+      this.file = event.currentTarget.files[0]
+      var rABS = false // 是否将文件读取为二进制字符串
+      var f = this.file
+      var reader = new FileReader()
+      // if (!FileReader.prototype.readAsBinaryString) {
+      FileReader.prototype.readAsBinaryString = function (f) {
+        var binary = ''
+        var rABS = false // 是否将文件读取为二进制字符串
+        var pt = this
+        var wb // 读取完成的数据
+        var outdata
+        var reader = new FileReader()
+        reader.onload = function (e) {
+          var bytes = new Uint8Array(reader.result)
+          var length = bytes.byteLength
+          for (var i = 0; i < length; i++) {
+            binary += String.fromCharCode(bytes[i])
+          }
+          var XLSX = require('xlsx')
+          if (rABS) {
+            wb = XLSX.read(btoa(fixdata(binary)), { // 手动转化
+              type: 'base64',
+              cellDates: true
+            })
+          } else {
+            wb = XLSX.read(binary, {
+              type: 'binary'
+            })
+          }
+          // outdata就是你想要的东西 excel导入的数据
+          outdata = XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]])
+          // excel 数据再处理
+          const arr = []
+          outdata.map(v => {
+            // let jsonString = JSON.stringify(v).replace(/\*/g, '').replace(/\s/ig,'');
+            const jsonString = JSON.stringify(v).replace(/\//g, '').replace(/\s/ig, '')
+            v = JSON.parse(jsonString)
+            const obj = {}
+            // xxx代表列名
+            obj.receiptPaymentDate = v.收款日期
+            obj.receivingWithdrawingRegion = v.收款地
+            obj.receivingWithdrawingPeople = v.付款人
+            obj.deductionEuro = v.金额EUR
+            obj.deductionRmb = v.金额RMB
+            obj.businessType = 1
+            obj.remarks = v.备注1
+            obj.remark = v.备注2
+            obj.updatePeople = _this.$store.getters.name
+            if (!obj.deductionEuro) {
+              obj.deductionEuro = 0
             }
-        },
-        importClick(file, fileList) {
-            this.fileTemp = file.raw
-            let fileName = file.raw.name
-            let fileType = fileName.substring(fileName.lastIndexOf('.') + 1)
-            // 判断上传文件格式
-            if (this.fileTemp) {
-                if (fileType == 'xlsx' || fileType == 'xls') {
-                    this.importf(this.fileTemp)
-                } else {
-                    this.$message({
-                        type: 'warning',
-                        message: '附件格式错误,请删除后重新上传!',
-                    })
-                }
-            } else {
-                this.$message({
-                    type: 'warning',
-                    message: '请上传附件!',
-                })
+            if (!obj.deductionRmb) {
+              obj.deductionRmb = 0
             }
-        },
-        importf(obj) {
-            this.countryList = []
-            this.excelFreightspace = []
-            // this.dialogVisible = true;
-            let _this = this;
-            let inputDOM = this.$refs.inputer; // 通过DOM取文件数据
-            this.file = event.currentTarget.files[0];
-            var rABS = false; //是否将文件读取为二进制字符串
-            var f = this.file;
-            var reader = new FileReader();
-            //if (!FileReader.prototype.readAsBinaryString) {
-            FileReader.prototype.readAsBinaryString = function (f) {
-                var binary = '';
-                var rABS = false; //是否将文件读取为二进制字符串
-                var pt = this;
-                var wb; //读取完成的数据
-                var outdata;
-                var reader = new FileReader();
-                reader.onload = function (e) {
-                    var bytes = new Uint8Array(reader.result);
-                    var length = bytes.byteLength;
-                    for (var i = 0; i < length; i++) {
-                        binary += String.fromCharCode(bytes[i]);
-                    }
-                    var XLSX = require('xlsx');
-                    if (rABS) {
-                        wb = XLSX.read(btoa(fixdata(binary)), { //手动转化
-                            type: 'base64',
-                            cellDates: true
-                        });
-                    } else {
-                        wb = XLSX.read(binary, {
-                            type: 'binary'
-                        });
-                    }
-                    // outdata就是你想要的东西 excel导入的数据
-                    outdata = XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]]);
-                    // excel 数据再处理
-                    let arr = []
-                    outdata.map(v => {
-                        // let jsonString = JSON.stringify(v).replace(/\*/g, '').replace(/\s/ig,'');
-                        let jsonString = JSON.stringify(v).replace(/\//g, '').replace(/\s/ig, '');
-                        v = JSON.parse(jsonString);
-                        let obj = {}
-                        //xxx代表列名
-                        obj.receiptPaymentDate = v.收款日期
-                        obj.receivingWithdrawingRegion = v.收款地
-                        obj.receivingWithdrawingPeople = v.付款人
-                        obj.deductionEuro = v.金额EUR
-                        obj.deductionRmb = v.金额RMB
-                        obj.businessType = 1
-                        obj.remarks = v.备注1
-                        obj.remark = v.备注2
-                        obj.updatePeople = _this.$store.getters.name
-                        if (!obj.deductionEuro) {
-                            obj.deductionEuro = 0
-                        }
-                        if (!obj.deductionRmb) {
-                            obj.deductionRmb = 0
-                        }
-                        for (let i = 0; i < _this.placeList.length; i++) {
-                            _this.countryList.push(_this.placeList[i].country)
-                        }
-                        if (!_this.countryList.includes(obj.receivingWithdrawingRegion)) {
-                            _this.isAllowExport = false
-                            _this.$notify({
-                                title: '失败',
-                                message: '导入失败,导入数据中收款地在系统中不存在,请重新编辑',
-                                type: 'error'
-                            });
-                            return
-                        } else {
-                            _this.excelFreightspace.push(obj)
-                            _this.isAllowExport = true
-                        }
-
-                    })
-                    if (_this.excelFreightspace && _this.isAllowExport) {
-                        importWord(_this.excelFreightspace).then((response) => {
-
-                            if (response.status == '200') {
-                                _this.$notify({
-                                    title: '成功',
-                                    message: '导入成功',
-                                    type: 'success'
-                                });
-                                _this.getList()
-                            }
-                        })
-
-                    }
-                }
-                reader.readAsArrayBuffer(f);
+            for (let i = 0; i < _this.placeList.length; i++) {
+              _this.countryList.push(_this.placeList[i].country)
             }
-            if (rABS) {
-                reader.readAsArrayBuffer(f);
+            if (!_this.countryList.includes(obj.receivingWithdrawingRegion)) {
+              _this.isAllowExport = false
+              _this.$notify({
+                title: '失败',
+                message: '导入失败,导入数据中收款地在系统中不存在,请重新编辑',
+                type: 'error'
+              })
+              return
             } else {
-                reader.readAsBinaryString(f);
+              _this.excelFreightspace.push(obj)
+              _this.isAllowExport = true
             }
-
-        },
-        formatDate(numb, format) {
-            const old = numb - 1;
-            const t = Math.round((old - Math.floor(old)) * 24 * 60 * 60);
-            const time = new Date(1900, 0, old, 0, 0, t)
-            const year = time.getFullYear();
-            const month = time.getMonth() + 1;
-            const date = time.getDate();
-            return year + format + (month < 10 ? '0' + month : month) + format + (date < 10 ? '0' + date : date) + ' 00:00:00'
-        },
-        getSummaries(param) {
-
-            const { columns, data } = param;
-            const sums = [];
-            columns.forEach((column, index) => {
-                if (index === 0) {
-                    sums[index] = "合计";
-                    return;
-                } else if (index == 5 || index == 6) {
-                    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 prev + curr;
-                            } else {
-                                return prev;
-                            }
-                        }, 0);
-                        sums[index] += "";
-                    } else {
-                        sums[index] = "--";
-                    }
-                } else {
-                    // sums[index] = "--";
-                }
-            });
-
-            return sums;
-
-        },
-        getList() {
-
-            console.log(this.selectDate)
-            listCountry(this.listPlace).then(response => {
-                this.placeList = response.data.data.items
-            })
-                .catch(() => {
-                    this.placeList = []
+          })
+          if (_this.excelFreightspace && _this.isAllowExport) {
+            importWord(_this.excelFreightspace).then((response) => {
+              if (response.status == '200') {
+                _this.$notify({
+                  title: '成功',
+                  message: '导入成功',
+                  type: 'success'
                 })
-            this.listLoading = true
-            console.log(this.selectDate)
-            if (this.selectDate.length > 0) {
+                _this.getList()
+              }
+            })
+          }
+        }
+        reader.readAsArrayBuffer(f)
+      }
+      if (rABS) {
+        reader.readAsArrayBuffer(f)
+      } else {
+        reader.readAsBinaryString(f)
+      }
+    },
+    formatDate(numb, format) {
+      const old = numb - 1
+      const t = Math.round((old - Math.floor(old)) * 24 * 60 * 60)
+      const time = new Date(1900, 0, old, 0, 0, t)
+      const year = time.getFullYear()
+      const month = time.getMonth() + 1
+      const date = time.getDate()
+      return year + format + (month < 10 ? '0' + month : month) + format + (date < 10 ? '0' + date : date) + ' 00:00:00'
+    },
+    getSummaries(param) {
+      const { columns, data } = param
+      const sums = []
+      columns.forEach((column, index) => {
+        if (index === 0) {
+          sums[index] = '合计'
+          return
+        } else if (index == 5 || index == 6) {
+          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 prev + curr
+              } else {
+                return prev
+              }
+            }, 0)
+            sums[index] += ''
+          } else {
+            sums[index] = '--'
+          }
+        } else {
+          // sums[index] = "--";
+        }
+      })
 
-                this.listQuery.type.startDate = dayjs(this.selectDate[0]).format('YYYY-MM-DD')
-                this.listQuery.type.endDate = dayjs(this.selectDate[1]).format('YYYY-MM-DD')
-            }
+      return sums
+    },
+    getList() {
+      console.log(this.selectDate)
+      listCountry(this.listPlace).then(response => {
+        this.placeList = response.data.data.items
+      })
+        .catch(() => {
+          this.placeList = []
+        })
+      this.listLoading = true
+      console.log(this.selectDate)
+      if (this.selectDate.length > 0) {
+        this.listQuery.type.startDate = dayjs(this.selectDate[0]).format('YYYY-MM-DD')
+        this.listQuery.type.endDate = dayjs(this.selectDate[1]).format('YYYY-MM-DD')
+      }
 
-            listCollectionPayment(this.listQuery).then(response => {
-                this.list = response.data.data.items
-                this.total = response.data.data.total
-                this.listLoading = false
-            })
-                .catch(() => {
-                    this.list = []
-                    this.total = 0
-                    this.listLoading = false
-                })
-        },
-        handleFilter() {
-            this.listQuery.page = 1
-            this.getList()
-        },
-        resetForm() {
-            this.dataForm = {
-                id: undefined
-            }
-        },
-        handleCreate() {
-            this.resetForm()
-            this.dialogStatus = 'create'
-            this.dialogFormVisible = true
-            this.$nextTick(() => {
-                this.$refs['dataForm'].clearValidate()
-            })
-        },
-        createData() {
-            this.$refs['dataForm'].validate(valid => {
-                if (valid) {
-                    this.submiting = true
-                    this.dataForm.businessType = 1
-                    this.dataForm.updatePeople = this.$store.getters.name
-                    if (!this.dataForm.deductionEuro) {
-                        this.dataForm.deductionEuro = 0
-                    }
-                    if (!this.dataForm.deductionRmb) {
-                        this.dataForm.deductionRmb = 0
-                    }
+      listCollectionPayment(this.listQuery).then(response => {
+        this.list = response.data.data.items
+        this.total = response.data.data.total
+        this.listLoading = false
+      })
+        .catch(() => {
+          this.list = []
+          this.total = 0
+          this.listLoading = false
+        })
+    },
+    handleFilter() {
+      this.listQuery.page = 1
+      this.getList()
+    },
+    resetForm() {
+      this.dataForm = {
+        id: undefined
+      }
+    },
+    handleCreate() {
+      this.resetForm()
+      this.dialogStatus = 'create'
+      this.dialogFormVisible = true
+      this.$nextTick(() => {
+        this.$refs['dataForm'].clearValidate()
+      })
+    },
+    createData() {
+      this.$refs['dataForm'].validate(valid => {
+        if (valid) {
+          this.submiting = true
+          this.dataForm.businessType = 1
+          this.dataForm.updatePeople = this.$store.getters.name
+          if (!this.dataForm.deductionEuro) {
+            this.dataForm.deductionEuro = 0
+          }
+          if (!this.dataForm.deductionRmb) {
+            this.dataForm.deductionRmb = 0
+          }
 
-                    createCollectionPayment(this.dataForm).then(response => {
-                        this.list.unshift(response.data.data)
-                        this.dialogFormVisible = false
-                        this.$notify.success({
-                            title: '成功',
-                            message: '添加成功'
-                        })
-                        this.submiting = false
-                    })
-                        .catch(response => {
-                            this.$notify.error({
-                                title: '失败',
-                                message: response.data.errmsg
-                            })
-                            this.submiting = false
-                        })
-                }
-            })
-        },
-        handleUpdate(row) {
-            this.dataForm = Object.assign({}, row)
-            this.dialogStatus = 'update'
-            this.dialogFormVisible = true
-            this.$nextTick(() => {
-                this.$refs['dataForm'].clearValidate()
+          createCollectionPayment(this.dataForm).then(response => {
+            this.list.unshift(response.data.data)
+            this.dialogFormVisible = false
+            this.$notify.success({
+              title: '成功',
+              message: '添加成功'
             })
-        },
-        handleUpdate1(row) {
-            this.$confirm('此操作将永久作废该记录---' + row.id + '---, 是否继续?', '提示', {
-                confirmButtonText: '确定',
-                cancelButtonText: '取消',
-                type: 'warning'
-            }).then(() => {
-                deleteCollectionPayment(row.id).then(response => {
-                    this.$notify.success({
-                        title: '成功',
-                        message: '删除成功'
-                    })
-                    const index = this.list.indexOf(row)
-                    this.list.splice(index, 1)
-                })
-                    .catch(response => {
-                        this.$notify.error({
-                            title: '失败',
-                            message: response.data.errmsg
-                        })
-                    })
-            }).catch(() => {
-                return false
+            this.submiting = false
+          })
+            .catch(response => {
+              this.$notify.error({
+                title: '失败',
+                message: response.data.errmsg
+              })
+              this.submiting = false
             })
-
-        },
-        updateData() {
-            this.$refs['dataForm'].validate(valid => {
-                if (valid) {
-                    this.submiting = true
-                    this.dataForm.updatePeople = this.$store.getters.name
-                    updateCollectionPayment(this.dataForm).then(() => {
-                        for (const v of this.list) {
-                            if (v.id === this.dataForm.id) {
-                                const index = this.list.indexOf(v)
-                                this.list.splice(index, 1, this.dataForm)
-                                break
-                            }
-                        }
-                        this.dialogFormVisible = false
-                        this.submiting = false
-                        this.$notify.success({
-                            title: '成功',
-                            message: '更新成功'
-                        })
-                    })
-                        .catch(response => {
-                            this.$notify.error({
-                                title: '失败',
-                                message: response.data.errmsg
-                            })
-                            this.submiting = false
-                        })
-                }
+        }
+      })
+    },
+    handleUpdate(row) {
+      this.dataForm = Object.assign({}, row)
+      this.dialogStatus = 'update'
+      this.dialogFormVisible = true
+      this.$nextTick(() => {
+        this.$refs['dataForm'].clearValidate()
+      })
+    },
+    handleUpdate1(row) {
+      this.$confirm('此操作将永久作废该记录---' + row.id + '---, 是否继续?', '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+      }).then(() => {
+        deleteCollectionPayment(row.id).then(response => {
+          this.$notify.success({
+            title: '成功',
+            message: '删除成功'
+          })
+          const index = this.list.indexOf(row)
+          this.list.splice(index, 1)
+        })
+          .catch(response => {
+            this.$notify.error({
+              title: '失败',
+              message: response.data.errmsg
             })
-        },
-        updateData1(row) {
-            this.dataForm.flag = 1
-            this.dataForm.id = row.id
-            updateCollectionPayment(this.dataForm).then(() => {
-
-                this.submiting = false
-                this.$notify.success({
-                    title: '成功',
-                    message: '更新成功',
-                })
-                this.getList()
+          })
+      }).catch(() => {
+        return false
+      })
+    },
+    updateData() {
+      this.$refs['dataForm'].validate(valid => {
+        if (valid) {
+          this.submiting = true
+          this.dataForm.updatePeople = this.$store.getters.name
+          updateCollectionPayment(this.dataForm).then(() => {
+            for (const v of this.list) {
+              if (v.id === this.dataForm.id) {
+                const index = this.list.indexOf(v)
+                this.list.splice(index, 1, this.dataForm)
+                break
+              }
+            }
+            this.dialogFormVisible = false
+            this.submiting = false
+            this.$notify.success({
+              title: '成功',
+              message: '更新成功'
             })
-                .catch(response => {
-                    this.$notify.error({
-                        title: '失败',
-                        message: response.data.errmsg
-                    })
-                    this.submiting = false
-                })
-
-        },
-        handleDelete(row) {
-            this.$confirm('此操作将永久删除该记录---' + row.id + '---, 是否继续?', '提示', {
-                confirmButtonText: '确定',
-                cancelButtonText: '取消',
-                type: 'warning'
-            }).then(() => {
-                deleteCollectionPayment(row.id).then(response => {
-                    this.$notify.success({
-                        title: '成功',
-                        message: '删除成功'
-                    })
-                    const index = this.list.indexOf(row)
-                    this.list.splice(index, 1)
-                })
-                    .catch(response => {
-                        this.$notify.error({
-                            title: '失败',
-                            message: response.data.errmsg
-                        })
-                    })
-            }).catch(() => {
-                return false
+          })
+            .catch(response => {
+              this.$notify.error({
+                title: '失败',
+                message: response.data.errmsg
+              })
+              this.submiting = false
             })
         }
+      })
+    },
+    updateData1(row) {
+      this.dataForm.flag = 1
+      this.dataForm.id = row.id
+      updateCollectionPayment(this.dataForm).then(() => {
+        this.submiting = false
+        this.$notify.success({
+          title: '成功',
+          message: '更新成功'
+        })
+        this.getList()
+      })
+        .catch(response => {
+          this.$notify.error({
+            title: '失败',
+            message: response.data.errmsg
+          })
+          this.submiting = false
+        })
+    },
+    handleDelete(row) {
+      this.$confirm('此操作将永久删除该记录---' + row.id + '---, 是否继续?', '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+      }).then(() => {
+        deleteCollectionPayment(row.id).then(response => {
+          this.$notify.success({
+            title: '成功',
+            message: '删除成功'
+          })
+          const index = this.list.indexOf(row)
+          this.list.splice(index, 1)
+        })
+          .catch(response => {
+            this.$notify.error({
+              title: '失败',
+              message: response.data.errmsg
+            })
+          })
+      }).catch(() => {
+        return false
+      })
     }
+  }
 }
 </script>
 <style>

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 723 - 625
unimall-admin/src/views/express/expressBusiness.vue


+ 556 - 486
unimall-admin/src/views/settlement/settlementManagement.vue

@@ -1,518 +1,588 @@
 <template>
-    <div class="app-container">
-        <!-- 查询和其他操作 -->
-        <div class="filter-container">
-            <el-input v-model="listQuery.type.tradeName" clearable class="filter-item" size="small"
-                style="width: 200px;" placeholder="请输入商品名称" />
-            <el-select v-model="selectStatus" placeholder="请选择收款状态" style="margin:0 20px;" size="small" clearable>
-                <el-option :label="item.lable" :value="item.lable" v-for="(item, index) in statusList" :key="index">
-                </el-option>
-            </el-select>
-            <el-button v-permission="['settlement:settlement:list']" class="filter-item" type="primary" size="mini"
-                icon="el-icon-search" @click="handleFilter">查找</el-button>
-            <el-button v-permission="['settlement:settlement:create']" class="filter-item" type="primary" size="mini"
-                icon="el-icon-edit" @click="handleCreate">添加</el-button>
-            <el-button v-permission="['collectionPayment:collectionpayment:create']" class="filter-item" type="primary"
-                size="mini" icon="el-icon-edit" @click="exportlist">导出</el-button>
+  <div class="app-container">
+    <!-- 查询和其他操作 -->
+    <div class="filter-container">
+      <el-input
+        v-model="listQuery.type.tradeName"
+        clearable
+        class="filter-item"
+        size="small"
+        style="width: 200px;"
+        placeholder="请输入商品名称" />
+      <el-select v-model="selectStatus" placeholder="请选择收款状态" style="margin:0 20px;" size="small" clearable>
+        <el-option v-for="(item, index) in statusList" :label="item.lable" :value="item.lable" :key="index"/>
+      </el-select>
+      <el-date-picker
+        v-model="selectDate"
+        style="margin-right:20px"
+        size="small"
+        type="daterange"
+        value-format="yyyy-MM-dd"
+        range-separator="至"
+        start-placeholder="开始日期"
+        end-placeholder="结束日期"/>
+      <el-button
+        v-permission="['settlement:settlement:list']"
+        class="filter-item"
+        type="primary"
+        size="mini"
+        icon="el-icon-search"
+        @click="handleFilter">查找</el-button>
 
-            <el-upload style="margin-left: 8px;margin-bottom:0" class="filter-item" action="" :on-change="importClick"
-                :show-file-list="false"
-                accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
-                :auto-upload="false">
-                <el-button v-permission="['collectionPayment:collectionpayment:create']" class="filter-item"
-                    type="primary" icon="el-icon-edit" style="width:73px;padding-left:15px">导入</el-button>
-            </el-upload>
-        </div>
+      <el-button
+        v-permission="['settlement:settlement:create']"
+        class="filter-item"
+        type="primary"
+        size="mini"
+        icon="el-icon-edit"
+        @click="handleCreate">添加</el-button>
+      <el-button
+        v-permission="['collectionPayment:collectionpayment:create']"
+        class="filter-item"
+        type="primary"
+        size="mini"
+        icon="el-icon-edit"
+        @click="exportlist">导出</el-button>
 
-        <!-- 查询结果 -->
-        <el-table v-loading="listLoading" :data="list" size="small" element-loading-text="正在查询中。。。" border fit
-            highlight-current-row show-summary :summary-method="getSummaries" @selection-change="handleSelectionChange">
-            <el-table-column :selectable="selectInit" type="selection"></el-table-column>
-            <el-table-column type="index" label="序号">
-                <template scope="scope">
-                    <span v-if="scope.$index < 9">0{{ scope.$index + 1 }}</span>
-                    <span v-else>{{ scope.$index + 1 }}</span>
-                </template>
-            </el-table-column>
-            <el-table-column align="center" label="商品名称" prop="tradeName" />
-            <el-table-column align="center" label="数量" prop="num" />
-            <el-table-column align="center" label="单价" prop="price" />
-            <el-table-column align="center" label="合计" prop="amount" />
-            <el-table-column align="center" label="成本" prop="cost" />
-            <el-table-column align="center" label="成本合计" prop="totalCost" />
-            <el-table-column align="center" label="支付方式" prop="howPay" />
-            <el-table-column align="center" label="备注" prop="sender" />
-            <el-table-column align="center" label="状态" prop="status">
-                <template slot-scope="scope">
-                    {{ scope.row.status == 1 ? '已收款' : '未收款' }}</template>
-            </el-table-column>
-            <el-table-column align="center" label="操作" class-name="small-padding fixed-width">
-                <template slot-scope="scope">
-                    <el-button v-permission="['settlement:settlement:edit']" type="primary" size="mini"
-                        @click="handleUpdate(scope.row)">编辑</el-button>
-                    <el-button v-permission="['settlement:settlement:delete']" type="danger" size="mini"
-                        @click="handleDelete(scope.row)">删除</el-button>
-                </template>
-            </el-table-column>
-        </el-table>
+      <el-upload
+        :on-change="importClick"
+        :show-file-list="false"
+        :auto-upload="false"
+        style="margin-left: 8px;margin-bottom:0"
+        class="filter-item"
+        action=""
+        accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel">
+        <el-button
+          v-permission="['collectionPayment:collectionpayment:create']"
+          class="filter-item"
+          type="primary"
+          icon="el-icon-edit"
+          style="width:73px;padding-left:15px">导入</el-button>
+      </el-upload>
+    </div>
 
-        <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
-            :page-sizes="[100, 200, 300, 400, 1000, 1500, 2000]" :page-size="100"
-            layout="total, sizes, prev, pager, next, jumper" :total="total">
-        </el-pagination>
+    <!-- 查询结果 -->
+    <el-table
+      v-loading="listLoading"
+      :data="list"
+      :summary-method="getSummaries"
+      size="small"
+      element-loading-text="正在查询中。。。"
+      border
+      fit
+      highlight-current-row
+      show-summary
+      @selection-change="handleSelectionChange">
+      <el-table-column :selectable="selectInit" type="selection"/>
+      <el-table-column type="index" label="序号">
+        <template scope="scope">
+          <span v-if="scope.$index < 9">0{{ scope.$index + 1 }}</span>
+          <span v-else>{{ scope.$index + 1 }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column align="center" label="商品名称" prop="tradeName" />
+      <el-table-column align="center" label="结算日期" prop="closingDate" />
+      <el-table-column align="center" label="数量" prop="num" />
+      <el-table-column align="center" label="单价" prop="price" />
+      <el-table-column align="center" label="合计" prop="amount" />
+      <el-table-column align="center" label="成本" prop="cost" />
+      <el-table-column align="center" label="成本合计" prop="totalCost" />
+      <el-table-column align="center" label="支付方式" prop="howPay" />
+      <el-table-column align="center" label="备注" prop="sender" />
+      <el-table-column align="center" label="状态" prop="status">
+        <template slot-scope="scope">
+          {{ scope.row.status == 1 ? '已收款' : '未收款' }}</template>
+      </el-table-column>
+      <el-table-column align="center" label="操作" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button
+            v-permission="['settlement:settlement:edit']"
+            type="primary"
+            size="mini"
+            @click="handleUpdate(scope.row)">编辑</el-button>
+          <el-button
+            v-permission="['settlement:settlement:delete']"
+            type="danger"
+            size="mini"
+            @click="handleDelete(scope.row)">删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
 
-        <!-- 添加或修改对话框 -->
-        <el-dialog :title="textMap[dialogStatus]" :visible.sync="dialogFormVisible">
-            <el-form ref="dataForm" :rules="rules" :model="dataForm" status-icon label-position="left"
-                label-width="100px" style="width: 400px; margin-left:50px;">
-                <el-form-item label="id" prop="id" hidden>
-                    <el-input v-model="dataForm.id" />
-                </el-form-item>
-                <el-form-item label="商品名称" prop="status">
-                    <el-select v-model="dataForm.tradeName" placeholder="请选择商品名称" style="width: 100%;" size="small"
-                        @change="changeGood" clearable>
-                        <el-option :label="item.tradeName" :value="item.tradeName" v-for="(item, index) in statusList1"
-                            :key="index">
-                        </el-option>
-                    </el-select>
-                </el-form-item>
-                <el-form-item label="数量" prop="num">
-                    <el-input v-model="dataForm.num" @input="priceVal" />
-                </el-form-item>
-                <el-form-item label="单价" prop="price">
-                    <el-input v-model="dataForm.price" @input="priceVal" />
-                </el-form-item>
-                <el-form-item label="成本" prop="cost">
-                    <el-input v-model="dataForm.cost" @input="priceVal" />
-                </el-form-item>
-                <el-form-item label="合计" prop="amount">
-                    <el-input v-model="dataForm.amount" />
-                </el-form-item>
-                <el-form-item label="成本合计" prop="totalCost">
-                    <el-input v-model="dataForm.totalCost" />
-                </el-form-item>
-                <el-form-item label="支付方式" prop="howPay">
-                    <el-input v-model="dataForm.howPay" />
-                </el-form-item>
-                <el-form-item label="备注" prop="sender">
-                    <el-input v-model="dataForm.sender" />
-                </el-form-item>
-                  <el-form-item label="状态" prop="status">
-                    <el-select v-model="dataForm.status" placeholder="请选择收款状态" style="width: 100%;" size="small" clearable>
-                        <el-option :label="item.lable" :value="item.id" v-for="(item, index) in statusList"
-                            :key="index">
-                        </el-option>
-                    </el-select>
-                </el-form-item>
-            </el-form>
-            <div slot="footer" class="dialog-footer">
-                <el-button @click="dialogFormVisible = false">取消</el-button>
-                <el-button v-if="dialogStatus == 'create'" :loading="submiting" type="primary" @click="createData">确定
-                </el-button>
-                <el-button v-else type="primary" :loading="submiting" @click="updateData">确定</el-button>
-            </div>
-        </el-dialog>
-    </div>
+    <el-pagination
+      :current-page="currentPage"
+      :page-sizes="[100, 200, 300, 400, 1000, 1500, 2000]"
+      :page-size="100"
+      :total="total"
+      layout="total, sizes, prev, pager, next, jumper"
+      @size-change="handleSizeChange"
+      @current-change="handleCurrentChange"/>
+
+    <!-- 添加或修改对话框 -->
+    <el-dialog :title="textMap[dialogStatus]" :visible.sync="dialogFormVisible">
+      <el-form
+        ref="dataForm"
+        :rules="rules"
+        :model="dataForm"
+        status-icon
+        label-position="left"
+        label-width="100px"
+        style="width: 400px; margin-left:50px;">
+        <el-form-item label="id" prop="id" hidden>
+          <el-input v-model="dataForm.id" />
+        </el-form-item>
+        <el-form-item label="商品名称" prop="status">
+          <el-select
+            v-model="dataForm.tradeName"
+            placeholder="请选择商品名称"
+            style="width: 100%;"
+            size="small"
+            clearable
+            @change="changeGood">
+            <el-option
+              v-for="(item, index) in statusList1"
+              :label="item.tradeName"
+              :value="item.tradeName"
+              :key="index"/>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="日期" prop="expressDate">
+          <el-date-picker v-model="dataForm.closingDate" type="date" value-format="yyyy-MM-dd" class="tkdate" style="width: 100%;"/>
+        </el-form-item>
+        <el-form-item label="数量" prop="num">
+          <el-input v-model="dataForm.num" @input="priceVal" />
+        </el-form-item>
+        <el-form-item label="单价" prop="price">
+          <el-input v-model="dataForm.price" @input="priceVal" />
+        </el-form-item>
+        <el-form-item label="成本" prop="cost">
+          <el-input v-model="dataForm.cost" @input="priceVal" />
+        </el-form-item>
+        <el-form-item label="合计" prop="amount">
+          <el-input v-model="dataForm.amount" />
+        </el-form-item>
+        <el-form-item label="成本合计" prop="totalCost">
+          <el-input v-model="dataForm.totalCost" />
+        </el-form-item>
+        <el-form-item label="支付方式" prop="howPay">
+          <el-input v-model="dataForm.howPay" />
+        </el-form-item>
+        <el-form-item label="备注" prop="sender">
+          <el-input v-model="dataForm.sender" />
+        </el-form-item>
+        <el-form-item label="状态" prop="status">
+          <el-select v-model="dataForm.status" placeholder="请选择收款状态" style="width: 100%;" size="small" clearable>
+            <el-option
+              v-for="(item, index) in statusList"
+              :label="item.lable"
+              :value="item.id"
+              :key="index"/>
+          </el-select>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="dialogFormVisible = false">取消</el-button>
+        <el-button v-if="dialogStatus == 'create'" :loading="submiting" type="primary" @click="createData">确定
+        </el-button>
+        <el-button v-else :loading="submiting" type="primary" @click="updateData">确定</el-button>
+      </div>
+    </el-dialog>
+  </div>
 </template>
 
 <script>
 import {
-    dayjs,
-    EventBus
+  dayjs,
+  EventBus
 } from 'base-core-lib'
 import {
-    listSettlementManagement,
-    createSettlementManagement,
-    updateSettlementManagement,
-    deleteSettlementManagement,
-    importWord,
-    exportXlsx,
-    getGoodsList
+  listSettlementManagement,
+  createSettlementManagement,
+  updateSettlementManagement,
+  deleteSettlementManagement,
+  importWord,
+  exportXlsx,
+  getGoodsList
 } from '@/api/settlementManagement'
 import Pagination from '@/components/Pagination'
 export default {
-    name: 'SettlementManagement',
-    components: { Pagination },
-    data() {
-        return {
-            statusList1: [],
-            statusList: [{ lable: '未收款', id: 0 }, { lable: '已收款', id: 1 }],
-            selectStatus: '',
-            currentPage: null,
-            modification: [],
-            list: null,
-            excelFreightspace: [],
-            total: 0,
-            listLoading: true,
-            listQuery: {
-                page: 1,
-                limit: 100,
-                type: {
-                    status: ''
-                }
-            },
-            dataForm: {
-                id: undefined
-            },
-            dialogFormVisible: false,
-            submiting: false,
-            dialogStatus: '',
-            textMap: {
-                update: '编辑',
-                create: '创建'
-            },
-            rules: {
-            }
+  name: 'SettlementManagement',
+  components: { Pagination },
+  data() {
+    return {
+      selectDate: '',
+      statusList1: [],
+      statusList: [{ lable: '未收款', id: 0 }, { lable: '已收款', id: 1 }],
+      selectStatus: '',
+      currentPage: null,
+      modification: [],
+      list: null,
+      excelFreightspace: [],
+      total: 0,
+      listLoading: true,
+      listQuery: {
+        page: 1,
+        limit: 100,
+        type: {
+          status: ''
         }
-    },
-    created() {
-        this.currentPage = 1
-            getGoodsList().then(response => {
-                this.statusList1 = response.data.data
-             
-        this.getList()
-            })
-                .catch(() => {
-
-                    this.listLoading = false
-                })
+      },
+      dataForm: {
+        id: undefined
+      },
+      dialogFormVisible: false,
+      submiting: false,
+      dialogStatus: '',
+      textMap: {
+        update: '编辑',
+        create: '创建'
+      },
+      rules: {
+      }
+    }
+  },
+  created() {
+    this.currentPage = 1
+    getGoodsList().then(response => {
+      this.statusList1 = response.data.data
 
+      this.getList()
+    })
+      .catch(() => {
+        this.listLoading = false
+      })
+  },
+  methods: {
+    changeGood(e) {
+      console.log(e)
+      for (let i = 0; i < this.statusList1.length; i++) {
+        if (e == this.statusList1[i].tradeName) {
+          // this.dataForm.num = this.statusList1[i].num
+          this.dataForm.price = this.statusList1[i].price
+          this.dataForm.cost = this.statusList1[i].cost
+          // this.dataForm.amount = Number(this.dataForm.num) * Number(this.dataForm.price)
+          // this.dataForm.totalCost = Number(this.dataForm.num) * Number(this.dataForm.cost)
+        }
+      }
     },
-    methods: {
-        changeGood(e) {
-            console.log(e)
-            for (let i = 0; i < this.statusList1.length; i++) {
-                if (e == this.statusList1[i].tradeName) {
-                    // this.dataForm.num = this.statusList1[i].num
-                    this.dataForm.price = this.statusList1[i].price
-                    this.dataForm.cost = this.statusList1[i].cost
-                    // this.dataForm.amount = Number(this.dataForm.num) * Number(this.dataForm.price)
-                    // this.dataForm.totalCost = Number(this.dataForm.num) * Number(this.dataForm.cost)
-                }
-            }
-        },
-        priceVal(e) {
-            if (this.dataForm.num && this.dataForm.price) {
-                this.dataForm.amount = Number(this.dataForm.num) * Number(this.dataForm.price)
-            }
-            if (this.dataForm.num && this.dataForm.cost) {
-                this.dataForm.totalCost = Number(this.dataForm.num) * Number(this.dataForm.cost)
-            }
-
-        },
-        handleSizeChange(val) {
-            console.log(`每页 ${val} 条`)
-            this.listQuery.limit = val
-            this.getList()
-        },
-        handleCurrentChange(val) {
-            this.listQuery.page = val
-            console.log(`当前页: ${val}`)
-            this.getList()
-        },
-        handleSelectionChange(val) {
-            this.modification = val
-        },
-        selectInit(row) {
-            return true
-        },
-        async exportlist() {
-            if (this.modification.length == 0) {
-                this.$message.warning('请选择要导出的条目!')
-            } else {
-                console.log('导出数据', this.modification)
-                let _data = {
-                    settlementManagementDTOS: this.modification,
-                }
-                const {
-                    data
-                } = await exportXlsx(_data).then((response) => {
-                    this.download(response.data.data)
-                    //   downloadFile({
-                    //     res: data,
-                    //     fileName: `${
-                    //     this.date.year + (this.date.month ? `-${this.date.month}` : '')
-                    //     }付款信息`,
-                    //     type: 'xls',
-                    //     })
-                    if (response.status == '200') {
-
-                    }
-                })
-
-            }
-        },
-        importClick(file, fileList) {
-            this.fileTemp = file.raw
-            let fileName = file.raw.name
-            let fileType = fileName.substring(fileName.lastIndexOf('.') + 1)
-            // 判断上传文件格式
-            if (this.fileTemp) {
-                if (fileType == 'xlsx' || fileType == 'xls') {
-                    this.importf(this.fileTemp)
-                } else {
-                    this.$message({
-                        type: 'warning',
-                        message: '附件格式错误,请删除后重新上传!',
-                    })
-                }
-            } else {
-                this.$message({
-                    type: 'warning',
-                    message: '请上传附件!',
-                })
-            }
-        },
-        importf(obj) {
-            this.excelFreightspace = []
-            // this.dialogVisible = true;
-            let _this = this;
-            let inputDOM = this.$refs.inputer; // 通过DOM取文件数据
-            this.file = event.currentTarget.files[0];
-            var rABS = false; //是否将文件读取为二进制字符串
-            var f = this.file;
-            var reader = new FileReader();
-            //if (!FileReader.prototype.readAsBinaryString) {
-            FileReader.prototype.readAsBinaryString = function (f) {
-                var binary = '';
-                var rABS = false; //是否将文件读取为二进制字符串
-                var pt = this;
-                var wb; //读取完成的数据
-                var outdata;
-                var reader = new FileReader();
-                reader.onload = function (e) {
-                    var bytes = new Uint8Array(reader.result);
-                    var length = bytes.byteLength;
-                    for (var i = 0; i < length; i++) {
-                        binary += String.fromCharCode(bytes[i]);
-                    }
-                    var XLSX = require('xlsx');
-                    if (rABS) {
-                        wb = XLSX.read(btoa(fixdata(binary)), { //手动转化
-                            type: 'base64',
-                            cellDates: true
-                        });
-                    } else {
-                        wb = XLSX.read(binary, {
-                            type: 'binary'
-                        });
-                    }
-                    // outdata就是你想要的东西 excel导入的数据
-                    outdata = XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]]);
-                    // excel 数据再处理
-                    let arr = []
-                    outdata.map(v => {
-                        // let jsonString = JSON.stringify(v).replace(/\*/g, '').replace(/\s/ig,'');
-                        let jsonString = JSON.stringify(v).replace(/\//g, '').replace(/\s/ig, '');
-                        v = JSON.parse(jsonString);
-                        let obj = {}
-                        //xxx代表列名
-                        obj.tradeName = v.商品名称
-                        obj.num = v.数量
-                        obj.price = v.单价
-                        obj.cost = v.成本
-                        obj.amount = v.合计
-                        obj.phone = v.成本合计
-                        obj.howPay = v.支付方式
-                        obj.sender = v.备注
-                        if (v.状态 == '已收款') {
-                            obj.status = 1
-                        } else {
-                            obj.status = 0
-                        }
-                        _this.excelFreightspace.push(obj)
-                    })
-
-                    if (_this.excelFreightspace) {
-                        importWord(_this.excelFreightspace).then((response) => {
-
-                            if (response.status == '200') {
-                                _this.$notify({
-                                    title: '成功',
-                                    message: '导入成功',
-                                    type: 'success'
-                                });
-                                _this.getList()
-                            }
-                        })
+    priceVal(e) {
+      if (this.dataForm.num && this.dataForm.price) {
+        this.dataForm.amount = Number(this.dataForm.num) * Number(this.dataForm.price)
+      }
+      if (this.dataForm.num && this.dataForm.cost) {
+        this.dataForm.totalCost = Number(this.dataForm.num) * Number(this.dataForm.cost)
+      }
+    },
+    handleSizeChange(val) {
+      console.log(`每页 ${val} 条`)
+      this.listQuery.limit = val
+      this.getList()
+    },
+    handleCurrentChange(val) {
+      this.listQuery.page = val
+      console.log(`当前页: ${val}`)
+      this.getList()
+    },
+    handleSelectionChange(val) {
+      this.modification = val
+    },
+    selectInit(row) {
+      return true
+    },
+    async exportlist() {
+      if (this.modification.length == 0) {
+        this.$message.warning('请选择要导出的条目!')
+      } else {
+        console.log('导出数据', this.modification)
+        const _data = {
+          settlementManagementDTOS: this.modification
+        }
+        const {
+          data
+        } = await exportXlsx(_data).then((response) => {
+          this.download(response.data.data)
+          //   downloadFile({
+          //     res: data,
+          //     fileName: `${
+          //     this.date.year + (this.date.month ? `-${this.date.month}` : '')
+          //     }付款信息`,
+          //     type: 'xls',
+          //     })
+          if (response.status == '200') {
 
-                    }
-                }
-                reader.readAsArrayBuffer(f);
-            }
-            if (rABS) {
-                reader.readAsArrayBuffer(f);
+          }
+        })
+      }
+    },
+    importClick(file, fileList) {
+      this.fileTemp = file.raw
+      const fileName = file.raw.name
+      const fileType = fileName.substring(fileName.lastIndexOf('.') + 1)
+      // 判断上传文件格式
+      if (this.fileTemp) {
+        if (fileType == 'xlsx' || fileType == 'xls') {
+          this.importf(this.fileTemp)
+        } else {
+          this.$message({
+            type: 'warning',
+            message: '附件格式错误,请删除后重新上传!'
+          })
+        }
+      } else {
+        this.$message({
+          type: 'warning',
+          message: '请上传附件!'
+        })
+      }
+    },
+    importf(obj) {
+      this.excelFreightspace = []
+      // this.dialogVisible = true;
+      const _this = this
+      const inputDOM = this.$refs.inputer // 通过DOM取文件数据
+      this.file = event.currentTarget.files[0]
+      var rABS = false // 是否将文件读取为二进制字符串
+      var f = this.file
+      var reader = new FileReader()
+      // if (!FileReader.prototype.readAsBinaryString) {
+      FileReader.prototype.readAsBinaryString = function (f) {
+        var binary = ''
+        var rABS = false // 是否将文件读取为二进制字符串
+        var pt = this
+        var wb // 读取完成的数据
+        var outdata
+        var reader = new FileReader()
+        reader.onload = function (e) {
+          var bytes = new Uint8Array(reader.result)
+          var length = bytes.byteLength
+          for (var i = 0; i < length; i++) {
+            binary += String.fromCharCode(bytes[i])
+          }
+          var XLSX = require('xlsx')
+          if (rABS) {
+            wb = XLSX.read(btoa(fixdata(binary)), { // 手动转化
+              type: 'base64',
+              cellDates: true
+            })
+          } else {
+            wb = XLSX.read(binary, {
+              type: 'binary'
+            })
+          }
+          // outdata就是你想要的东西 excel导入的数据
+          outdata = XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]])
+          // excel 数据再处理
+          const arr = []
+          outdata.map(v => {
+            // let jsonString = JSON.stringify(v).replace(/\*/g, '').replace(/\s/ig,'');
+            const jsonString = JSON.stringify(v).replace(/\//g, '').replace(/\s/ig, '')
+            v = JSON.parse(jsonString)
+            const obj = {}
+            // xxx代表列名
+            obj.tradeName = v.商品名称
+            obj.num = v.数量
+            obj.price = v.单价
+            obj.cost = v.成本
+            obj.amount = v.合计
+            obj.phone = v.成本合计
+            obj.howPay = v.支付方式
+            obj.sender = v.备注
+            if (v.状态 == '已收款') {
+              obj.status = 1
             } else {
-                reader.readAsBinaryString(f);
+              obj.status = 0
             }
+            _this.excelFreightspace.push(obj)
+          })
 
-        },
-        formatDate(numb, format) {
-            const old = numb - 1;
-            const t = Math.round((old - Math.floor(old)) * 24 * 60 * 60);
-            const time = new Date(1900, 0, old, 0, 0, t)
-            const year = time.getFullYear();
-            const month = time.getMonth() + 1;
-            const date = time.getDate();
-            return year + format + (month < 10 ? '0' + month : month) + format + (date < 10 ? '0' + date : date) + ' 00:00:00'
-        },
-        getSummaries(param) {
-
-            const { columns, data } = param;
-            const sums = [];
-            columns.forEach((column, index) => {
-                if (index === 0) {
-                    sums[index] = "合计";
-                    return;
-                } else if (index == 5||index == 7) {
-                    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 prev + curr;
-                            } else {
-                                return prev;
-                            }
-                        }, 0);
-                        sums[index] += "";
-                    } else {
-                        sums[index] = "--";
-                    }
-                } else {
-                    sums[index] = "--";
-                }
-            });
-
-            return sums;
-
-        },
-        getList() {
-            this.listLoading = true
-               if (this.selectStatus == '已收款') {
-                    this.listQuery.type.status = 1
-                } else if (this.selectStatus == '未收款') {
-                    this.listQuery.type.status = 0
-                }
-                this.listLoading = true
-                listSettlementManagement(this.listQuery).then(response => {
-                    this.list = response.data.data.items
-                    this.total = response.data.data.total
-                    this.listLoading = false
+          if (_this.excelFreightspace) {
+            importWord(_this.excelFreightspace).then((response) => {
+              if (response.status == '200') {
+                _this.$notify({
+                  title: '成功',
+                  message: '导入成功',
+                  type: 'success'
                 })
-                    .catch(() => {
-                        this.list = []
-                        this.total = 0
-                        this.listLoading = false
-                    })
-
-        
-
-
+                _this.getList()
+              }
+            })
+          }
+        }
+        reader.readAsArrayBuffer(f)
+      }
+      if (rABS) {
+        reader.readAsArrayBuffer(f)
+      } else {
+        reader.readAsBinaryString(f)
+      }
+    },
+    formatDate(numb, format) {
+      const old = numb - 1
+      const t = Math.round((old - Math.floor(old)) * 24 * 60 * 60)
+      const time = new Date(1900, 0, old, 0, 0, t)
+      const year = time.getFullYear()
+      const month = time.getMonth() + 1
+      const date = time.getDate()
+      return year + format + (month < 10 ? '0' + month : month) + format + (date < 10 ? '0' + date : date) + ' 00:00:00'
+    },
+    getSummaries(param) {
+      const { columns, data } = param
+      const sums = []
+      columns.forEach((column, index) => {
+        if (index === 0) {
+          sums[index] = '合计'
+          return
+        } else if (index == 5||index == 7) {
+          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 prev + curr
+              } else {
+                return prev
+              }
+            }, 0)
+            sums[index] += ''
+          } else {
+            sums[index] = '--'
+          }
+        } else {
+          sums[index] = '--'
+        }
+      })
 
+      return sums
+    },
+    getList() {
+      const that = this
+      if (that.selectDate&&that.selectDate.length > 0) {
+        that.listQuery.type.startDate = dayjs(that.selectDate[0]).format('YYYY-MM-DD')
+        that.listQuery.type.endDate = dayjs(that.selectDate[1]).format('YYYY-MM-DD')
+      } else {
+        that.listQuery.type.startDate = ''
+        that.listQuery.type.endDate = ''
+      }
 
-        },
-        handleFilter() {
-            this.listQuery.page = 1
-            this.getList()
-        },
-        resetForm() {
-            this.dataForm = {
-                id: undefined
-            }
-        },
-        handleCreate() {
-            this.resetForm()
-            this.dialogStatus = 'create'
-            this.dialogFormVisible = true
-            this.$nextTick(() => {
-                this.$refs['dataForm'].clearValidate()
-            })
-        },
-        createData() {
-            this.$refs['dataForm'].validate(valid => {
-                if (valid) {
-                    this.submiting = true
-                    createSettlementManagement(this.dataForm).then(response => {
-                        this.list.unshift(response.data.data)
-                        this.dialogFormVisible = false
-                        this.$notify.success({
-                            title: '成功',
-                            message: '添加成功'
-                        })
-                        this.submiting = false
-                    })
-                        .catch(response => {
-                            this.$notify.error({
-                                title: '失败',
-                                message: response.data.errmsg
-                            })
-                            this.submiting = false
-                        })
-                }
+      this.listLoading = true
+      if (this.selectStatus == '已收款') {
+        this.listQuery.type.status = 1
+      } else if (this.selectStatus == '未收款') {
+        this.listQuery.type.status = 0
+      }
+      this.listLoading = true
+      listSettlementManagement(this.listQuery).then(response => {
+        this.list = response.data.data.items
+        this.total = response.data.data.total
+        this.listLoading = false
+      })
+        .catch(() => {
+          this.list = []
+          this.total = 0
+          this.listLoading = false
+        })
+    },
+    handleFilter() {
+      this.listQuery.page = 1
+      this.getList()
+    },
+    resetForm() {
+      this.dataForm = {
+        id: undefined
+      }
+    },
+    handleCreate() {
+      this.resetForm()
+      this.dialogStatus = 'create'
+      this.dialogFormVisible = true
+      this.$nextTick(() => {
+        this.$refs['dataForm'].clearValidate()
+      })
+    },
+    createData() {
+      this.$refs['dataForm'].validate(valid => {
+        if (valid) {
+          this.submiting = true
+          createSettlementManagement(this.dataForm).then(response => {
+            this.list.unshift(response.data.data)
+            this.dialogFormVisible = false
+            this.$notify.success({
+              title: '成功',
+              message: '添加成功'
             })
-        },
-        handleUpdate(row) {
-            this.dataForm = Object.assign({}, row)
-            this.dialogStatus = 'update'
-            this.dialogFormVisible = true
-            this.$nextTick(() => {
-                this.$refs['dataForm'].clearValidate()
+            this.submiting = false
+          })
+            .catch(response => {
+              this.$notify.error({
+                title: '失败',
+                message: response.data.errmsg
+              })
+              this.submiting = false
             })
-        },
-        updateData() {
-            this.$refs['dataForm'].validate(valid => {
-                if (valid) {
-                    this.submiting = true
-                    updateSettlementManagement(this.dataForm).then(() => {
-                        for (const v of this.list) {
-                            if (v.id === this.dataForm.id) {
-                                const index = this.list.indexOf(v)
-                                this.list.splice(index, 1, this.dataForm)
-                                break
-                            }
-                        }
-                        this.dialogFormVisible = false
-                        this.submiting = false
-                        this.$notify.success({
-                            title: '成功',
-                            message: '更新成功'
-                        })
-                    })
-                        .catch(response => {
-                            this.$notify.error({
-                                title: '失败',
-                                message: response.data.errmsg
-                            })
-                            this.submiting = false
-                        })
-                }
+        }
+      })
+    },
+    handleUpdate(row) {
+      this.dataForm = Object.assign({}, row)
+      this.dialogStatus = 'update'
+      this.dialogFormVisible = true
+      this.$nextTick(() => {
+        this.$refs['dataForm'].clearValidate()
+      })
+    },
+    updateData() {
+      this.$refs['dataForm'].validate(valid => {
+        if (valid) {
+          this.submiting = true
+          updateSettlementManagement(this.dataForm).then(() => {
+            for (const v of this.list) {
+              if (v.id === this.dataForm.id) {
+                const index = this.list.indexOf(v)
+                this.list.splice(index, 1, this.dataForm)
+                break
+              }
+            }
+            this.dialogFormVisible = false
+            this.submiting = false
+            this.$notify.success({
+              title: '成功',
+              message: '更新成功'
             })
-        },
-        handleDelete(row) {
-            this.$confirm('此操作将永久删除该记录---' + row.id + '---, 是否继续?', '提示', {
-                confirmButtonText: '确定',
-                cancelButtonText: '取消',
-                type: 'warning'
-            }).then(() => {
-                deleteSettlementManagement(row.id).then(response => {
-                    this.$notify.success({
-                        title: '成功',
-                        message: '删除成功'
-                    })
-                    const index = this.list.indexOf(row)
-                    this.list.splice(index, 1)
-                })
-                    .catch(response => {
-                        this.$notify.error({
-                            title: '失败',
-                            message: response.data.errmsg
-                        })
-                    })
-            }).catch(() => {
-                return false
+          })
+            .catch(response => {
+              this.$notify.error({
+                title: '失败',
+                message: response.data.errmsg
+              })
+              this.submiting = false
             })
         }
+      })
+    },
+    handleDelete(row) {
+      this.$confirm('此操作将永久删除该记录---' + row.id + '---, 是否继续?', '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+      }).then(() => {
+        deleteSettlementManagement(row.id).then(response => {
+          this.$notify.success({
+            title: '成功',
+            message: '删除成功'
+          })
+          const index = this.list.indexOf(row)
+          this.list.splice(index, 1)
+        })
+          .catch(response => {
+            this.$notify.error({
+              title: '失败',
+              message: response.data.errmsg
+            })
+          })
+      }).catch(() => {
+        return false
+      })
     }
+  }
 }
 </script>

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 5 - 0
unimall-admin/static/cdn/vue/2.6.10/vue.min.js


+ 373 - 0
unimall-admin/static/print.html

@@ -0,0 +1,373 @@
+<!DOCTYPE html>
+<html>
+	<head>
+		<meta charset="utf-8">
+		<title></title>
+		<style>
+			table,
+			table tr th,
+			table tr td {
+				border: 2px solid #333333;
+				padding: 5px 0;
+				height: 43px;
+			}
+
+			#app {
+				/* height: 98vh;
+        position: relative; */
+			}
+
+			.content {
+				width: 1000px;
+				padding: 30px 20px 20px 20px;
+				font-size: 18px;
+				height: 660px;
+			}
+
+			.a5-content {
+				height: 130vh;
+			}
+
+			table {
+				width: 100%;
+				text-align: center;
+				border-collapse: collapse;
+				border: 3px solid #333333;
+			}
+
+			.col-bgc {
+				background: #f6f7fb;
+			}
+
+			.bottom-row1 {
+				display: flex;
+				/* justify-content: space-between; */
+				margin-top: 5px 0;
+			}
+
+			.bottom-row2 {
+				display: flex;
+			}
+
+			img,
+			.left {
+				width: 120px;
+				height: 120px;
+				position: absolute;
+				right: 20px;
+				top: 12px;
+			}
+
+			.config {
+				margin-top: 10px;
+				margin-right: 240px;
+			}
+
+			.autograph {
+				margin-top: 10px;
+				margin-right: 180px;
+			}
+
+			.bottom-row3 {
+				margin: 10px 0;
+			}
+
+			.title {
+				text-align: center;
+				font-size: 36px;
+				font-weight: 500;
+				position: relative;
+			}
+
+			.number {
+				text-align: right;
+				margin-bottom: 10px;
+				margin-top: 30px;
+			}
+
+			.small-row {
+				display: flex;
+			}
+
+			.small-content {
+				width: 300px;
+				/* margin: 0 auto;
+        border: 1px solid #ccc;
+        padding: 20px 20px 160px 20px;
+        position: absolute;
+        top: 0;
+        bottom: 0;
+        left: 0;
+        right: 0;
+        margin: auto; */
+			}
+
+			.small-title {
+				text-align: center;
+				font-size: 18px;
+				/* display: flex; */
+				justify-content: space-between;
+				align-items: center;
+			}
+
+			.numberNo {
+				font-size: 36px;
+				margin: auto;
+			}
+
+			.small-row {
+				display: flex;
+				justify-content: space-between;
+				margin: 10px;
+			}
+
+			.small-img {
+				margin-right: 0;
+			}
+
+			.sign {
+				margin-right: 100px;
+			}
+
+			.small-code {
+				position: relative;
+				left: calc(50% - 55px)
+			}
+		</style>
+	</head>
+	<body>
+		<div id="app">
+			<div v-if="selectPrint">
+				<div v-for="(item,index) in tableData1" :key="index">
+					<div class="content" :class="pageType=='A5'?'a5-content':''">
+						<div class="title">入库检斤单</div>
+						<div class="left">
+							<img :src="item.codeUrl" alt="">
+						</div>
+						<div class="number">{{item.number}}</div>
+						<table class="table">
+							<tr class="row">
+								<td class="col col-bgc" v-if="item.serviceManagementType == 3">客户姓名</td>
+								<td class="col" colspan="2" v-if="item.serviceManagementType == 3">{{item.customer}}
+								</td>
+								<td class="col col-bgc" v-if="item.serviceManagementType == 1">发货单位</td>
+								<td class="col" colspan="2" v-if="item.serviceManagementType == 1">
+									{{item.contractManagement ? item.contractManagement.seller : ""}}
+								</td>
+								<td class="col col-bgc" v-if="item.serviceManagementType == 3">客户电话</td>
+								<td class="col" v-if="item.serviceManagementType == 3">{{item.customerPhone}}</td>
+								<td class="col col-bgc" v-if="item.serviceManagementType == 1">联系电话</td>
+								<td class="col" v-if="item.serviceManagementType == 1">
+									{{item.contractManagement ? item.contractManagement.sellerPhone : ""}}
+								</td>
+								<td class="col col-bgc">车牌号</td>
+								<td class="col" colspan="2">{{item.carNumber}}</td>
+							</tr>
+							<tr class="row">
+								<td class="col col-bgc">收货单位</td>
+								<td class="col" colspan="2">{{item.compName}}</td>
+								<td class="col col-bgc">联系人</td>
+								<td class="col">{{item.person}}</td>
+								<td class="col col-bgc">联系电话</td>
+								<td class="col" colspan="2">{{item.personPhone}}</td>
+							</tr>
+							<tr class="row">
+								<td class="col col-bgc">货名</td>
+								<td class="col">{{item.goodsName}}</td>
+								<td class="col col-bgc">类型</td>
+								<td class="col">{{item.type}}</td>
+								<td class="col col-bgc">容量(克/升)</td>
+								<td class="col">
+									{{item.qualityInspectionManagement?item.qualityInspectionManagement.bulkDensity:''}}
+								</td>
+								<td class="col col-bgc">不完善粒(%)</td>
+								<td class="col">
+									{{item.qualityInspectionManagement?item.qualityInspectionManagement.imperfectGrain:''}}
+								</td>
+							</tr>
+							<tr class="row">
+								<td class="col col-bgc">等级</td>
+								<td class="col">
+									{{item.qualityInspectionManagement?item.qualityInspectionManagement.grade:''}}
+								</td>
+								<td class="col col-bgc">水分(%)</td>
+								<td class="col">
+									{{item.qualityInspectionManagement?item.qualityInspectionManagement.waterContent:''}}
+								</td>
+								<td class="col col-bgc">热损伤(%)</td>
+								<td class="col">
+									{{item.qualityInspectionManagement?item.qualityInspectionManagement.jiaorenli:''}}
+								</td>
+								<td class="col col-bgc">质检时间</td>
+								<td class="col">
+									{{item.qualityInspectionManagement?item.qualityInspectionManagement.qualityDate:''}}
+								</td>
+							</tr>
+							<tr class="row">
+								<td class="col col-bgc">杂质(%)</td>
+								<td class="col">
+									{{item.qualityInspectionManagement?item.qualityInspectionManagement.impurity:''}}
+								</td>
+								<td class="col col-bgc">霉变粒(%)</td>
+								<td class="col">
+									{{item.qualityInspectionManagement?item.qualityInspectionManagement.mildewGrain:''}}
+								</td>
+								<td class="col col-bgc">扣杂</td>
+								<td class="col">
+									{{item.qualityInspectionManagement?item.qualityInspectionManagement.buckleMiscellaneous:''}}
+								</td>
+								<td class="col " colspan="2"></td>
+							</tr>
+							<tr class="row">
+								<td class="col col-bgc">毛重(公斤)</td>
+								<td class="col">{{item.grossWeight}}</td>
+								<td class="col col-bgc">皮重(公斤)</td>
+								<td class="col">{{item.tare}}</td>
+								<td class="col col-bgc">扣重(公斤)</td>
+								<td class="col">{{item.buckleMiscellaneous}}</td>
+								<td class="col col-bgc">净重(公斤)</td>
+								<td class="col">{{item.netWeight}}</td>
+
+							</tr>
+							<tr class="row">
+								<td class="col col-bgc" colspan="2">毛重检斤时间</td>
+								<td class="col" colspan="2">{{item.grossDate}}</td>
+								<td class="col col-bgc" colspan="2"> 皮重检斤时间</td>
+								<td class="col" colspan="2">{{item.tareDate}}</td>
+							</tr>
+						</table>
+						<div class="bottom">
+							<div class="bottom-row1">
+								<div>毛检:{{item.secretaryWeigher}}</div>
+								<div style="margin-left:60px">皮检:{{item.skinInspector}}</div>
+							</div>
+							<div class="bottom-row2">
+								<div class="config">收货单位签名或盖章:</div>
+								<div class="autograph">客户签名:</div>
+								<div class="autograph">司机签名:</div>
+							</div>
+						</div>
+					</div>
+				</div>
+			</div>
+			<div v-else>
+				<div class="title">快递业务单</div>
+				<div class="number">{{tableData.number}}</div>
+				<table class="table">
+					<tr class="row">
+						<td class="col col-bgc">业务编号</td>
+						<td class="col">20200501</td>
+						<td class="col col-bgc">日期</td>
+						<td class="col">2020-05-21</td>
+						<td class="col col-bgc">快递公司</td>
+						<td class="col">中国邮政EMS</td>
+
+					</tr>
+					<tr class="row">
+						<td class="col col-bgc">发件人</td>
+						<td class="col">小李</td>
+						<td class="col col-bgc">收件人</td>
+						<td class="col">小王</td>
+						<td class="col col-bgc">客户编号</td>
+						<td class="col">KH123</td>
+					</tr>
+					<tr class="row">
+						<td class="col col-bgc">发件人电话</td>
+						<td class="col">13333333333</td>
+						<td class="col col-bgc">收件人电话</td>
+						<td class="col">14444444444</td>
+						<td class="col col-bgc">重量(KG)</td>
+						<td class="col">100</td>
+					</tr>
+					<tr class="row">
+						<td class="col col-bgc">货品</td>
+						<td class="col">大米</td>
+						<td class="col col-bgc">收件人地址</td>
+						<td class="col">北京王府井</td>
+						<td class="col col-bgc">体积(立方)</td>
+						<td class="col">111</td>
+
+					</tr>
+					<tr class="row">
+						<td class="col col-bgc">金额</td>
+						<td class="col">1000</td>
+						<td class="col col-bgc"></td>
+						<td class="col"></td>
+						<td class="col col-bgc"></td>
+						<td class="col"></td>
+					</tr>
+			</div>
+		</div>
+	</body>
+	<script src="cdn/vue/2.6.10/vue.min.js"></script>
+	<script type="text/javascript">
+		new Vue({
+			el: '#app',
+			data: {
+				tableData: {},
+				tableData1: [],
+				selectPrint: false,
+				name: "",
+				bigContent: false,
+				smallContent: false,
+				pageType: ''
+			},
+			computed: {},
+			methods: {
+				tableRowClassName({
+					row,
+					rowIndex
+				}) {
+					if (rowIndex === 1) {
+						return 'warning-row';
+					} else if (rowIndex === 3) {
+						return 'success-row';
+					}
+					return '';
+				},
+				getQueryVariable(variable) {
+					var query = window.location.search.substring(1);
+					var vars = query.split("&");
+					for (var i = 0; i < vars.length; i++) {
+						var pair = vars[i].split("=");
+						if (pair[0] == variable) {
+							return pair[1];
+						}
+					}
+					return (false);
+				},
+				printSmall() {},
+				printBig() {},
+			},
+			mounted() {
+				// let _data = localStorage.getItem('inspect')
+				// let _type = decodeURIComponent(this.getQueryVariable("type"))
+				// this.pageType = decodeURIComponent(this.getQueryVariable("radioType"))
+				// if (_type == 2) {
+				//   this.bigContent = true
+				//   this.smallContent = false
+				// } else {
+				//   this.smallContent = true
+				//   this.bigContent = false
+				// }
+				// if (_data == 'false') {
+				//   this.selectPrint = true;
+				//   this.tableData1 = JSON.parse(localStorage.getItem('selectPrint_jjSelectPrintList'))
+				// } else {
+				//   this.tableData = JSON.parse(_data)
+				//   console.log(this.tableData)
+				// }
+				// // sessionStorage.setItem('record_print', JSON.stringify(response))
+				// // this.tableData = JSON.parse(sessionStorage.getItem("record_print"))
+
+				// document.title = "粮食检斤单"
+				// window.print()
+				// window.onafterprint = function(event) {
+				//   window.history.back(-1)
+				// };
+			},
+			watch: {}
+		})
+	</script>
+
+</html>

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels