Parcourir la source

fix: 增加金额、数量、项目数统计

zh il y a 2 ans
Parent
commit
11274fc70c

+ 19 - 0
src/api/deposit_list_v2.js

@@ -15,3 +15,22 @@ export function depositManageHomeListExport(data, name) {
     name
   })
 }
+
+export function getCountList(data) {
+  return request({
+    url: `/v2/deposit-manage/home/count-list?moduleId=${data.moduleId}`,
+    method: 'post',
+    data
+  })
+}
+
+export function updateDepositManageenginInfo(data) {
+  return request({
+    url: `/deposit-manage/update-engin-info`,
+    method: 'post',
+    data
+  })
+}
+
+
+

+ 96 - 39
src/views/deposit_home/deposit_list.vue

@@ -4,20 +4,33 @@
       v-show="showPage == 1"
       ref="pageRef"
       :operation="operation()"
-      :optionsEvensGroup="optionsEvensGroup"
-      :getList="getList2"
-      :exportList="exportList"
-      :tableAttributes="tableAttributes"
-      :tableEvents="tableEvents"
-      :columnParsing="columnParsing"
-      :fieldBeansHook="fieldBeansHook"
+      :options-evens-group="optionsEvensGroup"
+      :get-list="getList2"
+      :export-list="exportList"
+      :table-attributes="tableAttributes"
+      :table-events="tableEvents"
+      :column-parsing="columnParsing"
+      :field-beans-hook="fieldBeansHook"
     >
+      <div slot="moreSearch">
+        <ul class="ulStyle">
+          <li class="title">
+            金额:<span class="num">{{ (Number(numSum.amountC) || 0) | numToFixed }}</span>
+          </li>
+          <li class="title">
+            数量:<span class="num">{{ Number(numSum.totalC) || 0 }}</span>
+          </li>
+          <li class="title">
+            项目数:<span class="num">{{ Number(numSum.totalEC) || 0 }}</span>
+          </li>
+        </ul>
+      </div>
     </template-page>
-    <div class="app-container" v-if="showPage == 2">
+    <div v-if="showPage == 2" class="app-container">
       <DepositListDetail
+        :deposit-manage-id="depositManageId"
+        :ref-engin-record-no="refEnginRecordNo"
         @updateList="updateList"
-        :depositManageId="depositManageId"
-        :refEnginRecordNo="refEnginRecordNo"
         @setShowPage="
           val => {
             $refs.pageRef.refreshList()
@@ -26,11 +39,11 @@
         "
       />
     </div>
-    <div class="app-container" v-else-if="showPage == 3">
+    <div v-else-if="showPage == 3" class="app-container">
       <DepositApplyDeduction
+        :deposit-manage-id="depositManageId"
+        :ref-engin-record-no="refEnginRecordNo"
         @updateList="updateList"
-        :depositManageId="depositManageId"
-        :refEnginRecordNo="refEnginRecordNo"
         @setShowPage="
           val => {
             $refs.pageRef.refreshList()
@@ -39,11 +52,11 @@
         "
       />
     </div>
-    <div class="app-container" v-else-if="showPage == 4">
+    <div v-else-if="showPage == 4" class="app-container">
       <DepositApplySurrender
+        :deposit-manage-id="depositManageId"
+        :ref-engin-record-no="refEnginRecordNo"
         @updateList="updateList"
-        :depositManageId="depositManageId"
-        :refEnginRecordNo="refEnginRecordNo"
         @setShowPage="
           val => {
             $refs.pageRef.refreshList()
@@ -52,11 +65,11 @@
         "
       />
     </div>
-    <div class="app-container" v-else-if="showPage == 5">
+    <div v-else-if="showPage == 5" class="app-container">
       <deposit_replenish
+        :deposit-manage-id="depositManageId"
+        :ref-engin-record-no="refEnginRecordNo"
         @updateList="updateList"
-        :depositManageId="depositManageId"
-        :refEnginRecordNo="refEnginRecordNo"
         @setShowPage="
           val => {
             $refs.pageRef.refreshList()
@@ -74,9 +87,8 @@ import { getDepositManageDate } from '@/api/engin_deposit/refund_list'
 import DepositApplyDeduction from './components/deposit-apply-deduction.vue'
 import DepositApplySurrender from './components/deposit-apply-surrender.vue'
 import { downloadFiles, handleImport } from '@/utils/util'
-import { depositManageHomeList, depositManageHomeListExport } from '@/api/deposit_list_v2.js'
+import { depositManageHomeList, depositManageHomeListExport, getCountList, updateDepositManageenginInfo } from '@/api/deposit_list_v2.js'
 import TemplatePage from '@/components/template/template-page-1.vue'
-import Mixin from '@/mixin'
 import deposit_replenish from './components/deposit_replenish.vue'
 
 export default {
@@ -193,7 +205,12 @@ export default {
       },
       recordSelected: [],
       depositManageId: '',
-      refEnginRecordNo: ''
+      refEnginRecordNo: '',
+      numSum: {
+        totalC: 0,
+        amountC: 0,
+        totalEC: 0
+      }
     }
   },
   computed: {
@@ -203,6 +220,30 @@ export default {
           [
             {
               name: '',
+              // isRole: this.$checkBtnRole('add', this.$route.meta.roles),
+              render: () => {
+                return (
+                  <el-popconfirm
+                    title='更新工程信息吗?'
+                    onOnConfirm={() => {
+                      updateDepositManageenginInfo().then(res => {
+                        this.$message.success('更新工程信息成功')
+                        this.$refs.pageRef.refreshList()
+
+                      })
+                    }}
+                  >
+                    <span slot='reference'>更新工程信息</span>
+                  </el-popconfirm>
+                )
+              }
+            }
+          ]
+        ],
+        [
+          [
+            {
+              name: '',
               isRole: !this.isCustomer,
               render: () => {
                 return (
@@ -243,7 +284,14 @@ export default {
       return list
     },
     // 列表请求函数
-    getList2: depositManageHomeList,
+    getList2(...p) {
+      this.$refs.pageRef.showTable = false
+      this.recordSelected = []
+      getCountList(...p).then(res => {
+        this.numSum = res.data
+      })
+      return depositManageHomeList(...p)
+    },
     // 列表导出函数
     exportList: depositManageHomeListExport,
     // 表格列解析渲染数据更改
@@ -257,11 +305,11 @@ export default {
     operation() {
       return (h, { row, index, column }) => {
         return (
-          <div class="operation-btns">
+          <div class='operation-btns'>
             <el-button
-              type="text"
-              class="textColor"
-              size="mini"
+              type='text'
+              class='textColor'
+              size='mini'
               onClick={() => {
                 this.detailFn(row)
               }}
@@ -270,8 +318,8 @@ export default {
             </el-button>
             {row.examineStatus == '保存' && this.$checkBtnRole('apply', this.$route.meta.roles) ? (
               <el-button
-                type="text"
-                class="textColor"
+                type='text'
+                class='textColor'
                 onClick={() => {
                   this.surrenderFn(row)
                 }}
@@ -283,16 +331,16 @@ export default {
             {((row.examineStatus == '审核通过' && row.dataState == '补充') ||
               (row.examineStatus == '审核通过' && row.dataState == '正常')) &&
             this.isCustomer ? (
-              <el-button
-                type="text"
-                class="textColor"
-                onClick={() => {
-                  this.replenishClick(row.depositManageId)
-                }}
-              >
+                <el-button
+                  type='text'
+                  class='textColor'
+                  onClick={() => {
+                    this.replenishClick(row.depositManageId)
+                  }}
+                >
                 补充资料
-              </el-button>
-            ) : null}
+                </el-button>
+              ) : null}
           </div>
         )
       }
@@ -363,4 +411,13 @@ export default {
 }
 </script>
 
-<style lang="scss" scoped></style>
+<style lang="scss" scoped>
+.ulStyle{
+  list-style: none;
+  padding: 0;
+  li{
+    display: inline-block;
+    margin-right: 20px;
+  }
+}
+</style>

+ 67 - 50
src/views/deposit_home/refund_list.vue

@@ -4,16 +4,29 @@
       v-show="showSurrender == 0"
       ref="pageRef"
       :operation="operation()"
-      :optionsEvensGroup="optionsEvensGroup"
-      :getList="getList"
-      :exportList="exportList"
-      :tableAttributes="tableAttributes"
-      :tableEvents="tableEvents"
-      :columnParsing="columnParsing"
-      :replaceOrNotMap="false"
+      :options-evens-group="optionsEvensGroup"
+      :get-list="getList"
+      :export-list="exportList"
+      :table-attributes="tableAttributes"
+      :table-events="tableEvents"
+      :column-parsing="columnParsing"
+      :replace-or-not-map="false"
     >
-    </template-page>
-    <div class="app-container" v-if="showSurrender == 1">
+    <div slot="moreSearch">
+        <ul class="ulStyle">
+          <li class="title">
+            金额:<span class="num">{{ (Number(numSum.amountC) || 0) | numToFixed }}</span>
+          </li>
+          <li class="title">
+            数量:<span class="num">{{ Number(numSum.totalC) || 0 }}</span>
+          </li>
+          <li class="title">
+            项目数:<span class="num">{{ Number(numSum.totalEC) || 0 }}</span>
+          </li>
+        </ul>
+      </div>
+  </template-page>
+    <div v-if="showSurrender == 1" class="app-container">
       <refund-list-detail
         :detail-id="detailId"
         @updateList="updateList"
@@ -25,7 +38,7 @@
         "
       />
     </div>
-    <div class="app-container" v-else-if="showSurrender == 2">
+    <div v-else-if="showSurrender == 2" class="app-container">
       <refund-replenish
         :detail-id="detailId"
         @updateList="updateList"
@@ -37,7 +50,7 @@
         "
       />
     </div>
-    <div class="app-container" v-else-if="showSurrender == 3">
+    <div v-else-if="showSurrender == 3" class="app-container">
       <refund-reexamine
         :detail-id="detailId"
         @updateList="updateList"
@@ -56,19 +69,15 @@
 <script>
 import {
   examineData,
-  getDepositManageList,
   getDepositManageDate,
-  getDepositManagExport,
-  secondRefund,
-  getDepositCountList
-} from '@/api/engin_deposit/refund_list'
+  secondRefund } from '@/api/engin_deposit/refund_list'
 import { downloadFiles, handleImport } from '@/utils/util'
 import ExamineDialog from '@/components/Common/examine-dialog'
 import RefundListDetail from './components/refund_list-detail.vue'
 import RefundReplenish from './components/refund_replenish.vue'
 import RefundReexamine from './components/refund_reexamine.vue'
 import TemplatePage from '@/components/template/template-page-1.vue'
-import { depositManageHomeList, depositManageHomeListExport } from '@/api/deposit_list_v2.js'
+import { depositManageHomeList, depositManageHomeListExport, getCountList } from '@/api/deposit_list_v2.js'
 export default {
   components: {
     RefundListDetail,
@@ -217,7 +226,7 @@ export default {
               render: () => {
                 return (
                   <el-popconfirm
-                    title="批量审核吗?"
+                    title='批量审核吗?'
                     onOnConfirm={() => {
                       if (!this.selectData.length) {
                         this.$errorMsg('请选择')
@@ -226,7 +235,7 @@ export default {
                       this.batchExamine()
                     }}
                   >
-                    <span slot="reference">批量审核工程机已审单据</span>
+                    <span slot='reference'>批量审核工程机已审单据</span>
                   </el-popconfirm>
                 )
               }
@@ -240,7 +249,7 @@ export default {
               render: () => {
                 return (
                   <el-upload
-                    action=""
+                    action=''
                     http-request={this.handleImport}
                     file-list={this.importFileList}
                     show-file-list={false}
@@ -260,7 +269,14 @@ export default {
   },
   methods: {
     // 列表请求函数
-    getList: depositManageHomeList,
+    getList(...p) {
+      this.$refs.pageRef.showTable = false
+      this.recordSelected = []
+      getCountList(...p).then(res => {
+        this.numSum = res.data
+      })
+      return depositManageHomeList(...p)
+    },
     // 列表导出函数
     exportList: depositManageHomeListExport,
     // 表格列解析渲染数据更改
@@ -274,11 +290,11 @@ export default {
     operation() {
       return (h, { row, index, column }) => {
         return (
-          <div class="operation-btns">
+          <div class='operation-btns'>
             {row.examineStatus == 'WAIT' && this.$checkBtnRole('examine', this.$route.meta.roles) ? (
               <el-button
-                type="text"
-                class="textColor"
+                type='text'
+                class='textColor'
                 onClick={() => {
                   this.examineFn(row.depositManageId)
                 }}
@@ -289,16 +305,16 @@ export default {
             {row.dataState == 'WAIT_REVIEW' &&
             row.examineStatus == 'OK' &&
             this.$checkBtnRole('examine', this.$route.meta.roles) ? (
-              <el-button
-                type="text"
-                class="textColor"
-                onClick={() => {
-                  this.reexamineClick(row.depositManageId)
-                }}
-              >
+                <el-button
+                  type='text'
+                  class='textColor'
+                  onClick={() => {
+                    this.reexamineClick(row.depositManageId)
+                  }}
+                >
                 复核
-              </el-button>
-            ) : null}
+                </el-button>
+              ) : null}
 
             {row.examineStatus == 'SAVE' ||
             row.examineStatus == 'OK' ||
@@ -306,25 +322,25 @@ export default {
             row.dataState == 'WAIT_REVIEW' ||
             row.dataState == 'REVIEW' ||
             row.dataState == 'AMEND' ? (
-              <el-button
-                type="text"
-                class="textColor"
-                onClick={() => {
-                  this.infoFn(row.depositManageId)
-                }}
-              >
+                <el-button
+                  type='text'
+                  class='textColor'
+                  onClick={() => {
+                    this.infoFn(row.depositManageId)
+                  }}
+                >
                 详情
-              </el-button>
-            ) : null}
+                </el-button>
+              ) : null}
             {row.examineStatus == 'OK' && !row.isRefundDeposit ? (
               <el-popconfirm
-                style="margin-left: 10px"
-                title="二次退押吗?"
+                style='margin-left: 10px'
+                title='二次退押吗?'
                 onOnConfirm={() => {
                   this.secondRefund(row)
                 }}
               >
-                <el-button slot="reference" type="text" size="mini">
+                <el-button slot='reference' type='text' size='mini'>
                   二次退押
                 </el-button>
               </el-popconfirm>
@@ -442,12 +458,13 @@ export default {
   }
 }
 
-.ulStyle {
+.ulStyle{
   list-style: none;
-  margin: 0;
-  padding: 10px 0;
-  background-color: #ffffff;
-  z-index: 1;
+  padding: 0;
+  li{
+    display: inline-block;
+    margin-right: 20px;
+  }
 }
 
 .title {