Przeglądaj źródła

reactor:对接预案库;

zhangchong 3 miesięcy temu
rodzic
commit
fecf6940e0
2 zmienionych plików z 45 dodań i 23 usunięć
  1. 28 5
      src/api/plan/index.ts
  2. 17 18
      src/views/plan/index/index.vue

+ 28 - 5
src/api/plan/index.ts

@@ -24,6 +24,23 @@ export const getPlanList = (params?: object) => {
 		params,
 	});
 };
+/**
+ * @description 获取预案库列表导出
+ * @param {object} data
+ */
+export const getPlanExport = (data: object) => {
+	return request(
+		{
+			url: '/api/v1/Plan/export',
+			method: 'post',
+			data,
+			responseType: 'blob',
+		},
+		{
+			reduce_data_format: false,
+		}
+	);
+};
 /**
  * @description 新增预案库草稿
  * @param {object} data
@@ -117,11 +134,17 @@ export const planRepeat = (data: object) => {
  * @param {object} data
  */
 export const planDetailExport = (data: object) => {
-	return request({
-		url: '/api/v1/Plan/list/info/export',
-		method: 'post',
-		data,
-	});
+	return request(
+		{
+			url: '/api/v1/Plan/list/info/export',
+			method: 'post',
+			data,
+			responseType: 'blob',
+		},
+		{
+			reduce_data_format: false,
+		}
+	);
 };
 /**
  * @description 预案库删除提交到审核

+ 17 - 18
src/views/plan/index/index.vue

@@ -32,6 +32,20 @@
 						<el-form-item label="标题" prop="Title">
 							<el-input v-model="state.queryParams.Title" placeholder="标题" clearable @keyup.enter="handleQuery" class="keyword-input" />
 						</el-form-item>
+						<el-form-item label="创建时间" prop="cjTime">
+							<el-date-picker
+								v-model="state.queryParams.cjTime"
+								type="datetimerange"
+								unlink-panels
+								range-separator="至"
+								start-placeholder="开始时间"
+								end-placeholder="结束时间"
+								:shortcuts="shortcuts"
+								@change="handleQuery"
+								value-format="YYYY-MM-DD[T]HH:mm:ss"
+								:default-time="defaultTimeStartEnd"
+							/>
+						</el-form-item>
 						<el-form-item>
 							<el-button type="primary" @click="handleQuery" :loading="state.tableLoading"> <SvgIcon name="ele-Search" class="mr5" />查询 </el-button>
 							<el-button @click="drawer = true" class="default-button"> <SvgIcon name="ele-Search" class="mr5" />更多查询</el-button>
@@ -78,7 +92,7 @@
 							id="planManage"
 							:custom-config="{ storage: true }"
 							showHeaderOverflow
-							:params="{ exportMethod: knowledgeExport, exportParams: requestParams }"
+							:params="{ exportMethod: getPlanExport, exportParams: requestParams }"
 							@checkbox-all="selectAllChangeEvent"
 							@checkbox-change="selectChangeEvent"
 						>
@@ -209,20 +223,6 @@
 						:default-time="defaultTimeStartEnd"
 					/>
 				</el-form-item>
-				<el-form-item label="创建时间" prop="cjTime">
-					<el-date-picker
-						v-model="state.queryParams.cjTime"
-						type="datetimerange"
-						unlink-panels
-						range-separator="至"
-						start-placeholder="开始时间"
-						end-placeholder="结束时间"
-						:shortcuts="shortcuts"
-						@change="handleQuery"
-						value-format="YYYY-MM-DD[T]HH:mm:ss"
-						:default-time="defaultTimeStartEnd"
-					/>
-				</el-form-item>
 				<el-form-item label="更新时间" prop="gxTime">
 					<el-date-picker
 						v-model="state.queryParams.gxTime"
@@ -262,7 +262,6 @@ import { ElMessageBox, ElMessage } from 'element-plus';
 import { useRouter } from 'vue-router';
 import type { FormInstance } from 'element-plus';
 import { formatDate } from '@/utils/formatTime';
-import { knowledgeExport } from '@/api/knowledge';
 import { treeList } from '@/api/knowledge/type';
 import { Splitpanes, Pane } from 'splitpanes';
 import 'splitpanes/dist/splitpanes.css';
@@ -270,13 +269,12 @@ import Other from '@/utils/other';
 import { downloadFileByStream } from '@/utils/tools';
 import { VxeUI } from 'vxe-pc-ui';
 import { defaultTimeStartEnd, shortcuts } from '@/utils/constants';
-import { getPlanBaseData, getPlanList, planDetailExport, planOffShelf, planOnShelf } from '@/api/plan';
+import { getPlanBaseData, getPlanExport, getPlanList, planDetailExport, planOffShelf, planOnShelf } from '@/api/plan';
 import { VTreeSearch } from '@wsfe/vue-tree';
 
 // 引入组件
 const ProcessAudit = defineAsyncComponent(() => import('@/components/ProcessAudit/index.vue')); // 流程审批
 const AuditProgress = defineAsyncComponent(() => import('@/views/knowledge/components/Audit-progress.vue')); // 编写规范
-const TextTooltip = defineAsyncComponent(() => import('@/components/TextTooltip/index.vue'));
 const ToEnd = defineAsyncComponent(() => import('@/views/knowledge/index/components/To-end.vue')); // 批量审批
 const pagination = defineAsyncComponent(() => import('@/components/ProTable/components/Pagination.vue')); // 分页
 const PlanAudit = defineAsyncComponent(() => import('@/views/plan/index/components/Plan-audit.vue')); // 审批新增 修改 删除
@@ -514,6 +512,7 @@ const onExportDetail = (command: string | number | object) => {
 			});
 		})
 		.catch((e) => {
+			console.log(e,'导出错误')
 			state.loading = false;
 			VxeUI.modal.close('exportDetail');
 			VxeUI.modal.message({