Browse Source

reactor:会签查询BUG修复;

zhangchong 10 months ago
parent
commit
b37d683e5c

+ 14 - 17
src/components/Hotspot/index.vue

@@ -55,14 +55,14 @@
 	</el-select>
 </template>
 <script setup lang="ts">
-import { computed, nextTick, reactive, ref, watch } from "vue";
+import { computed, nextTick, PropType, reactive, ref, watch } from 'vue';
 import { hotSpotSearch, hotSpotType } from '@/api/business/order';
 import { removeDuplicate } from '@/utils/arrayOperation';
 
 const props = defineProps({
 	modelValue: {
-		type: [String, Array],
-		default: () => '',
+		type: [String, Array, null,undefined] as PropType<string | null | Array<object> | undefined>,
+		default: () => null,
 	},
 	disabled: {
 		type: Boolean,
@@ -133,20 +133,20 @@ watch(
 const lazyShow = ref(true);
 const loading = ref(false);
 const childValue = computed({
-  get: () => props.modelValue,
-  set: (val) => emit('update:modelValue', val),
+	get: () => props.modelValue,
+	set: (val) => emit('update:modelValue', val),
 });
 watch(
-  () => props.modelValue,
-  (val) => {
-    childValue.value = val;
-  },
-  { immediate: true }
+	() => props.modelValue,
+	(val) => {
+		childValue.value = val;
+	},
+	{ immediate: true }
 );
 // 懒加载
 const treeRef = ref<RefType>();
 const loadNode = async (node: any, resolve: any) => {
-  await nextTick();
+	await nextTick();
 	if (node.isLeaf) return resolve([]);
 	const { showCheckbox } = props;
 	try {
@@ -173,7 +173,7 @@ const filterMethod = (value: string) => {
 	if (value) {
 		lazyShow.value = false; //当输入框有值时关闭懒加载
 		loading.value = true;
-    hotSpotSearch(value)
+		hotSpotSearch(value)
 			.then((res) => {
 				//获取后端搜索的数据 	//selectMacTree是我自己的后端接口,你们换成自己的
 				state.treeData.length = 0;
@@ -250,10 +250,7 @@ const chooseHotSpot = () => {
 };
 // 重置
 const reset = () => {
-	state.checkedKeys = [];
-	treeRef.value.setCheckedKeys([]);
-	state.name = '';
-	emit('update:modelValue', []);
+  clear();
 };
 // 递归查找父级Id
 const getParentId = (val: any, arr: string[]) => {
@@ -275,7 +272,7 @@ const clear = () => {
 		state.id = '';
 		state.name = '';
 		treeRef.value.setCurrentKey(null);
-		emit('update:modelValue', '');
+		emit('update:modelValue', null);
 	}
 };
 defineExpose({

+ 26 - 20
src/views/business/countersign/index.vue

@@ -3,7 +3,7 @@
 		<!-- 搜索  -->
 		<el-card shadow="never">
 			<div class="flex-center-align mb20">
-				<span style="color: var(--el-text-color-regular); display: inline-block; text-align: right; padding-right: 12px;width: 100px">快捷查询</span>
+				<span style="color: var(--el-text-color-regular); display: inline-block; text-align: right; padding-right: 12px; width: 100px">快捷查询</span>
 				<el-radio-group v-model="fastSearch" @change="fastSearchChange">
 					<el-radio-button label="InitiatedCountersignature">发起的会签</el-radio-button>
 					<el-radio-button label="HandleCountersignature">已办会签</el-radio-button>
@@ -12,13 +12,13 @@
 			<el-form :model="state.queryParams" ref="ruleFormRef" @submit.native.prevent label-width="100px">
 				<el-row :gutter="10">
 					<el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6">
-						<el-form-item label="工单标题" prop="Keyword">
-							<el-input v-model="state.queryParams.Keyword" placeholder="工单标题" clearable @keyup.enter="handleQuery" />
+						<el-form-item label="工单标题" prop="Title">
+							<el-input v-model="state.queryParams.Title" placeholder="工单标题" clearable @keyup.enter="handleQuery" />
 						</el-form-item>
 					</el-col>
 					<el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6">
-						<el-form-item label="工单编码" prop="No">
-							<el-input v-model="state.queryParams.No" placeholder="工单编码" clearable @keyup.enter="handleQuery" />
+						<el-form-item label="工单编码" prop="OrderNo">
+							<el-input v-model="state.queryParams.OrderNo" placeholder="工单编码" clearable @keyup.enter="handleQuery" />
 						</el-form-item>
 					</el-col>
 					<el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6">
@@ -138,7 +138,7 @@ import { defineAsyncComponent, onMounted, reactive, ref } from 'vue';
 import { FormInstance } from 'element-plus';
 import { formatDate } from '@/utils/formatTime';
 import { useRouter } from 'vue-router';
-import { countersignBase, countersignData } from "@/api/query/countersign";
+import { countersignBase, countersignData } from '@/api/query/countersign';
 import { storeToRefs } from 'pinia';
 import { useUserInfo } from '@/stores/userInfo';
 // 引入组件
@@ -149,7 +149,7 @@ const HotSpotSelect = defineAsyncComponent(() => import('@/components/Hotspot/in
 const proTableRef = ref<RefType>(); // 表格ref
 // 表格配置项
 const columns = ref<any[]>([
-	{ prop: 'order.expiredStatusText', label: '超期状态', align: 'center',fixed: 'left',width: 80 },
+	{ prop: 'order.expiredStatusText', label: '超期状态', align: 'center', fixed: 'left', width: 80 },
 	{ prop: 'stateText', label: '会签状态', width: 120 },
 	{ prop: 'order.counterSignTypeText', label: '会签类型', width: 120 },
 	{ prop: 'order.no', label: '工单编码', width: 150 },
@@ -209,13 +209,19 @@ const state = reactive<any>({
 		IsOnlyStarter: false, // 是否中心
 		HandleCountersignature: null, // 已办会签
 		InitiatedCountersignature: true, // 是否发起会签
+		HotspotIds:[], // 热点分类
+    ActualHandleStepName:null, // 办理节点
+    Channels:null, // 来源方式
+    AcceptTypes:null, // 受理类型
+    Title:null,
+    OrderNo:null
 	},
 	tableData: [], //表单
 	loading: false, // 加载
 	total: 0, // 总数
-  acceptTypeOptions:[],// 受理类型
-  channelOptions:[],// 来源方式
-  counterSignTypeOptions:[],// 会签类型
+	acceptTypeOptions: [], // 受理类型
+	channelOptions: [], // 来源方式
+	counterSignTypeOptions: [], // 会签类型
 });
 const fastSearch = ref('InitiatedCountersignature');
 const fastSearchChange = (val: any) => {
@@ -280,17 +286,17 @@ const onRecord = (row) => {
 };
 // 查询基础信息
 const baseInfo = async () => {
-  try {
-    const {result} = await countersignBase();
-    state.acceptTypeOptions = result.acceptTypeOptions;
-    state.channelOptions = result.channelOptions;
-    state.counterSignTypeOptions = result.counterSignType;
-  }catch (e){
-    console.log(e)
-  }
-}
+	try {
+		const { result } = await countersignBase();
+		state.acceptTypeOptions = result.acceptTypeOptions;
+		state.channelOptions = result.channelOptions;
+		state.counterSignTypeOptions = result.counterSignType;
+	} catch (e) {
+		console.log(e);
+	}
+};
 onMounted(() => {
-  baseInfo();
+	baseInfo();
 	queryList();
 });
 </script>

+ 0 - 1
src/views/todo/seats/accept/Citizen-portrait.vue

@@ -101,7 +101,6 @@ import { computed, reactive, ref, watch } from 'vue';
 import { ElMessage, ElMessageBox, FormInstance } from 'element-plus';
 import { citizenDetailByPhone, citizenAdd, citizenLabelAdd, citizenLabelDelete } from '@/api/auxiliary/citizen';
 import { formatDate } from '@/utils/formatTime';
-import { getImageUrl } from '@/utils/tools';
 
 const props = defineProps({
 	editable: {