Переглянути джерело

reactor:综合查询查询条件调整;

zhangchong 1 рік тому
батько
коміт
b92c28969b
1 змінених файлів з 61 додано та 19 видалено
  1. 61 19
      src/views/business/order/index.vue

+ 61 - 19
src/views/business/order/index.vue

@@ -18,6 +18,33 @@
 							<el-input v-model="state.queryParams.ProvinceNo" placeholder="省本地编号" clearable @keyup.enter="queryList" />
 						</el-form-item>
 					</el-col>
+          <transition name="el-zoom-in-top" v-show="!searchCol">
+            <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6">
+              <el-form-item label="来电人姓名" prop="FromName">
+                <el-input v-model="state.queryParams.FromName" placeholder="来电人姓名" clearable @keyup.enter="queryList" />
+              </el-form-item>
+            </el-col>
+          </transition>
+          <transition name="el-zoom-in-top" v-show="!searchCol">
+            <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6">
+                <el-form-item label="事发地址" prop="AreaCodes">
+                  <el-cascader
+                    :options="state.areaOptions"
+                    filterable
+                    :show-all-levels="false"
+                    :props="{ checkStrictly: true, value: 'id', label: 'areaName', multiple: true }"
+                    placeholder="请选择事发地址"
+                    clearable
+                    class="w100"
+                    v-model="state.queryParams.AreaCodes"
+                    collapse-tags
+                    collapse-tags-tooltip
+                    :max-collapse-tags="2"
+                  >
+                  </el-cascader>
+              </el-form-item>
+            </el-col>
+          </transition>
 					<transition name="el-zoom-in-top" v-show="!searchCol">
 						<el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6">
 							<el-form-item label="转接来源" prop="TransferPhone">
@@ -85,13 +112,13 @@
 					</transition>
 					<transition name="el-zoom-in-top">
 						<el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" v-show="!searchCol">
-							<el-form-item label="部门" prop="OrgCodes">
+							<el-form-item label="接办部门" prop="OrgCodes">
 								<el-cascader
 									:options="state.orgsOptions"
 									filterable
 									:show-all-levels="false"
 									:props="{ checkStrictly: true, value: 'id', label: 'name', emitPath: false, multiple: true }"
-									placeholder="请选择所属部门"
+									placeholder="请选择接办部门"
 									clearable
 									class="w100"
 									v-model="state.queryParams.OrgCodes"
@@ -107,8 +134,8 @@
 					</transition>
 					<transition name="el-zoom-in-top">
 						<el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" v-show="!searchCol">
-							<el-form-item label="受理坐席" prop="NameOrNo">
-								<el-input v-model="state.queryParams.NameOrNo" placeholder="坐席姓名/坐席工号" clearable @keyup.enter="queryList" />
+							<el-form-item label="受理" prop="NameOrNo">
+								<el-input v-model="state.queryParams.NameOrNo" placeholder="受理人/坐席工号" clearable @keyup.enter="queryList" />
 							</el-form-item>
 						</el-col>
 					</transition>
@@ -138,6 +165,13 @@
 							</el-form-item>
 						</el-col>
 					</transition>
+          <transition name="el-zoom-in-top">
+            <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" v-show="!searchCol">
+              <el-form-item label="来电号码" prop="FromPhone">
+                <el-input v-model="state.queryParams.FromPhone" placeholder="来电号码" clearable @keyup.enter="queryList" />
+              </el-form-item>
+            </el-col>
+          </transition>
 					<transition name="el-zoom-in-top">
 						<el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" v-show="!searchCol">
 							<el-form-item label="联系电话" prop="PhoneNo">
@@ -217,7 +251,7 @@
 					<transition name="el-zoom-in-top">
 						<el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" v-show="!searchCol">
 							<el-form-item label="是否超期" prop="IsOverTime">
-								<el-select v-model="state.queryParams.IsOverTime" placeholder="请选择是否甄别" class="w100" clearable>
+								<el-select v-model="state.queryParams.IsOverTime" placeholder="请选择是否超期" class="w100" clearable>
 									<el-option label="是" :value="true" />
 									<el-option label="否" :value="false" />
 								</el-select>
@@ -368,6 +402,7 @@ import { formatDate } from '@/utils/formatTime';
 import { listBaseData, orderList } from '@/api/business/order';
 import { addObserve } from '@/api/query/observe';
 import { addEnd } from '@/api/query/end';
+import { treeArea } from "@/api/auxiliary/area";
 
 // 引入组件
 const OrderDetail = defineAsyncComponent(() => import('@/components/OrderDetail/index.vue')); // 工单详情
@@ -419,6 +454,7 @@ const state = reactive(<any>{
 	orgsOptions: [], // 部门
 	pushTypeOptions: [], //推送分类
 	orgData: [], // 机构数据
+  areaOptions: [], // 省市区数据
 });
 const ruleFormRef = ref<RefType>(); // 表单ref
 const searchCol = ref(true); // 展开/收起
@@ -555,20 +591,26 @@ const timeStartChangeDone = (val: string[]) => {
 };
 // 获取查询条件基础信息
 const getBaseData = async () => {
-	const res: any = await listBaseData();
-	const mappings: any = {
-		acceptTypeOptions: 'acceptTypeOptions',
-		channelOptions: 'channelOptions',
-		emergencyLevelOptions: 'emergencyLevelOptions',
-		orgsOptions: 'orgsOptions',
-		pushTypeOptions: 'pushTypeOptions',
-		orderStatusOptions: 'orderStatusOptions',
-		identityTypeOptions: 'identityTypeOptions',
-		currentStepOptions: 'currentStepOptions',
-	};
-	for (const key in mappings) {
-		state[key] = res.result?.[mappings[key]] ?? [];
-	}
+  try {
+    const res: any = await listBaseData();
+    const mappings: any = {
+      acceptTypeOptions: 'acceptTypeOptions',
+      channelOptions: 'channelOptions',
+      emergencyLevelOptions: 'emergencyLevelOptions',
+      orgsOptions: 'orgsOptions',
+      pushTypeOptions: 'pushTypeOptions',
+      orderStatusOptions: 'orderStatusOptions',
+      identityTypeOptions: 'identityTypeOptions',
+      currentStepOptions: 'currentStepOptions',
+    };
+    for (const key in mappings) {
+      state[key] = res.result?.[mappings[key]] ?? [];
+    }
+    const area = await treeArea();
+    state.areaOptions = area.result ?? []; //省市区数据
+  } catch (error) {
+    console.log(error);
+  }
 };
 /** 获取列表 */
 const queryList = () => {