Procházet zdrojové kódy

Merge remote-tracking branch 'origin/develop' into develop

howie před 2 roky
rodič
revize
72672de42b
1 změnil soubory, kde provedl 94 přidání a 291 odebrání
  1. 94 291
      src/views/finance/receipt_list.vue

+ 94 - 291
src/views/finance/receipt_list.vue

@@ -3,23 +3,12 @@
     <div v-if="showDetail == 1">
       <!-- 筛选条件 -->
       <div>
-        <el-form
-          ref="searchForm"
-          :model="searchForm"
-          label-width="100px"
-          size="mini"
-          label-position="left"
-        >
+        <el-form ref="searchForm" :model="searchForm" label-width="100px" size="mini" label-position="left">
           <el-row :gutter="20">
             <el-col :xs="24" :sm="12" :lg="6">
               <el-form-item label="单据类型" prop="billType">
                 <!-- <el-input v-model="searchForm.billType" placeholder="请输入"></el-input> -->
-                <el-select
-                  v-model="searchForm.billType"
-                  class="selectStyle"
-                  placeholder="请选择"
-                  filterable
-                >
+                <el-select v-model="searchForm.billType" class="selectStyle" placeholder="请选择" filterable>
                   <el-option label="收款单" value="1"> </el-option>
                   <el-option label="付款单" value="3"> </el-option>
                   <el-option label="退款单" value="2"> </el-option>
@@ -28,28 +17,14 @@
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6">
               <el-form-item label="单据编号" prop="billNo">
-                <el-input
-                  v-model="searchForm.billNo"
-                  placeholder="请输入"
-                ></el-input>
+                <el-input v-model="searchForm.billNo" placeholder="请输入"></el-input>
               </el-form-item>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6">
               <el-form-item label="往来单位" prop="wlCompanyType">
                 <!-- <el-input v-model="searchForm.wlCompanyType" placeholder="请输入"></el-input> -->
-                <el-select
-                  class="selectStyle"
-                  v-model="searchForm.wlCompanyType"
-                  placeholder="请选择"
-                  filterable
-                  clearable
-                >
-                  <el-option
-                    v-for="(v, i) in customerList"
-                    :key="i"
-                    :label="v.name"
-                    :value="v.name"
-                  >
+                <el-select class="selectStyle" v-model="searchForm.wlCompanyType" placeholder="请选择" filterable clearable>
+                  <el-option v-for="(v, i) in customerList" :key="i" :label="v.name" :value="v.name">
                   </el-option>
                 </el-select>
               </el-form-item>
@@ -57,29 +32,15 @@
             <el-col :xs="24" :sm="12" :lg="6">
               <el-form-item label="付款单位" prop="customerName">
                 <!-- <el-input v-model="searchForm.customerName" placeholder="请输入"></el-input> -->
-                <el-select
-                  class="selectStyle"
-                  v-model="searchForm.customerName"
-                  placeholder="请选择"
-                  filterable
-                  clearable
-                >
-                  <el-option
-                    v-for="(v, i) in customerList"
-                    :key="i"
-                    :label="v.name"
-                    :value="v.name"
-                  >
+                <el-select class="selectStyle" v-model="searchForm.customerName" placeholder="请选择" filterable clearable>
+                  <el-option v-for="(v, i) in customerList" :key="i" :label="v.name" :value="v.name">
                   </el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6">
               <el-form-item label="结算方式" prop="settleType">
-                <el-input
-                  v-model="searchForm.settleType"
-                  placeholder="请输入"
-                ></el-input>
+                <el-input v-model="searchForm.settleType" placeholder="请输入"></el-input>
               </el-form-item>
             </el-col>
             <!-- <el-col :xs="24" :sm="12" :lg="6">
@@ -89,46 +50,21 @@
             </el-col> -->
             <el-col :xs="24" :sm="12" :lg="6">
               <el-form-item label="开始时间" prop="startTime">
-                <el-date-picker
-                  class="selectStyle"
-                  v-model="searchForm.startTime"
-                  type="datetime"
-                  placeholder="选择日期时间"
-                  default-time="00:00:00"
-                  value-format="yyyy-MM-dd HH:mm:ss"
-                >
+                <el-date-picker class="selectStyle" v-model="searchForm.startTime" type="datetime" placeholder="选择日期时间" default-time="00:00:00" value-format="yyyy-MM-dd HH:mm:ss">
                 </el-date-picker>
               </el-form-item>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6">
               <el-form-item label="结束时间" prop="endTime">
-                <el-date-picker
-                  class="selectStyle"
-                  v-model="searchForm.endTime"
-                  type="datetime"
-                  placeholder="选择日期时间"
-                  default-time="00:00:00"
-                  value-format="yyyy-MM-dd HH:mm:ss"
-                >
+                <el-date-picker class="selectStyle" v-model="searchForm.endTime" type="datetime" placeholder="选择日期时间" default-time="00:00:00" value-format="yyyy-MM-dd HH:mm:ss">
                 </el-date-picker>
               </el-form-item>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6">
               <el-form-item label="区域" prop="websitNumber">
                 <!-- <el-input v-model="searchForm.customerName" placeholder="请输入"></el-input> -->
-                <el-select
-                  class="selectStyle"
-                  v-model="searchForm.websitNumber"
-                  placeholder="请选择"
-                  filterable
-                  clearable
-                >
-                  <el-option
-                    v-for="(v, i) in orage"
-                    :key="i"
-                    :label="v.label"
-                    :value="v.value"
-                  >
+                <el-select class="selectStyle" v-model="searchForm.websitNumber" placeholder="请选择" filterable clearable>
+                  <el-option v-for="(v, i) in orage" :key="i" :label="v.label" :value="v.value">
                   </el-option>
                 </el-select>
               </el-form-item>
@@ -137,9 +73,7 @@
             <el-col :xs="24" :sm="12" :lg="24">
               <el-form-item label="" class="fr">
                 <el-button size="mini" @click="cancelFn">清空</el-button>
-                <el-button size="mini" type="primary" @click="searchFn"
-                  >搜索</el-button
-                >
+                <el-button size="mini" type="primary" @click="searchFn">搜索</el-button>
               </el-form-item>
             </el-col>
           </el-row>
@@ -164,33 +98,10 @@
       <!-- 列表 -->
       <div class="mymain-container">
         <div class="table">
-          <el-table
-            ref="table"
-            v-loading="listLoading"
-            :data="dataList"
-            element-loading-text="Loading"
-            border
-            fit
-            highlight-current-row
-            stripe
-            show-summary
-            :summary-method="getSummaries"
-            @select="handleSelect"
-            @select-all="handleSelectAll"
-          >
-            <el-table-column
-              align="center"
-              type="selection"
-              width="55"
-            ></el-table-column>
+          <el-table ref="table" v-loading="listLoading" :data="dataList" element-loading-text="Loading" border fit highlight-current-row stripe show-summary :summary-method="getSummaries" @select="handleSelect" @select-all="handleSelectAll">
+            <el-table-column align="center" type="selection" width="55"></el-table-column>
 
-            <el-table-column
-              align="left"
-              label="单据类型"
-              prop="billType"
-              min-width="160"
-              show-overflow-tooltip
-            >
+            <el-table-column align="left" label="单据类型" prop="billType" min-width="160" show-overflow-tooltip>
               <template slot-scope="scope">
                 {{
                   scope.row.billType == 1
@@ -203,25 +114,13 @@
                 }}
               </template>
             </el-table-column>
-            <el-table-column
-              align="left"
-              label="单据编码"
-              prop="billNo"
-              min-width="160"
-              show-overflow-tooltip
-            >
+            <el-table-column align="left" label="单据编码" prop="billNo" min-width="160" show-overflow-tooltip>
               <template slot-scope="scope">
                 <CopyButton :copyText="scope.row.billNo" />
                 <span>{{ scope.row.billNo }}</span>
               </template>
             </el-table-column>
-            <el-table-column
-              align="left"
-              label="业务日期"
-              prop="theTime"
-              min-width="160"
-              show-overflow-tooltip
-            >
+            <el-table-column align="left" label="业务日期" prop="theTime" min-width="160" show-overflow-tooltip>
             </el-table-column>
             <!-- <el-table-column
               align="left"
@@ -230,69 +129,25 @@
               min-width="160"
               show-overflow-tooltip
             ></el-table-column> -->
-            <el-table-column
-              align="left"
-              label="单据状态"
-              prop="status"
-              min-width="160"
-              show-overflow-tooltip
-            >
+            <el-table-column align="left" label="单据状态" prop="status" min-width="160" show-overflow-tooltip>
               <template slot-scope="scope">
-                <el-tag size="mini" v-show="scope.row.status == 'A'"
-                  >保存</el-tag
-                >
-                <el-tag size="mini" v-show="scope.row.status == 'B'" type="info"
-                  >审核中</el-tag
-                >
-                <el-tag
-                  size="mini"
-                  v-show="scope.row.status == 'C'"
-                  type="success"
-                  >已审核</el-tag
-                >
-                <el-tag
-                  size="mini"
-                  v-show="scope.row.status == 'D'"
-                  type="warning"
-                  >重新审核</el-tag
-                >
+                <el-tag size="mini" v-show="scope.row.status == 'A'">保存</el-tag>
+                <el-tag size="mini" v-show="scope.row.status == 'B'" type="info">审核中</el-tag>
+                <el-tag size="mini" v-show="scope.row.status == 'C'" type="success">已审核</el-tag>
+                <el-tag size="mini" v-show="scope.row.status == 'D'" type="warning">重新审核</el-tag>
               </template>
             </el-table-column>
-            <el-table-column
-              align="left"
-              label="钱包"
-              prop="walletName"
-              min-width="160"
-              show-overflow-tooltip
-            >
+            <el-table-column align="left" label="钱包" prop="walletName" min-width="160" show-overflow-tooltip>
             </el-table-column>
-            <el-table-column
-              align="right"
-              label="表头·应收金额"
-              prop=""
-              min-width="160"
-              show-overflow-tooltip
-            >
+            <el-table-column align="right" label="表头·应收金额" prop="" min-width="160" show-overflow-tooltip>
             </el-table-column>
-            <el-table-column
-              align="left"
-              label="往来单位"
-              prop="wlCompanyName"
-              min-width="260"
-              show-overflow-tooltip
-            >
+            <el-table-column align="left" label="往来单位" prop="wlCompanyName" min-width="260" show-overflow-tooltip>
               <template slot-scope="scope">
                 <CopyButton :copyText="scope.row.wlCompanyName" />
                 <span>{{ scope.row.wlCompanyName }}</span>
               </template>
             </el-table-column>
-            <el-table-column
-              align="right"
-              label="表头·实收金额"
-              prop="amount"
-              min-width="160"
-              show-overflow-tooltip
-            >
+            <el-table-column align="right" label="表头·实收金额" prop="amount" min-width="160" show-overflow-tooltip>
               <template slot-scope="scope">
                 {{
                   scope.row.billType == 3 || scope.row.billType == 2
@@ -301,13 +156,7 @@
                 }}
               </template>
             </el-table-column>
-            <el-table-column
-              align="right"
-              label="收款金额"
-              prop=""
-              min-width="160"
-              show-overflow-tooltip
-            ></el-table-column>
+            <el-table-column align="right" label="收款金额" prop="" min-width="160" show-overflow-tooltip></el-table-column>
             <!-- <el-table-column
               align="center"
               label="结算方式"
@@ -322,25 +171,13 @@
               min-width="160"
               show-overflow-tooltip
             ></el-table-column> -->
-            <el-table-column
-              align="left"
-              label="付款单位"
-              prop="customerName"
-              min-width="260"
-              show-overflow-tooltip
-            >
+            <el-table-column align="left" label="付款单位" prop="customerName" min-width="260" show-overflow-tooltip>
               <template slot-scope="scope">
                 <CopyButton :copyText="scope.row.customerName" />
                 <span>{{ scope.row.customerName }}</span>
               </template>
             </el-table-column>
-            <el-table-column
-              align="right"
-              label="表体·实收金额"
-              prop="amount"
-              min-width="160"
-              show-overflow-tooltip
-            >
+            <el-table-column align="right" label="表体·实收金额" prop="amount" min-width="160" show-overflow-tooltip>
               <template slot-scope="scope">
                 {{
                   scope.row.billType == 3 || scope.row.billType == 2
@@ -349,46 +186,17 @@
                 }}
               </template>
             </el-table-column>
-            <el-table-column
-              align="left"
-              label="勾对"
-              prop=""
-              min-width="160"
-              show-overflow-tooltip
-            ></el-table-column>
+            <el-table-column align="left" label="勾对" prop="" min-width="160" show-overflow-tooltip></el-table-column>
 
-            <el-table-column
-              align="left"
-              label="备注"
-              prop="remark"
-              min-width="160"
-              show-overflow-tooltip
-            >
+            <el-table-column align="left" label="备注" prop="remark" min-width="160" show-overflow-tooltip>
             </el-table-column>
-            <el-table-column
-              align="center"
-              label="操作"
-              min-width="160"
-              show-overflow-tooltip
-              fixed="right"
-            >
+            <el-table-column align="center" label="操作" min-width="160" show-overflow-tooltip fixed="right">
               <template slot-scope="scope">
-                <el-button
-                  type="text"
-                  class="textColor"
-                  v-if="
+                <el-button type="text" class="textColor" v-if="
                     $checkBtnRole('examine', $route.meta.roles) &&
                     scope.row.status == 'C'
-                  "
-                  @click="NoExamineFn(scope.row.id)"
-                  >弃审</el-button
-                >
-                <el-button
-                  type="text"
-                  class="textColor"
-                  @click="seeFn(scope.row.id)"
-                  >查看</el-button
-                >
+                  " @click="NoExamineFn(scope.row.id)">弃审</el-button>
+                <el-button type="text" class="textColor" @click="seeFn(scope.row.id)">查看</el-button>
                 <!-- <el-button
                   type="text"
                   class="textColor"
@@ -402,25 +210,13 @@
         </div>
         <!-- 分页 -->
         <div class="fr">
-          <el-pagination
-            @size-change="handleSizeChange"
-            @current-change="handleCurrentChange"
-            :current-page="currentPage"
-            :page-sizes="[10, 20, 30, 50,500]"
-            :page-size="10"
-            layout="total, sizes, prev, pager, next, jumper"
-            :total="listTotal"
-          >
+          <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage" :page-sizes="[10, 20, 30, 50,500]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="listTotal">
           </el-pagination>
         </div>
       </div>
     </div>
 
-    <ReceiptPrint
-      :listItem="queryItem"
-      v-else-if="showDetail == 2"
-      @backListFormDetail="backList"
-    />
+    <ReceiptPrint :listItem="queryItem" v-else-if="showDetail == 2" @backListFormDetail="backList" />
     <ReceiptListDetail :detailId="detailId" v-else />
     <print-preview ref="preView" />
   </div>
@@ -439,7 +235,7 @@ import {
 } from "@/api/finance/receipt_list";
 import ReceiptListDetail from "./components/receipt_list-detail";
 import ReceiptPrint from "@/views/finance/components/receipt_print.vue";
-import { changeNumberMoneyToChinese,dateFormat } from "@/utils/util";
+import { changeNumberMoneyToChinese, dateFormat } from "@/utils/util";
 import { numToFixed } from "@/filters";
 export default {
   components: {
@@ -462,7 +258,7 @@ export default {
         settleType: "",
         startTime: "",
         endTime: "",
-        websitNumber:''
+        websitNumber: "",
       }, //搜索表单
       listLoading: false, // 列表加载loading
       showDetail: 1,
@@ -472,17 +268,16 @@ export default {
       company: "",
       panel: "",
       hiprintTemplate: "",
-      orage:[
+      orage: [
         {
-          value:"GZ",
-          label:'广州'
+          value: "GZ",
+          label: "广州",
         },
         {
-          value:'FS',
-          label:'佛山'
-        }
-      ]
-
+          value: "FS",
+          label: "佛山",
+        },
+      ],
     };
   },
   computed: {
@@ -493,7 +288,7 @@ export default {
     },
   },
   created() {
-    this.getDataList({ pageSize: this.pageSize, pageNum: this.currentPage });
+    this.getDataList();
     this.getCustomerDataList();
     this.getCompanyList();
   },
@@ -551,12 +346,12 @@ export default {
     handleSizeChange(val) {
       this.pageSize = val;
       this.currentPage = 1;
-      this.getDataList({ pageNum: this.currentPage, pageSize: this.pageSize });
+      this.getDataList();
     },
     // 更改当前页
     handleCurrentChange(val) {
       this.currentPage = val;
-      this.getDataList({ pageNum: this.currentPage, pageSize: this.pageSize });
+      this.getDataList();
     },
     //清空
     cancelFn() {
@@ -564,14 +359,22 @@ export default {
     },
     //搜索
     searchFn() {
-      this.getDataList({
-        ...this.searchForm,
-        pageSize: this.pageSize,
-        pageNum: this.currentPage,
-      });
+      this.getDataList();
     },
-    async getDataList(data) {
-      const res = await getK3ReceiptList(data);
+    async getDataList() {
+      let params = {
+        billType: this.searchForm.billType,
+        billNo: this.searchForm.billNo,
+        wlCompanyType: this.searchForm.wlCompanyType,
+        customerName: this.searchForm.customerName,
+        settleType: this.searchForm.settleType,
+        startTime: this.searchForm.startTime,
+        endTime: this.searchForm.endTime,
+        websitNumber: this.searchForm.websitNumber,
+        pageNum: this.currentPage,
+        pageSize: this.pageSize,
+      };
+      const res = await getK3ReceiptList(params);
       // console.log(res);
       // res.data.records.forEach((item) => {
       //   item.sums1 = [];
@@ -601,8 +404,8 @@ export default {
       this.queryItem = {};
       this.isShowPrint = false;
     },
-  // 获取当前时间
-  nowDate() {
+    // 获取当前时间
+    nowDate() {
       var date = new Date();
       var seperator1 = "-";
       var year = date.getFullYear();
@@ -626,43 +429,43 @@ export default {
       // 兼容批量打印
       let params = !type ? this.tableSelection : [row.id];
       let len = params.length;
-      let loadingLen = len
+      let loadingLen = len;
       // 使用 i-- 提升for效率
-      this.$startLoading()
+      this.$startLoading();
       for (let i = len; i > 0; i--) {
         try {
           const { data } = await getK3ReceiptDetail({
-          id: params[i - 1].id || params[i - 1],
-        });
-        // 模板基础配置
-        this.panel = this.hiprintTemplate.addPrintPanel({
-          height: 140,
-          width: 241,
-          fontFamily: "黑体",
-          fontSize: 13,
-          paperFooter: 340,
-          paperHeader: 10,
-          paperNumberDisabled: true,
-        });
-        // 获取收款单模板和基础配置
-        this.panel.addPrintHtml({
-          options: {
-            width: 633,
-            top: 30,
-            left: 20,
+            id: params[i - 1].id || params[i - 1],
+          });
+          // 模板基础配置
+          this.panel = this.hiprintTemplate.addPrintPanel({
+            height: 140,
+            width: 241,
             fontFamily: "黑体",
             fontSize: 13,
-            content: this.setTableDom(data),
-          },
-        });
-        loadingLen--
+            paperFooter: 340,
+            paperHeader: 10,
+            paperNumberDisabled: true,
+          });
+          // 获取收款单模板和基础配置
+          this.panel.addPrintHtml({
+            options: {
+              width: 633,
+              top: 30,
+              left: 20,
+              fontFamily: "黑体",
+              fontSize: 13,
+              content: this.setTableDom(data),
+            },
+          });
+          loadingLen--;
         } catch (error) {
-          this.$endLoading()
-          return
+          this.$endLoading();
+          return;
         }
       }
       if (loadingLen === 0) {
-        this.$endLoading()
+        this.$endLoading();
       }
       // 预览打印内容
       this.$refs.preView.show(this.hiprintTemplate, this.panel);