Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
@@ -29,7 +29,7 @@
|
||||
<h2>身份证号</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入身份证号" v-model="form.idNum" :maxlength="18" />
|
||||
<input placeholder="请输入身份证号" v-model="form.idNum" type="number" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -51,7 +51,7 @@
|
||||
<h2>出生日期</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<div class="ai-area" @click="isShowEndTime = true">
|
||||
<div class="ai-area" @click="isShowDate = true">
|
||||
<div class="ai-area__wrapper">
|
||||
<span class="label" v-if="form.birthday">{{ form.birthday }}</span>
|
||||
<i v-else>请选择</i>
|
||||
@@ -68,7 +68,7 @@
|
||||
<h2>联系电话</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入" v-model="form.phone" :maxlength="20" />
|
||||
<input placeholder="请输入" v-model="form.phone"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -92,7 +92,7 @@
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<i> </i>
|
||||
<h2>详细地址</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
@@ -103,7 +103,7 @@
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<i> </i>
|
||||
<h2>所属网格</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
@@ -111,21 +111,23 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 残疾人 -->
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<i> </i>
|
||||
<h2>家庭年收入(万)</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入" v-model="form.income" />
|
||||
<input placeholder="请输入" v-model="form.income" type="number" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<i> </i>
|
||||
<h2>婚姻情况</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
@@ -136,7 +138,7 @@
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<i> </i>
|
||||
<h2>身体状况</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
@@ -147,7 +149,7 @@
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<i> </i>
|
||||
<h2>残疾类型</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
@@ -158,7 +160,7 @@
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<i> </i>
|
||||
<h2>残疾级别</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
@@ -166,6 +168,10 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<u-picker mode="time" :params="dataParams" v-model="isShowDate" @confirm="onDateChange"></u-picker>
|
||||
|
||||
<div style="height: 56px;"></div>
|
||||
<div class="btn" @click="submit">保存</div>
|
||||
</div>
|
||||
</template>
|
||||
@@ -194,7 +200,8 @@ export default {
|
||||
healthStatus: [],
|
||||
disableType: [],
|
||||
disableRank: []
|
||||
}
|
||||
},
|
||||
isShowDate: false
|
||||
}
|
||||
},
|
||||
|
||||
@@ -203,7 +210,10 @@ export default {
|
||||
AiAreaPicker
|
||||
},
|
||||
|
||||
onLoad() {},
|
||||
onLoad() {
|
||||
|
||||
|
||||
},
|
||||
|
||||
onShow() {
|
||||
document.title = '新增人员'
|
||||
|
||||
439
src/sass/AppSpecialPeople/addCorrectionUser.vue
Normal file
439
src/sass/AppSpecialPeople/addCorrectionUser.vue
Normal file
@@ -0,0 +1,439 @@
|
||||
<template>
|
||||
<div class="addCorrectionUser">
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<h2>人员类别</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<ai-select v-model="form.type" dict="epidemicRecentPersonType" class="select"></ai-select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<h2>姓名</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入姓名" v-model="form.name" :maxlength="15" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<h2>身份证号</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入身份证号" v-model="form.idNum" :maxlength="18" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<h2>性别</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<ai-select v-model="form.sex" dict="epidemicRecentPersonType" class="select"></ai-select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<h2>出生日期</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<div class="ai-area" @click="isShowEndTime = true">
|
||||
<div class="ai-area__wrapper">
|
||||
<span class="label" v-if="form.birthday">{{ form.birthday }}</span>
|
||||
<i v-else>请选择</i>
|
||||
<u-icon name="arrow-right" color="#ddd"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<h2>联系电话</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入" v-model="form.phone" :maxlength="20" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<h2>所属区域</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<ai-area-picker ref="area" class="ai-area" :value="form.startAreaId" :fullName.sync="form.startAreaName" all mode="custom" @select="v => form.startAreaId = v">
|
||||
<div class="ai-area__wrapper">
|
||||
<span class="label" v-if="form.area">{{ form.area }}</span>
|
||||
<i v-else>请选择</i>
|
||||
<u-icon name="arrow-right" color="#ddd"/>
|
||||
</div>
|
||||
</ai-area-picker>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i> </i>
|
||||
<h2>详细地址</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入" v-model="form.address" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i> </i>
|
||||
<h2>所属网格</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<ai-select v-model="form.grid" dict="epidemicRecentPersonType" class="select"></ai-select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 社区矫正人群 -->
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i></i>
|
||||
<h2>具体罪名</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入具体罪名" v-model="form.name"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i> </i>
|
||||
<h2>矫正类别</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<ai-select v-model="form.disableType" dict="epidemicRecentPersonType" class="select"></ai-select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i></i>
|
||||
<h2>矫正开始日期</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<div class="ai-area" @click="isShowEndTime = true">
|
||||
<div class="ai-area__wrapper">
|
||||
<span class="label" v-if="form.birthday">{{ form.birthday }}</span>
|
||||
<i v-else>请选择</i>
|
||||
<u-icon name="arrow-right" color="#ddd"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i></i>
|
||||
<h2>矫正结束日期</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<div class="ai-area" @click="isShowEndTime = true">
|
||||
<div class="ai-area__wrapper">
|
||||
<span class="label" v-if="form.birthday">{{ form.birthday }}</span>
|
||||
<i v-else>请选择</i>
|
||||
<u-icon name="arrow-right" color="#ddd"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i> </i>
|
||||
<h2>是否建立矫正小组</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<ai-select v-model="form.disableType" dict="epidemicRecentPersonType" class="select"></ai-select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i> </i>
|
||||
<h2>是否有托管</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<ai-select v-model="form.disableRank" dict="epidemicRecentPersonType" class="select"></ai-select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<u-picker mode="time" :params="params" v-model="isShowStartTime" @confirm="onStartChange"></u-picker>
|
||||
<u-picker mode="time" :params="params" v-model="isShowEndTime" @confirm="onEndChange"></u-picker>
|
||||
|
||||
<div style="height: 56px;"></div>
|
||||
<div class="btn" @click="submit">保存</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import AiSelect from '../../components/AiSelect'
|
||||
import AiAreaPicker from '../../components/AiAreaPicker.vue'
|
||||
|
||||
export default {
|
||||
name: 'addCorrectionUser',
|
||||
|
||||
data() {
|
||||
return {
|
||||
value: '',
|
||||
form: {
|
||||
type: [],
|
||||
name: '',
|
||||
idNum: '',
|
||||
sex: [],
|
||||
birthday: '',
|
||||
phone: '',
|
||||
address: '',
|
||||
grid: '',
|
||||
income: '',
|
||||
marStatus: [],
|
||||
healthStatus: [],
|
||||
disableType: [],
|
||||
disableRank: []
|
||||
},
|
||||
isShowStartTime: false,
|
||||
isShowEndTime: false,
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
AiSelect,
|
||||
AiAreaPicker
|
||||
},
|
||||
|
||||
onLoad() {
|
||||
|
||||
|
||||
},
|
||||
|
||||
onShow() {
|
||||
document.title = '新增人员'
|
||||
},
|
||||
methods: {}
|
||||
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.addCorrectionUser {
|
||||
height: 100%;
|
||||
|
||||
.form-item {
|
||||
padding-left: 32px;
|
||||
|
||||
.form-item__checkbox {
|
||||
width: 100%;
|
||||
div {
|
||||
width: 90%;
|
||||
height: 90px;
|
||||
line-height: 100px;
|
||||
margin-bottom: 24px;
|
||||
text-align: center;
|
||||
background: #FFFFFF;
|
||||
border-radius: 16px;
|
||||
color: #333333;
|
||||
font-size: 28px;
|
||||
border: 1px solid #CCCCCC;
|
||||
|
||||
&.active {
|
||||
background: #4181FF;
|
||||
color: #fff;
|
||||
border-color: #4181FF;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.form-item__radio {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
|
||||
div {
|
||||
width: 212px;
|
||||
height: 90px;
|
||||
line-height: 90px;
|
||||
margin-right: 16px;
|
||||
margin-bottom: 8px;
|
||||
text-align: center;
|
||||
background: #FFFFFF;
|
||||
border-radius: 16px;
|
||||
color: #333333;
|
||||
font-size: 28px;
|
||||
border: 1px solid #CCCCCC;
|
||||
|
||||
&:nth-of-type(3n) {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
&.active {
|
||||
background: #4181FF;
|
||||
color: #fff;
|
||||
border-color: #4181FF;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.ai-area__wrapper {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
padding-left: 100px;
|
||||
|
||||
span {
|
||||
color: #333;
|
||||
font-size: 30px;
|
||||
}
|
||||
|
||||
i {
|
||||
color: #999;
|
||||
font-size: 30px;
|
||||
font-style: initial;
|
||||
}
|
||||
|
||||
image {
|
||||
width: 16px;
|
||||
height: 8px;
|
||||
}
|
||||
}
|
||||
|
||||
.form-item__wrapper {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
height: 90px;
|
||||
padding-right: 28px;
|
||||
border-bottom: 1px solid #DDDDDD;
|
||||
|
||||
input {
|
||||
flex: 1;
|
||||
height: 100%;
|
||||
text-align: right;
|
||||
color: #333;
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
||||
.form-item__right {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 32px;
|
||||
|
||||
.select {
|
||||
._i {
|
||||
padding-left: 100px;
|
||||
}
|
||||
}
|
||||
|
||||
span {
|
||||
max-width: 400px;
|
||||
margin-right: 8px;
|
||||
color: #333333;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
i {
|
||||
margin-right: 8px;
|
||||
color: #999999;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&:last-child {
|
||||
.form-item__wrapper {
|
||||
border-bottom: none;
|
||||
}
|
||||
}
|
||||
|
||||
.form-item__title {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
i {
|
||||
font-size: 32px;
|
||||
color: #FF4466;
|
||||
}
|
||||
|
||||
span {
|
||||
font-size: 28px;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
h2 {
|
||||
padding: 0 4px;
|
||||
font-weight: 400;
|
||||
font-size: 32px;
|
||||
color: #333333;
|
||||
}
|
||||
}
|
||||
|
||||
&.form-item__imgs, &.form-item__textarea {
|
||||
.form-item__wrapper {
|
||||
display: block;
|
||||
height: auto;
|
||||
padding-bottom: 32px;
|
||||
}
|
||||
|
||||
textarea {
|
||||
width: 100%;
|
||||
height: 90px;
|
||||
}
|
||||
|
||||
.form-item__title {
|
||||
padding: 32px 0;
|
||||
}
|
||||
|
||||
.form-item__right {
|
||||
padding-left: 18px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.btn {
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
height: 112px;
|
||||
line-height: 112px;
|
||||
background: #1365dd;
|
||||
text-align: center;
|
||||
font-size: 32px;
|
||||
font-weight: 500;
|
||||
color: #ffffff;
|
||||
z-index: 9999;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
259
src/sass/AppSpecialPeople/addPrisonUser.vue
Normal file
259
src/sass/AppSpecialPeople/addPrisonUser.vue
Normal file
@@ -0,0 +1,259 @@
|
||||
<template>
|
||||
<div class="addPrisonUser">
|
||||
<div class="pad-l32">
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips">*</span>类型</span>
|
||||
<div class="value" @click="selectClick('houselivingStatus', 'livingStatus')">
|
||||
<span :class="form.livingStatus === '' ? 'color-999' : ''">{{ $dict.getLabel('houselivingStatus', form.livingStatus) || '请选择'}}</span>
|
||||
<u-icon name="arrow-right" color="#cccccc" size="14"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips">*</span>姓名</span>
|
||||
<div class="value">
|
||||
<u-input type="text" placeholder="请输入" v-model="form.houseArea" input-align="right" placeholder-style="color:#999;font-size:16px;" height="48" :maxlength="15" :clearable="false" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips">*</span>身份证号</span>
|
||||
<div class="value">
|
||||
<u-input type="idcard" placeholder="请输入" v-model="form.houseArea" input-align="right" placeholder-style="color:#999;font-size:16px;" height="48" :maxlength="15" :clearable="false" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips">*</span>性别</span>
|
||||
<div class="value" @click="selectClick('houselivingStatus', 'livingStatus')">
|
||||
<span :class="form.livingStatus === '' ? 'color-999' : ''">{{ $dict.getLabel('houselivingStatus', form.livingStatus) || '请选择'}}</span>
|
||||
<u-icon name="arrow-right" color="#cccccc" size="14"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips">*</span>出生日期</span>
|
||||
<div class="value" @click="selectTime('startDate')">
|
||||
<span :class="form.startDate === '' ? 'color-999' : ''">{{ $dateFormat(form.startDate,'YYYY-MM-DD') || '请选择' }}</span>
|
||||
<u-icon name="arrow-right" color="#cccccc" size="14"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips">*</span>联系电话</span>
|
||||
<div class="value">
|
||||
<u-input type="number" placeholder="请输入" v-model="form.houseArea" input-align="right" placeholder-style="color:#999;font-size:16px;" height="48" :maxlength="11" :clearable="false" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips">*</span>所属区域</span>
|
||||
<div class="value">
|
||||
<u-input type="text" placeholder="请输入" v-model="form.houseArea" input-align="right" placeholder-style="color:#999;font-size:16px;" height="48" :maxlength="15"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips"></span>详细地址</span>
|
||||
<div class="value">
|
||||
<u-input type="text" placeholder="请输入" v-model="form.houseArea" input-align="right" placeholder-style="color:#999;font-size:16px;" height="48" :maxlength="15" :clearable="false" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips"></span>所属网格</span>
|
||||
<div class="value">
|
||||
<u-input type="text" placeholder="请输入" v-model="form.houseArea" input-align="right" placeholder-style="color:#999;font-size:16px;" height="48" :maxlength="15"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips"></span>是否累犯</span>
|
||||
<div class="value" @click="selectClick('houselivingStatus', 'livingStatus')">
|
||||
<span :class="form.livingStatus === '' ? 'color-999' : ''">{{ $dict.getLabel('houselivingStatus', form.livingStatus) || '请选择'}}</span>
|
||||
<u-icon name="arrow-right" color="#cccccc" size="14"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips"></span>原罪名</span>
|
||||
<div class="value" @click="selectClick('houselivingStatus', 'livingStatus')">
|
||||
<span :class="form.livingStatus === '' ? 'color-999' : ''">{{ $dict.getLabel('houselivingStatus', form.livingStatus) || '请选择'}}</span>
|
||||
<u-icon name="arrow-right" color="#cccccc" size="14"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips"></span>服刑场所</span>
|
||||
<div class="value">
|
||||
<u-input type="text" placeholder="请输入" v-model="form.houseArea" input-align="right" placeholder-style="color:#999;font-size:16px;" height="48" :maxlength="15" :clearable="false" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips"></span>危险性评估</span>
|
||||
<div class="value" @click="selectClick('houselivingStatus', 'livingStatus')">
|
||||
<span :class="form.livingStatus === '' ? 'color-999' : ''">{{ $dict.getLabel('houselivingStatus', form.livingStatus) || '请选择'}}</span>
|
||||
<u-icon name="arrow-right" color="#cccccc" size="14"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips"></span>安置情况</span>
|
||||
<div class="value" @click="selectClick('houselivingStatus', 'livingStatus')">
|
||||
<span :class="form.livingStatus === '' ? 'color-999' : ''">{{ $dict.getLabel('houselivingStatus', form.livingStatus) || '请选择'}}</span>
|
||||
<u-icon name="arrow-right" color="#cccccc" size="14"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips"></span>安置时间</span>
|
||||
<div class="value" @click="selectTime('startDate')">
|
||||
<span :class="form.startDate === '' ? 'color-999' : ''">{{ $dateFormat(form.startDate,'YYYY-MM-DD') || '请选择' }}</span>
|
||||
<u-icon name="arrow-right" color="#cccccc" size="14"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips"></span>衔接情况</span>
|
||||
<div class="value" @click="selectClick('houselivingStatus', 'livingStatus')">
|
||||
<span :class="form.livingStatus === '' ? 'color-999' : ''">{{ $dict.getLabel('houselivingStatus', form.livingStatus) || '请选择'}}</span>
|
||||
<u-icon name="arrow-right" color="#cccccc" size="14"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips"></span>衔接时间</span>
|
||||
<div class="value" @click="selectTime('startDate')">
|
||||
<span :class="form.startDate === '' ? 'color-999' : ''">{{ $dateFormat(form.startDate,'YYYY-MM-DD') || '请选择' }}</span>
|
||||
<u-icon name="arrow-right" color="#cccccc" size="14"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<span class="label"><span class="tips"></span>是否重新犯罪</span>
|
||||
<div class="value" @click="selectClick('houselivingStatus', 'livingStatus')">
|
||||
<span :class="form.livingStatus === '' ? 'color-999' : ''">{{ $dict.getLabel('houselivingStatus', form.livingStatus) || '请选择'}}</span>
|
||||
<u-icon name="arrow-right" color="#cccccc" size="14"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer" @click="submit">
|
||||
<div class="btn">保存</div>
|
||||
</div>
|
||||
|
||||
<u-picker mode="time" v-model="dateShow" :params="deteParams" start-year="2010" @confirm="dateConfirm">请选择</u-picker>
|
||||
<u-select v-model="showSelect" :list="$dict.getDict(selectDict)" label-name="dictName" value-name="dictValue" @confirm="confirmRelation"/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {mapActions, mapState} from 'vuex'
|
||||
|
||||
export default {
|
||||
|
||||
data() {
|
||||
return {
|
||||
form: {
|
||||
|
||||
},
|
||||
dateShow: false,
|
||||
deteParams: {year: true, month: true, day: true, hour: false, minute: false, second: false},
|
||||
showSelect: false,
|
||||
selectDict: '',
|
||||
selectName: ''
|
||||
}
|
||||
},
|
||||
computed: {...mapState(['user'])},
|
||||
created() {
|
||||
this.$dict.load('householdRelation', 'houselivingStatus', 'houseLeaseSituation', 'houseUseStatus',
|
||||
'isFilingCertificateStatus', 'communityBuildingType', 'yesOrNo', 'BulidResidentType').then(() => {
|
||||
// this.getDetail()
|
||||
})
|
||||
},
|
||||
onShow() {
|
||||
document.title = '新增人员'
|
||||
},
|
||||
|
||||
methods: {
|
||||
submit() {
|
||||
this.$http.post(`app/appcommunityform/update`, this.form).then(res => {
|
||||
if (res?.code == 0) {
|
||||
this.$u.toast('提交成功')
|
||||
setTimeout(() => {
|
||||
uni.navigateBack({})
|
||||
}, 600)
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
selectClick(dictName, formName) {
|
||||
this.dictName = dictName
|
||||
this.selectName = formName
|
||||
this.showSelect = true
|
||||
},
|
||||
confirmSelect(e) {
|
||||
this.form[this.selectName] = e[0].value
|
||||
},
|
||||
selectTime(formName) {
|
||||
this.selectName = formName
|
||||
this.dateShow = true
|
||||
},
|
||||
dateConfirm(e) {
|
||||
this.form[this.selectName] = `${e.year}-${e.month}-${e.day} 00:00:00`
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.addPrisonUser {
|
||||
padding-bottom: 112px;
|
||||
|
||||
.item {
|
||||
width: 100%;
|
||||
padding: 34px 32px 34px 0;
|
||||
background: #FFFFFF;
|
||||
border-bottom: 1px solid #D8DDE6;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
font-size: 32px;
|
||||
font-family: PingFangSC-Regular, PingFang SC;
|
||||
color: #333;
|
||||
line-height: 44px;
|
||||
box-sizing: border-box;
|
||||
|
||||
.color-999 {
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.value {
|
||||
.u-icon {
|
||||
margin-left: 16px;
|
||||
}
|
||||
}
|
||||
|
||||
.tips{
|
||||
display: inline-block;
|
||||
width: 16px;
|
||||
font-size: 32px;
|
||||
font-family: PingFangSC-Regular, PingFang SC;
|
||||
color: #F46;
|
||||
line-height: 44px;
|
||||
}
|
||||
}
|
||||
|
||||
.footer {
|
||||
width: 100%;
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
.btn {
|
||||
width: 100%;
|
||||
height: 112px;
|
||||
line-height: 112px;
|
||||
text-align: center;
|
||||
background: #1365DD;
|
||||
font-size: 32px;
|
||||
font-family: PingFangSC-Medium, PingFang SC;
|
||||
font-weight: 500;
|
||||
color: #FFF;
|
||||
}
|
||||
|
||||
.line-bg {
|
||||
width: 100%;
|
||||
height: 16px;
|
||||
background: #F5F5F5;
|
||||
}
|
||||
|
||||
.pad-l32 {
|
||||
padding-left: 32px;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
431
src/sass/AppSpecialPeople/addPsychosisUser.vue
Normal file
431
src/sass/AppSpecialPeople/addPsychosisUser.vue
Normal file
@@ -0,0 +1,431 @@
|
||||
<template>
|
||||
<div class="addPsychosisUser">
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<h2>人员类别</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<ai-select v-model="form.type" dict="epidemicRecentPersonType" class="select"></ai-select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<h2>姓名</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入姓名" v-model="form.name" :maxlength="15" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<h2>身份证号</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入身份证号" v-model="form.idNum" :maxlength="18" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<h2>性别</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<ai-select v-model="form.sex" dict="epidemicRecentPersonType" class="select"></ai-select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<h2>出生日期</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<div class="ai-area" @click="isShowDate = true">
|
||||
<div class="ai-area__wrapper">
|
||||
<span class="label" v-if="form.checkTime">{{ form.checkTime }}</span>
|
||||
<i v-else>请选择</i>
|
||||
<u-icon name="arrow-right" color="#ddd"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<h2>联系电话</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入" v-model="form.phone" :maxlength="20" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i>*</i>
|
||||
<h2>所属区域</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<ai-area-picker ref="area" class="ai-area" :value="form.startAreaId" :fullName.sync="form.startAreaName" all mode="custom" @select="v => form.startAreaId = v">
|
||||
<div class="ai-area__wrapper">
|
||||
<span class="label" v-if="form.area">{{ form.area }}</span>
|
||||
<i v-else>请选择</i>
|
||||
<u-icon name="arrow-right" color="#ddd"/>
|
||||
</div>
|
||||
</ai-area-picker>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i> </i>
|
||||
<h2>详细地址</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入" v-model="form.address" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i> </i>
|
||||
<h2>所属网格</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<ai-select v-model="form.grid" dict="epidemicRecentPersonType" class="select"></ai-select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 精神病患者 -->
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i> </i>
|
||||
<h2>家庭年收入(万)</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入" v-model="form.income" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i></i>
|
||||
<h2>发病日期</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<div class="ai-area" @click="illTime = true">
|
||||
<div class="ai-area__wrapper">
|
||||
<span class="label" v-if="form.birthday">{{ form.birthday }}</span>
|
||||
<i v-else>请选择</i>
|
||||
<u-icon name="arrow-right" color="#ddd"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i></i>
|
||||
<h2>监护人姓名</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入姓名" v-model="form.name" :maxlength="15" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i></i>
|
||||
<h2>监护人联系方式</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<input placeholder="请输入" v-model="form.phone" type="number" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i> </i>
|
||||
<h2>目前危险等级</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<ai-select v-model="form.disableType" dict="epidemicRecentPersonType" class="select"></ai-select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-item">
|
||||
<div class="form-item__wrapper">
|
||||
<div class="form-item__title">
|
||||
<i> </i>
|
||||
<h2>治疗情况</h2>
|
||||
</div>
|
||||
<div class="form-item__right">
|
||||
<ai-select v-model="form.disableRank" dict="epidemicRecentPersonType" class="select"></ai-select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<u-picker mode="time" :params="dataParams" v-model="isShowDate" @confirm="onDateChange"></u-picker>
|
||||
|
||||
<div style="height: 56px;"></div>
|
||||
<div class="btn" @click="submit">保存</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import AiSelect from '../../components/AiSelect'
|
||||
import AiAreaPicker from '../../components/AiAreaPicker.vue'
|
||||
|
||||
export default {
|
||||
name: 'addPsychosisUser',
|
||||
|
||||
data() {
|
||||
return {
|
||||
value: [],
|
||||
form: {
|
||||
type: [],
|
||||
name: '',
|
||||
idNum: '',
|
||||
sex: [],
|
||||
birthday: '',
|
||||
phone: '',
|
||||
address: '',
|
||||
grid: '',
|
||||
income: '',
|
||||
marStatus: [],
|
||||
healthStatus: [],
|
||||
disableType: [],
|
||||
disableRank: []
|
||||
},
|
||||
isShowDate: false,
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
AiSelect,
|
||||
AiAreaPicker
|
||||
},
|
||||
|
||||
onLoad() {
|
||||
|
||||
|
||||
},
|
||||
|
||||
onShow() {
|
||||
document.title = '新增人员'
|
||||
},
|
||||
methods: {}
|
||||
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.addPsychosisUser {
|
||||
height: 100%;
|
||||
|
||||
.form-item {
|
||||
padding-left: 32px;
|
||||
|
||||
.form-item__checkbox {
|
||||
width: 100%;
|
||||
div {
|
||||
width: 90%;
|
||||
height: 90px;
|
||||
line-height: 100px;
|
||||
margin-bottom: 24px;
|
||||
text-align: center;
|
||||
background: #FFFFFF;
|
||||
border-radius: 16px;
|
||||
color: #333333;
|
||||
font-size: 28px;
|
||||
border: 1px solid #CCCCCC;
|
||||
|
||||
&.active {
|
||||
background: #4181FF;
|
||||
color: #fff;
|
||||
border-color: #4181FF;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.form-item__radio {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
|
||||
div {
|
||||
width: 212px;
|
||||
height: 90px;
|
||||
line-height: 90px;
|
||||
margin-right: 16px;
|
||||
margin-bottom: 8px;
|
||||
text-align: center;
|
||||
background: #FFFFFF;
|
||||
border-radius: 16px;
|
||||
color: #333333;
|
||||
font-size: 28px;
|
||||
border: 1px solid #CCCCCC;
|
||||
|
||||
&:nth-of-type(3n) {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
&.active {
|
||||
background: #4181FF;
|
||||
color: #fff;
|
||||
border-color: #4181FF;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.ai-area__wrapper {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
padding-left: 100px;
|
||||
|
||||
span {
|
||||
color: #333;
|
||||
font-size: 30px;
|
||||
}
|
||||
|
||||
i {
|
||||
color: #999;
|
||||
font-size: 30px;
|
||||
font-style: initial;
|
||||
}
|
||||
|
||||
image {
|
||||
width: 16px;
|
||||
height: 8px;
|
||||
}
|
||||
}
|
||||
|
||||
.form-item__wrapper {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
height: 90px;
|
||||
padding-right: 28px;
|
||||
border-bottom: 1px solid #DDDDDD;
|
||||
|
||||
input {
|
||||
flex: 1;
|
||||
height: 100%;
|
||||
text-align: right;
|
||||
color: #333;
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
||||
.form-item__right {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 32px;
|
||||
|
||||
.select {
|
||||
._i {
|
||||
padding-left: 100px;
|
||||
}
|
||||
}
|
||||
|
||||
span {
|
||||
max-width: 400px;
|
||||
margin-right: 8px;
|
||||
color: #333333;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
i {
|
||||
margin-right: 8px;
|
||||
color: #999999;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&:last-child {
|
||||
.form-item__wrapper {
|
||||
border-bottom: none;
|
||||
}
|
||||
}
|
||||
|
||||
.form-item__title {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
i {
|
||||
font-size: 32px;
|
||||
color: #FF4466;
|
||||
}
|
||||
|
||||
span {
|
||||
font-size: 28px;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
h2 {
|
||||
padding: 0 4px;
|
||||
font-weight: 400;
|
||||
font-size: 32px;
|
||||
color: #333333;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
&.form-item__imgs, &.form-item__textarea {
|
||||
.form-item__wrapper {
|
||||
display: block;
|
||||
height: auto;
|
||||
padding-bottom: 32px;
|
||||
}
|
||||
|
||||
textarea {
|
||||
width: 100%;
|
||||
height: 90px;
|
||||
}
|
||||
|
||||
.form-item__title {
|
||||
padding: 32px 0;
|
||||
}
|
||||
|
||||
.form-item__right {
|
||||
padding-left: 18px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.btn {
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
height: 112px;
|
||||
line-height: 112px;
|
||||
background: #1365dd;
|
||||
text-align: center;
|
||||
font-size: 32px;
|
||||
font-weight: 500;
|
||||
color: #ffffff;
|
||||
z-index: 9999;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user