Prechádzať zdrojové kódy

reactor:工单办理新增受理内容;

zhangchong 3 mesiacov pred
rodič
commit
ec1499adc6

+ 9 - 4
src/components/OrderDetail/index.vue

@@ -715,6 +715,8 @@
 	</process-detail>
 	<!--  自贡随手拍办理  -->
 	<z-g-s-s-p-process ref="zgSspProcessRef" @orderProcessSuccess="orderProcessSuccess" />
+	<!-- 宜宾工单办理 -->
+	<y-b-process ref="ybProcessRef" />
 </template>
 
 <script setup lang="ts" name="orderDetail">
@@ -750,6 +752,7 @@ const DelayApply = defineAsyncComponent(() => import('@/views/business/delay/com
 const ProcessDetail = defineAsyncComponent(() => import('@/components/ProcessDetail/index.vue')); // 流程明细
 const MapView = defineAsyncComponent(() => import('@/components/OrderDetail/Map-view.vue')); // 地图标点
 const ZGSSPProcess = defineAsyncComponent(() => import('@/components/ProcessAudit/ZGSSPProcess.vue')); // 自贡随手拍办理流程
+const YBProcess = defineAsyncComponent(() => import('@/components/ProcessAudit/YBProcess.vue')); // 宜宾工单办理流程
 
 type ButtonType = '' | 'default' | 'success' | 'warning' | 'info' | 'text' | 'primary' | 'danger';
 const props = defineProps({
@@ -1051,10 +1054,11 @@ const onDelayApply = () => {
 	delayApplyRef.value.openDialog(params);
 };
 // 提交流程
-const lzProcessRef = ref<RefType>();
+const lzProcessRef = ref<RefType>(); // 泸州流程办理
 const processAuditRef = ref<RefType>(); // 处理流程
-const zgProcessRef = ref<RefType>();
-const zgSspProcessRef = ref<RefType>();
+const zgProcessRef = ref<RefType>(); // 自贡流程办理
+const zgSspProcessRef = ref<RefType>(); // 自贡随手拍流程办理
+const ybProcessRef = ref<RefType>(); // 宜宾流程办理
 const onSubmit = (val: string, annexName: string = '办理附件', classify: string = '办理附件', inputPlaceholder = '办理意见') => {
 	if (['工单办理', '工单退回'].includes(val) && state.ruleForm.isReturnUnderApproval) {
 		ElMessage.warning(`该工单存在正在审核中的退回,不能办理!`);
@@ -1081,8 +1085,9 @@ const onSubmit = (val: string, annexName: string = '办理附件', classify: str
 		}
 	} else if (['LuZhou'].includes(themeConfig.value.appScope) && zgLzActions.includes(val)) {
 		lzProcessRef.value.openDialog(params);
-	} else {
+	} else { // 宜宾
 		processAuditRef.value.openDialog(params);
+		// ybProcessRef.value.openDialog(params);
 	}
 };
 // 流程提交成功

+ 9 - 0
src/components/ProcessAudit/LZProcess.vue

@@ -42,6 +42,11 @@
 				</template>
 				<!-- 办理流程 -->
 				<template v-else>
+					<el-col v-if="orderContent">
+						<el-form-item label="受理内容">
+							<text-ellipsis :content="orderContent" :rows="1"> </text-ellipsis>
+						</el-form-item>
+					</el-col>
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12">
 						<el-form-item label="下一环节" prop="nextStepCode" :rules="[{ required: true, message: '请选择下一环节', trigger: 'change' }]">
 							<el-select v-model="state.ruleForm.nextStepCode" placeholder="请选择下一环节" class="w100" @change="selectNextStep">
@@ -516,6 +521,7 @@ import { useThemeConfig } from '@/stores/themeConfig';
 // 引入组件
 const CommonAdvice = defineAsyncComponent(() => import('@/components/CommonAdvice/index.vue')); // 常用意见
 const AnnexList = defineAsyncComponent(() => import('@/components/AnnexList/index.vue')); // 附件列表
+const TextEllipsis = defineAsyncComponent(() => import('@/components/TextEllipsis/index.vue'));
 // 定义子组件向父组件传值/事件
 const emit = defineEmits(['orderProcessSuccess', 'orderProcessFailed']);
 // 定义变量内容
@@ -664,6 +670,7 @@ const isMainHandlerShow = ref<boolean>(false); // 是否展示主办人
 const currentParams = ref<EmptyObjectType>({}); // 当前获取到的参数(当前节点信息)
 const leaderSMS = ref<EmptyArrayType>([]); // 领导短信选择
 const transpondCity = ref<EmptyArrayType>([]); // 市州互转选择
+const orderContent = ref<string>(''); // 受理内容
 const handleResult = (res: any) => {
 	currentParams.value = res.result;
 	state.nextStepOptions = res.result.steps; //办理对象选择内容
@@ -672,6 +679,7 @@ const handleResult = (res: any) => {
 	isMainHandlerShow.value = res.result.isMainHandlerShow ?? false; // 是否展示主办人
 	leaderSMS.value = res.result.leaderSMS ?? []; // 领导短信选择
 	transpondCity.value = res.result.transpondCity ?? []; // 市州互转
+	orderContent.value = res.result.content ?? ''; // 受理内容
 	if (handelArr.includes(state.processType)) {
 		// 办理才有期满时间
 		state.ruleForm.expiredTime = res.result.expiredTime ?? null; // 期满时间
@@ -1183,6 +1191,7 @@ const afterSubmit = (emitType?: 'orderProcessSuccess' | 'orderProcessFailed', sh
 };
 const close = () => {
 	restForm(ruleFormRef.value);
+	orderContent.value = '';
 };
 // 选择是否市州互转
 const changeTransPond = (val: any) => {

+ 9 - 0
src/components/ProcessAudit/YBProcess.vue

@@ -29,6 +29,11 @@
 		{{ orgSummaryToEnd ? '部门汇总到归档' : '' }}
 		<el-form :model="state.ruleForm" label-width="110px" ref="ruleFormRef"  v-loading="state.loading">
 			<slot name="header"></slot>
+			<el-col v-if="orderContent">
+				<el-form-item label="受理内容">
+					<text-ellipsis :content="orderContent" :rows="1"> </text-ellipsis>
+				</el-form-item>
+			</el-col>
 			<el-row :gutter="10">
 					<!-- 非退回流程都需要选择 -->
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12">
@@ -399,6 +404,7 @@ import { useAppConfig } from '@/stores/appConfig';
 // 引入组件
 const CommonAdvice = defineAsyncComponent(() => import('@/components/CommonAdvice/index.vue')); // 常用意见
 const AnnexList = defineAsyncComponent(() => import('@/components/AnnexList/index.vue')); // 附件列表
+const TextEllipsis = defineAsyncComponent(() => import('@/components/TextEllipsis/index.vue'));
 // 定义子组件向父组件传值/事件
 const emit = defineEmits(['orderProcessSuccess', 'orderProcessFailed']);
 // 定义变量内容
@@ -539,6 +545,7 @@ const canStartCountersign = ref<boolean>(false); // 是否可以发起会签
 const isMainHandlerShow = ref<boolean>(false); // 是否展示主办人
 const currentParams = ref<EmptyObjectType>({}); // 当前获取到的参数(当前节点信息)
 const transpondCity = ref<EmptyArrayType>([]); // 市州互转选择
+const orderContent = ref<string>(''); // 受理内容
 const handleResult = (res: any) => {
 	currentParams.value = res.result; // 当前获取到的参数(当前节点信息)
 	state.nextStepOptions = res.result.steps; //办理对象选择内容
@@ -546,6 +553,7 @@ const handleResult = (res: any) => {
 	canStartCountersign.value = res.result.canStartCountersign ?? false; // 是否可以发起会签
 	isMainHandlerShow.value = res.result.isMainHandlerShow ?? false; // 是否展示主办人
 	transpondCity.value = res.result.transpondCity ?? []; // 市州互转
+	orderContent.value = res.result.content ?? ''; // 受理内容
 
 	// 办理才有期满时间
 	state.ruleForm.expiredTime = res.result.expiredTime ?? null; // 期满时间
@@ -954,6 +962,7 @@ const afterSubmit = (emitType?: 'orderProcessSuccess' | 'orderProcessFailed', sh
 };
 const close = () => {
 	restForm(ruleFormRef.value);
+	orderContent.value = '';
 };
 
 // 选择是否市州互转

+ 14 - 5
src/components/ProcessAudit/ZGProcess.vue

@@ -15,7 +15,7 @@
 		:append-to-body="!isOrderAccept"
 		:modal="!isOrderAccept"
 	>
-<!--		<template  #header="{ close, titleId, titleClass }">
+		<!--		<template  #header="{ close, titleId, titleClass }">
 			<h4 :id="titleId" :class="titleClass">{{state.dialogTitle}}<el-text tag="b" type="danger" size="large" class="ml10">随手拍</el-text></h4>
 		</template>-->
 		<el-form :model="state.ruleForm" label-width="110px" ref="ruleFormRef" v-loading="state.loading">
@@ -45,6 +45,11 @@
 				</template>
 				<!-- 办理流程 -->
 				<template v-else>
+					<el-col v-if="orderContent">
+						<el-form-item label="受理内容">
+							<text-ellipsis :content="orderContent" :rows="1"> </text-ellipsis>
+						</el-form-item>
+					</el-col>
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12">
 						<el-form-item label="下一环节" prop="nextStepCode" :rules="[{ required: true, message: '请选择下一环节', trigger: 'change' }]">
 							<el-select v-model="state.ruleForm.nextStepCode" placeholder="请选择下一环节" class="w100" @change="selectNextStep">
@@ -556,6 +561,7 @@ import { removeDuplicate } from '@/utils/arrayOperation';
 // 引入组件
 const CommonAdvice = defineAsyncComponent(() => import('@/components/CommonAdvice/index.vue')); // 常用意见
 const AnnexList = defineAsyncComponent(() => import('@/components/AnnexList/index.vue')); // 附件列表
+const TextEllipsis = defineAsyncComponent(() => import('@/components/TextEllipsis/index.vue'));
 // 定义子组件向父组件传值/事件
 const emit = defineEmits(['orderProcessSuccess', 'orderProcessFailed']);
 // 定义变量内容
@@ -705,6 +711,7 @@ const isMainHandlerShow = ref<boolean>(false); // 是否展示主办人
 const currentParams = ref<EmptyObjectType>({}); // 当前获取到的参数(当前节点信息)
 const leaderSMS = ref<EmptyArrayType>([]); // 领导短信选择
 const transpondCity = ref<EmptyArrayType>([]); // 市州互转选择
+const orderContent = ref<string>(''); // 受理内容
 const handleResult = (res: any) => {
 	currentParams.value = res.result;
 	state.nextStepOptions = res.result.steps; //办理对象选择内容
@@ -713,6 +720,7 @@ const handleResult = (res: any) => {
 	isMainHandlerShow.value = res.result.isMainHandlerShow ?? false; // 是否展示主办人
 	leaderSMS.value = res.result.leaderSMS ?? []; // 领导短信选择
 	transpondCity.value = res.result.transpondCity ?? []; // 市州互转
+	orderContent.value = res.result.content ?? ''; // 受理内容
 	if (handelArr.includes(state.processType)) {
 		// 办理才有期满时间
 		state.ruleForm.expiredTime = res.result.expiredTime ?? null; // 期满时间
@@ -1329,6 +1337,7 @@ const afterSubmit = (emitType?: 'orderProcessSuccess' | 'orderProcessFailed', sh
 };
 const close = () => {
 	restForm(ruleFormRef.value);
+	orderContent.value = '';
 };
 // 选择是否市州互转
 const changeTransPond = (val: any) => {
@@ -1422,7 +1431,7 @@ const onSubmit = (formEl: FormInstance | undefined) => {
 			case '工单受理':
 				const request = {
 					data: { orderId: state.orderDetail.id, ...submitObj, crossSteps, secondaryOrgs: secondaryOrgs.value, copys: copys.value },
-					workflow: { ...submitObj, files: handleFiles.value,currentTag:currentParams.value.currentTag },
+					workflow: { ...submitObj, files: handleFiles.value, currentTag: currentParams.value.currentTag },
 				};
 				orderStartFlow(request)
 					.then(() => {
@@ -1436,7 +1445,7 @@ const onSubmit = (formEl: FormInstance | undefined) => {
 			case '工单代办': // 工单代办流程
 				const requestHandle = {
 					data: { orderId: state.orderDetail.id, ...submitObj, crossSteps, secondaryOrgs: secondaryOrgs.value, copys: copys.value },
-					workflow: { ...submitObj, files: handleFiles.value,currentTag:currentParams.value.currentTag },
+					workflow: { ...submitObj, files: handleFiles.value, currentTag: currentParams.value.currentTag },
 				};
 				orderHandle(requestHandle)
 					.then(() => {
@@ -1447,7 +1456,7 @@ const onSubmit = (formEl: FormInstance | undefined) => {
 					});
 				break;
 			case '工单退回':
-				const requestReturn = { ...submitObj, files: handleFiles.value,orderId: state.orderDetail.id };
+				const requestReturn = { ...submitObj, files: handleFiles.value, orderId: state.orderDetail.id };
 				orderPrevious(requestReturn)
 					.then(() => {
 						afterSubmit('orderProcessSuccess', true, '退回申请成功');
@@ -1459,7 +1468,7 @@ const onSubmit = (formEl: FormInstance | undefined) => {
 			default: // 默认工单办理
 				const requestDefault = {
 					data: { orderId: state.orderDetail.id, ...submitObj, crossSteps, secondaryOrgs: secondaryOrgs.value, copys: copys.value },
-					workflow: { ...submitObj, files: handleFiles.value,currentTag:currentParams.value.currentTag },
+					workflow: { ...submitObj, files: handleFiles.value, currentTag: currentParams.value.currentTag },
 				};
 				orderHandle(requestDefault)
 					.then(() => {

+ 10 - 1
src/components/ProcessAudit/index.vue

@@ -181,7 +181,7 @@
 				</el-row>
 			</el-form>
 		</div>
-		<el-form :model="state.ruleForm" label-width="110px" ref="ruleFormRef" v-show="activeStep === 1" v-loading="state.loading">
+		<el-form :model="state.ruleForm" label-width="110px" ref="ruleFormRef" v-show="activeStep === 1" v-loading="state.loading" :disabled="state.loading">
 			<slot name="header"></slot>
 			<el-row :gutter="10">
 				<!-- 审批流程 -->
@@ -278,6 +278,11 @@
 				</template>
 				<!-- 办理流程 -->
 				<template v-else>
+					<el-col v-if="orderContent">
+						<el-form-item label="受理内容">
+							<text-ellipsis :content="orderContent" :rows="1"> </text-ellipsis>
+						</el-form-item>
+					</el-col>
 					<!-- 非退回流程都需要选择 -->
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" v-if="!returnArr.includes(state.processType)">
 						<el-form-item label="下一环节" prop="nextStepCode" :rules="[{ required: true, message: '请选择下一环节', trigger: 'change' }]">
@@ -640,6 +645,7 @@ import { terminateNextFlowParams, terminateStartFlow, terminateStartFlowParams }
 // 引入组件
 const CommonAdvice = defineAsyncComponent(() => import('@/components/CommonAdvice/index.vue')); // 常用意见
 const AnnexList = defineAsyncComponent(() => import('@/components/AnnexList/index.vue')); // 附件列表
+const TextEllipsis = defineAsyncComponent(() => import('@/components/TextEllipsis/index.vue'));
 // 定义子组件向父组件传值/事件
 const emit = defineEmits(['orderProcessSuccess', 'orderProcessFailed']);
 // 定义变量内容
@@ -844,6 +850,7 @@ const timeTypeOptions = ref<EmptyArrayType>([]); // 办理时限单位
 const canStartCountersign = ref<boolean>(false); // 是否可以发起会签
 const isMainHandlerShow = ref<boolean>(false); // 是否展示主办人
 const currentParams = ref<EmptyObjectType>({}); // 当前获取到的参数(当前节点信息)
+const orderContent = ref<string>(''); // 受理内容
 const handleResult = (res: any) => {
 	currentParams.value = res.result; // 当前获取到的参数(当前节点信息)
 	state.nextStepOptions = res.result.steps; //办理对象选择内容
@@ -851,6 +858,7 @@ const handleResult = (res: any) => {
 	timeTypeOptions.value = res.result.timeTypeOptions ?? []; // 办理时限申请单位
 	canStartCountersign.value = res.result.canStartCountersign ?? false; // 是否可以发起会签
 	isMainHandlerShow.value = res.result.isMainHandlerShow ?? false; // 是否展示主办人
+	orderContent.value = res.result.content ?? ''; // 受理内容
 	if (handelArr.includes(state.processType)) {
 		// 办理才有期满时间
 		state.ruleForm.expiredTime = res.result.expiredTime ?? null; // 期满时间
@@ -1326,6 +1334,7 @@ const close = () => {
 	restForm(discernFormRef.value);
 	restForm(terminateFormRef.value);
 	restForm(redoFormRef.value);
+	orderContent.value = '';
 };
 // 办理
 const handleFiles = ref<EmptyArrayType>([]); // 流程附件