Prechádzať zdrojové kódy

Merge branch 'dev' of http://39.101.143.165:8090/dong_k/tenant-Platform into dev

祁鹏飞 3 mesiacov pred
rodič
commit
eee7c563ad

+ 19 - 18
src/api/modules/settlement.ts

@@ -1,28 +1,29 @@
 import { ApiInstance } from '../type'
 
 const settlementApi = (axiosInstance: ApiInstance) => ({
-    companySuperviseSettlementReport: (data: any) => axiosInstance.post('/receivable/companySuperviseSettlementReport', data), // 保险公司报表
-    superviseSettlementExcel: (data: any) => axiosInstance.post('/receivable/followSettlementExcel',data), // 结算记录
-    platformSettlementExcel: (data: any) => axiosInstance.post('/receivable/platformSettlementExcel',data), // 平台结算记录
-    superviseSettlementDetailExcel: (data: any) => axiosInstance.post('/receivable/superviseSettlementDetailExcel',data), // 结算明细
+  companySuperviseSettlementReport: (data: any) => axiosInstance.post('/receivable/companySuperviseSettlementReport', data), // 保险公司报表
+  followSettlementExcel: (data: any) => axiosInstance.post('/receivable/followSettlementExcel',data), // 跟单记录
+  platformSettlementExcel: (data: any) => axiosInstance.post('/receivable/platformSettlementExcel',data), // 平台结算记录
+  superviseSettlementExcel: (data: any) => axiosInstance.post('/receivable/superviseSettlementExcel', data), // 手续费车险结算记录
+  superviseSettlementDetailExcel: (data: any) => axiosInstance.post('/receivable/superviseSettlementDetailExcel', data), // 结算明细
 
-    exportPlatformSettlementExcel: (data: any) => axiosInstance.post('/receivable/exportPlatformSettlementExcel', data, {responseType: 'blob'}), // 手续费结算报表导出
-    exportSuperviseSettlementDetailExcel: (data: any) => axiosInstance.post('/receivable/exportSuperviseSettlementDetailExcel', data, {responseType: 'blob'}), // 手续费车险结算报表导出
-    exportSuperviseSettlementDetailJyExcel: (data: any) => axiosInstance.post('/receivable/exportSuperviseSettlementDetailJyExcel', data, {responseType: 'blob'}), // 手续费非车险结算报表导出
+  exportPlatformSettlementExcel: (data: any) => axiosInstance.post('/receivable/exportPlatformSettlementExcel', data, { responseType: 'blob' }), // 手续费结算报表导出
+  exportSuperviseSettlementDetailExcel: (data: any) => axiosInstance.post('/receivable/exportSuperviseSettlementDetailExcel', data, { responseType: 'blob' }), // 手续费车险结算报表导出
+  exportSuperviseSettlementDetailJyExcel: (data: any) => axiosInstance.post('/receivable/exportSuperviseSettlementDetailJyExcel', data, { responseType: 'blob' }), // 手续费非车险结算报表导出
 
-    exportOtherSettlementExcel: (data: any) => axiosInstance.post('/receivable/exportOtherSettlementExcel', data, {responseType: 'blob'}), // 跟单费结算报表导出
-    exportOtherExcel: (data: any) => axiosInstance.post('/receivable/exportOtherExcel', data, {responseType: 'blob'}), // 跟单费车险应收导出
-    exportOtherJyExcel: (data: any) => axiosInstance.post('/receivable/exportOtherJyExcel', data, {responseType: 'blob'}), // 跟单费非车险应收导出
+  exportOtherSettlementExcel: (data: any) => axiosInstance.post('/receivable/exportOtherSettlementExcel', data, { responseType: 'blob' }), // 跟单费结算报表导出
+  exportOtherExcel: (data: any) => axiosInstance.post('/receivable/exportOtherExcel', data, { responseType: 'blob' }), // 跟单费车险应收导出
+  exportOtherJyExcel: (data: any) => axiosInstance.post('/receivable/exportOtherJyExcel', data, { responseType: 'blob' }), // 跟单费非车险应收导出
 
-    exportOtherSettlementDetailExcel: (data: any) => axiosInstance.post('/receivable/exportOtherSettlementDetailExcel', data, {responseType: 'blob'}), // 跟单费非车险结算报表导出
-    exportOtherSettlementDetailJyExcel: (data: any) => axiosInstance.post('/receivable/exportOtherSettlementDetailJyExcel', data, {responseType: 'blob'}), // 跟单费非车险结算报表导出
+  exportOtherSettlementDetailExcel: (data: any) => axiosInstance.post('/receivable/exportOtherSettlementDetailExcel', data, { responseType: 'blob' }), // 跟单费非车险结算报表导出
+  exportOtherSettlementDetailJyExcel: (data: any) => axiosInstance.post('/receivable/exportOtherSettlementDetailJyExcel', data, { responseType: 'blob' }), // 跟单费非车险结算报表导出
 
-    receiverSettlementReport: (data: any) => axiosInstance.post('/receivable/receiverSettlementReport', data), // 平台对接人结算报表
-    exportReceiverSettlementReportExcel: (data: any) => axiosInstance.post('/receivable/exportReceiverSettlementReportExcel', data, {
-        responseType: 'blob'
-    }), // 平台对接人导出
-    // 结算记录删除接口
-    deleteSettlement: (id: string) => axiosInstance.delete(`/receivable/deleteSettlementById/${id}`),
+  receiverSettlementReport: (data: any) => axiosInstance.post('/receivable/receiverSettlementReport', data), // 平台对接人结算报表
+  exportReceiverSettlementReportExcel: (data: any) => axiosInstance.post('/receivable/exportReceiverSettlementReportExcel', data, {
+    responseType: 'blob'
+  }), // 平台对接人导出
+  // 结算记录删除接口
+  deleteSettlement: (id: string) => axiosInstance.delete(`/receivable/deleteSettlementById/${id}`),
 })
 
 export default settlementApi

+ 43 - 14
src/views/receivable/documentary/documentaryRecord.vue

@@ -73,11 +73,23 @@
       <el-table-column prop="settlementAmount" label="已结算金额" width="120"></el-table-column>
       <el-table-column prop="createBy" label="开票人" width="120"></el-table-column>
       <el-table-column prop="createTime" label="开票时间" width="150"></el-table-column>
-      <el-table-column label="操作" width="150" fixed="right">
+      <el-table-column label="操作" width="200" fixed="right">
         <template #default="scope">
-          <el-button link type="primary" v-if="scope.row.settlementStatus == '未结算'"  @click="handleCount(scope.row)">结算</el-button>
-          <el-button link type="primary" v-if="scope.row.settlementStatus == '已结算'" @click="handleView(scope.row)">明细查询</el-button>
-          <el-button link type="primary" v-if="scope.row.settlementStatus == '未结算'" @click="handleDelete(scope.row)">删除</el-button>
+          <div class="flex a-c ">
+            <el-button link type="primary" :disabled="scope.row.settlementStatus == '已结算'" @click="handleCount(scope.row)">结算</el-button>
+          <el-button link type="primary" :disabled="scope.row.settlementStatus == '已结算'" @click="handleDelete(scope.row)">删除</el-button>
+          <el-dropdown placement="bottom-start" trigger="click" >
+            <span class="el-dropdown-link">
+              明细查询
+            </span>
+            <template #dropdown>
+              <el-dropdown-menu>
+                <el-dropdown-item :disabled="scope.row.settlementStatus == '未结算'" @click="handleCountRecord(scope.row)">结算记录</el-dropdown-item>
+                <el-dropdown-item :disabled="scope.row.settlementStatus == '未结算'" @click="handleInvoiceDetail(scope.row)">开票明细</el-dropdown-item>
+              </el-dropdown-menu>
+            </template>
+          </el-dropdown>
+          </div>
 
 
         </template>
@@ -243,16 +255,6 @@ const calSub = async (minuend: number = 0, subtrahend: number) => {
   const res = await api.financeApi.calSub({ minuend, subtrahend })
   return res.data || 0
 }
-// 明细查询
-const handleView = (row) => {
-  router.push({
-    path: '/receivable/documentary/documentaryReport',
-    query: {
-      activeName: '2',
-      id: row.id
-    }
-  })
-}
 // 删除
 const handleDelete = (row) => {
   ElMessageBox.confirm(
@@ -281,6 +283,26 @@ const handleDelete = (row) => {
     .catch(() => {
     })
 }
+// 结算记录查询
+const handleCountRecord = (row) => {
+  router.push({
+    path: '/receivable/documentary/documentaryReport',
+    query: {
+      activeName: '2',
+      id: row.id
+    }
+  })
+}
+// 开票明细查询
+const handleInvoiceDetail = (row) => {
+  router.push({
+    path: '/receivable/documentary/documentaryReport',
+    query: {
+      activeName: '3',
+      id: row.id
+    }
+  })
+}
 // 列表
 const initList = () => {
   api.invoiceRecordApi.invoiceRecord({
@@ -440,4 +462,11 @@ onMounted(() => {
     color: #ccc;
   }
 }
+:deep(.el-dropdown-link) {
+  display: flex;
+  align-items: center;
+  margin-left: 15px;
+  color: var(--el-color-primary);
+  cursor: pointer;
+}
 </style>

+ 6 - 5
src/views/receivable/documentary/documentaryReport.vue

@@ -452,7 +452,7 @@ const initData1 = () => {
   })
 }
 const initData2 = () => {
-  api.settlementApi.superviseSettlementExcel({
+  api.settlementApi.followSettlementExcel({
     agreementType: '2',
     settlementId: recordForm1.value.settlementId,
     companyId: recordForm1.value.companyId,
@@ -689,12 +689,13 @@ const initOption = () => {
 }
 
 onMounted(() => {
-  if (route.query.activeName === '2') {
+  activeName.value = route.query.activeName;
+  if (route.query.activeName == "2") {
     recordForm1.value.invoiceId = route.query.id
-    activeName.value = '2'
     initData2();
-  } else {
-    initData1();
+  } else if (route.query.activeName == "3") {
+    recordForm2.value.invoiceId = route.query.id
+    initData3(['1']);
   }
   initData1();
   initCompany();

+ 36 - 6
src/views/receivable/handingFee/invoiceRecord.vue

@@ -82,10 +82,23 @@
       <el-table-column prop="createBy" label="开票人" width="120"></el-table-column>
       <el-table-column prop="createTime" label="开票时间" width="150"></el-table-column>
       <el-table-column label="操作" width="200" fixed="right" align="center">
-        <template #default="scope">
-          <el-button link type="primary" v-if="scope.row.settlementStatus == '未结算'"  @click="handleCount(scope.row)">结算</el-button>
-          <el-button link type="primary" v-if="scope.row.settlementStatus == '已结算'" @click="handleView(scope.row)">明细查询</el-button>
-          <el-button link type="primary" v-if="scope.row.settlementStatus == '未结算'" @click="handleDelete(scope.row)">删除</el-button>
+        <template #default="scope" >
+          <div class="flex a-c ">
+            <el-button link type="primary" :disabled="scope.row.settlementStatus == '已结算'" @click="handleCount(scope.row)">结算</el-button>
+          <el-button link type="primary" :disabled="scope.row.settlementStatus == '已结算'" @click="handleDelete(scope.row)">删除</el-button>
+          <el-dropdown placement="bottom-start" trigger="click" >
+            <span class="el-dropdown-link">
+              明细查询
+            </span>
+            <template #dropdown>
+              <el-dropdown-menu>
+                <el-dropdown-item :disabled="scope.row.settlementStatus == '未结算'" @click="handleCountRecord(scope.row)">结算记录</el-dropdown-item>
+                <el-dropdown-item :disabled="scope.row.settlementStatus == '未结算'" @click="handleInvoiceDetail(scope.row)">开票明细</el-dropdown-item>
+              </el-dropdown-menu>
+            </template>
+          </el-dropdown>
+          </div>
+
         </template>
       </el-table-column>
     </el-table>
@@ -261,8 +274,8 @@ const uploadImage = async (file, fileList) => {
     attachmentIds.value.push(data.id)
   }
 }
-// 明细查询
-const handleView = (row) => {
+// 结算记录查询
+const handleCountRecord = (row) => {
   router.push({
     path: '/receivable/private/report',
     query: {
@@ -271,6 +284,16 @@ const handleView = (row) => {
     }
   })
 }
+// 开票明细查询
+const handleInvoiceDetail = (row) => {
+  router.push({
+    path: '/receivable/private/report',
+    query: {
+      activeName: '3',
+      id: row.id
+    }
+  })
+}
 // 删除
 const handleDelete = (row) => {
   ElMessageBox.confirm(
@@ -547,4 +570,11 @@ onMounted(() => {
   width: 100%;
   height: 100%;
 }
+:deep(.el-dropdown-link) {
+  display: flex;
+  align-items: center;
+  margin-left: 15px;
+  color: var(--el-color-primary);
+  cursor: pointer;
+}
 </style>

+ 29 - 25
src/views/receivable/handingFee/report.vue

@@ -136,8 +136,8 @@
           <el-table-column prop="receivePaymentDate" label="收款日期" width="150"></el-table-column>
           <el-table-column label="收款凭证" width="100">
             <template #default="scope">
-              <el-button link type="primary" v-if="scope.row.fileUrl"
-                @click="view(scope.row)">查看凭证({{ scope.row.fileUrl.split(',').length }})</el-button>
+              <el-button link type="primary" v-if="scope.row.fileUrl" @click="view(scope.row)">查看凭证({{
+                scope.row.fileUrl.split(',').length }})</el-button>
               <span v-else>无凭证</span>
             </template>
           </el-table-column>
@@ -673,28 +673,28 @@ const initOption = () => {
 const handleDetail = (type) => {
   console.log(type.settlementId)
   ElMessageBox.confirm(
-  '确定删除该记录吗?',
-  '删除',
-  {
-  confirmButtonText: '确定删除',
-  type: 'error',
-  center: true,
-  confirmButtonClass: 'el-button--danger',
-  }
+    '确定删除该记录吗?',
+    '删除',
+    {
+      confirmButtonText: '确定删除',
+      type: 'error',
+      center: true,
+      confirmButtonClass: 'el-button--danger',
+    }
   )
-  .then(() => {
-    api.settlementApi.deleteSettlement(type.settlementId).then((res: any) => {
-      if (res.code == 200) {
-        ElMessage({
-          message: '删除成功',
-          type: 'success'
-        })
-        initData2()
-      }
+    .then(() => {
+      api.settlementApi.deleteSettlement(type.settlementId).then((res: any) => {
+        if (res.code == 200) {
+          ElMessage({
+            message: '删除成功',
+            type: 'success'
+          })
+          initData2()
+        }
+      })
+    })
+    .catch(() => {
     })
-  })
-  .catch(() => {
-  })
 }
 const handleOrderDetail = (type: any) => {
   router.push({
@@ -707,11 +707,15 @@ const handleOrderDetail = (type: any) => {
 onMounted(() => {
   initOption();
   initCompany();
-  if (route.query.activeName === '2') {
+  activeName.value = route.query.activeName;
+  if (route.query.activeName == "2") {
     recordForm1.value.invoiceId = route.query.id
-    activeName.value = '2'
     initData2();
-  } else {
+  } else if (route.query.activeName == "3") {
+    recordForm2.value.invoiceId = route.query.id
+    initData3(['1']);
+  }
+  else {
     initData1();
   }
 })