Explorar o código

数据报表-财务应收模块接口联调

@dongkboy hai 1 mes
pai
achega
ee2ef53337

+ 4 - 4
src/api/modules/consoleManage.ts

@@ -118,10 +118,10 @@ const manageApi = (axiosInstance: ApiInstance) => ({
     costVerificationDataDetailPageList: (params: any) => axiosInstance.post('/console/financeDataManage/costVerificationDataDetailPageList',params),//明细接口
     costVerificationDataDetailToTask: (params: any) => axiosInstance.post('/console/financeDataManage/costVerificationDataDetailToTask',params),//明细出接口
     //应收
-    receivableDataPageList: (params: any) => axiosInstance.post('/console/financeDataManage/receivableDataPageList',params),//列表接口
-    receivableDataToTask: (params: any) => axiosInstance.post('/console/financeDataManage/receivableDataToTask',params),//列表导出接口
-    receivableDataDetailPageList: (params: any) => axiosInstance.post('/console/financeDataManage/receivableDataDetailPageList',params),//明细接口
-    receivableDataDetailToTask: (params: any) => axiosInstance.post('/console/financeDataManage/receivableDataDetailToTask',params),//明细出接口
+    receivableStatistics: (params: any) => axiosInstance.post('/console/financeDataManage/receivableStatistics',params),//列表接口
+    exportReceivableStatistics : (params: any) => axiosInstance.post('/console/financeDataManage/exportReceivableStatistics',params,{responseType: 'blob'}),//列表导出接口
+    receivableStatisticsDetail: (params: any) => axiosInstance.post('/console/financeDataManage/receivableStatisticsDetail',params),//明细接口
+    exportReceivableStatisticsDetail : (params: any) => axiosInstance.post('/console/financeDataManage/exportReceivableStatisticsDetail',params,{responseType: 'blob'}),//明细导出接口
      //应付
     meetDataPageList: (params: any) => axiosInstance.post('/console/financeDataManage/meetDataPageList',params),//列表接口
     meetDataToTask: (params: any) => axiosInstance.post('/console/financeDataManage/meetDataToTask',params),//列表导出接口

+ 17 - 7
src/views/consoleManage/financeDataManage/receivableData/index.vue

@@ -198,7 +198,7 @@ const query = (item) => {
 const tableData = ref([]);
 const queryList = async () => {
   let query = { ...queryFormRes.value };
-  const { data } = await api.manageApi.receivableDataPageList({
+  const { data } = await api.manageApi.receivableStatistics({
     pageNo: pageInfo.value.pageNum,
     pageSize: pageInfo.value.pageSize,
     routerKey: routerKey.value,
@@ -221,7 +221,7 @@ function getList(item: PageInfo) {
 //导出
 const downloadFile = async () => {
   let query = { ...queryFormRes.value };
-  const { data, msg } = await api.manageApi.receivableDataToTask({
+  api.manageApi.exportReceivableStatistics({
     pageNo: pageInfo.value.pageNum,
     pageSize: pageInfo.value.pageSize,
     routerKey: routerKey.value,
@@ -230,12 +230,22 @@ const downloadFile = async () => {
       ? globalSortKey.value + " " + globalSortOrder.value
       : "",
     ...query,
+  }).then((res:any) => {
+    const blob = new Blob([res], { type: 'application/vnd.ms-excel' });
+    const fileName = '应收数据详情报表' + new Date().getTime() + '.xlsx';
+    if ('download' in document.createElement('a')) {
+      const elink = document.createElement('a');
+      elink.download = fileName;
+      elink.style.display = 'none';
+      elink.href = URL.createObjectURL(blob);
+      document.body.appendChild(elink);
+      elink.click();
+      URL.revokeObjectURL(elink.href);
+      document.body.removeChild(elink);
+    } else {
+      navigator.msSaveBlob(blob, fileName);
+    }
   });
-  ElMessage({
-    message: msg,
-    type: "success",
-  });
-  userStore.count++;
 };
 
 const agreementEdit = (id) => {

+ 93 - 23
src/views/consoleManage/financeDataManage/receivableData/receivableDataDetail.vue

@@ -19,29 +19,89 @@
         </template>
       </el-table-column>
       <el-table-column label="应收" align='center'>
-        <el-table-column prop="accountsReceivableSumMoney" label="总计" align='center' width='200' />
-        <el-table-column prop="accountsReceivableCommissionMoney" label="手续费" align='center' width='200' />
-        <el-table-column prop="accountsReceivableFollowUpFeeMoney" label="跟单费" align='center' width='200' />
+        <el-table-column prop="accountsReceivableSumMoney" label="总计" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.receivable.totalAmount}}</div>
+          </template>
+        </el-table-column>
+        <el-table-column prop="accountsReceivableCommissionMoney" label="手续费" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.receivable.commissionFee}}</div>
+          </template>
+        </el-table-column>
+        <el-table-column prop="accountsReceivableFollowUpFeeMoney" label="跟单费" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.receivable.followFee}}</div>
+          </template>
+        </el-table-column>
       </el-table-column>
       <el-table-column label="未开票" align='center'>
-        <el-table-column prop="uninvoicedSumMoney" label="总计" align='center' width='200' />
-        <el-table-column prop="uninvoicedCommissionMoney" label="手续费" align='center' width='200' />
-        <el-table-column prop="uninvoicedFollowUpFeeMoney" label="跟单费" align='center' width='200' />
+        <el-table-column prop="uninvoicedSumMoney" label="总计" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.uninvoiced.totalAmount}}</div>
+          </template>
+        </el-table-column>
+        <el-table-column prop="uninvoicedCommissionMoney" label="手续费" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.uninvoiced.commissionFee}}</div>
+          </template>
+        </el-table-column>
+        <el-table-column prop="uninvoicedFollowUpFeeMoney" label="跟单费" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.uninvoiced.followFee}}</div>
+          </template>
+        </el-table-column>
       </el-table-column>
       <el-table-column label="已开票" align='center'>
-        <el-table-column prop="invoicedSumMoney" label="总计" align='center' width='200' />
-        <el-table-column prop="invoicedCommissionMoney" label="手续费" align='center' width='200' />
-        <el-table-column prop="invoicedFollowUpFeeMoney" label="跟单费" align='center' width='200' />
+        <el-table-column prop="invoicedSumMoney" label="总计" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.invoiced.totalAmount}}</div>
+          </template>
+        </el-table-column>
+        <el-table-column prop="invoicedCommissionMoney" label="手续费" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.invoiced.commissionFee}}</div>
+          </template>
+        </el-table-column>
+        <el-table-column prop="invoicedFollowUpFeeMoney" label="跟单费" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.invoiced.followFee}}</div>
+          </template>
+        </el-table-column>
       </el-table-column>
       <el-table-column label="未结算" align='center'>
-        <el-table-column prop="unsettledSumMoney" label="总计" align='center' width='200' />
-        <el-table-column prop="unsettledCommissionMoney" label="手续费" align='center' width='200' />
-        <el-table-column prop="unsettledFollowUpFeeMoney" label="跟单费" align='center' width='200' />
+        <el-table-column prop="unsettledSumMoney" label="总计" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.unsettled.totalAmount}}</div>
+          </template>
+        </el-table-column>
+        <el-table-column prop="unsettledCommissionMoney" label="手续费" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.unsettled.commissionFee}}</div>
+          </template>
+        </el-table-column>
+        <el-table-column prop="unsettledFollowUpFeeMoney" label="跟单费" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.unsettled.followFee}}</div>
+          </template>
+        </el-table-column>
       </el-table-column>
       <el-table-column label="已结算" align='center'>
-        <el-table-column prop="settledSumMoney" label="总计" align='center' width='200' />
-        <el-table-column prop="settledCommissionMoney" label="手续费" align='center' width='200' />
-        <el-table-column prop="settledFollowUpFeeMoney" label="跟单费" align='center' width='200' />
+        <el-table-column prop="settledSumMoney" label="总计" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.settled.totalAmount}}</div>
+          </template>
+        </el-table-column>
+        <el-table-column prop="settledCommissionMoney" label="手续费" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.settled.commissionFee}}</div>
+          </template>
+        </el-table-column>
+        <el-table-column prop="settledFollowUpFeeMoney" label="跟单费" align='center' width='200' >
+          <template #default="props">
+            <div >{{props.row.settled.followFee}}</div>
+          </template>
+        </el-table-column>
       </el-table-column>
     </el-table>
 
@@ -180,7 +240,7 @@ const query = (item) => {
 const tableData = ref([]);
 const queryList = async () => {
   let query = { ...queryFormRes.value };
-  const { data } = await api.manageApi.receivableDataDetailPageList({
+  const { data } = await api.manageApi.receivableStatisticsDetail({
     pageNo: pageInfo.value.pageNum,
     pageSize: pageInfo.value.pageSize,
     routerKey: routerKey.value,
@@ -203,7 +263,7 @@ function getList(item: PageInfo) {
 //导出
 const downloadFile = async () => {
   let query = { ...queryFormRes.value };
-  const { data, msg } = await api.manageApi.receivableDataDetailToTask({
+   api.manageApi.exportReceivableStatisticsDetail({
     pageNo: pageInfo.value.pageNum,
     pageSize: pageInfo.value.pageSize,
     routerKey: routerKey.value,
@@ -212,12 +272,22 @@ const downloadFile = async () => {
       ? globalSortKey.value + " " + globalSortOrder.value
       : "",
     ...query,
-  });
-  ElMessage({
-    message: msg,
-    type: "success",
-  });
-  userStore.count++;
+  }).then((res: any) => {
+    const blob = new Blob([res], { type: 'application/vnd.ms-excel' });
+    const fileName = '应收数据详情报表' + new Date().getTime() + '.xlsx';
+    if ('download' in document.createElement('a')) {
+      const elink = document.createElement('a');
+      elink.download = fileName;
+      elink.style.display = 'none';
+      elink.href = URL.createObjectURL(blob);
+      document.body.appendChild(elink);
+      elink.click();
+      URL.revokeObjectURL(elink.href);
+      document.body.removeChild(elink);
+    } else {
+      navigator.msSaveBlob(blob, fileName);
+    }
+  })
 };
 
 onMounted(() => {