Browse Source

Merge branch 'feature' of http://120.46.222.128:10021/elink-star/epmet-work-pc into feature

wxz_unit_doorplate
wxz 1 year ago
parent
commit
44a15690e3
  1. 180
      src/views/components/resiSearch.vue
  2. 7
      src/views/modules/base/diyInfo.vue
  3. 64
      src/views/modules/base/resi.vue
  4. 2
      src/views/modules/base/smartImport/cpts/executeTask.vue
  5. 2
      src/views/modules/base/smartImport/index.vue
  6. 2
      src/views/modules/base/virtualResi.vue
  7. 3
      src/views/modules/workSys/role/roleForm.vue

180
src/views/components/resiSearch.vue

@ -147,6 +147,87 @@
class="u-item-width-daterange u-data-tag" placeholder="结束日期" :picker-options="pickerOptionsEnd">
</el-date-picker>
</el-form-item>
<el-form-item>
<span style="width:100px;text-align: right;padding-right:14px;display: inline-block; ">所属组织:</span>
<el-cascader class="u-item-width-normal"
size="small"
ref="myCascader"
v-model="form.agencyId"
:options="orgOptions"
:props="orgOptionProps"
:show-all-levels="false"
@change="handleChangeAgency"
clearable></el-cascader>
</el-form-item>
<el-form-item prop="villageId">
<div class="resi-cell">
<div class="resi-cell-value">
<span style="width:100px;text-align: right;padding-right:14px;display: inline-block; ">所属房屋:</span>
<el-select v-model.trim="form.villageId"
placeholder="请选择小区"
size="small"
filterable
clearable
class="u-item-width-communitycascader"
@clear="handleClearVillage"
@change="handleChangeV"
v-el-select-loadmore="loadmore"
>
<el-option v-for="item in optionsV"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
<el-select v-model.trim="form.buildId"
placeholder="楼号"
size="small"
filterable
clearable
style="margin-left: 5px"
class="u-item-width-buildcascader"
:disabled="changeVDisabled"
@clear="handleClearBuild"
@change="handleChangeB">
<el-option v-for="item in optionsB"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
<el-select v-model.trim="form.unitId"
:disabled="changeBDisabled"
placeholder="单元"
size="small"
filterable
clearable
style="margin-left: 5px"
class="u-item-width-buildcascader"
@click="handleClearDan"
@change="handleChangeD">
<el-option v-for="item in optionsD"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
<el-select v-model.trim="form.homeId"
:disabled="changeDDisabled"
placeholder="房号"
size="small"
filterable
clearable
style="margin-left: 5px"
class="u-item-width-buildcascader">
<el-option v-for="item in optionsH"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</div>
</div>
</el-form-item>
<el-form-item label="备注">
<el-input v-model.trim="form.remark" placeholder="请输入" size="small" class="u-item-width-normal"
clearable></el-input>
@ -671,7 +752,6 @@ export default {
'agencyId ': 'like'
},
sarr: [],
level: '',
showSmartSearchForm: false,
formType: 'add',
@ -844,13 +924,30 @@ export default {
// console.log('formcccc---', this.form)
this.getOrgTreeList()
this.getEducation()
this.getValiheList()
this.getDictList()
this.getHousehold()
this.getNationality()
this.getCareerStatus()
if (this.columnName) this.handleChangeForm(this.columnName)
},
mounted(){
this.$EventBus.$on('handleClickResiTree', async (val) => {
if(val.type === 'agency'){
this.form.agencyId = val.id;
this.optionsV = [];
this.form.villageId = '';
this.form.buildId = '';
await this.getValiheList();
}else if(val.type === 'neighborHood'){
this.form.villageId = val.id;
await this.handleChangeV(val.id)
this.form.buildId = '';
}else if(val.type === 'building'){
this.form.buildId = val.id;
await this.handleChangeB(val.id)
}
})
},
methods: {
handleCategoryChange(newVal, oldVal) {
let formCopy = JSON.parse(JSON.stringify(this.form));
@ -945,63 +1042,8 @@ export default {
else this.form[n] = ''
}
this.agencyIdArray = []
// let arr3 = [...arr1, ...arr]
this.$emit('search', [])
// this.handleSearch()
// this.orgOptions = [];
},
// handleSearch() {
// if (this.showSmartSearchForm) {
// let refObj = this.$refs['ref_rule']
// refObj.getRule()
// } else {
// // debugger
// // console.log('formmmmm---', this.form)
// const itemTypes = ['daterange', 'timerange', 'checkbox']
// let a = this.tempFormList.filter(item => item.itemType != 'inputRange')
// let arr = a.filter(n => n.isChange).map((item) => {
// return {
// queryType: item.queryType,
// tableName: item.tableName,
// columnName: item.columnName,
// columnValue: this.form[item.columnName] &&
// (itemTypes.includes(item.queryType) ||
// itemTypes.includes(item.itemType) || item.multiSelect == 1
// ? this.form[item.columnName]
// : [this.form[item.columnName].toString()])
// }
// })
// const arr2 = arr.filter(item => item.columnValue.length > 0)
// let arr1 = this.fixedList
// .filter((n) => n.columnValue.length > 0)
// .map((item) => {
// return {
// ...item
// }
// })
// var arr4 = []
// var arr3 = [...arr1, ...arr2];
// if (this.timer.startPickerTime && this.timer.endPickerTime) {
// arr4 = [{
// queryType: 'daterange',
// tableName: 'ic_resi_user',
// columnName: 'BIRTHDAY',
// columnValue: [this.timer.startPickerTime || '', this.timer.endPickerTime || '']
// }]
// arr3 = [...arr1, ...arr2, ...arr4]
// } else {
// let i = arr3.findIndex(item => item.columnName == 'BIRTHDAY')
// console.log(i, '');
// arr3 = arr3.splice(i,1)
// console.log(arr3);
// }
// this.$emit('search', arr3)
// arr3 = []
// return arr3
// }
// },
handleAgeChange() {
if (this.form.ageStart&&this.form.ageEnd) {
if (Number(this.form.ageStart) > Number(this.form.ageEnd)) {
@ -1025,17 +1067,13 @@ export default {
}
},
handleChangeAgency(val) {
this.sarr = []
const map = new Map();
this.getLastItem(
this.orgOptions,
val,
"agencyId"
);
this.level = this.sarr[this.sarr.length - 1].level
this.form.level = this.sarr[this.sarr.length - 1].level
this.form.level = this.sarr[this.sarr.length - 1].level;
this.getValiheList()
},
getLastItem(list, vals, key) {
@ -1140,24 +1178,10 @@ export default {
this.getValiheList();
},
getValiheList() {
const { user } = this.$store.state
var agencyIdTemp = ''
if (this.form.agencyId.length == 0) {
agencyIdTemp = ''
} else {
agencyIdTemp = this.form.agencyId[this.form.agencyId.length - 1]
}
var gridIdQuery = '';
var agencyIdQuery = this.form.agencyId[0];
if (this.form.agencyId.length >= 2) {
agencyIdQuery = this.form.agencyId[this.form.agencyId.length - 2];
gridIdQuery = this.form.agencyId[this.form.agencyId.length - 1];
}
this.$http
.post('/actual/base/communityQuarters/listQuartersOptions', {
gridId: gridIdQuery,
agencyId: agencyIdQuery,
gridId: this.form.agencyId,
agencyId: this.$store.state.user.agencyId,
pageNo: this.optionsVPageNo,
pageSize: 20
// agencyId: user.agencyId

7
src/views/modules/base/diyInfo.vue

@ -141,6 +141,10 @@ export default {
search: {
type: Object,
default: () => {}
},
virtualResi:{
type:Boolean,
default:false
}
},
components: {
@ -331,6 +335,9 @@ export default {
})
}
}
if(this.virtualResi){
params.searchForm.gridType = 'virtual'
}
await this.$http({
method: 'POST',
url,

64
src/views/modules/base/resi.vue

@ -7,7 +7,7 @@
<el-tree ref="ref_tree" v-loading="treeLoading" class="filter_tree" :data="treeData" :props="defaultProps"
:highlight-current="true" node-key="id" :expand-on-click-node="false" :filter-node-method="filterNode"
@node-click="handleNodeClick" lazy :auto-expand-parent="true" :default-expanded-keys="autoOpenArr"
:load="lazyLoadTree">
:load="lazyLoadTree" >
<div slot-scope="{ node, data }" class="custom-tree-node">
<!-- <img
v-if="showIcons(data)"
@ -464,7 +464,6 @@ export default {
await this.loadTree();
if (this.treeData.length > 0) {
this.$nextTick(() => {
// ref_tree ref value node-key
this.$refs.ref_tree.setCurrentKey(this.treeData[0].id);
});
}
@ -482,7 +481,6 @@ export default {
var target = event.target;
let textLength = target.clientWidth;
let containerLength = target.scrollWidth;
console.log(textLength, containerLength);
if (textLength < containerLength) {
this.tooltipTitle = event.target.innerText;
this.isShowTooltip = false;
@ -536,7 +534,6 @@ export default {
//
let _obj = JSON.parse(JSON.stringify(this.$refs.myResiSearch.form));
_obj.attentionCrowds = _obj.attentionCrowds.flat()
console.log('213', _obj)
switch (this.valueb) {
case '党员':
_obj.partyFlag = 1
@ -1243,13 +1240,20 @@ export default {
const url = `/actual/base/communityBuilding/tree/search?keyword=${this.filterText}`;
const { data, code, msg } = await requestGet(url);
if (data[0].children.length > 0) {
this.treeData = data;
this.treeData = data;
for (let i in this.treeData[0].children) {
this.autoOpenArr.push(
if(this.treeData[0].children[0].children[0]){
this.autoOpenArr.push(
this.treeData[0].id,
this.treeData[0].children[i].id,
this.treeData[0].children[0].children[0].id
);
}else{
this.autoOpenArr.push(
this.treeData[0].id,
this.treeData[0].children[i].id,
);
}
}
} else {
this.treeData = [];
@ -1296,10 +1300,56 @@ export default {
if (!value) return true;
return data.label.indexOf(value) !== -1;
},
async handleNodeClick(obj) {
extractData(node) {
const result = [];
let currentNode = node;
while (currentNode) {
result.push({ id: currentNode.data.id, level: currentNode.data.level });
currentNode = currentNode.parent;
}
return result;
},
traverseTree(tree) {
const results = [];
tree.forEach(node => {
results.push(...this.extractData(node));
if (node.children && node.children.length > 0) {
results.push(...this.traverseTree(node.children));
}
});
return results;
},
async handleNodeClick(obj,node) {
this.selObj = JSON.parse(JSON.stringify(obj));
this.selTreeObj = obj;
await nextTick(1000);
this.$nextTick(async ()=>{
if(obj.level === "building" || obj.level === "neighborHood"){
const gridNode = this.traverseTree([node]);
const gridResult = gridNode.find(item => item.level === 'grid');
const neighborHoodResult = gridNode.find(item => item.level === "neighborHood");
const buildingResult = gridNode.find(item => item.level === "building");
const gridId = gridResult ? gridResult.id : null;
const neighborHoodId = neighborHoodResult ? neighborHoodResult.id : null;
const buildingId = buildingResult ? buildingResult.id : null;
if (gridId) {
await this.$EventBus.$emit('handleClickResiTree', { type: 'agency', id: gridId });
}
await nextTick(500);
if (neighborHoodId) {
await this.$EventBus.$emit('handleClickResiTree', { type: 'neighborHood', id: neighborHoodId });
}
await nextTick(500);
if (buildingId) {
await this.$EventBus.$emit('handleClickResiTree', { type: 'building', id: buildingId });
}
}else{
this.$EventBus.$emit('handleClickResiTree',{type:'agency',id:obj.id})
}
})
this.searchAgencyObj = {};
if (obj.level === "building") {
this.searchAgencyObj.buildId = obj.id;

2
src/views/modules/base/smartImport/cpts/executeTask.vue

@ -30,7 +30,7 @@
></el-icon>
操作说明
</h4>
<p>1导入数据系统需要一定事件处理</p>
<p>1导入数据系统需要一定事件处理</p>
<p>
2导入过程中可查看导入明细如果发现导入数据问题较多可以取消本次导入重新整理数据后重新创建任务导入
</p>

2
src/views/modules/base/smartImport/index.vue

@ -56,7 +56,7 @@
</el-table-column>
<el-table-column prop="importFailNum" align="center" width="80" label="失败数目" :show-overflow-tooltip="true">
</el-table-column>
<el-table-column prop="operatorName" align="center" width="100" label="操作人" :show-overflow-tooltip="true">
<el-table-column prop="createdByName" align="center" width="100" label="操作人" :show-overflow-tooltip="true">
</el-table-column>
<el-table-column prop="completedTime" align="center" width="180" label="操作完成时间"
:show-overflow-tooltip="true">

2
src/views/modules/base/virtualResi.vue

@ -302,7 +302,7 @@
<el-dialog :visible.sync="diyDialog" :close-on-click-modal="false" :close-on-press-escape="false" width="1150px"
top="5vh" class="dialog-h">
<diy-info v-if="diyDialog" ref="ref_diy" :list="exportList" :search="searchForm"
@close="handleDiyClose"></diy-info>
@close="handleDiyClose" :virtualResi="true"></diy-info>
</el-dialog>
<baobiao ref="baobiao" />

3
src/views/modules/workSys/role/roleForm.vue

@ -136,8 +136,9 @@ export default {
this.formData.id = roleId
this.defaultRole = defaultRole
this.loadFormData()
}else{
this.defaultRole = '0'
}
this.endLoading()

Loading…
Cancel
Save