Explorar el Código

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

祁鹏飞 hace 1 mes
padre
commit
d2d5408262

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

@@ -123,10 +123,10 @@ const manageApi = (axiosInstance: ApiInstance) => ({
     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),//列表导出接口
-    meetDataDetailPageList: (params: any) => axiosInstance.post('/console/financeDataManage/meetDataDetailPageList',params),//明细接口
-    meetDataDetailToTask: (params: any) => axiosInstance.post('/console/financeDataManage/meetDataDetailToTask',params),//明细出接口
+    meetDataPageList: (params: any) => axiosInstance.post('/console/financeDataManage/payableStatistics',params),//列表接口
+    meetDataToTask: (params: any) => axiosInstance.post('/console/financeDataManage/exportPayableStatistics',params,{responseType: 'blob'}),//列表导出接口
+    meetDataDetailPageList: (params: any) => axiosInstance.post('/console/financeDataManage/payableStatisticsDetail',params),//明细接口
+    meetDataDetailToTask: (params: any) => axiosInstance.post('/console/financeDataManage/exportPayableStatisticsDetail',params,{responseType: 'blob'}),//明细出接口
     //经营利润
     operatingProfitDataPageList: (params: any) => axiosInstance.post('/console/financeDataManage/operatingProfitDataPageList',params),//列表接口
     operatingProfitDataToTask: (params: any) => axiosInstance.post('/console/financeDataManage/operatingProfitDataToTask',params),//列表导出接口

+ 17 - 1
src/views/consoleManage/components/queryForm.vue

@@ -78,7 +78,23 @@
             </view>
           </template>
         </el-form-item>
-
+        <!-- 月份 -->
+        <el-form-item :label="option.label" class='form-date-picker  r-24 border position-box'
+          v-if="option.inputType == 'date-month'" @mouseenter="option.isShowDelIcon = true"
+          @mouseleave="option.isShowDelIcon = false">
+          <el-date-picker v-model="queryForm.data[option.key]" type="month" placeholder="月份" value-format="YYYY-MM">
+            <template #range-separator>
+              <view>⇀</view>
+            </template>
+          </el-date-picker>
+          <template v-if='!option.defaultFlag'>
+            <view class='icon-del' @click='del(option)' v-show='option.isShowDelIcon'>
+              <el-icon>
+                <CircleCloseFilled color='#ccc' :size='30' />
+              </el-icon>
+            </view>
+          </template>
+        </el-form-item>
         <!-- tree  selectValue: [], //选中的Key存储的值   listOption原始数据 -->
         <el-form-item :label="option.label" class='form-date-tree  r-24 border position-box'
           v-if="option.inputType == 'date-tree'" @mouseenter="option.isShowDelIcon = true"

+ 24 - 10
src/views/consoleManage/financeDataManage/meetData/index.vue

@@ -14,7 +14,7 @@
     <ComplexTable :tableData="tableData" :showSelect='false' :columns="listOption.columns" :showIndex="false"
       :columnwidth="120"  @getList="getList" tableheight='auto' :showSummary='true'>
       <template v-slot:operation="scope">
-        <el-button type="primary" link @click='agreementEdit(scope.operationData.id)'>明细</el-button>
+        <el-button type="primary" link @click='agreementEdit(scope.operationData)'>明细</el-button>
       </template>
 
       <template v-slot:search="scope">
@@ -208,7 +208,10 @@ const queryList = async () => {
       : "",
     ...query,
   });
-  tableData.value = data;
+  tableData.value = data.records;
+  pageInfo.value.pageNum = data.current;
+  pageInfo.value.pageSize = data.size;
+  pageInfo.value.total = data.total;
 };
 
 //分页事件
@@ -221,7 +224,7 @@ function getList(item: PageInfo) {
 //导出
 const downloadFile = async () => {
   let query = { ...queryFormRes.value };
-  const { data, msg } = await api.manageApi.meetDataToTask({
+api.manageApi.meetDataToTask({
     pageNo: pageInfo.value.pageNum,
     pageSize: pageInfo.value.pageSize,
     routerKey: routerKey.value,
@@ -230,19 +233,30 @@ 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) => {
+const agreementEdit = (item) => {
   router.push({
     name: "meetDataDetail",
     query: {
-      id: id,
+      yearMonth: item.yearAndMonthTime,
     },
   });
 };

+ 22 - 8
src/views/consoleManage/financeDataManage/meetData/meetDataDetail.vue

@@ -27,7 +27,7 @@
 </template>
 
 <script setup lang="ts">
-import { useRouter } from "vue-router";
+import { useRouter, useRoute } from "vue-router";
 import api from "@/api";
 import QueryForm from "../../components/queryForm.vue";
 import FilterDialog from "../../components/filterDialog.vue";
@@ -38,6 +38,8 @@ import PageInfo from "@/api/types/agreementTypes";
 import { ElMessage } from "element-plus";
 
 const router = useRouter();
+const route = useRoute();
+
 const userStore = useUserStore();
 const isShow = ref(false);
 
@@ -118,7 +120,8 @@ const initDefaultList = async () => {
     userId: phone,
   });
   listOption.queryFormFields = data.filter((e) => e.showFlag);
-
+  console.log(listOption.queryFormFields)
+  listOption.queryFormFields[0].defaultValue=route.query.yearMonth
   pageHiddenList.value = data.filter((e) => !e.showFlag);
   defaultList.value = data.map((e) => e.id);
   selectedKeys.value = defaultList.value;
@@ -216,7 +219,7 @@ function getList(item: PageInfo) {
 //导出
 const downloadFile = async () => {
   let query = { ...queryFormRes.value };
-  const { data, msg } = await api.manageApi.meetDataDetailToTask({
+  api.manageApi.meetDataDetailToTask({
     pageNo: pageInfo.value.pageNum,
     pageSize: pageInfo.value.pageSize,
     routerKey: routerKey.value,
@@ -225,12 +228,23 @@ 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++;
+
 };
 
 onMounted(() => {