Browse Source

搜索字段联调

feature
mk 1 year ago
parent
commit
62e817026c
  1. 141
      src/views/modules/shequzhili/Delivery/index.vue
  2. 3
      src/views/modules/shequzhili/event/cpts/process-form-assign.vue
  3. 108
      src/views/modules/shequzhili/eventHandling/index.vue
  4. 64
      src/views/modules/shequzhili/timeOut/index.vue

141
src/views/modules/shequzhili/Delivery/index.vue

@ -5,16 +5,16 @@
<div class="m-search">
<el-form :inline="true" :model="formData" ref="ref_searchform" :label-width="'100px'">
<div>
<el-form-item label="事件类别" prop="categoryAllName">
<el-cascader ref="cascaderEvent" v-model.trim="formData.categoryAllName" :options="cateOptions" collapse-tags
<el-form-item label="事件类别" prop="firstIdList">
<el-cascader ref="cascaderEvent" v-model.trim="formData.firstIdList" :options="cateOptions" collapse-tags
:show-all-levels="false" :props="{
multiple: true,
checkStrictly: false,
checkStrictly: true,
emitPath: false,
children: 'children',
label: 'categoryName',
value: 'id',
}" clearable class="u-item-width-normal" @change="handleEventType" />
}" clearable class="u-item-width-normal" />
</el-form-item>
<el-form-item label="工单编号" prop="workOrderNum">
<el-input v-model.trim="formData.workOrderNum" class="u-item-width-normal" size="small" clearable
@ -31,32 +31,23 @@
placeholder="请输入">
</el-input>
</el-form-item>
<el-form-item label="派件状态" prop="deliverystatus">
<el-cascader ref="cascaderEvent" v-model.trim="formData.deliverystatus" collapse-tags :options="ProcessingList"
:show-all-levels="false" clearable class="u-item-width-normal" @change="handleEventType" />
<!-- <template slot-scope="{ node, data }">
<div @click="cascaderClick(node, data)">
<span>{{ data.name }}</span>
</div>
</template>
</el-cascader> -->
<el-form-item label="派件状态" prop="deliveryStatus">
<el-select v-model.trim="formData.deliveryStatus" clearable class="u-item-width-normal">
<el-option v-for="item in ProcessingList" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="办理状态" prop="operationTypeName">
<el-cascader class="u-item-width-normal"
size="small"
ref="myCascader"
v-model.trim="formData.operationTypeName"
:options="handleList"
:show-all-levels="false"
@change="handleChangeAgency"
clearable></el-cascader>
<el-form-item label="办理状态" prop="operationType">
<el-select v-model.trim="formData.operationType" clearable class="u-item-width-normal">
<el-option v-for="item in handleList" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="指派部门" prop="deptName">
<el-form-item label="指派部门" prop="departId">
<el-cascader class="u-item-width-normal"
size="small"
ref="myCascader"
v-model.trim="formData.deptName"
v-model.trim="formData.departId"
:options="orgOptions"
:props="orgOptionProps"
:show-all-levels="false"
@ -91,11 +82,16 @@
<el-button @click="handleExport" class="diy-button--white" size="small">导出</el-button>
<el-dropdown size="small" split-button type="primary" style="margin: 0 10px; height: 30px"
@command="(command) => handleMarkDiffcult(command)">
@command="(command) => importTypeChange(command)">
导入
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="1">下载模板</el-dropdown-item>
<el-dropdown-item command="2">上传导入</el-dropdown-item>
<el-upload :headers="$getElUploadHeaders()" ref="upload" class="upload-btn" action="uploadUlr"
:limit="1" :accept="'.xls,.xlsx'" :with-credentials="true" :show-file-list="false"
:auto-upload="true" :on-progress="handleProgress" :on-success="handleExcelSuccess"
:before-upload="beforeExcelUpload" :http-request="uploadHttpRequest">
<el-dropdown-item command="1">上传导入</el-dropdown-item>
</el-upload>
</el-dropdown-menu>
</el-dropdown>
</div>
@ -209,78 +205,37 @@ export default {
sarr: [],
ProcessingList: [
{
value: "1",
label: "未指派",
},
{
value: "2",
label: "未查收",
value: "assigned ",
label: "已指派",
},
{
value: "3",
label: "已查收",
value: "unassigned",
label: "未指派",
},
],
handleList: [
{
value: "1",
{
value: "8",
label: "未联系当事人",
},
{
value: "2",
value: "9",
label: "已联系当事人",
},
{
value: "3",
value: "10",
label: "办理中",
},
{
value: "4",
value: "11",
label: "已办结待审核",
},
{
value: "5",
value: "12",
label: "已审核归档",
},
],
tableData: [
{
workOrder:"5131133113213213213",
eventType:"城乡建设-住房",
eventContent:"王先生反映:市北区有一家黄焖鸡不好吃",
eventName:"王先生",
phone:"15666628220",
deliverystatus:0,
handleStatus:0,
department:"城建办",
date:"2024-8-1 11:50",
status:0
},
{
workOrder:"5131133113213213213",
eventType:"城乡建设-住房",
eventContent:"王先生反映:市北区有一家黄焖鸡不好吃",
eventName:"王先生",
phone:"15666628220",
deliverystatus:1,
handleStatus:0,
department:"城建办",
date:"2024-8-1 11:50",
status:0
},
{
workOrder:"5131133113213213213",
eventType:"城乡建设-住房",
eventContent:"王先生反映:市北区有一家黄焖鸡不好吃",
eventName:"王先生",
phone:"15666628220",
deliverystatus:1,
handleStatus:1,
department:"城建办",
date:"2024-8-1 11:50",
status:0
}
],
tableData: [],
statusArray: [
{
value: "processing",
@ -319,6 +274,7 @@ export default {
formData: {
agencyId: "",
sourceType: "",
departId:'',
eventContent: "",
name: "",
mobile: "",
@ -327,10 +283,10 @@ export default {
limitStartTime: "",
limitEndTime: "",
status: "",
firstIdList: [],
secondIdList: [],
firstIdList:[],
operationType:'',
workOrderNum: "",
deliverystatus:"",
deliveryStatus:"",
handleStatus:"",
},
cateOptions: [],
@ -351,7 +307,7 @@ export default {
selVoiceUrl: "",
multipleSelection: [],
importLoading: false,
importType: "1"
importType: "1"
};
},
components:{eventInfo},
@ -387,22 +343,7 @@ export default {
this.getCateOptions();
},
methods: {
handleEventType(val) {
const nodes = this.$refs.cascaderEvent.getCheckedNodes();
this.formData.firstIdList = [];
this.formData.secondIdList = [];
let level1 = nodes.filter((item) => item.level === 1);
let level2 = nodes.filter((item) => item.level === 2);
level1.forEach((item) => {
if (item.hasChildren) {
for (let i = level2.length - 1; i >= 0; i--) {
if (level2[i].parent.value === item.value) level2.splice(i, 1);
}
}
});
this.formData.firstIdList = level1.map((item) => item.value);
this.formData.secondIdList = level2.map((item) => item.value);
},
handleSelectionChange(val) {
this.multipleSelection = [];
val.forEach((element) => {
@ -781,7 +722,6 @@ export default {
},
handleChangeAgency(val) {
this.sarr = []
const map = new Map();
this.getLastItem(
@ -790,6 +730,7 @@ export default {
"agencyId"
);
this.level = this.sarr[this.sarr.length - 1].level
this.formData.departId = this.sarr[this.sarr.length - 1].agencyId
},
getLastItem(list, vals, key) {
let LIST = list || [];

3
src/views/modules/shequzhili/event/cpts/process-form-assign.vue

@ -81,7 +81,8 @@ export default {
timeLimit:'',//
deptId:'', //
deptName:'',
sendMsg:0
sendMsg:0,
status:'assigned'
},
orgOptions: [],
orgOptionProps: {

108
src/views/modules/shequzhili/eventHandling/index.vue

@ -4,16 +4,16 @@
<div class="m-search">
<el-form :inline="true" :model="formData" ref="ref_searchform" :label-width="'100px'">
<div>
<el-form-item label="事件类别" prop="categoryAllName">
<el-cascader ref="cascaderEvent" v-model.trim="formData.categoryAllName" :options="cateOptions"
<el-form-item label="事件类别" prop="firstIdList">
<el-cascader ref="cascaderEvent" v-model.trim="formData.firstIdList" :options="cateOptions"
collapse-tags :show-all-levels="false" :props="{
multiple: true,
checkStrictly: false,
checkStrictly: true,
emitPath: false,
children: 'children',
label: 'categoryName',
value: 'id',
}" clearable class="u-item-width-normal" @change="handleEventType" />
}" clearable class="u-item-width-normal" />
</el-form-item>
<el-form-item label="工单编号" prop="workOrderNum">
<el-input v-model.trim="formData.workOrderNum" class="u-item-width-normal" size="small"
@ -31,20 +31,16 @@
</el-input>
</el-form-item>
<el-form-item label="办理超期" prop="limitStatus">
<el-cascader ref="cascaderEvent" v-model.trim="formData.limitStatus" :options="overdue"
collapse-tags :show-all-levels="false" clearable class="u-item-width-normal"
@change="handleEventType" />
<!-- <template slot-scope="{ node, data }">
<div @click="cascaderClick(node, data)">
<span>{{ data.name }}</span>
</div>
</template>
</el-cascader> -->
<el-select v-model.trim="formData.limitStatus" clearable class="u-item-width-normal">
<el-option v-for="item in overdue" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="办理状态" prop="statusName">
<el-cascader class="u-item-width-normal" size="small" ref="myCascader"
v-model.trim="formData.statusName" :options="ProcessingList" :show-all-levels="false"
clearable></el-cascader>
<el-form-item label="办理状态" prop="operationType">
<el-select v-model.trim="formData.operationType" clearable class="u-item-width-normal">
<el-option v-for="item in ProcessingList" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="办结时限" prop="limitStartTime">
<el-date-picker v-model.trim="formData.startTime" class="u-item-width-daterange"
@ -207,64 +203,28 @@ export default {
optionsG: [],
sarr: [],
ProcessingList: [
{
value: "1",
label: "未响应",
{
value: "8",
label: "未联系当事人",
},
{
value: "2",
label: "以响应",
value: "9",
label: "已联系当事人",
},
{
value: "3",
value: "10",
label: "办理中",
},
},
{
value: "4",
label: "待审核",
value: "11",
label: "已办结待审核",
},
{
value: "5",
label: "已办结",
value: "12",
label: "已审核归档",
},
],
tableData: [
{
workOrder:"5131133113213213213",
eventType:"城乡建设-住房",
eventContent:"王先生反映:市北区有一家黄焖鸡不好吃",
eventName:"王先生",
phone:"15666628220",
deliverystatus:0,
handleStatus:0,
department:"城建办",
date:"2024-8-1 11:50",
status:0
},
{
workOrder:"5131133113213213213",
eventType:"城乡建设-住房",
eventContent:"王先生反映:市北区有一家黄焖鸡不好吃",
eventName:"王先生",
phone:"15666628220",
deliverystatus:1,
handleStatus:0,
department:"城建办",
date:"2024-8-1 11:50",
status:0
},
{
workOrder:"5131133113213213213",
eventType:"城乡建设-住房",
eventContent:"王先生反映:市北区有一家黄焖鸡不好吃",
eventName:"王先生",
phone:"15666628220",
deliverystatus:1,
handleStatus:1,
department:"城建办",
date:"2024-8-1 11:50",
status:0
}
],
statusArray: [
{
@ -325,7 +285,8 @@ export default {
firstIdList: [],
secondIdList: [],
workOrderNum: "",
overdue:""
limitStatus:"",
operationType:''
},
cateOptions: [],
eventTypeCheck: [],
@ -380,22 +341,7 @@ export default {
this.getCateOptions();
},
methods: {
handleEventType(val) {
const nodes = this.$refs.cascaderEvent.getCheckedNodes();
this.formData.firstIdList = [];
this.formData.secondIdList = [];
let level1 = nodes.filter((item) => item.level === 1);
let level2 = nodes.filter((item) => item.level === 2);
level1.forEach((item) => {
if (item.hasChildren) {
for (let i = level2.length - 1; i >= 0; i--) {
if (level2[i].parent.value === item.value) level2.splice(i, 1);
}
}
});
this.formData.firstIdList = level1.map((item) => item.value);
this.formData.secondIdList = level2.map((item) => item.value);
},
handleSelectionChange(val) {
this.multipleSelection = [];
val.forEach((element) => {

64
src/views/modules/shequzhili/timeOut/index.vue

@ -30,9 +30,16 @@
placeholder="请输入">
</el-input>
</el-form-item>
<el-form-item label="指派部门" prop="deptName">
<el-cascader ref="cascaderEvent" v-model.trim="formData.deptName" :options="cateOptions" collapse-tags
:show-all-levels="false" clearable class="u-item-width-normal" @change="handleEventType" />
<el-form-item label="指派部门" prop="departId">
<el-cascader ref="cascaderEvent" v-model.trim="formData.departId" :options="cateOptions" collapse-tags
:show-all-levels="false" clearable class="u-item-width-normal" :props="{
multiple: true,
checkStrictly: true,
emitPath: false,
children: 'children',
label: 'categoryName',
value: 'id',
}" />
</el-form-item>
<el-form-item label="办理状态" prop="resolveStatus">
<el-cascader class="u-item-width-normal"
@ -43,14 +50,18 @@
:show-all-levels="false"
clearable></el-cascader>
</el-form-item>
<el-form-item label="超时状态" prop="Timeoutstatus">
<el-cascader class="u-item-width-normal"
<el-form-item label="超时状态" prop="limitStatus">
<!-- <el-cascader class="u-item-width-normal"
size="small"
ref="myCascader"
v-model.trim="formData.Timeoutstatus"
v-model.trim="formData.limitStatus"
:options="timeoutList"
:show-all-levels="false"
clearable></el-cascader>
clearable></el-cascader> -->
<el-select v-model.trim="formData.limitStatus" clearable class="u-item-width-normal">
<el-option v-for="item in timeoutList" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="办结时限" prop="timeLimit">
<el-date-picker v-model.trim="formData.timeLimit"
@ -244,42 +255,6 @@ export default {
dialogVisible:false,
tableData: [
{
workOrder:"5131133113213213213",
eventType:"城乡建设-住房",
eventContent:"王先生反映:市北区有一家黄焖鸡不好吃",
eventName:"王先生",
phone:"15666628220",
deliverystatus:0,
handleStatus:0,
department:"城建办",
date:"2024-8-1 11:50",
status:0
},
{
workOrder:"5131133113213213213",
eventType:"城乡建设-住房",
eventContent:"王先生反映:市北区有一家黄焖鸡不好吃",
eventName:"王先生",
phone:"15666628220",
deliverystatus:1,
handleStatus:0,
department:"城建办",
date:"2024-8-1 11:50",
status:0
},
{
workOrder:"5131133113213213213",
eventType:"城乡建设-住房",
eventContent:"王先生反映:市北区有一家黄焖鸡不好吃",
eventName:"王先生",
phone:"15666628220",
deliverystatus:1,
handleStatus:1,
department:"城建办",
date:"2024-8-1 11:50",
status:0
}
],
statusArray: [
{
@ -306,6 +281,7 @@ export default {
formData: {
agencyId: "",
sourceType: "",
departId:'',
eventContent: "",
name: "",
mobile: "",
@ -317,7 +293,7 @@ export default {
firstIdList: [],
secondIdList: [],
workOrderNum: "",
Timeoutstatus:""
limitStatus:""
},
cateOptions: [],
eventTypeCheck: [],

Loading…
Cancel
Save