Browse Source

reactor:355 增加工单词库导出功能;并再添加工单字库时,进行唯一性判断

zhangchong 1 tháng trước cách đây
mục cha
commit
43a4a32b04

+ 1 - 1
.env.development

@@ -3,7 +3,7 @@ VITE_MODE_NAME=development
 # 防止部署多套系统到同一域名不同目录时,变量共用的问题 设置不同的前缀
 VITE_STORAGE_NAME=dev
 # 业务系统基础请求地址
-VITE_API_URL=http://110.188.24.28:50300
+VITE_API_URL=http://110.188.24.28:50100
 # 业务系统socket请求地址
 VITE_API_SOCKET_URL=http://110.188.24.28:50100/hubs/hotline
 # 业务系统文件上传上传请求地址

+ 47 - 30
src/api/auxiliary/orderLexicon.ts

@@ -7,62 +7,79 @@ import request from '@/utils/request';
  * @description 工单词库基础信息
  */
 export const orderLexiconBaseData = () => {
-    return request({
-        url: `/api/v1/Order/order_word/base`,
-        method: 'get'
-    });
-}
+	return request({
+		url: `/api/v1/Order/order_word/base`,
+		method: 'get',
+	});
+};
 /**
  * @description 工单词库列表
  * @param {object} params
  */
 export const orderLexiconList = (params: object) => {
-    return request({
-        url: `/api/v1/Order/order_word/list`,
-        method: 'get',
-        params,
-    });
+	return request({
+		url: `/api/v1/Order/order_word/list`,
+		method: 'get',
+		params,
+	});
+};
+/**
+ * @description 工单词库列表导出
+ * @param {object} data
+ */
+export const orderLexiconExport = (data: object) => {
+	return request(
+		{
+			url: `/api/v1/Order/order_word/list/export`,
+			method: 'post',
+			data,
+			responseType: 'blob',
+		},
+		{
+			reduce_data_format: false,
+		}
+	);
 };
 /**
  * @description 工单词库新增
  * @param {object} data
  */
 export const orderLexiconAdd = (data: object) => {
-    return request({
-        url: `/api/v1/Order/order_word`,
-        method: 'post',
-        data,
-    });
+	return request({
+		url: `/api/v1/Order/order_word`,
+		method: 'post',
+		data,
+	});
 };
 /**
  * @description 工单词库删除
  * @param {object} data
  */
 export const orderLexiconDelete = (data: object) => {
-    return request({
-        url: `/api/v1/Order/order_word`,
-        method: 'delete',
-        data,
-    });
+	return request({
+		url: `/api/v1/Order/order_word`,
+		method: 'delete',
+		data,
+	});
 };
 /**
  * @description 工单词库编辑
  * @param {object} data
  */
 export const orderLexiconUpdate = (data: object) => {
-    return request({
-        url: `/api/v1/Order/order_word`,
-        method: 'put',
-        data,
-    });
+	return request({
+		url: `/api/v1/Order/order_word`,
+		method: 'put',
+		data,
+	});
 };
 /**
  * @description 工单词库详情
  * @param {string} id
  */
 export const orderLexiconDetail = (id: string) => {
-    return request({
-        url: `/api/v1/Order/order_word/${id}`,
-        method: 'get'
-    });
-};
+	return request({
+		url: `/api/v1/Order/order_word/${id}`,
+		method: 'get',
+	});
+};

+ 7 - 2
src/views/auxiliary/orderLexicon/index.vue

@@ -25,6 +25,7 @@
 				:refresh="{
 					queryMethod: handleQuery,
 				}"
+				:tools="[{ toolRender: { name: 'exportCurrent' } }, { toolRender: { name: 'exportAll' } }]"
 			>
 				<template #buttons>
 					<el-button type="primary" @click="addParameter" v-auth="'auxiliary:orderLexicon:add'">
@@ -51,6 +52,7 @@
 					:custom-config="{ storage: true }"
 					@checkbox-all="selectAllChangeEvent"
 					@checkbox-change="selectChangeEvent"
+					:params="{ exportMethod: orderLexiconExport, exportParams: requestParams }"
 				>
 					<vxe-column type="checkbox" width="60" align="center"></vxe-column>
 					<vxe-column field="classify" title="词性分类" min-width="150"></vxe-column>
@@ -101,8 +103,9 @@
 <script lang="tsx" setup name="auxiliaryOrderLexicon">
 import { computed, defineAsyncComponent, onMounted, reactive, ref } from 'vue';
 import { ElMessage, ElMessageBox, FormInstance } from 'element-plus';
-import { orderLexiconBaseData, orderLexiconDelete, orderLexiconList } from '@/api/auxiliary/orderLexicon';
+import { orderLexiconBaseData, orderLexiconDelete, orderLexiconExport, orderLexiconList } from '@/api/auxiliary/orderLexicon';
 import { formatDate } from '@/utils/formatTime';
+import Other from '@/utils/other';
 // 引入组件
 const OrderLexiconAdd = defineAsyncComponent(() => import('@/views/auxiliary/orderLexicon/components/Order-lexicon-add.vue')); // 新增工单词库
 const OrderLexiconEdit = defineAsyncComponent(() => import('@/views/auxiliary/orderLexicon/components/Order-lexicon-edit.vue')); // 编辑工单词库
@@ -139,9 +142,11 @@ const handleQuery = () => {
 	queryList();
 };
 // 获取列表
+const requestParams = ref<EmptyObjectType>({});
 const queryList = () => {
 	state.loading = true;
-	orderLexiconList(state.queryParams)
+	requestParams.value = Other.deepClone(state.queryParams);
+	orderLexiconList(requestParams.value)
 		.then((res) => {
 			state.loading = false;
 			state.tableData = res.result.items ?? [];