Files
dvcp_v2_webapp/packages/work/AppHelpedResident/hrDetail.vue

956 lines
48 KiB
Vue
Raw Normal View History

2022-03-24 18:22:55 +08:00
<template>
<section class="hrDetail">
<ai-detail>
2022-04-27 17:53:58 +08:00
<ai-title slot="title" title="监测对象详情" isShowBottomBorder isShowBack @onBackClick="back">
2022-03-26 17:41:38 +08:00
<template #rightBtn>
2022-04-29 16:39:37 +08:00
<el-button type="primary" icon="iconfont iconEdit" @click="gotoEdit"
v-if="$permissions('app_apppreventionreturntopoverty_edit')">编辑
</el-button>
2022-04-26 10:36:06 +08:00
<template v-if="isGridAdmin">
2022-04-28 09:28:18 +08:00
<template v-if="detail.status == 0 || detail.status == 4">
2022-04-29 16:39:37 +08:00
<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>
2022-04-28 09:28:18 +08:00
</template>
2022-07-06 10:20:07 +08:00
<el-button type="primary" @click="applyMonitor('纳入监测', 1)" v-if="detail.status == 3 || detail.status == 5">纳入监测</el-button>
2022-04-26 10:36:06 +08:00
<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>
</template>
2022-04-27 18:24:03 +08:00
<template v-if="user.info.girdCheckType == 1">
2022-04-29 16:39:37 +08:00
<el-button type="primary" @click="applyMonitor('申请纳入监测', 0)"
2022-07-06 10:20:07 +08:00
v-if="detail.status == 4 || detail.status == 3 || detail.status == 5">申请纳入监测
2022-04-29 16:39:37 +08:00
</el-button>
2022-04-26 16:43:48 +08:00
<el-button type="primary" @click="applyMonitor('申请解除风险', 3)" v-if="detail.status == 1">申请解除风险</el-button>
2022-04-26 10:36:06 +08:00
</template>
2022-04-28 09:28:18 +08:00
<template v-if="detail.status == 3 || detail.status == 4">
2022-04-29 16:39:37 +08:00
<el-button v-if="$permissions('app_apppreventionreturntopoverty_del') && user.info.girdCheckType != 0"
icon="iconfont iconDelete" @click="handleDelete(detail.id)">删除
</el-button>
2022-04-28 09:28:18 +08:00
</template>
2022-03-26 17:41:38 +08:00
</template>
</ai-title>
2022-03-24 18:22:55 +08:00
<template #content>
2022-04-27 17:53:58 +08:00
<el-form :model="detail" label-width="160px" label-position="right" size="small">
2022-03-26 17:41:38 +08:00
<el-tabs tabPosition="left" v-model="currentTab">
<el-tab-pane label="基本信息" lazy>
2022-04-25 08:58:10 +08:00
<ai-card :title="detail.name || '无名氏'">
2022-03-26 17:41:38 +08:00
<template #content>
<div flex class="flex-start">
<div flex class="half wrap fill">
2022-04-29 16:39:37 +08:00
<el-form-item label="联系电话">{{ detail.phone }}</el-form-item>
<el-form-item label="证件号">{{ detail.idNumber }}</el-form-item>
<el-form-item label="性别" prop="sex">{{ dict.getLabel("sex", detail.sex) }}</el-form-item>
<el-form-item label="出生日期">{{ detail.birthDate }}</el-form-item>
2022-10-14 11:53:24 +08:00
<el-form-item label="家庭人口数">{{ detail.familyCount }}</el-form-item>
2022-04-27 17:53:58 +08:00
<!-- <el-form-item label="年龄" prop="age">{{ detail.age}}</el-form-item> -->
2022-04-29 16:39:37 +08:00
<el-form-item label="民族">{{ dict.getLabel("fpNation", detail.nation) }}</el-form-item>
<el-form-item label="文化程度">{{ dict.getLabel("fpEducation", detail.education) }}</el-form-item>
<el-form-item label="政治面貌">{{ dict.getLabel("fpPoliticalOutlook", detail.politicsStatus) }}
</el-form-item>
<el-form-item label="在校生状况">{{ dict.getLabel("fpStudentsInSchool", detail.schoolStatus) }}
</el-form-item>
2022-03-26 17:41:38 +08:00
</div>
2022-04-29 16:39:37 +08:00
<ai-avatar :instance="instance" v-model="detail.photo" :editable="false"/>
2022-03-26 17:41:38 +08:00
</div>
2022-04-25 15:39:32 +08:00
<el-form-item label="健康状况">
2022-04-29 16:39:37 +08:00
<span v-for="(item, index) in detail.healthyStatusList" :key="index"><span v-if="index > 0">,</span>{{
dict.getLabel("fpHealth", item)
}}</span>
2022-04-25 15:39:32 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
<div flex class="half wrap">
2022-04-29 16:39:37 +08:00
<el-form-item label="残疾类别">{{ dict.getLabel("fpDisabilityType", detail.disabilityType) }}
</el-form-item>
<el-form-item label="残疾办证年度">{{ dict.getLabel("fpYear", detail.disabilityCertificateYear) }}
</el-form-item>
2022-04-27 17:53:58 +08:00
</div>
<div flex class="half wrap">
2022-04-29 16:39:37 +08:00
<el-form-item label="城乡居民基本医疗保险">{{ dict.getLabel("fpYesOrNo", detail.jcbxCxyiliao) }}
</el-form-item>
<el-form-item label="城镇职工基本医疗保险">{{ dict.getLabel("fpYesOrNo", detail.jcbxCzyiliao) }}
</el-form-item>
<el-form-item label="大病保险">{{ dict.getLabel("fpYesOrNo", detail.jcbxDabing) }}</el-form-item>
<el-form-item label="商业补充医疗保险">{{ dict.getLabel("fpYesOrNo", detail.jcbxShangye) }}</el-form-item>
<el-form-item label="城乡居民基本养老保险">{{ dict.getLabel("fpYesOrNo", detail.jcbxCxyanglao) }}
</el-form-item>
<el-form-item label="城镇职工基本养老保险">{{ dict.getLabel("fpYesOrNo", detail.jcbxCzyanglao) }}
</el-form-item>
<el-form-item label="享受人身意外保险补贴">{{ dict.getLabel("fpYesOrNo", detail.jcbxRenshenyiwai) }}
</el-form-item>
<el-form-item label="享受农村最低生活保障">{{ dict.getLabel("fpYesOrNo", detail.bzcsNongcundibao) }}
</el-form-item>
<el-form-item label="是否特困供养人员">{{ dict.getLabel("fpYesOrNo", detail.bzcsTekungongyang) }}
</el-form-item>
<el-form-item label="分散供养五保户转集中供养(减少)">{{ dict.getLabel("fpYesOrNo", detail.bzcsWubaohu) }}
</el-form-item>
<el-form-item label="是否接受医疗救助">{{ dict.getLabel("fpYesOrNo", detail.bzcsYiliaojiuzhu) }}
</el-form-item>
<el-form-item label="是否接受其它健康扶贫">{{ dict.getLabel("fpYesOrNo", detail.bzcsQita) }}</el-form-item>
<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="就业渠道">{{ 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>
<el-form-item label="公益性岗位(月数)">{{ detail.publicWelfarePostsMonths }}</el-form-item>
2022-04-27 17:53:58 +08:00
</div>
2022-04-29 16:39:37 +08:00
<el-form-item label="务工所在地">{{ detail.foreignWorkersAddress }}
2022-04-27 17:53:58 +08:00
</el-form-item>
2022-04-29 16:39:37 +08:00
<el-form-item label="现住址">{{ currentFullAddress }}</el-form-item>
2022-03-24 18:22:55 +08:00
</template>
2022-03-26 17:41:38 +08:00
</ai-card>
2022-04-27 17:53:58 +08:00
<ai-card title="生产生活条件">
2022-03-26 17:41:38 +08:00
<template slot="content">
2022-04-27 17:53:58 +08:00
<div flex class="half wrap">
2022-04-29 16:39:37 +08:00
<el-form-item label="住房面积(m²)">{{ detail.houseArea }}</el-form-item>
2022-07-04 14:21:57 +08:00
<!-- <el-form-item label="户类型">{{ dict.getLabel("fpHouseType", detail.houseType) }}</el-form-item> -->
2022-04-29 16:39:37 +08:00
<el-form-item label="与村主干路距离(公里)">{{ detail.trunkRoadDistance }}</el-form-item>
<el-form-item label="入户路类型">{{ dict.getLabel("fpHouseRoadType", detail.houseRoadType) }}
</el-form-item>
<el-form-item label="是否危房">{{ dict.getLabel("fpYesOrNo", detail.dilapidatedHousehold) }}
</el-form-item>
<el-form-item label="是否住房损耗">{{ dict.getLabel("fpYesOrNo", detail.houseDamage) }}</el-form-item>
<el-form-item label="是否解决安全饮水">{{ dict.getLabel("fpYesOrNo", detail.drinkingWaterSafety) }}
</el-form-item>
<el-form-item label="是否饮水设施损坏">{{ dict.getLabel("fpYesOrNo", detail.drinkingWaterDamage) }}
</el-form-item>
<el-form-item label="是否有卫生厕所">{{ dict.getLabel("fpYesOrNo", detail.toilet) }}</el-form-item>
<el-form-item label="主要燃料类型">{{ dict.getLabel("fpFuelType", detail.fuelType) }}</el-form-item>
<el-form-item label="是否通生活用电">{{ dict.getLabel("fpYesOrNo", detail.electric) }}</el-form-item>
<el-form-item label="是否通广播电视">{{ dict.getLabel("fpYesOrNo", detail.television) }}</el-form-item>
<el-form-item label="耕地面积(亩)">{{ detail.cultivatedLandArea }}</el-form-item>
<el-form-item label="林地面积(亩)">{{ detail.woodlandArea }}</el-form-item>
<el-form-item label="林果面积(亩)">{{ detail.orchardArea }}</el-form-item>
<el-form-item label="退耕还林面积(亩)">{{ detail.grainForGreenArea }}</el-form-item>
<el-form-item label="牧草地面积(亩)">{{ detail.grazingGrasslandArea }}</el-form-item>
<el-form-item label="水面面积(亩)">{{ detail.watersArea }}</el-form-item>
<el-form-item label="是否加入农民专业合作社">{{ dict.getLabel("fpYesOrNo", detail.nongheshe) }}</el-form-item>
<el-form-item label="是否有龙头企业带动">{{ dict.getLabel("fpYesOrNo", detail.longtouqiye) }}</el-form-item>
<el-form-item label="是否有创业致富人带头人带动">{{ dict.getLabel("fpYesOrNo", detail.cyzfdtr) }}</el-form-item>
<el-form-item label="是否通生产通电">{{ dict.getLabel("fpYesOrNo", detail.produceElectric) }}
</el-form-item>
2022-04-27 17:53:58 +08:00
</div>
2022-03-24 18:22:55 +08:00
</template>
2022-03-26 17:41:38 +08:00
</ai-card>
2022-04-27 17:53:58 +08:00
<ai-card title="家庭风险情况">
2022-03-26 17:41:38 +08:00
<template slot="content">
<div flex class="half wrap">
2022-07-04 14:21:57 +08:00
<el-form-item label="户类型">{{ dict.getLabel("fpHouseType", detail.houseType) }}</el-form-item>
<el-form-item label="监测对象类型" prop="objectType" v-if="detail.houseType==1">{{ dict.getLabel("fpType", detail.objectType) }}</el-form-item>
2022-04-29 16:39:37 +08:00
<el-form-item label="是否军烈属">{{ dict.getLabel("fpYesOrNo", detail.militaryMartyrs) }}</el-form-item>
2022-07-04 14:21:57 +08:00
<el-form-item label="风险因素" prop="riskType" v-if="detail.houseType==1">{{ dict.getLabel("fpRiskType", detail.riskType) }}
2022-04-29 16:39:37 +08:00
</el-form-item>
<el-form-item label="脱贫年度">{{ dict.getLabel("fpYear", detail.povertyYear) }}</el-form-item>
<el-form-item label="因自然灾害子项">{{ dict.getLabel("fpNaturalDisaster", detail.naturalDisasterType) }}
</el-form-item>
<el-form-item label="是否义务阶段失学辍学">{{ dict.getLabel("fpYesOrNo", detail.dropOutOfSchool) }}
</el-form-item>
<el-form-item label="识别监测时间">{{ detail.createTime }}</el-form-item>
<el-form-item label="风险是否已消除">{{ dict.getLabel("fpYesOrNo", detail.riskEliminated) }}</el-form-item>
<el-form-item label="是否有家庭成员未参加医疗保险">
{{ dict.getLabel("fpYesOrNo", detail.notCoveredMedicalInsurance) }}
</el-form-item>
<el-form-item label="信息采集人">{{ detail.updateUserName }}</el-form-item>
<el-form-item label="信息采集人联系电话">{{ detail.updateUserPhone }}</el-form-item>
2022-03-26 17:41:38 +08:00
</div>
2022-04-29 16:39:37 +08:00
<el-form-item label="义务阶段未上学原因">{{ detail.dropOutOfSchoolReason }}</el-form-item>
2022-04-28 11:50:35 +08:00
<!-- <el-form-item label="备注说明">{{detail.detail}}</el-form-item>
2022-04-27 18:34:00 +08:00
<el-form-item label="图片">
<ai-uploader disabled v-model="detail.files"></ai-uploader>
2022-04-28 11:50:35 +08:00
</el-form-item> -->
2022-04-27 17:53:58 +08:00
</template>
</ai-card>
<ai-card title="家庭收支情况">
<template slot="content">
<div flex class="half wrap">
2022-04-29 16:39:37 +08:00
<el-form-item label="纳入监测对象的收入参考范围">{{ detail.income1 }}</el-form-item>
<el-form-item label="纳入监测对象的人均收入参考范围">{{ detail.income2 }}</el-form-item>
<el-form-item label="工资性收入(元)">{{ detail.income3 }}</el-form-item>
<el-form-item label="生产经营性收入(元)">{{ detail.income4 }}</el-form-item>
<el-form-item label="计划生育金(元)">{{ detail.income5 }}</el-form-item>
<el-form-item label="资产收益扶贫分红收入">{{ detail.income6 }}</el-form-item>
<el-form-item label="低保金(元)">{{ detail.income7 }}</el-form-item>
<el-form-item label="特困供养金(元)">{{ detail.income8 }}</el-form-item>
<el-form-item label="养老保险金(元)">{{ detail.income9 }}</el-form-item>
<el-form-item label="生态补偿金(元)">{{ detail.income10 }}</el-form-item>
<el-form-item label="转移性收入(元)">{{ detail.income11 }}</el-form-item>
<el-form-item label="其它转移性收入(元)">{{ detail.income12 }}</el-form-item>
<el-form-item label="财产性收入(元)">{{ detail.income13 }}</el-form-item>
<el-form-item label="其它财产收入(元)">{{ detail.income14 }}</el-form-item>
<el-form-item label="生产经营性支出(元)">{{ detail.income15 }}</el-form-item>
<el-form-item label="年收入(元)">{{ detail.income16 }}</el-form-item>
<el-form-item label="家庭纯收入(元)">{{ detail.familyIncome }}</el-form-item>
<el-form-item label="人均纯收入(元)">{{ detail.perCapitaIncome }}</el-form-item>
2022-04-27 17:53:58 +08:00
</div>
</template>
</ai-card>
2022-04-28 14:32:15 +08:00
<ai-card title="风险消除情况" v-if="detail.status == 3">
<template slot="content">
<div flex class="half wrap">
2022-04-29 16:39:37 +08:00
<el-form-item label="工资性收入情况">{{ detail.fxxcIncome1 }}</el-form-item>
<el-form-item label="生产经营性收入情况">{{ detail.fxxcIncome2 }}</el-form-item>
<el-form-item label="财产性收入情况">{{ detail.fxxcIncome3 }}</el-form-item>
<el-form-item label="转移性收入情况">{{ detail.fxxcIncome4 }}</el-form-item>
<el-form-item label="理赔收入情况">{{ detail.fxxcIncome5 }}</el-form-item>
<el-form-item label="生产经营性支出情况">{{ detail.fxxcIncome6 }}</el-form-item>
<el-form-item label="合规自然收支情况">{{ detail.fxxcIncome7 }}</el-form-item>
<el-form-item label="家庭纯收入情况">{{ detail.fxxcIncome8 }}</el-form-item>
<el-form-item label="家庭人均纯收入情况">{{ detail.fxxcIncome9 }}</el-form-item>
2022-04-28 14:32:15 +08:00
</div>
</template>
</ai-card>
2022-04-27 17:53:58 +08:00
<ai-card title="家庭成员">
<template #right>
2022-04-29 16:39:37 +08:00
<span style=" color: #2266ff; margin-left: 16px;cursor: pointer;font-size: 12px;"
@click="addFamily({})">添加</span>
2022-04-27 17:53:58 +08:00
</template>
<template #content>
<ai-table :tableData="detail.family" :colConfigs="colConfigs" :dict="dict" :isShowPagination="false">
<el-table-column slot="options" label="操作" align="center" width="200px">
<template slot-scope="{ row }">
<el-button type="text" @click="viewFamily(row)">详情</el-button>
2022-04-29 19:47:51 +08:00
<template v-if="row.isHousehold==0">
<el-button type="text" @click="addFamily(row)">编辑</el-button>
<el-button type="text" @click="delFamily(row)">删除</el-button>
</template>
2022-04-27 17:53:58 +08:00
</template>
</el-table-column>
</ai-table>
2022-03-26 17:41:38 +08:00
</template>
</ai-card>
2022-04-28 18:08:34 +08:00
<div style="height:20px;"></div>
2022-03-26 17:41:38 +08:00
</el-tab-pane>
2022-04-29 16:39:37 +08:00
<el-tab-pane label="走访日志" lazy name="HrLog"
v-if="$permissions('app_apppreventionreturntopovertylog_detail')">
<hr-log v-if="currentTab == 'HrLog'" :instance="instance" :dict="dict" :permissions="permissions"/>
2022-03-31 11:05:02 +08:00
</el-tab-pane>
<el-tab-pane label="帮扶措施" lazy name="HrMeasure">
2022-04-29 16:39:37 +08:00
<hr-measure v-if="currentTab == 'HrMeasure'" :instance="instance" :dict="dict"
:permissions="permissions"/>
2022-03-26 17:41:38 +08:00
</el-tab-pane>
</el-tabs>
2022-03-24 18:22:55 +08:00
</el-form>
2022-04-29 16:39:37 +08:00
<ai-dialog :visible.sync="isShowAdd" width="1000px" height="500px" title="添加家庭成员" @close="onClose"
@onConfirm="onConfirm">
2022-04-27 17:53:58 +08:00
<el-form :model="form" ref="ruleForm" :rules="rules" label-width="130px" label-position="right" size="small">
2022-04-25 08:58:10 +08:00
<div flex class="half wrap">
<div flex class="column">
2022-04-29 16:11:09 +08:00
<el-form-item label="成员姓名" prop="name">
2022-04-29 16:39:37 +08:00
<el-input size="small" class="user-selecter" v-model="form.name" placeholder="请输入姓名" clearable
:disabled="isEdit || isSelectUser">
2022-04-25 08:58:10 +08:00
<template slot="append">
2022-04-29 16:39:37 +08:00
<ai-person-select :instance="instance" @selectPerson="checkName"
:url="'/app/appresident/list?auditStatus=1&areaId='+user.info.areaId"></ai-person-select>
2022-04-25 08:58:10 +08:00
</template>
</el-input>
</el-form-item>
2022-04-27 17:53:58 +08:00
<el-form-item label="联系方式" prop="phone">
2022-04-29 16:39:37 +08:00
<el-input v-model="form.phone" placeholder="请输入联系方式" :maxlength="11" show-word-limit/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
<el-form-item label="证件号码" prop="idNumber">
2022-04-29 16:39:37 +08:00
<el-input v-model="form.idNumber" placeholder="请输入证件号码" :maxlength="18"
:disabled="isEdit || isSelectUser" @change="handleIdNumberAutocomplete"/>
2022-04-25 08:58:10 +08:00
</el-form-item>
</div>
<el-form-item label="个人照片" prop="photo">
2022-04-29 16:39:37 +08:00
<ai-avatar :instance="instance" v-model="form.photo"/>
2022-04-27 17:53:58 +08:00
</el-form-item>
<el-form-item label="性别" prop="sex">
2022-04-29 16:39:37 +08:00
<ai-select v-model="form.sex" :selectList="dict.getDict('sex')" disabled/>
2022-04-25 08:58:10 +08:00
</el-form-item>
<el-form-item label="出生日期" prop="birthDate">
2022-04-29 16:39:37 +08:00
<el-date-picker disabled value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd" v-model="form.birthDate"
type="date" placeholder="选择日期"/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 18:08:01 +08:00
<el-form-item label="与户主关系" prop="householdRelation">
2022-04-29 16:39:37 +08:00
<ai-select v-model="form.householdRelation" :selectList="dict.getDict('fpRelationship')"/>
2022-04-27 18:08:01 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
<!-- <el-form-item label="年龄" prop="age">
<el-input disabled v-model="form.age" placeholder="请输入年龄" type="number"/>
</el-form-item> -->
<el-form-item label="民族">
2022-04-29 16:39:37 +08:00
<ai-select v-model="form.nation" :selectList="dict.getDict('fpNation')"/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
<el-form-item label="文化程度">
2022-04-29 16:39:37 +08:00
<ai-select v-model="form.education" :selectList="dict.getDict('fpEducation')"/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
<el-form-item label="政治面貌">
2022-04-29 16:39:37 +08:00
<ai-select v-model="form.politicsStatus" :selectList="dict.getDict('fpPoliticalOutlook')"/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
<el-form-item label="在校生状况">
2022-04-29 16:39:37 +08:00
<ai-select v-model="form.schoolStatus" :selectList="dict.getDict('fpStudentsInSchool')"/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
</div>
<el-form-item label="健康状况">
<el-checkbox-group v-model="form.healthyStatusList">
2022-04-29 16:39:37 +08:00
<el-checkbox :label="item.dictValue" v-for="(item, index) in dict.getDict('fpHealth')" :key="index">
{{ item.dictName }}
</el-checkbox>
2022-04-27 17:53:58 +08:00
</el-checkbox-group>
</el-form-item>
<div flex class="half wrap">
<el-form-item label="残疾类别">
2022-04-29 16:39:37 +08:00
<ai-select v-model="form.disabilityType" :selectList="dict.getDict('fpDisabilityType')"
placeholder="请选择"/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
<el-form-item label="残疾办证年度">
2022-04-29 19:39:17 +08:00
<ai-select v-model="form.disabilityCertificateYear" :selectList="dict.getDict('fpYear')"/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
</div>
<el-form-item label="基础保险">
<el-checkbox-group v-model="form.basicsList">
2022-04-29 16:39:37 +08:00
<el-checkbox :label="item.value" v-for="(item, index) in basicsCheckList" :key="index">
{{ item.label }}
</el-checkbox>
2022-04-27 17:53:58 +08:00
</el-checkbox-group>
</el-form-item>
<el-form-item label="保障措施">
<el-checkbox-group v-model="form.guaranteeList">
2022-04-29 16:39:37 +08:00
<el-checkbox :label="item.value" v-for="(item, index) in guaranteeCheckList" :key="index">
{{ item.label }}
</el-checkbox>
2022-04-27 17:53:58 +08:00
</el-checkbox-group>
</el-form-item>
<div flex class="half wrap">
<el-form-item label="劳动技能">
2022-04-29 16:39:37 +08:00
<ai-select v-model="form.labourStatus" :selectList="dict.getDict('fpLaborSkills')"/>
2022-04-27 17:53:58 +08:00
</el-form-item>
<el-form-item label="是否会讲普通话">
2022-04-29 16:39:37 +08:00
<ai-select v-model="form.mandarin" :selectList="dict.getDict('fpYesOrNo')" placeholder="请选择"/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
<el-form-item label="务工时间(月)">
2022-04-29 16:39:37 +08:00
<el-input type="number" v-model="form.workeMonths" placeholder="请输入" clearable
@input="numberInput('workeMonths')"/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
<el-form-item label="就业渠道">
2022-04-29 16:39:37 +08:00
<ai-select v-model="form.employmentChannels" :selectList="dict.getDict('fpEmploymentChannels')"/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
<el-form-item label="务工企业名称">
2022-04-29 16:39:37 +08:00
<el-input v-model="form.migrantEnterprises" placeholder="请输入" clearable/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
<el-form-item label="公益性岗位">
2022-04-29 16:39:37 +08:00
<el-input v-model="form.publicWelfarePosts" placeholder="请输入" clearable/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
<el-form-item label="是否国外务工">
2022-04-29 16:39:37 +08:00
<ai-select v-model="form.foreignWorkers" :selectList="dict.getDict('fpYesOrNo')" placeholder="请选择"/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
<el-form-item label="公益性岗位(月数)">
2022-04-29 16:39:37 +08:00
<el-input type="number" v-model="form.publicWelfarePostsMonths" placeholder="请输入" clearable
@input="numberInput('publicWelfarePostsMonths')"/>
2022-04-25 08:58:10 +08:00
</el-form-item>
2022-04-27 17:53:58 +08:00
</div>
<el-form-item label="务工所在地">
2022-04-29 16:39:37 +08:00
<el-input v-model="form.foreignWorkersAddress" placeholder="请输入" clearable maxlength="30"
show-word-limit/>
2022-04-27 17:53:58 +08:00
</el-form-item>
2022-04-25 08:58:10 +08:00
<el-form-item label="现住址" prop="currentAreaId">
2022-04-29 16:39:37 +08:00
<ai-area-get :instance="instance" v-model="form.currentAreaId" :root="rootArea" valueLevel="5"/>
2022-04-25 08:58:10 +08:00
<el-form-item prop="currentAddress">
2022-04-29 16:39:37 +08:00
<el-input v-model="form.currentAddress" placeholder="详细地址" maxlength="30" show-word-limit clearable/>
2022-04-25 08:58:10 +08:00
</el-form-item>
</el-form-item>
</el-form>
</ai-dialog>
2022-04-27 17:53:58 +08:00
<ai-dialog customFooter :visible.sync="isShowDetail" width="1000px" height="500px" title="家庭成员详情">
2022-04-27 18:08:01 +08:00
<el-form :model="familyInfo" label-width="160px" label-position="right" size="small">
2022-04-25 08:58:10 +08:00
<div flex class="flex-start">
<div flex class="half wrap fill">
2022-04-29 16:39:37 +08:00
<el-form-item label="联系电话">{{ familyInfo.phone }}</el-form-item>
<el-form-item label="证件号">{{ familyInfo.idNumber }}</el-form-item>
<el-form-item label="性别" prop="sex">{{ dict.getLabel("sex", familyInfo.sex) }}</el-form-item>
<el-form-item label="出生日期">{{ familyInfo.birthDate }}</el-form-item>
<el-form-item label="与户主关系">{{ dict.getLabel("fpRelationship", familyInfo.householdRelation) }}
</el-form-item>
2022-04-27 18:08:01 +08:00
<!-- <el-form-item label="年龄" prop="age">{{ familyInfo.age}}</el-form-item> -->
2022-04-29 16:39:37 +08:00
<el-form-item label="民族">{{ dict.getLabel("fpNation", familyInfo.nation) }}</el-form-item>
<el-form-item label="文化程度">{{ dict.getLabel("fpEducation", familyInfo.education) }}</el-form-item>
<el-form-item label="政治面貌">{{ dict.getLabel("fpPoliticalOutlook", familyInfo.politicsStatus) }}
</el-form-item>
<el-form-item label="在校生状况">{{ dict.getLabel("fpStudentsInSchool", familyInfo.schoolStatus) }}
</el-form-item>
2022-04-25 08:58:10 +08:00
</div>
2022-04-29 16:39:37 +08:00
<ai-avatar :instance="instance" v-model="familyInfo.photo" :editable="false"/>
2022-04-25 08:58:10 +08:00
</div>
2022-04-25 15:39:32 +08:00
<el-form-item label="健康状况">
2022-04-29 16:39:37 +08:00
<span v-for="(item, index) in familyInfo.healthyStatusList" :key="index"><span
v-if="index > 0">,</span>{{ dict.getLabel("fpHealth", item) }}</span>
2022-04-25 15:39:32 +08:00
</el-form-item>
2022-04-27 18:08:01 +08:00
<div flex class="half wrap">
2022-04-29 16:39:37 +08:00
<el-form-item label="残疾类别">{{ dict.getLabel("fpDisabilityType", familyInfo.disabilityType) }}</el-form-item>
<el-form-item label="残疾办证年度">{{ dict.getLabel("fpYear", familyInfo.disabilityCertificateYear) }}</el-form-item>
2022-04-27 18:08:01 +08:00
</div>
<div flex class="half wrap">
2022-04-29 16:39:37 +08:00
<el-form-item label="城乡居民基本医疗保险">{{ dict.getLabel("fpYesOrNo", familyInfo.jcbxCxyiliao) }}</el-form-item>
<el-form-item label="城镇职工基本医疗保险">{{ dict.getLabel("fpYesOrNo", familyInfo.jcbxCzyiliao) }}</el-form-item>
<el-form-item label="大病保险">{{ dict.getLabel("fpYesOrNo", familyInfo.jcbxDabing) }}</el-form-item>
<el-form-item label="商业补充医疗保险">{{ dict.getLabel("fpYesOrNo", familyInfo.jcbxShangye) }}</el-form-item>
<el-form-item label="城乡居民基本养老保险">{{ dict.getLabel("fpYesOrNo", familyInfo.jcbxCxyanglao) }}</el-form-item>
<el-form-item label="城镇职工基本养老保险">{{ dict.getLabel("fpYesOrNo", familyInfo.jcbxCzyanglao) }}</el-form-item>
<el-form-item label="享受人身意外保险补贴">{{ dict.getLabel("fpYesOrNo", familyInfo.jcbxRenshenyiwai) }}</el-form-item>
<el-form-item label="享受农村最低生活保障">{{ dict.getLabel("fpYesOrNo", familyInfo.bzcsNongcundibao) }}</el-form-item>
<el-form-item label="是否特困供养人员">{{ dict.getLabel("fpYesOrNo", familyInfo.bzcsTekungongyang) }}</el-form-item>
<el-form-item label="分散供养五保户转集中供养(减少)">{{ dict.getLabel("fpYesOrNo", familyInfo.bzcsWubaohu) }}</el-form-item>
<el-form-item label="是否接受医疗救助">{{ dict.getLabel("fpYesOrNo", familyInfo.bzcsYiliaojiuzhu) }}</el-form-item>
<el-form-item label="是否接受其它健康扶贫">{{ dict.getLabel("fpYesOrNo", familyInfo.bzcsQita) }}</el-form-item>
<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="就业渠道">{{ 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>
<el-form-item label="公益性岗位(月数)">{{ familyInfo.publicWelfarePostsMonths }}</el-form-item>
2022-04-27 18:08:01 +08:00
</div>
2022-04-29 16:39:37 +08:00
<el-form-item label="务工所在地">{{ familyInfo.foreignWorkersAddress }}</el-form-item>
<el-form-item label="现住址">{{ currentFullAddressFamily }}</el-form-item>
2022-04-25 08:58:10 +08:00
</el-form>
2022-04-27 17:53:58 +08:00
<template slot="footer">
2022-04-26 14:15:12 +08:00
<el-button @click="isShowDetail=false">关闭</el-button>
</template>
2022-04-25 08:58:10 +08:00
</ai-dialog>
2022-04-29 16:39:37 +08:00
<ai-dialog :visible.sync="isShowApply" :title="dialogTitle" @closed="applyInfo={},applyFileList=[]"
@onConfirm="submitApply" width="600px">
2022-04-26 10:36:06 +08:00
<el-form :model="applyInfo" :rules="rulesApply" ref="dialogApplyInfo" size="small" label-width="120px">
<el-form-item label="风险因素" prop="riskType" v-if="changeStatus == 0 || changeStatus == 1">
2022-04-29 16:39:37 +08:00
<ai-select v-model="applyInfo.riskType" :selectList="dict.getDict('fpRiskType')"/>
2022-04-25 18:09:11 +08:00
</el-form-item>
2022-04-26 10:36:06 +08:00
<el-form-item label="风险消除方式" prop="riskEliminationMethod" v-if="changeStatus == 3 || changeStatus == 4">
2022-04-29 16:39:37 +08:00
<ai-select v-model="applyInfo.riskEliminationMethod"
:selectList="dict.getDict('fpRiskEliminationMethod')"/>
2022-04-25 18:09:11 +08:00
</el-form-item>
<el-form-item label="备注说明">
2022-04-29 16:39:37 +08:00
<el-input type="textarea" v-model="applyInfo.opinion" placeholder="请输入" maxlength="500" show-word-limit
rows="5"/>
2022-04-25 18:09:11 +08:00
</el-form-item>
<el-form-item label="图片">
2022-04-26 10:36:06 +08:00
<ai-uploader v-model="applyFileList" :instance="instance" acceptType=".jpg,.jpeg,.png">
2022-04-25 18:09:11 +08:00
<template #tips>
最多9张,仅支持10M以内的jpgjpegpng格式照片
</template>
</ai-uploader>
</el-form-item>
</el-form>
2022-04-26 10:36:06 +08:00
</ai-dialog>
<ai-dialog :visible.sync="isShowExamine" :title="dialogTitle" width="800px" customFooter>
<el-steps :active="examineStep" align-center>
2022-04-25 18:09:11 +08:00
<el-step title="申请信息"></el-step>
<el-step title="处理意见"></el-step>
<el-step title="完成"></el-step>
</el-steps>
2022-04-26 10:36:06 +08:00
<div class="info" v-if="examineStep == 1">
2022-04-25 18:09:11 +08:00
<ai-wrapper label-width="120px" :columnsNumber="2" style="margin-top: 16px;">
2022-04-29 16:39:37 +08:00
<ai-info-item label="操作类型" :value="changeStatus == 2 ? '申请纳入监测' : '申请解除风险' "/>
<ai-info-item label="风险因素" :value="dict.getLabel('fpRiskType', examineInfo.bizDictValue)"
v-if="changeStatus == 2"/>
<ai-info-item label="风险消除方式" :value="dict.getLabel('fpRiskEliminationMethod', examineInfo.bizDictValue)"
v-if="changeStatus == 5"/>
<ai-info-item label="申请人" :value="examineInfo.operationUserName"/>
<ai-info-item label="申请时间" :value="examineInfo.createTime"/>
2022-04-25 18:09:11 +08:00
</ai-wrapper>
<ai-wrapper label-width="120px" :columnsNumber="1">
2022-04-29 16:39:37 +08:00
<ai-info-item label="备注说明" :value="examineInfo.detail"/>
2022-04-25 18:09:11 +08:00
</ai-wrapper>
2022-04-29 16:39:37 +08:00
<ai-uploader v-model="examineInfo.files" disabled style="padding-left:150px;"/>
2022-04-25 18:09:11 +08:00
</div>
2022-04-26 10:36:06 +08:00
<div class="form" v-if="examineStep == 2">
<el-form :model="examineFrom" size="small" label-width="80px">
<el-form-item label="审核结果" required>
<el-radio-group v-model="examineFrom.pass">
<el-radio :label="1" v-if="changeStatus == 5">解除风险</el-radio>
<el-radio :label="1" v-if="changeStatus == 2">纳入监测</el-radio>
<el-radio :label="0">驳回申请</el-radio>
2022-04-25 18:09:11 +08:00
</el-radio-group>
</el-form-item>
<el-form-item label="备注说明">
2022-04-29 16:39:37 +08:00
<el-input type="textarea" v-model="examineFrom.opinion" placeholder="请输入" maxlength="500"
show-word-limit rows="5"/>
2022-04-25 18:09:11 +08:00
</el-form-item>
<el-form-item label="图片">
2022-04-26 10:36:06 +08:00
<ai-uploader v-model="examineFileList" :instance="instance" acceptType=".jpg,.jpeg,.png">
2022-04-25 18:09:11 +08:00
<template #tips>
最多9张,仅支持10M以内的jpgjpegpng格式照片
</template>
</ai-uploader>
</el-form-item>
</el-form>
</div>
2022-04-26 10:36:06 +08:00
<div class="success" v-if="examineStep == 3">
<i class="el-icon-success"></i>
<p>审核成功</p>
</div>
2022-04-27 09:48:09 +08:00
<template slot="footer" v-if="examineStep != 3">
2022-04-29 16:39:37 +08:00
<el-button @click="cancelExamine">{{ examineStep == 2 ? '上一步' : '取消' }}</el-button>
2022-04-27 09:48:09 +08:00
<el-button type="primary" @click="examineNext">下一步</el-button>
</template>
<template slot="footer" v-if="examineStep == 3">
<el-button @click="back">关闭</el-button>
2022-04-25 18:09:11 +08:00
</template>
</ai-dialog>
2022-03-24 18:22:55 +08:00
</template>
</ai-detail>
</section>
</template>
<script>
2022-04-29 16:39:37 +08:00
import {mapState} from "vuex";
2022-03-31 11:05:02 +08:00
import HrMeasure from "./detail/hrMeasure";
import HrLog from "./detail/hrLog";
import {ID} from "dui/lib/js/utils";
2022-03-26 17:41:38 +08:00
2022-03-24 18:22:55 +08:00
export default {
name: "hrDetail",
2022-04-29 16:39:37 +08:00
components: {HrLog, HrMeasure},
2022-03-24 18:22:55 +08:00
props: {
instance: Function,
dict: Object,
2022-04-25 08:58:10 +08:00
permissions: Function,
2022-03-24 18:22:55 +08:00
},
2022-03-26 17:41:38 +08:00
computed: {
2022-04-25 08:58:10 +08:00
...mapState(["user"]),
2022-03-26 17:41:38 +08:00
colConfigs() {
return [
2022-04-25 08:58:10 +08:00
{
label: "与户主关系",
prop: "householdRelation",
dict: "fpRelationship",
},
2022-04-29 16:39:37 +08:00
{label: "姓名", prop: "name"},
{label: "性别", prop: "sex", dict: "sex"},
{label: "年龄", prop: "age"},
2022-04-25 08:58:10 +08:00
{
2022-04-29 16:13:28 +08:00
label: "证件号",
2022-04-29 16:39:37 +08:00
render: (h, {row}) =>
2022-10-14 13:58:35 +08:00
h("p", null, ID.hideId(row.idNumber)),
2022-04-25 08:58:10 +08:00
},
2022-04-29 16:39:37 +08:00
{slot: "options"},
2022-04-25 08:58:10 +08:00
];
2022-03-26 17:41:38 +08:00
},
isGridAdmin() {
2022-04-25 08:58:10 +08:00
return this.user.info.girdCheckType == 2;
2022-03-28 16:33:45 +08:00
},
currentFullAddress() {
2022-04-29 16:39:37 +08:00
let {countyName, townName, villageName, currentAddress} = this.detail;
2022-04-25 08:58:10 +08:00
return [countyName, townName, villageName, currentAddress].join("");
},
2022-04-25 15:39:32 +08:00
currentFullAddressFamily() {
2022-04-29 16:39:37 +08:00
let {countyName, townName, villageName, currentAddress} = this.familyInfo;
2022-04-25 15:39:32 +08:00
return [countyName, townName, villageName, currentAddress].join("");
},
2022-04-25 08:58:10 +08:00
rules() {
return {
2022-04-29 16:39:37 +08:00
idNumber: [{required: true, message: "请输入证件号"}],
name: [{required: true, message: "请输入姓名"}],
sex: [{required: true, message: "请选择性别"}],
phone: [{required: true, message: "请输入联系方式"}],
2022-04-25 08:58:10 +08:00
currentAreaId: [
2022-04-29 16:39:37 +08:00
{required: true, message: "请选择现住址"},
{pattern: /[^0]0{0,2}$/, message: "请选择到村/社区"},
2022-04-25 08:58:10 +08:00
],
2022-04-29 16:39:37 +08:00
isHousehold: [{required: true, message: "请选择是否户主"}],
householdRelation: [{required: true, message: "请选择与户主关系"}],
householdIdNumber: [{required: true, message: "请选择户主证件号"}],
2022-04-25 08:58:10 +08:00
};
},
2022-04-25 18:09:11 +08:00
rulesApply() {
return {
2022-04-29 16:39:37 +08:00
riskType: [{required: true, message: "请选择风险因素"}],
riskEliminationMethod: [{required: true, message: "请选择风险消除方式"}],
2022-04-25 18:09:11 +08:00
};
},
2022-04-25 08:58:10 +08:00
rootArea() {
return this.user.info?.areaId?.replace(/(\d{6})\d+/g, '$1' + Array(7).join("0")) || ""
2022-04-27 17:53:58 +08:00
},
guaranteeCheckList() {
return [
2022-04-28 11:21:28 +08:00
{label: '享受农村最低生活保障', value: '0'},
{label: '是否特困供养人员', value: '1'},
{label: '分散供养五保户转集中供养(减少)', value: '2'},
{label: '是否接受医疗救助', value: '3'},
{label: '是否接受其它健康扶贫', value: '4'},
2022-04-27 17:53:58 +08:00
]
},
basicsCheckList() {
return [
2022-04-28 11:21:28 +08:00
{label: '城乡居民基本医疗保险', value: '0'},
{label: '城镇职工基本医疗保险', value: '1'},
{label: '大病保险', value: '2'},
{label: '商业补充医疗保险', value: '3'},
{label: '城乡居民基本养老保险', value: '4'},
{label: '城镇职工基本养老保险', value: '5'},
{label: '享受人身意外保险补贴', value: '6'},
2022-04-27 17:53:58 +08:00
]
},
2022-03-26 17:41:38 +08:00
},
2022-03-24 18:22:55 +08:00
data() {
return {
2022-03-26 17:41:38 +08:00
detail: {},
2022-04-25 08:58:10 +08:00
currentTab: "",
isShowAdd: false,
2022-04-29 16:39:37 +08:00
form: {healthyStatusList: [], basicsList: [], guaranteeList: []},
2022-04-25 08:58:10 +08:00
isEdit: false,
isShowDetail: false,
2022-04-25 15:39:32 +08:00
familyInfo: {},
2022-04-25 18:09:11 +08:00
isSelectUser: false,
isShowApply: false,
dialogTitle: '',
applyInfo: {},
2022-04-26 10:36:06 +08:00
isShowExamine: false,
examineInfo: {},
examineStep: 1, //审批步骤
2022-04-29 16:39:37 +08:00
examineFrom: {pass: 1},
2022-04-26 10:36:06 +08:00
applyFileList: [],
examineFileList: [],
changeStatus: 0, //操作状态 0:申请纳入监测 1:纳入监测 2:纳入监测审批 3:申请解除风险 4:解除风险 5:解除风险审批
2022-04-26 16:43:48 +08:00
girdAdminApplyStatus: 0, //网格长纳入监测状态 0纳入监测 1纳入监测审批
2022-04-25 08:58:10 +08:00
};
2022-03-24 18:22:55 +08:00
},
methods: {
2022-04-25 08:58:10 +08:00
checkName(e) {
2022-04-27 17:53:58 +08:00
if (!e) {
2022-04-25 15:39:32 +08:00
this.isSelectUser = false
this.form.name = ''
this.form.idNumber = ''
2022-04-27 17:53:58 +08:00
this.form.phone = ''
2022-04-25 15:39:32 +08:00
this.form.areaId = ''
2022-04-27 17:53:58 +08:00
this.form.birthDate = ''
this.form.sex = ''
2022-04-25 15:39:32 +08:00
this.form.age = ''
2022-04-26 14:00:40 +08:00
this.form.currentAreaId = ''
this.form.currentAddress = ''
2022-04-25 15:39:32 +08:00
return
}
this.form.name = e.name
this.form.idNumber = e.idNumber
this.form.phone = e.phone
2022-04-26 14:00:40 +08:00
this.form.currentAreaId = e.currentAreaId
this.form.currentAddress = e.currentAddress
2022-04-25 15:39:32 +08:00
this.handleIdNumberAutocomplete(e.idNumber)
this.isSelectUser = true
2022-04-25 08:58:10 +08:00
},
addFamily(row) {
2022-04-27 17:53:58 +08:00
if (row && row.id) {
2022-04-25 15:39:32 +08:00
this.isEdit = true
}
row.healthyStatusList = []
2022-04-27 17:53:58 +08:00
row.basicsList = []
row.guaranteeList = []
if (row && row.healthyStatus) {
2022-04-25 15:39:32 +08:00
row.healthyStatusList = row.healthyStatus.split(',')
}
2022-04-27 17:53:58 +08:00
if (row && row.basicsCheck) {
row.basicsList = row.basicsCheck.split(',')
}
if (row && row.guaranteeCheck) {
row.guaranteeList = row.guaranteeCheck.split(',')
}
2022-04-29 16:39:37 +08:00
this.form = {...row}
2022-04-25 08:58:10 +08:00
this.isShowAdd = true
},
viewFamily(row) {
2022-04-25 15:39:32 +08:00
row.healthyStatusList = []
2022-04-27 17:53:58 +08:00
row.basicsList = []
row.guaranteeList = []
if (row.healthyStatus) {
2022-04-25 15:39:32 +08:00
row.healthyStatusList = row.healthyStatus.split(',')
}
2022-04-27 17:53:58 +08:00
if (row.basicsCheck) {
row.basicsList = row.basicsCheck.split(',')
}
if (row.guaranteeCheck) {
row.guaranteeList = row.guaranteeCheck.split(',')
}
2022-04-29 16:39:37 +08:00
this.familyInfo = {...row}
2022-04-25 08:58:10 +08:00
this.isShowDetail = true
},
2022-04-25 15:39:32 +08:00
delFamily(row) {
2022-04-27 17:53:58 +08:00
if (row.isHousehold == 1) {
2022-04-25 15:39:32 +08:00
return this.$message.error('户主信息不允许删除');
}
this.$confirm("是否删除该家庭成员").then(() => {
this.instance.post(`/app/apppreventionreturntopoverty/delete?ids=${row.id}`).then(res => {
if (res.code == 0) {
this.getDetail()
this.$message.success('删除成功!');
}
})
})
},
2022-04-25 08:58:10 +08:00
handleIdNumberAutocomplete(v) {
2022-10-14 11:53:24 +08:00
let {birthday: birthDate, sex, age} = new ID(v);
this.form = {...this.form, birthDate, sex, age};
2022-04-25 08:58:10 +08:00
},
onConfirm() {
this.$refs.ruleForm.validate((v) => {
if (v) {
2022-04-25 15:39:32 +08:00
this.form.isHousehold = 0
this.form.householdIdNumber = this.detail.idNumber
if (this.form.healthyStatusList.length) {
this.form.healthyStatus = this.form.healthyStatusList.join(',')
}
2022-04-27 18:34:00 +08:00
if (this.form.basicsList.length) {
2022-04-27 17:53:58 +08:00
this.form.basicsCheck = this.form.basicsList.join(',')
}
2022-04-27 18:34:00 +08:00
if (this.form.guaranteeList.length) {
2022-04-27 17:53:58 +08:00
this.form.guaranteeCheck = this.form.basicsList.join(',')
}
2022-04-29 16:39:37 +08:00
this.checkInit('jcbxCxyiliao', this.form.basicsList, '0')
this.checkInit('jcbxCzyiliao', this.form.basicsList, '1')
this.checkInit('jcbxDabing', this.form.basicsList, '2')
this.checkInit('jcbxShangye', this.form.basicsList, '3')
this.checkInit('jcbxCxyanglao', this.form.basicsList, '4')
this.checkInit('jcbxCzyanglao', this.form.basicsList, '5')
this.checkInit('jcbxRenshenyiwai', this.form.basicsList, '6')
2022-04-28 11:21:28 +08:00
2022-04-29 16:39:37 +08:00
this.checkInit('bzcsNongcundibao', this.form.guaranteeList, '0')
this.checkInit('bzcsTekungongyang', this.form.guaranteeList, '1')
this.checkInit('bzcsWubaohu', this.form.guaranteeList, '2')
this.checkInit('bzcsYiliaojiuzhu', this.form.guaranteeList, '3')
this.checkInit('bzcsQita', this.form.guaranteeList, '4')
2022-04-25 15:39:32 +08:00
this.instance.post(`/app/apppreventionreturntopoverty/addOrUpdate`, this.form).then(res => {
if (res.code == 0) {
this.getDetail()
this.$message.success('提交成功!');
this.isShowAdd = false
}
})
2022-04-25 08:58:10 +08:00
}
});
},
2022-04-28 11:21:28 +08:00
checkInit(formName, list, value) {
2022-04-29 16:39:37 +08:00
if (list.includes(value)) {
2022-04-28 11:21:28 +08:00
this.form[formName] = '01'
2022-04-29 16:39:37 +08:00
} else {
2022-04-28 11:21:28 +08:00
this.form[formName] = '02'
}
},
2022-04-25 08:58:10 +08:00
onClose() {
2022-04-25 15:39:32 +08:00
this.isShowAdd = false;
2022-04-25 08:58:10 +08:00
},
2022-03-24 18:22:55 +08:00
back() {
2022-04-25 08:58:10 +08:00
this.$router.push({});
2022-03-24 18:22:55 +08:00
},
getDetail() {
2022-04-29 16:39:37 +08:00
let {id} = this.$route.query;
2022-04-25 08:58:10 +08:00
id &&
2022-04-29 16:39:37 +08:00
this.instance
.post("/app/apppreventionreturntopoverty/queryDetailById", null, {
params: {id},
})
.then((res) => {
if (res?.data) {
this.detail = res.data;
this.detail.family?.map((e) => {
e.householdRelation = e.householdRelation || "户主";
});
2022-04-25 15:39:32 +08:00
2022-04-29 16:39:37 +08:00
if (this.detail.healthyStatus) {
this.detail.healthyStatusList = this.detail.healthyStatus.split(',')
}
if (this.detail.basicsCheck) {
this.detail.basicsList = this.detail.basicsCheck.split(',')
}
if (this.detail.guaranteeCheck) {
this.detail.guaranteeList = this.detail.guaranteeCheck.split(',')
}
2022-04-26 16:43:48 +08:00
2022-04-29 16:39:37 +08:00
if (this.detail.status == 0 && this.isGridAdmin) {
this.instance.post(`/app/apppreventionreturntopoverty/popup?id=${this.detail.id}`).then(res => {
if (res.code == 0 && res.data) { //纳入监测审批
this.girdAdminApplyStatus = 1
2022-04-26 16:43:48 +08:00
}
2022-04-29 16:39:37 +08:00
})
}
}
});
2022-03-24 18:22:55 +08:00
},
2022-03-26 17:41:38 +08:00
gotoEdit() {
2022-04-29 16:39:37 +08:00
let {query} = this.$route;
this.$router.push({query, hash: "#add"});
2022-03-26 17:41:38 +08:00
},
2022-04-26 10:36:06 +08:00
applyMonitor(title, status) {
2022-04-25 18:09:11 +08:00
this.dialogTitle = title
2022-04-26 10:36:06 +08:00
this.changeStatus = status
2022-04-25 18:09:11 +08:00
this.isShowApply = true
},
submitApply() {
this.$refs.dialogApplyInfo.validate((v) => {
if (v) {
2022-04-26 10:36:06 +08:00
this.applyInfo.id = this.detail.id
2022-04-27 17:53:58 +08:00
if (this.changeStatus == 1 || this.changeStatus == 4) { //网格长直接纳入监测/解除风险
2022-04-26 10:36:06 +08:00
this.applyInfo.pass = 1
}
2022-04-27 18:32:22 +08:00
var url = `/app/apppreventionreturntopoverty/examine` //0, 1纳入监测
if (this.changeStatus == 3 || this.changeStatus == 4) { //3, 4解除风险
2022-04-26 10:36:06 +08:00
url = `/app/apppreventionreturntopoverty/relieve`
}
2022-04-27 17:53:58 +08:00
if (this.applyFileList.length) {
2022-04-26 10:36:06 +08:00
var ids = this.applyFileList.map((item) => {
return item.id
})
this.applyInfo.files = ids.join(',')
}
2022-04-28 14:32:15 +08:00
let fromData = new FormData()
for (let key in this.applyInfo) {
fromData.append(key, this.applyInfo[key])
}
this.instance.post(url, fromData).then(res => {
2022-04-26 10:36:06 +08:00
if (res.code == 0) {
this.getDetail()
this.$message.success('提交成功!');
this.isShowApply = false
}
})
2022-04-27 17:53:58 +08:00
2022-04-25 18:09:11 +08:00
}
});
},
2022-04-26 10:36:06 +08:00
examine(title, status) {
2022-04-25 18:09:11 +08:00
this.dialogTitle = title
2022-04-26 10:36:06 +08:00
this.changeStatus = status
this.instance.post(`/app/apppreventionreturntopoverty/popup?id=${this.detail.id}`).then(res => {
if (res.code == 0) {
this.examineInfo = res.data
this.isShowExamine = true
}
})
},
examineNext() {
2022-04-27 17:53:58 +08:00
if (this.examineStep == 2) { //审批操作
if (this.examineFileList.length) {
2022-04-26 10:36:06 +08:00
var ids = this.examineFileList.map((item) => {
return item.id
})
this.examineFrom.files = ids.join(',')
}
this.examineFrom.id = this.detail.id
2022-04-27 18:32:22 +08:00
var url = `/app/apppreventionreturntopoverty/examine` //2 纳入监测
if (this.changeStatus == 5) { //5 解除风险
2022-04-27 18:24:03 +08:00
url = `/app/apppreventionreturntopoverty/relieve`
}
2022-04-28 14:32:15 +08:00
let fromData = new FormData()
for (let key in this.examineFrom) {
fromData.append(key, this.examineFrom[key])
}
2022-04-29 16:39:37 +08:00
this.instance.post(url, fromData).then(res => {
2022-04-26 10:36:06 +08:00
if (res.code == 0) {
this.getDetail()
this.$message.success('提交成功!');
}
})
}
2022-04-27 17:53:58 +08:00
if (this.examineStep == 3) {
2022-04-26 10:36:06 +08:00
this.isShowExamine = false
2022-04-29 16:39:37 +08:00
this.examineFrom = {pass: 1}
2022-04-26 10:36:06 +08:00
return
}
2022-04-27 17:53:58 +08:00
this.examineStep++
2022-04-26 10:36:06 +08:00
},
cancelExamine() {
2022-04-27 17:53:58 +08:00
if (this.examineStep == 2) {
return this.examineStep--
2022-04-26 10:36:06 +08:00
}
this.isShowExamine = false
2022-04-25 18:09:11 +08:00
},
2022-03-26 17:41:38 +08:00
handleDelete(ids) {
2022-04-27 18:32:22 +08:00
this.$confirm("是否要删除监测对象").then(() => {
2022-04-29 16:39:37 +08:00
this.instance.post("/app/apppreventionreturntopoverty/delete", null, {params: {ids: ids?.toString()},}).then((res) => {
2022-04-27 18:32:22 +08:00
if (res?.code == 0) {
this.$message.success("删除成功!");
this.back();
}
});
})
2022-03-26 17:41:38 +08:00
},
2022-04-28 14:32:15 +08:00
numberInput(name) {
2022-04-29 16:39:37 +08:00
if (!/^[0-9]*[1-9][0-9]*$/g.test(this.form[name])) {
2022-04-28 14:32:15 +08:00
this.form[name] = ''
return this.$message.error('请输入正整数')
}
},
2022-03-24 18:22:55 +08:00
},
created() {
2022-04-25 08:58:10 +08:00
this.getDetail();
},
};
2022-03-24 18:22:55 +08:00
</script>
<style lang="scss" scoped>
.hrDetail {
.flex-start {
align-items: flex-start;
.AiAvatar {
margin-left: 20px;
}
}
.half {
align-items: flex-start;
2022-04-25 08:58:10 +08:00
& > .el-form-item,
& > div {
2022-03-24 18:22:55 +08:00
width: 50%;
.el-form-item {
width: 100%;
}
}
}
2022-03-31 15:08:05 +08:00
2022-04-26 10:36:06 +08:00
.success {
text-align: center;
padding-top: 20px;
2022-04-29 16:39:37 +08:00
2022-04-27 17:53:58 +08:00
.el-icon-success {
2022-04-26 10:36:06 +08:00
color: rgb(46, 162, 34);
font-size: 100px;
}
2022-04-29 16:39:37 +08:00
2022-04-27 17:53:58 +08:00
p {
2022-04-27 18:24:03 +08:00
text-align: center;
2022-04-26 10:36:06 +08:00
font-size: 16px;
padding-top: 20px;
color: #000;
}
}
2022-12-01 09:35:20 +08:00
:deep( .ai-dialog__content--wrapper ){
2022-04-27 17:53:58 +08:00
overflow-y: hidden !important;
2022-04-27 09:48:09 +08:00
}
2022-12-01 09:35:20 +08:00
:deep( .AiPersonSelect .el-button ){
2022-04-26 14:15:12 +08:00
color: #fff;
}
2022-12-01 09:35:20 +08:00
:deep(.el-tabs__content ){
2022-03-31 11:05:02 +08:00
max-height: calc(100vh - 136px);
overflow-y: auto;
2022-03-26 17:41:38 +08:00
}
2022-04-25 18:09:11 +08:00
2022-12-01 09:35:20 +08:00
:deep( .el-step__icon ){
2022-04-27 17:53:58 +08:00
border-color: #ccc !important;
2022-04-25 18:09:11 +08:00
}
2022-04-29 16:39:37 +08:00
2022-12-01 09:35:20 +08:00
:deep( .el-step__line ){
2022-04-27 17:53:58 +08:00
background-color: #ccc !important;
2022-04-25 18:09:11 +08:00
}
2022-04-29 16:39:37 +08:00
2022-12-01 09:35:20 +08:00
:deep( .el-step__title),
:deep( .is-wait ){
2022-04-27 17:53:58 +08:00
color: #666 !important;
2022-04-25 18:09:11 +08:00
}
2022-04-29 16:39:37 +08:00
2022-12-01 09:35:20 +08:00
:deep( .is-finish ){
2022-04-27 17:53:58 +08:00
color: #26f !important;
2022-04-25 18:09:11 +08:00
}
2022-04-29 16:39:37 +08:00
2022-12-01 09:35:20 +08:00
:deep( .is-finish .el-step__icon ){
2022-04-27 17:53:58 +08:00
border-color: #26f !important;
2022-04-25 18:09:11 +08:00
}
2022-03-24 18:22:55 +08:00
}
</style>