Browse Source

修改居民信息

feature
13176889840 4 years ago
parent
commit
e9836a778b
  1. 23663
      package-lock.json
  2. 13
      src/views/components/editResi.vue
  3. 51
      src/views/components/resiForm.vue
  4. 428
      src/views/components/resiSearch.vue

23663
package-lock.json

File diff suppressed because it is too large

13
src/views/components/editResi.vue

@ -165,12 +165,13 @@
value-format="yyyy-MM-dd">
</el-date-picker>
<el-date-picker
v-else-if="n.itemType === 'dateRange'"
v-else-if="n.itemType === 'daterange'"
v-model="form[n.columnName]"
:disabled="disabled"
type="daterange"
align="right"
unlink-panels
value-format="yyyy-MM-dd"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
@ -183,7 +184,7 @@
placeholder="任意时间点">
</el-time-picker>
<el-time-picker
v-else-if="n.itemType === 'timeRange'"
v-else-if="n.itemType === 'timerange'"
v-model="form[n.columnName]"
:disabled="disabled"
is-range
@ -320,8 +321,9 @@ export default {
_form = { ...obj }
// return _form
}
const itemTypes = ['cascader', 'daterange', 'timerange']
arr.forEach(item => {
if (item.multiSelect || item.itemType === 'cascader') {
if (item.multiSelect || itemTypes.includes(item.itemType)) {
if (item.columnValue && item.columnValue.indexOf(',') > -1) _form[item.columnName] = item.columnValue.split(',')
else _form[item.columnName] = (item.columnValue && [item.columnValue]) || []
} else _form[item.columnName] = item.columnValue || ''
@ -613,10 +615,11 @@ export default {
})
})
// console.log('resssssss', res)
const itemTypes = ['cascader', 'daterange', 'timerange']
res.forEach(item => {
let _form = {}
item.list.filter(n => n.isChange).forEach(r => {
_form[r.columnName] = r.multiSelect || r.itemType === 'cascader' ? this.form[r.columnName].toString() : this.form[r.columnName]
_form[r.columnName] = r.multiSelect || itemTypes.includes(r.itemType) ? this.form[r.columnName].toString() : this.form[r.columnName]
if (r.ID) {
_form.ID = r.ID
}
@ -628,8 +631,8 @@ export default {
}
if (Object.keys(_form).length > 0) {
if (!_form.AGENCY_ID) _form.AGENCY_ID = this.$store.state.user.agencyId
if (!_form.ID) _form.ID = ID
}
if (!_form.ID) _form.ID = ID
}
console.log('objeckeyssss', Object.keys(_form), _form)
newForm.push({

51
src/views/components/resiForm.vue

@ -1,6 +1,6 @@
<template>
<div :id="formId" class="resi-container">
<el-form :ref="formId" class="resi-form" :model="form" :rules="rules" :label-width="labelWidth">
<el-form :ref="formId" class="resi-form" :model="form" :rules="rulesForm" :label-width="labelWidth">
<template v-if="supportAdd">
<el-row style="margin-bottom: 10px;">
<el-col :span="24">
@ -13,7 +13,7 @@
<el-row v-if="fixed" class="resi-row">
<!-- <el-col v-for="n in item" :key="n.id" :span="n.itemType === 'textarea'&&24 || (24/columns)"> -->
<el-col :span="6">
<el-form-item :prop="form.GRID_ID" label="所属网格">
<el-form-item prop="GRID_ID" label="所属网格">
<!-- <div class="resi-cell"> -->
<!-- <div class="resi-cell-label">{{n.label}}</div> -->
<div class="resi-cell-value">
@ -32,8 +32,10 @@
</el-form-item>
</el-col>
<el-col :span="18">
<el-form-item :prop="form.VILLAGE_ID" label="所属家庭">
<el-form-item label="所属家庭" required>
<div class="resi-cell-value">
<el-col :span="4">
<el-form-item prop="VILLAGE_ID">
<el-select v-model="form.VILLAGE_ID" placeholder="请选择小区" size="small"
clearable class="resi-cell-select" @change="handleChangeV"
>
@ -44,6 +46,10 @@
:value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item prop="BUILD_ID">
<el-select v-model="form.BUILD_ID" placeholder="请选择楼号" size="small"
clearable class="resi-cell-select" @change="handleChangeB"
>
@ -54,6 +60,10 @@
:value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item prop="UNIT_ID">
<el-select v-model="form.UNIT_ID" placeholder="请选择单元" size="small"
clearable class="resi-cell-select" @change="handleChangeD"
>
@ -64,6 +74,10 @@
:value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item prop="HOME_ID">
<el-select v-model="form.HOME_ID" placeholder="请选择房号" size="small"
clearable class="resi-cell-select"
>
@ -74,6 +88,8 @@
:value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
</div>
</el-form-item>
</el-col>
@ -124,7 +140,7 @@
<!-- <el-col v-for="n in item" :key="n.id" :span="n.itemType === 'textarea'&&24 || (24/columns)"> -->
<el-col v-for="n in item" :key="n.itemId" :span="item.length === 1 ? 24 : (24/columns)"
:style="n.itemType === 'divider' && 'display: none;'">
<el-form-item :prop="n.columnName" :label="n.label">
<el-form-item :prop="n.columnName" :label="n.label" :required="Boolean(n.required)">
<!-- <div class="resi-cell"> -->
<!-- <div class="resi-cell-label">{{n.label}}</div> -->
<div class="resi-cell-value">
@ -171,7 +187,7 @@
value-format="yyyy-MM-dd">
</el-date-picker>
<el-date-picker
v-else-if="n.itemType === 'dateRange'"
v-else-if="n.itemType === 'daterange'"
v-model="form[n.columnName]"
type="daterange"
align="right"
@ -187,9 +203,10 @@
placeholder="任意时间点">
</el-time-picker>
<el-time-picker
v-else-if="n.itemType === 'timeRange'"
v-else-if="n.itemType === 'timerange'"
v-model="form[n.columnName]"
is-range
class="resi-cell-range"
range-separator="至"
start-placeholder="开始时间"
end-placeholder="结束时间"
@ -380,7 +397,14 @@ export default {
tempFormList,
addCount: 0,
addList: [],
rules,
rulesForm: {
...rules,
VILLAGE_ID: [{ required: true, message: `请选择小区`, trigger: 'blur' }],
GRID_ID: [{ required: true, message: `请选择网格`, trigger: 'blur' }],
BUILD_ID: [{ required: true, message: `请选择楼号`, trigger: 'blur' }],
UNIT_ID: [{ required: true, message: `请选择单元`, trigger: 'blur' }],
HOME_ID: [{ required: true, message: `请选择房号`, trigger: 'blur' }]
},
value: '',
optionsV: [],
optionsB: [],
@ -611,10 +635,11 @@ export default {
tableName: name
})
})
const itemTypes = ['cascader', 'daterange', 'timerange']
res.forEach(item => {
let _form = {}
item.list.filter(n => n.isChange).forEach(r => {
_form[r.columnName] = r.multiSelect || r.itemType === 'cascader' ? this.form[r.columnName].toString() : this.form[r.columnName]
_form[r.columnName] = r.multiSelect || itemTypes.includes(r.itemType) ? this.form[r.columnName].toString() : this.form[r.columnName]
// return _form
})
if (this.fixed) {
@ -639,6 +664,7 @@ export default {
},
getGridList () {
const { user } = this.$store.state
console.log('agencyId', user)
this.$http
.post('/gov/org/customergrid/gridoption', { agencyId: user.agencyId })
.then(({ data: res }) => {
@ -744,7 +770,14 @@ export default {
.resi-cell-value .resi-cell-input {
max-width: 180px;
}
.resi-cell-value {
.el-col {
margin-right: 20px;
}
// .resi-cell-range {
// width: 180px;
// }
}
</style>
<style lang="scss" scoped>

428
src/views/components/resiSearch.vue

@ -124,429 +124,8 @@
</div>
</div>
</el-col>
<!-- <el-col :span="12">
<div class="resi-cell">
<div class="resi-cell-label">小区名称</div>
<div class="resi-cell-value">
<el-select v-model="value" placeholder="请选择" size="small" class="resi-cell-select">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
<el-select v-model="value" placeholder="请选择" size="small" class="resi-cell-select resi-cell-select-middle">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
<el-select v-model="value" placeholder="请选择" size="small" class="resi-cell-select resi-cell-select-middle">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">户籍查询</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col> -->
</el-row>
<!-- <el-row class="resi-row" :gutter="20">
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
</el-row>
<el-row class="resi-row" :gutter="20">
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
</el-row>
<el-row class="resi-row" :gutter="20">
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
</el-row>
<el-row class="resi-row" :gutter="20">
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
</el-row>
<el-row class="resi-row" :gutter="20">
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
</el-row>
<el-row class="resi-row" :gutter="20">
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
</el-row>
<el-row class="resi-row" :gutter="20">
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
<el-col :span="6">
<div class="resi-cell">
<div class="resi-cell-label">所属网格</div>
<div class="resi-cell-value">
<el-input
class="resi-cell-input"
size="small"
placeholder="请输入内容"
>
</el-input>
</div>
</div>
</el-col>
</el-row> -->
</el-row>
<el-row class="resi-search">
<!-- <el-col :span="20">
@ -738,13 +317,14 @@ export default {
},
handleSearch () {
// console.log('formmmmm---', this.form)
const itemTypes = ['cascader', 'daterange', 'timerange']
let arr = this.tempFormList.filter(n => n.isChange).map(item => {
return {
queryType: item.queryType,
tableName: item.tableName,
columnName: item.columnName,
columnValue: [...this.form[item.columnName]]
// columnValue: item.queryType === 'daterange' ? this.form[item.columnName] : [this.form[item.columnName]]
// columnValue: []
columnValue: (itemTypes.includes(item.queryType) || itemTypes.includes(item.itemType)) ? this.form[item.columnName] : [this.form[item.columnName]]
}
})
let arr1 = this.fixedList.filter(n => n.columnValue.length > 0).map(item => {

Loading…
Cancel
Save