This commit is contained in:
yanran200730
2022-04-28 10:28:24 +08:00
8 changed files with 486 additions and 470 deletions

View File

@@ -29,7 +29,7 @@
export default {
name: "AppGridMemberJp",
label: "网格管理员",
label: "网格管理员(防返贫)",
props: {
instance: Function,

View File

@@ -8,7 +8,8 @@
<template #left>
<el-button size="small" type="primary" icon="iconfont iconAdd" @click="isShow = true">添加</el-button>
<el-button size="small" :disabled="!ids.length" icon="iconfont iconDelete" @click="removeAll">批量删除</el-button>
<el-select size="small" style="width: 200px;" v-model="search.girdId" placeholder="所属网格" clearable @change="getListInit()">
<el-select size="small" style="width: 200px;" v-model="search.girdId" placeholder="所属网格" clearable
@change="getListInit()">
<el-option
v-for="(item,i) in girdList"
:key="i"
@@ -54,7 +55,8 @@
@close="closeDialog"
title="添加户主"
@onConfirm="onConfirm">
<ai-area-select clearable always-show :instance="instance" v-model="areaId" :disabled-level="disabledLevel" @change="search.current = 1, getUserList()"></ai-area-select>
<ai-area-select clearable always-show :instance="instance" v-model="areaId" :disabled-level="disabledLevel"
@change="search.current = 1, getUserList()"></ai-area-select>
<span style="margin-top:16px;"><span style="color:#f46;margin-right:4px;">*</span>网格</span>
<el-select size="small" style="width: 280px;margin-top:16px;" v-model="girdId" placeholder="请选择网格" clearable>
<el-option
@@ -121,6 +123,7 @@
<script>
import {mapState} from 'vuex'
export default {
name: 'Family',
@@ -139,9 +142,7 @@
girdId: ''
},
isLoading: false,
form: {
},
form: {},
userList: [],
name: '',
chooseUser: [],
@@ -212,7 +213,7 @@
this.remove(this.ids.join(','))
},
handleSelectionChange(e) {
this.ids = e.map(v => v.gmrId)
this.ids = e.map(v => v.gmpId)
},
clearAll() {
@@ -327,6 +328,7 @@
margin-bottom: 0;
}
}
img {
width: 27px;
height: 27px;
@@ -436,6 +438,7 @@
.tags-wrapper {
padding: 0 8px;
}
.el-tag {
margin: 0 8px 8px 0px;
color: #222222;

View File

@@ -30,7 +30,7 @@ export default {
"yesOrNo", "fpLaborSkills", "fpEducation", "fpType", "fpPoliticalOutlook","fpType", "fpRiskType", "fpAssistanceMeasures",
"fpPublicWelfarePostAssistance","fpHealthAssistance","fpFnancialAssistance","fpEmploymentAssistance","fpEducationalAssistance",
"fpIndustrialAssistance","fpSocialAssistance", "fpRiskEliminationMethod", "fpNaturalDisaster", "fpHouseType", "fpHouseRoadType",
"fpFuelType", "fpDisabilityType",)
"fpFuelType", "fpDisabilityType", "fpEmploymentChannels")
}
}
</script>

View File

@@ -75,13 +75,13 @@
<ai-select v-model="form.labourStatus" :selectList="dict.getDict('fpLaborSkills')"/>
</el-form-item>
<el-form-item label="是否会讲普通话">
<ai-select v-model="form.mandarin" :selectList="dict.getDict('fpYesOrNo')" placeholder="请选择" />
<ai-select v-model="form.mandarin" :selectList="dict.getDict('fpYesOrNo')" />
</el-form-item>
<el-form-item label="务工时间(月)">
<el-input v-model="form.workeMonths" placeholder="请输入" clearable/>
</el-form-item>
<el-form-item label="就业渠道">
<el-input v-model="form.employmentChannels" placeholder="请输入" clearable/>
<ai-select v-model="form.employmentChannels" :selectList="dict.getDict('fpEmploymentChannels')" />
</el-form-item>
<el-form-item label="务工企业名称">
<el-input v-model="form.migrantEnterprises" placeholder="请输入" clearable/>
@@ -90,7 +90,7 @@
<el-input v-model="form.publicWelfarePosts" placeholder="请输入" clearable/>
</el-form-item>
<el-form-item label="是否国外务工">
<ai-select v-model="form.foreignWorkers" :selectList="dict.getDict('fpYesOrNo')" placeholder="请选择" />
<ai-select v-model="form.foreignWorkers" :selectList="dict.getDict('fpYesOrNo')" />
</el-form-item>
<el-form-item label="公益性岗位(月数)">
<el-input v-model="form.publicWelfarePostsMonths" placeholder="请输入" clearable/>
@@ -99,17 +99,6 @@
<el-form-item label="务工所在地">
<el-input v-model="form.foreignWorkersAddress" placeholder="请输入" clearable maxlength="30" show-word-limit/>
</el-form-item>
<div flex class="half wrap">
<el-form-item label="判刑收监年度">
<el-date-picker v-model="form.sentencingYear" type="year" placeholder="请选择"/>
</el-form-item>
<el-form-item label="刑满释放">
<el-date-picker v-model="form.releaseFromPrisonYear" type="year" placeholder="请选择"/>
</el-form-item>
<el-form-item label="死亡年度">
<el-date-picker v-model="form.deathYear" type="year" placeholder="请选择"/>
</el-form-item>
</div>
<el-form-item label="现住址" prop="currentAreaId">
<ai-area-get :instance="instance" v-model="form.currentAreaId" :root="rootArea" valueLevel="5"/>
<el-form-item prop="currentAddress">
@@ -213,10 +202,10 @@
</el-form-item>
</div>
<el-form-item label="义务阶段未上学原因">
<el-input v-model="form.dropOutOfSchoolReason" placeholder="请输入" maxlength="30" show-word-limit clearable/>
<el-input v-model="form.dropOutOfSchoolReason" type="textarea" placeholder="请输入" maxlength="500" show-word-limit clearable/>
</el-form-item>
<el-form-item label="备注说明">
<el-input v-model="form.detail" placeholder="请输入" maxlength="30" show-word-limit clearable/>
<el-input v-model="form.detail" placeholder="请输入" type="textarea" maxlength="500" show-word-limit clearable/>
</el-form-item>
<el-form-item label="图片最多9张" >
<ai-uploader
@@ -377,6 +366,9 @@ export default {
this.form.birthDate = ''
this.form.sex = ''
this.form.age = ''
this.form.nation = ''
this.form.education = ''
this.form.politicsStatus = ''
return
}
this.form.name = e.name
@@ -384,6 +376,9 @@ export default {
this.form.phone = e.phone
this.form.currentAreaId = e.currentAreaId
this.form.currentAddress = e.currentAddress
this.form.nation = e.nation
this.form.education = e.education
this.form.politicsStatus = e.politicsStatus
this.handleIdNumberAutocomplete(e.idNumber)
this.isSelectUser = true
},

View File

@@ -5,20 +5,21 @@
<template #rightBtn>
<el-button type="primary" icon="iconfont iconEdit" @click="gotoEdit" v-if="$permissions('app_apppreventionreturntopoverty_edit')">编辑</el-button>
<template v-if="isGridAdmin">
<el-button type="primary" @click="applyMonitor('纳入监测', 1)" v-if="detail.status == 0 && girdAdminApplyStatus != 1">纳入监测</el-button>
<el-button type="primary" @click="examine('纳入监测审批', 2)" v-if="detail.status == 0 && girdAdminApplyStatus == 1">纳入监测审批</el-button>
<el-button type="primary" @click="applyMonitor('纳入监测', 1)" v-if="detail.status == 4 && girdAdminApplyStatus != 1">纳入监测</el-button>
<el-button type="primary" @click="examine('纳入监测审批', 2)" v-if="detail.status == 4 && girdAdminApplyStatus == 1">纳入监测审批</el-button>
<template v-if="detail.status == 0 || detail.status == 4">
<el-button type="primary" @click="applyMonitor('纳入监测', 1)" v-if="girdAdminApplyStatus != 1">纳入监测</el-button>
<el-button type="primary" @click="examine('纳入监测审批', 2)" v-if="girdAdminApplyStatus == 1">纳入监测审批</el-button>
</template>
<el-button type="primary" @click="applyMonitor('纳入监测', 1)" v-if="detail.status == 3">纳入监测</el-button>
<el-button type="primary" @click="applyMonitor('解除风险', 4)" v-if="detail.status == 1">解除风险</el-button>
<el-button type="primary" @click="examine('解除风险审批', 5)" v-if="detail.status == 2">解除风险审批</el-button>
<el-button type="primary" @click="applyMonitor('纳入监测', 1)" v-if="detail.status == 3">纳入监测</el-button>
</template>
<template v-if="user.info.girdCheckType == 1">
<el-button type="primary" @click="applyMonitor('申请纳入监测', 0)" v-if="detail.status == 3">申请纳入监测</el-button>
<el-button type="primary" @click="applyMonitor('申请纳入监测', 0)" v-if="detail.status == 4">申请纳入监测</el-button>
<el-button type="primary" @click="applyMonitor('申请纳入监测', 0)" v-if="detail.status == 4 || detail.status == 3">申请纳入监测</el-button>
<el-button type="primary" @click="applyMonitor('申请解除风险', 3)" v-if="detail.status == 1">申请解除风险</el-button>
</template>
<el-button v-if="$permissions('app_apppreventionreturntopoverty_del') && /4/g.test(detail.status) && user.info.girdCheckType != 0" icon="iconfont iconDelete" @click="handleDelete(detail.id)">删除</el-button>
<template v-if="detail.status == 3 || detail.status == 4">
<el-button v-if="$permissions('app_apppreventionreturntopoverty_del') && user.info.girdCheckType != 0" icon="iconfont iconDelete" @click="handleDelete(detail.id)">删除</el-button>
</template>
</template>
</ai-title>
<template #content>
@@ -64,7 +65,7 @@
<el-form-item label="劳动技能">{{dict.getLabel("fpLaborSkills", detail.labourStatus)}}</el-form-item>
<el-form-item label="是否会讲普通话">{{dict.getLabel("fpYesOrNo", detail.mandarin)}}</el-form-item>
<el-form-item label="务工时间(月)">{{detail.workeMonths}}</el-form-item>
<el-form-item label="就业渠道">{{detail.employmentChannels}}</el-form-item>
<el-form-item label="就业渠道">{{dict.getLabel("fpEmploymentChannels", detail.employmentChannels)}}</el-form-item>
<el-form-item label="务工企业名称">{{detail.migrantEnterprises}}</el-form-item>
<el-form-item label="公益性岗位">{{detail.publicWelfarePosts}}</el-form-item>
<el-form-item label="是否国外务工">{{dict.getLabel("fpYesOrNo", detail.foreignWorkers)}}</el-form-item>
@@ -72,11 +73,6 @@
</div>
<el-form-item label="务工所在地">{{detail.foreignWorkersAddress}}
</el-form-item>
<div flex class="half wrap">
<el-form-item label="判刑收监年度">{{detail.sentencingYear}} </el-form-item>
<el-form-item label="刑满释放">{{detail.releaseFromPrisonYear}}</el-form-item>
<el-form-item label="死亡年度">{{detail.deathYear}}</el-form-item>
</div>
<el-form-item label="现住址">{{currentFullAddress}}</el-form-item>
</template>
</ai-card>
@@ -259,7 +255,7 @@
<el-input v-model="form.workeMonths" placeholder="请输入" clearable />
</el-form-item>
<el-form-item label="就业渠道">
<el-input v-model="form.employmentChannels" placeholder="请输入" clearable />
<ai-select v-model="form.employmentChannels" :selectList="dict.getDict('fpEmploymentChannels')" />
</el-form-item>
<el-form-item label="务工企业名称">
<el-input v-model="form.migrantEnterprises" placeholder="请输入" clearable />
@@ -277,17 +273,6 @@
<el-form-item label="务工所在地">
<el-input v-model="form.foreignWorkersAddress" placeholder="请输入" clearable maxlength="30" show-word-limit />
</el-form-item>
<div flex class="half wrap">
<el-form-item label="判刑收监年度">
<el-date-picker v-model="form.sentencingYear" type="year" placeholder="请选择" />
</el-form-item>
<el-form-item label="刑满释放">
<el-date-picker v-model="form.releaseFromPrisonYear" type="year" placeholder="请选择" />
</el-form-item>
<el-form-item label="死亡年度">
<el-date-picker v-model="form.deathYear" type="year" placeholder="请选择" />
</el-form-item>
</div>
<el-form-item label="现住址" prop="currentAreaId">
<ai-area-get :instance="instance" v-model="form.currentAreaId" :root="rootArea" valueLevel="5" />
<el-form-item prop="currentAddress">
@@ -336,7 +321,7 @@
<el-form-item label="劳动技能">{{dict.getLabel("fpLaborSkills", familyInfo.labourStatus)}}</el-form-item>
<el-form-item label="是否会讲普通话">{{dict.getLabel("fpYesOrNo", familyInfo.mandarin)}}</el-form-item>
<el-form-item label="务工时间(月)">{{familyInfo.workeMonths}}</el-form-item>
<el-form-item label="就业渠道">{{familyInfo.employmentChannels}}</el-form-item>
<el-form-item label="就业渠道">{{dict.getLabel("fpEmploymentChannels", familyInfo.employmentChannels)}}</el-form-item>
<el-form-item label="务工企业名称">{{familyInfo.migrantEnterprises}}</el-form-item>
<el-form-item label="公益性岗位">{{familyInfo.publicWelfarePosts}}</el-form-item>
<el-form-item label="是否国外务工">{{dict.getLabel("fpYesOrNo", familyInfo.foreignWorkers)}}</el-form-item>
@@ -344,11 +329,6 @@
</div>
<el-form-item label="务工所在地">{{familyInfo.foreignWorkersAddress}}
</el-form-item>
<div flex class="half wrap">
<el-form-item label="判刑收监年度">{{familyInfo.sentencingYear}} </el-form-item>
<el-form-item label="刑满释放">{{familyInfo.releaseFromPrisonYear}}</el-form-item>
<el-form-item label="死亡年度">{{familyInfo.deathYear}}</el-form-item>
</div>
<el-form-item label="现住址">{{currentFullAddressFamily}}</el-form-item>
</el-form>
<template slot="footer">
@@ -557,6 +537,9 @@ export default {
this.form.age = ''
this.form.currentAreaId = ''
this.form.currentAddress = ''
this.form.nation = ''
this.form.education = ''
this.form.politicsStatus = ''
return
}
this.form.name = e.name
@@ -564,6 +547,9 @@ export default {
this.form.phone = e.phone
this.form.currentAreaId = e.currentAreaId
this.form.currentAddress = e.currentAddress
this.form.nation = e.nation
this.form.education = e.education
this.form.politicsStatus = e.politicsStatus
this.handleIdNumberAutocomplete(e.idNumber)
this.isSelectUser = true
},

View File

@@ -18,9 +18,9 @@
<el-date-picker value-format="yyyy-MM-dd HH:mm:ss" v-model="search.birthEnd" type="date" size="small" placeholder="选择出生结束日期"
unlink-panels @change="page.current=1,getTableData()" />
<ai-select placeholder="性别" v-model="search.sex" :selectList="dict.getDict('sex')" @change="page.current=1,getTableData()"/>
<ai-select placeholder="文化程度" v-model="search.education" :selectList="dict.getDict('fpEducation')" @change="page.current=1,getTableData()"/>
<!-- <ai-select placeholder="文化程度" v-model="search.education" :selectList="dict.getDict('fpEducation')" @change="page.current=1,getTableData()"/>
<ai-select placeholder="民族" v-model="search.nation" :selectList="dict.getDict('fpNation')" @change="page.current=1,getTableData()"/>
<!-- <ai-select placeholder="政治面貌" v-model="search.politicsStatus" :selectList="dict.getDict('fpPoliticalOutlook')" @change="page.current=1,getTableData()"/> -->
<ai-select placeholder="政治面貌" v-model="search.politicsStatus" :selectList="dict.getDict('fpPoliticalOutlook')" @change="page.current=1,getTableData()"/> -->
</template>
<template #right>
<el-input size="small" placeholder="姓名/身份证/联系方式" v-model="search.con" clearable

View File

@@ -5,20 +5,26 @@
@change="page.current=1,getTableData()">
</ai-title>
<template #content>
<div class="flex">
<div class="flex fill">
<div class="type">
<div class="title">宣传板块<span><el-button type="text" @click="addType(0, typeList.length+1, '')">添加</el-button></span></div>
<div class="title">宣传板块<span><el-button type="text"
@click="addType(0, typeList.length+1, '')">添加</el-button></span>
</div>
<div class="list">
<div class="item" v-for="(item, index) in typeList" :key="index" :class="typeIndex == index ? 'active' : ''" @click="typeClick(index)">
<div class="item" v-for="(item, index) in typeList" :key="index"
:class="typeIndex == index ? 'active' : ''" @click="typeClick(index)">
{{ item.categoryName }}
</div>
<div class="item" v-if="!typeList.length">暂无数据</div>
</div>
</div>
<div class="type mini-type">
<div class="title">模块名称<span><el-button type="text" @click="addType(1, miniTypeList.length+1, typeList[typeIndex].id)">添加</el-button></span></div>
<div class="title">模块名称<span><el-button type="text"
@click="addType(1, miniTypeList.length+1, typeList[typeIndex].id)">添加</el-button></span>
</div>
<div class="list">
<div class="item" v-for="(item, index) in miniTypeList" :key="index" :class="miniTypeIndex == index ? 'active' : ''" @click="miniTypeClick(index)">
<div class="item" v-for="(item, index) in miniTypeList" :key="index"
:class="miniTypeIndex == index ? 'active' : ''" @click="miniTypeClick(index)">
<span class="text">{{ item.categoryName }}</span>
<span class="icon">
<i class="el-icon-circle-plus-outline" @click="addNewType(index)"></i>
@@ -32,12 +38,15 @@
<div class="content">
<ai-search-bar>
<template #right>
<el-input size="small" placeholder="请输入标题" v-model="search.title" clearable @change="page.current=1,getTableData()"/>
<el-input size="small" placeholder="请输入标题" v-model="search.title" clearable
@change="page.current=1,getTableData()"/>
</template>
</ai-search-bar>
<ai-search-bar>
<template #left>
<el-button type="primary" icon="iconfont iconAdd" @click="showEdit('')" v-if="typeList.length && miniTypeList.length">添加</el-button>
<el-button type="primary" icon="iconfont iconAdd" @click="showEdit('')"
v-if="typeList.length && miniTypeList.length">添加
</el-button>
<!-- <el-button icon="iconfont iconDelete" :disabled="!ids.length" @click="handleDelete(ids)">删除</el-button> -->
</template>
</ai-search-bar>
@@ -53,7 +62,6 @@
</ai-table>
</div>
</div>
</template>
</ai-list>
<ai-dialog :visible.sync="dialog" :title="dialogTitle" @closed="form={}" @onConfirm="submitDialog" width="600px">
@@ -65,7 +73,8 @@
<el-input-number v-model="form.showIndex" @change="handleChange" :min="1" :max="100"></el-input-number>
</el-form-item>
</el-form>
<ai-table :tableData="newTypeList" :total="newPage.total" :current.sync="newPage.current" :size.sync="newPage.size"
<ai-table :tableData="newTypeList" :total="newPage.total" :current.sync="newPage.current"
:size.sync="newPage.size"
:col-configs="colConfigsNew" v-if="type == 2">
<el-table-column slot="options" label="操作" fixed="right" align="center">
<template slot-scope="{row}">
@@ -139,7 +148,13 @@ export default {
})
},
showEdit(id) {
this.$router.push({query: {id: id, parentId: this.typeList[this.typeIndex].id, moduleId: this.miniTypeList[this.miniTypeIndex].id}, hash: "#add"})
this.$router.push({
query: {
id: id,
parentId: this.typeList[this.typeIndex].id,
moduleId: this.miniTypeList[this.miniTypeIndex].id
}, hash: "#add"
})
},
handleDelete(ids) {
this.$confirm("是否删除该条宣传资讯信息").then(() => {
@@ -261,18 +276,22 @@ export default {
<style lang="scss" scoped>
.List {
height: 100%;
.flex {
display: flex;
.type {
width: 250px;
border: 1px solid #ddd;
box-sizing: border-box;
.title {
font-size: 16px;
line-height: 40px;
border-bottom: 1px solid #ddd;
padding: 0 16px;
font-weight: 600;
span {
color: #26f;
font-size: 12px;
@@ -280,6 +299,7 @@ export default {
float: right;
}
}
.list {
.item {
padding: 0 16px;
@@ -289,38 +309,51 @@ export default {
font-size: 14px;
color: #333;
box-sizing: border-box;
.text {
width: calc(100% - 70px);
cursor: pointer;
}
.icon {
width: 70px;
text-align: right;
i {
font-size: 14px;
cursor: pointer;
margin-left: 8px;
}
.el-icon-delete {
color: #f46;
}
.el-icon-circle-plus-outline {
color: #26f;
}
}
}
.active {
// color: #26f;
background-color: #f3f6f9;
}
}
}
.mini-type {
margin-right: 16px;
}
.content {
width: calc(100% - 516px);
}
}
::v-deep .ai-list__content--right-wrapper {
min-height: calc(100% - 6px) !important;
display: flex;
}
}
</style>

View File

@@ -221,9 +221,8 @@
:label="op.fieldName + (op.fieldNameSuffix ? op.fieldNameSuffix : '')" class="dynamicFormItem"
:prop="`fieldInfos.${i}.fieldValue`"
:rules="{required:op.mustFill==1,message:`请输入${op.fieldName}`}">
<el-input placeholder="请输入..." v-model.trim="op.fieldValue"
clearable v-if="op.fieldDataType=='0'" oninput="value=value.replace(/[^\d]/g,'')" show-word-limit
:maxlength="op.fieldLength"/>
<el-input placeholder="请输入..." v-model.number="op.fieldValue"
clearable v-if="op.fieldDataType=='0'" show-word-limit :maxlength="op.fieldLength"/>
<el-input type="textarea" :rows="3" placeholder="请输入..." v-model.trim="op.fieldValue"
clearable v-if="op.fieldDataType=='1'" show-word-limit