Quellcode durchsuchen

reactor:472 通话记录模块支持导出;469 取消旧版流程明细

zhangchong vor 3 Wochen
Ursprung
Commit
0c0f6ded02

+ 1 - 1
.env.development

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

+ 83 - 65
src/api/callCenter/index.ts

@@ -8,139 +8,157 @@ import request from '@/utils/request';
  * @param params
  */
 export const getCallCenterList = (params?: object) => {
-    return request({
-        url: `/api/v1/Call/tels`,
-        method: 'get',
-        params,
-    });
+	return request({
+		url: `/api/v1/Call/tels`,
+		method: 'get',
+		params,
+	});
 };
 /**
  * @description 查询呼叫中心分机组列表
  * @param params
  */
 export const getCallCenterGroupList = (params?: object) => {
-    return request({
-        url: `/api/v1/Call/groups`,
-        method: 'get',
-        params,
-    });
+	return request({
+		url: `/api/v1/Call/groups`,
+		method: 'get',
+		params,
+	});
 };
 /**
  * @description 呼叫中心签入
  * @param data
  */
 export const callCenterSignIn = (data: object) => {
-    return request({
-        url: `/api/v1/Call/signin`,
-        method: 'post',
-        data,
-    });
+	return request({
+		url: `/api/v1/Call/signin`,
+		method: 'post',
+		data,
+	});
 };
 /**
  * @description 呼叫中心签出
  * @param data
  */
 export const callCenterSignOut = (data: object) => {
-    return request({
-        url: `/api/v1/Call/signout`,
-        method: 'post',
-        data,
-    });
+	return request({
+		url: `/api/v1/Call/signout`,
+		method: 'post',
+		data,
+	});
 };
 /**
  * @description 呼叫中心签出(强制业务系统签出)
  * @param telNo
  */
 export const callCenterSignOutForce = (telNo: string) => {
-    return request({
-        url: `/api/v1/Call/signout/${telNo}`,
-        method: 'post',
-    });
+	return request({
+		url: `/api/v1/Call/signout/${telNo}`,
+		method: 'post',
+	});
 };
 /**
  * @description 查询当前用户的分机状态
  * @param params
  */
 export const getCallCenterStatus = (params?: object) => {
-    return request({
-        url: `/api/v1/Call/tel-state`,
-        method: 'get',
-        params,
-    });
+	return request({
+		url: `/api/v1/Call/tel-state`,
+		method: 'get',
+		params,
+	});
 };
 /**
  * @description 查询呼叫中心通话记录基础数据
  * @param params
  */
 export const getCallCenterCallRecordBaseData = (params?: object) => {
-    return request({
-        url: `/api/v1/Call/base-data`,
-        method: 'get',
-        params,
-    });
+	return request({
+		url: `/api/v1/Call/base-data`,
+		method: 'get',
+		params,
+	});
 };
 /**
  * @description 查询呼叫中心通话记录(固定数量)
  * @param params
  */
 export const getCallCenterCallRecord = (params?: object) => {
-    return request({
-        url: `/api/v1/Call/calls-fixed`,
-        method: 'get',
-        params,
-    });
+	return request({
+		url: `/api/v1/Call/calls-fixed`,
+		method: 'get',
+		params,
+	});
 };
 /**
  * @description 查询呼叫中心通话记录(固定数量)查询总数
  * @param params
  */
 export const getCallCenterCallRecordTotal = (params?: object) => {
-    return request({
-        url: `/api/v1/Call/calls-fixed/count`,
-        method: 'get',
-        params,
-    });
+	return request({
+		url: `/api/v1/Call/calls-fixed/count`,
+		method: 'get',
+		params,
+	});
 };
 /**
  * @description 查询呼叫中心坐席操作记录基础数据
  * @param params
  */
 export const getCallCenterOperateRecordBaseData = (params?: object) => {
-    return request({
-        url: `/api/v1/Call/base-data-tel-operation`,
-        method: 'get',
-        params,
-    });
+	return request({
+		url: `/api/v1/Call/base-data-tel-operation`,
+		method: 'get',
+		params,
+	});
 };
 /**
  * @description 查询呼叫中心坐席操作记录
  * @param params
  */
 export const getCallCenterOperateRecord = (params?: object) => {
-    return request({
-        url: `/api/v1/Call/tel-operations-fixed`,
-        method: 'get',
-        params,
-    });
+	return request({
+		url: `/api/v1/Call/tel-operations-fixed`,
+		method: 'get',
+		params,
+	});
 };
 /**
  * @description 查询呼叫中心坐席操作记录查询总条数
  * @param params
  */
 export const getCallCenterOperateRecordTotal = (params?: object) => {
-    return request({
-        url: `/api/v1/Call/tel-operations-fixed/count`,
-        method: 'get',
-        params,
-    });
+	return request({
+		url: `/api/v1/Call/tel-operations-fixed/count`,
+		method: 'get',
+		params,
+	});
 };
 /**
  * @description 校验电话号码外呼是否需要加0
  * @param mobile
  */
-export const callNumberIsLocal = (mobile ?: number | string | any) => {
-    return request({
-        url: `/api/v1/Sys/vaild_mobile/${mobile}`,
-        method: 'get',
-    });
-};
+export const callNumberIsLocal = (mobile?: number | string | any) => {
+	return request({
+		url: `/api/v1/Sys/vaild_mobile/${mobile}`,
+		method: 'get',
+	});
+};
+/**
+ * @description 分页通话记录列表导出 兴唐
+ * @param {object} data
+ * @return {*}
+ */
+export const callLogXTPagedExport = (data: object) => {
+	return request(
+		{
+			url: `/api/v1/Call/calls-fixed/export`,
+			method: 'post',
+			data,
+			responseType: 'blob',
+		},
+		{
+			reduce_data_format: false,
+		}
+	);
+};

+ 19 - 11
src/components/OrderDetail/index.vue

@@ -198,7 +198,9 @@
 							</el-col>
 							<el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="6" v-if="ZGCenter">
 								<el-form-item label="受理人">
-									<span>{{ state.ruleForm?.acceptorName }} <span v-if="state.ruleForm?.acceptorStaffNo">【{{ state.ruleForm?.acceptorStaffNo }}】</span> </span>
+									<span
+										>{{ state.ruleForm?.acceptorName }} <span v-if="state.ruleForm?.acceptorStaffNo">【{{ state.ruleForm?.acceptorStaffNo }}】</span>
+									</span>
 								</el-form-item>
 							</el-col>
 							<el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="6" v-if="state.ruleForm.creationTime">
@@ -666,18 +668,24 @@
 					@click="onCloseCountersignature"
 					:loading="state.loading"
 					v-auth="'business:order:closeCountersignature'"
-					v-if="state.ruleForm?.countersignId && state.ruleForm.status !== 9"
+					v-show="state.ruleForm?.countersignId && state.ruleForm.status !== 9"
 					>结束会签</el-button
 				>
 				<!-- 有流程信息就可以查询明细 -->
-				<el-button type="primary" @click="onRecord" :loading="state.loading" v-if="state.ruleForm?.workflowId">流程明细(旧)</el-button>
+				<el-button
+					type="primary"
+					@click="onRecord"
+					:loading="state.loading"
+					v-if="state.ruleForm?.workflowId && ['YiBin', 'LuZhou'].includes(themeConfig.appScope)"
+					>流程明细(旧)</el-button
+				>
 				<el-button type="primary" @click="onRecordNew" :loading="state.loading" v-if="state.ruleForm?.workflowId">流程明细(新)</el-button>
 				<!-- 有流程信息就可以撤回 -->
 				<el-button
 					type="primary"
 					@click="onSpecialHandle"
 					:loading="state.loading"
-					v-if="state.ruleForm?.workflowId && state.ruleForm.status !== 9"
+					v-show="state.ruleForm?.workflowId && state.ruleForm.status !== 9"
 					v-auth="'business:order:teti'"
 					>特 提</el-button
 				>
@@ -686,7 +694,7 @@
 					type="primary"
 					@click="onSupervise"
 					:loading="state.loading"
-					v-if="isInRange(state.ruleForm?.status, 100, 200) && state.ruleForm.status !== 9"
+					v-show="isInRange(state.ruleForm?.status, 100, 200) && state.ruleForm.status !== 9"
 					v-auth="'business:order:supervise:apply'"
 					>督 办</el-button
 				>
@@ -695,7 +703,7 @@
 					type="primary"
 					@click="onUrge"
 					:loading="state.loading"
-					v-if="isInRange(state.ruleForm?.status, 100, 200) && state.ruleForm.status !== 9"
+					v-show="isInRange(state.ruleForm?.status, 100, 200) && state.ruleForm.status !== 9"
 					v-auth="'business:order:urge:apply'"
 				>
 					催 办</el-button
@@ -706,7 +714,7 @@
 					type="primary"
 					@click="onDelayApply"
 					:loading="state.loading"
-					v-if="isInRange(state.ruleForm?.status, 100, 200) && state.ruleForm?.isCanDelay && state.ruleForm.status !== 9"
+					v-show="isInRange(state.ruleForm?.status, 100, 200) && state.ruleForm?.isCanDelay && state.ruleForm.status !== 9"
 					v-auth="'business:order:delay'"
 					>延 期</el-button
 				>
@@ -717,7 +725,7 @@
 					@click="onCancelDelay"
 					:loading="state.loading"
 					v-auth="'business:order:cancelDelay'"
-					v-if="state.ruleForm?.isCanCancelDelay && state.ruleForm.status !== 9"
+					v-show="state.ruleForm?.isCanCancelDelay && state.ruleForm.status !== 9"
 					>取消延期</el-button
 				>
 				<!-- 100-200 表示工单正在办理中 并且应该自己办理 -->
@@ -725,7 +733,7 @@
 					type="primary"
 					@click="onSubmit('工单办理')"
 					:loading="state.loading"
-					v-if="isInRange(state.ruleForm?.status, 100, 200) && state.ruleForm?.canHandle && state.ruleForm.status !== 9"
+					v-show="isInRange(state.ruleForm?.status, 100, 200) && state.ruleForm?.canHandle && state.ruleForm.status !== 9"
 					v-auth="'business:order:handle'"
 					>办 理</el-button
 				>
@@ -734,7 +742,7 @@
 					type="primary"
 					@click="onSubmit('工单代办')"
 					:loading="state.loading"
-					v-if="state.ruleForm?.canInsteadHandle && state.ruleForm.status !== 9"
+					v-show="state.ruleForm?.canInsteadHandle && state.ruleForm.status !== 9"
 					v-auth="'business:order:handle:instead'"
 					>代 办</el-button
 				>
@@ -748,7 +756,7 @@
 					type="primary"
 					@click="onReturn"
 					:loading="state.loading"
-					v-if="
+					v-show="
 						isInRange(state.ruleForm?.status, 100, 200) && state.ruleForm?.canHandle && state.ruleForm?.canPrevious && state.ruleForm.status !== 9
 					"
 					v-auth="'business:order:return'"

+ 4 - 5
src/views/tels/callLog/zgCallLog.vue

@@ -30,6 +30,7 @@
 				:refresh="{
 					queryMethod: handleQuery,
 				}"
+				:tools="[{ toolRender: { name: 'exportCurrent' } }, { toolRender: { name: 'exportAll' } }]"
 			>
 			</vxe-toolbar>
 			<div style="overflow: hidden; width: 100%; height: 100%; flex: 1">
@@ -62,6 +63,7 @@
 						},
 					}"
 					@sort-change="sortChange"
+					:params="{ exportMethod: callLogXTPagedExport, exportParams: requestParams }"
 				>
 					<vxe-column field="fromNo" title="主叫号码" min-width="120"></vxe-column>
 					<vxe-column field="toNo" title="被叫号码" min-width="120"></vxe-column>
@@ -203,8 +205,7 @@ import { defaultTimeStartEnd, shortcuts } from '@/utils/constants';
 import { useRouter } from 'vue-router';
 import mittBus from '@/utils/mitt';
 import Other from '@/utils/other';
-import { getCallCenterCallRecord, getCallCenterCallRecordBaseData, getCallCenterCallRecordTotal } from '@/api/callCenter';
-import { useThemeConfig } from '@/stores/themeConfig';
+import { getCallCenterCallRecord, getCallCenterCallRecordBaseData, getCallCenterCallRecordTotal, callLogXTPagedExport } from '@/api/callCenter';
 import { storeToRefs } from 'pinia';
 import { useAppConfig } from '@/stores/appConfig';
 
@@ -236,7 +237,7 @@ const state = reactive<any>({
 		SortField: null,
 		SortRule: null,
 		StaffNo: null, // 工号
-		CallNo:null, // 通话ID
+		CallNo: null, // 通话ID
 	},
 	tableData: [], // 列表数据
 	loading: false, // 加载
@@ -312,8 +313,6 @@ const resetQuery = (formEl: FormInstance | undefined) => {
 };
 // 播放录音
 const playRecordRef = ref<RefType>();
-const storesThemeConfig = useThemeConfig();
-const { themeConfig } = storeToRefs(storesThemeConfig);
 const appConfigStore = useAppConfig();
 const { AppConfigInfo } = storeToRefs(appConfigStore); // 系统配置信息
 const onPlaySoundRecording = (val: any) => {