| New file |
| | |
| | | <template> |
| | | <view class="container"> |
| | | <view class="main"> |
| | | <view class="content"> |
| | | <u-form labelWidth="70" :model="form" :rules="rules" ref="form"> |
| | | <view class="event-info"> |
| | | <u-form-item class="form-item" labelWidth="110" label="姓名" required prop="name"> |
| | | <u--input border="none" v-model="form.name" placeholder="请输入姓名"> |
| | | </u--input> |
| | | </u-form-item> |
| | | <u-form-item @click="showSelectBus('性别','gender')" class="form-item" labelWidth="110" label="性别" |
| | | prop="gender"> |
| | | <u--input border="none" v-model="selectDefaultName.gender" disabled disabledColor="#ffffff" |
| | | placeholder="请选择性别"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | <u-form-item @click="showSelectBus('证件类型','cardType')" class="form-item" labelWidth="110" |
| | | label="证件类型" prop="gender"> |
| | | <u--input border="none" v-model="selectDefaultName.cardType" disabled |
| | | disabledColor="#ffffff" placeholder="请选择证件类型"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | <u-form-item v-if="form.cardType == 111" class="form-item" labelWidth="110" label="身份证号码" |
| | | prop="idCard"> |
| | | <u--input border="none" type="idcard " v-model="form.idCard" placeholder="请输入身份证号码"> |
| | | </u--input> |
| | | </u-form-item> |
| | | <u-form-item v-if="form.cardType && form.cardType != 111" class="form-item" labelWidth="110" |
| | | label="证件号码" prop="cardNo"> |
| | | <u--input border="none" v-model="form.cardNo" placeholder="请输入证件号码"> |
| | | </u--input> |
| | | </u-form-item> |
| | | <u-form-item class="form-item" labelWidth="110" label="手机号码" prop="phoneNumber" required> |
| | | <u--input border="none" type="number" v-model="form.phoneNumber" placeholder="请输入手机号码"> |
| | | </u--input> |
| | | </u-form-item> |
| | | <u-form-item class="form-item" labelWidth="110" label="户籍地区" prop="residentAdcode"> |
| | | <view class="region"> |
| | | <picker mode="region" :value="residentadDefault" @change="changeHouseholdRegion"> |
| | | <view class="region-picker c-c0" v-if="!residentad"> |
| | | 请选择户籍地区 |
| | | </view> |
| | | <view class="region-picker c-30" v-if="residentad"> |
| | | {{residentad}} |
| | | </view> |
| | | </picker> |
| | | </view> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | <u-form-item @click="showSelectBus('民族','ethnicity')" class="form-item" labelWidth="110" |
| | | label="民族" prop="ethnicity"> |
| | | <u--input border="none" v-model="selectDefaultName.ethnicity" disabled |
| | | disabledColor="#ffffff" placeholder="请选择民族"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | <u-form-item @click="showSelectBus('是否党员','partyEmber')" class="form-item" labelWidth="110" |
| | | label="是否党员" prop="partyEmber"> |
| | | <u--input border="none" v-model="selectDefaultName.partyEmber" disabled |
| | | disabledColor="#ffffff" placeholder="请选择是否党员"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | <u-form-item class="form-item" labelWidth="110" label="职业类别" prop="occupation "> |
| | | <u--input border="none" v-model="form.occupation " placeholder="请输入职业类别"> |
| | | </u--input> |
| | | </u-form-item> |
| | | <u-form-item @click="showSelectBus('婚姻状态','maritalStatus')" class="form-item" labelWidth="110" |
| | | label="婚姻状态" prop="maritalStatus"> |
| | | <u--input border="none" v-model="selectDefaultName.maritalStatus" disabled |
| | | disabledColor="#ffffff" placeholder="请选择婚姻状态"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | |
| | | <u-form-item class="form-item" labelWidth="110" label="标签" @click="navTo"> |
| | | <view class=""> |
| | | <text style="color: #c0c4cc;" |
| | | v-if="!form.householdLabelList || !form.householdLabelList.length">请选择标签</text> |
| | | <text class="f-28" v-else>{{showLabel()}}</text> |
| | | </view> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | |
| | | |
| | | <u-form-item class="form-item" @click="showVolunteerOrg = true" labelWidth="120" label="志愿者组织" |
| | | prop="volunteerOrg"> |
| | | <u--input border="none" v-model="volunteerOrg" disabled disabledColor="#ffffff" |
| | | placeholder="请选择志愿者组织"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | |
| | | <u-form-item v-if="volunteerOrg == '其他'" required class="form-item" labelWidth="120" |
| | | label="其他志愿者组织" prop="volunteerOrg"> |
| | | <u--input border="none" v-model="form.volunteerOrg" placeholder="请输入其他志愿者组织"> |
| | | </u--input> |
| | | </u-form-item> |
| | | |
| | | |
| | | <u-form-item @click="showSelectBus('与业主关系','relationship')" class="form-item" labelWidth="120" |
| | | label="与业主关系" required prop="relationship"> |
| | | <u--input border="none" v-model="selectDefaultName.relationship" disabled |
| | | disabledColor="#ffffff" placeholder="请选择与业主关系"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | |
| | | <u-form-item v-if="form.cardType && form.cardType != 111" class="form-item" labelWidth="120" |
| | | label="出生日期" prop="birthday" @click="showSelectBirthday = true"> |
| | | <u--input border="none" v-model="form.birthday" disabled disabledColor="#ffffff" |
| | | placeholder="请选择出生日期"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | |
| | | |
| | | |
| | | |
| | | <u-form-item class="form-item" labelWidth="110" label="其它联系方式" prop="otherContact"> |
| | | <u--input border="none" v-model="form.otherContact" placeholder="请输入其它联系方式"> |
| | | </u--input> |
| | | </u-form-item> |
| | | |
| | | <u-form-item @click="showSelectBus('是否主要联系人','isPrimaryContact')" class="form-item" |
| | | labelWidth="110" label="是否主要联系人" prop="isPrimaryContact"> |
| | | <u--input border="none" v-model="selectDefaultName.isPrimaryContact" disabled |
| | | disabledColor="#ffffff" placeholder="请选择是否主要联系人"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | |
| | | <u-form-item @click="showSelectBus('居住情况','residentialStatus')" class="form-item" |
| | | labelWidth="100" label="居住情况" prop="residentialStatus"> |
| | | <u--input border="none" v-model="selectDefaultName.residentialStatus" disabled |
| | | disabledColor="#ffffff" placeholder="请选择居住情况"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | |
| | | <!-- <u-form-item class="form-item" labelWidth="110" label="港澳台通行证" prop="hkmtPass"> |
| | | <u--input border="none" v-model="form.hkmtPass" placeholder="请输入"> |
| | | </u--input> |
| | | </u-form-item> |
| | | |
| | | <u-form-item class="form-item" labelWidth="110" label="护照" prop="passport"> |
| | | <u--input border="none" v-model="form.passport" placeholder="请输入"> |
| | | </u--input> |
| | | </u-form-item> --> |
| | | |
| | | |
| | | <u-form-item class="form-item" labelWidth="110" label="居住地区" prop="homeAdcode" |
| | | @click="showRegion = true"> |
| | | <u--input border="none" v-model="homeRegion" disabled disabledColor="#ffffff" |
| | | placeholder="请选择居住地区"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | <!-- <u-form-item class="form-item address-row" labelWidth="110" label="现居住地" prop="currentAddress"> |
| | | <u-textarea border="none" :disabled="form.source ==1?true:false" disabledColor="#ffffff" |
| | | v-model="form.currentAddress" placeholder="请输入现居住地"> |
| | | </u-textarea> |
| | | </u-form-item> --> |
| | | <u-form-item class="form-item" labelWidth="110" label="籍贯地区" prop="nativePlaceAdcode"> |
| | | <view class="region"> |
| | | <picker mode="region" :value="navtivePlaceDefault" @change="changeNativeRegion"> |
| | | <view class="region-picker c-c0" v-if="!nativePlace"> |
| | | 请选择籍贯地区 |
| | | </view> |
| | | <view class="region-picker c-30" v-if="nativePlace"> |
| | | {{nativePlace}} |
| | | </view> |
| | | </picker> |
| | | </view> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | |
| | | <u-form-item @click="showSelectBus('户籍类型','residentType')" class="form-item" labelWidth="110" |
| | | label="户籍类型" prop="residentType"> |
| | | <u--input border="none" v-model="selectDefaultName.residentType" disabled |
| | | disabledColor="#ffffff" placeholder="请选择户籍类型"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | <u-form-item class="form-item" labelWidth="110" label="户籍地址" prop="hukouRegistration"> |
| | | <u-textarea border="none" v-model="form.hukouRegistration" placeholder="请输入户籍地址"> |
| | | </u-textarea> |
| | | </u-form-item> |
| | | |
| | | <u-form-item @click="showSelectBus('学历','education')" class="form-item" labelWidth="110" |
| | | label="学历" prop="education"> |
| | | <u--input border="none" v-model="selectDefaultName.education" disabled |
| | | disabledColor="#ffffff" placeholder="请选择学历"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | |
| | | |
| | | |
| | | <u-form-item class="form-item" labelWidth="110" label="工作单位" prop="employer"> |
| | | <u--input border="none" v-model="form.employer" placeholder="请输入工作单位"> |
| | | </u--input> |
| | | </u-form-item> |
| | | <u-form-item class="form-item" labelWidth="110" label="工作单位地址" prop="cmpyRegAddr"> |
| | | <u-textarea border="none" v-model="form.cmpyRegAddr" placeholder="请输入工作单位地址"> |
| | | </u-textarea> |
| | | </u-form-item> |
| | | <u-form-item @click="showSelectBus('工作状态','workStatus')" class="form-item" labelWidth="110" |
| | | label="工作状态" prop="workStatus"> |
| | | <u--input border="none" v-model="selectDefaultName.workStatus" disabled |
| | | disabledColor="#ffffff" placeholder="请选择工作状态"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | |
| | | |
| | | <u-form-item class="form-item" labelWidth="110" label="宗教信仰" prop="religiousBelief "> |
| | | <u--input border="none" v-model="form.religiousBelief" placeholder="请输入宗教信仰"> |
| | | </u--input> |
| | | </u-form-item> |
| | | <u-form-item @click="showSelectBus('健康状态','healthStatus')" class="form-item" labelWidth="110" |
| | | label="健康状态" prop="healthStatus"> |
| | | <u--input border="none" v-model="selectDefaultName.healthStatus" disabled |
| | | disabledColor="#ffffff" placeholder="请选择健康状态"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | <u-form-item v-if="selectDefaultIndex.healthStatus == 2" class="form-item" labelWidth="110" |
| | | label="疾病名称" prop="diseaseName"> |
| | | <u--input border="none" v-model="form.diseaseName" placeholder="请输入疾病名称"> |
| | | </u--input> |
| | | </u-form-item> |
| | | |
| | | <u-form-item class="form-item" labelWidth="110" label="外出详址" prop="goOutAddr"> |
| | | <u-textarea border="none" v-model="form.goOutAddr" placeholder="请输入外出详址"> |
| | | </u-textarea> |
| | | </u-form-item> |
| | | |
| | | <u-form-item class="form-item" labelWidth="110" label="外出原因" prop="goOutReason "> |
| | | <u--input border="none" v-model="form.goOutReason" placeholder="请输入外出原因"> |
| | | </u--input> |
| | | </u-form-item> |
| | | <u-form-item class="form-item" labelWidth="110" label="外出时间" prop="goOutTime" |
| | | @click="showSelectDate = true"> |
| | | <u--input border="none" v-model="form.goOutTime " disabled disabledColor="#ffffff" |
| | | placeholder="请选择外出时间"> |
| | | </u--input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> |
| | | <u-form-item class="form-item" labelWidth="110" label="外出去向" prop="goOutWhere"> |
| | | <u--input border="none" v-model="form.goOutWhere" placeholder="请输入外出去向"> |
| | | </u--input> |
| | | </u-form-item> |
| | | <u-form-item class="form-item" labelWidth="110" label="车牌号" prop="cardNumber"> |
| | | <u--input border="none" v-model="form.cardNumber" placeholder="多个用中划线(-)隔开"> |
| | | </u--input> |
| | | </u-form-item> |
| | | |
| | | <u-form-item class="form-item" labelWidth="110" label="备注" prop="remark"> |
| | | <u--input border="none" v-model="form.remark" placeholder="补充说明"> |
| | | </u--input> |
| | | </u-form-item> |
| | | </view> |
| | | </u-form> |
| | | </view> |
| | | </view> |
| | | |
| | | <u-picker :defaultIndex="[selectDefaultIndex[selectBusKey]]" :closeOnClickOverlay="true" v-if="typeShow" |
| | | :show="typeShow" :columns="[selectBusList]" @close="typeShow = false" @cancel="typeShow = false" |
| | | keyName="name" @confirm="typeSelect"></u-picker> |
| | | |
| | | <u-datetime-picker :show="showSelectDate" v-model="currentTime" mode="date" :formatter="formatter" |
| | | @confirm="confirmDate" @cancel="showSelectDate = false" :minDate="goOutMinDate"></u-datetime-picker> |
| | | |
| | | <u-datetime-picker :show="showSelectBirthday" v-model="currentTime" mode="date" @confirm="confirmBirthday" |
| | | @cancel="showSelectBirthday = false" :minDate="minDate"></u-datetime-picker> |
| | | |
| | | <u-picker :defaultIndex="[homeIndex]" :closeOnClickOverlay="true" :show="showRegion" :columns="[regionList]" |
| | | @close="showRegion = false" @cancel="showRegion = false" keyName="name" @confirm="regionSelect"></u-picker> |
| | | |
| | | <u-picker :defaultIndex="[volunteerOrgTypeIndex]" :closeOnClickOverlay="true" :show="showVolunteerOrg" |
| | | :columns="[volunteerOrgTypeList]" @close="showRegion = false" @cancel="showVolunteerOrg = false" |
| | | @confirm="confirmVolunteerOrg"></u-picker> |
| | | |
| | | <u-popup :show="isShowPopup" mode="bottom" :round="12" closeable="true" @close="isShowPopup = false"> |
| | | <view class="popup-content"> |
| | | <z-paging ref="paging" v-model="houseList" @query="queryHouseList" @onRefresh="refreshList" |
| | | :fixed="false"> |
| | | <view class="" slot="top"> |
| | | <view class="popup-title f-30">选择房屋</view> |
| | | <u-search placeholder="请输入房屋地址" :showAction="true" actionText="搜索" :animation="true" |
| | | v-model="addressName" @search="searchAddress" @custom="searchAddress" |
| | | @clear="clearKeyword"></u-search> |
| | | </view> |
| | | <view class="popup-list"> |
| | | <view class="popup-list-item" v-for="(i,k) in houseList" :key="k" @click="selectHouse(i)"> |
| | | <view class="address-name f-28"> |
| | | {{i.address}} |
| | | </view> |
| | | <view class="check-icon" v-if="i.houseCode == form.houseCode"> |
| | | <u-icon name="checkbox-mark" color="#017BFC" size="30"></u-icon> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </z-paging> |
| | | </view> |
| | | |
| | | </u-popup> |
| | | |
| | | </view> |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | getQrCodeDetail |
| | | } from "@/api/system/index" |
| | | import selectBus from "@/components/my-components/selectBus.vue" |
| | | import uploadMixin from "@/mixin/uploadMixin"; |
| | | import { |
| | | getHouseholdDetail, |
| | | saveOrUpdateHousehold, |
| | | removeHousehold |
| | | } from '@/api/house/household.js' |
| | | import { |
| | | bizDictionary |
| | | } from '@/api/system/dict.js' |
| | | |
| | | import { |
| | | select, |
| | | regionTree |
| | | } from "@/api/system/region.js" |
| | | |
| | | |
| | | import { |
| | | getHouseList |
| | | } from "@/api/house/house.js" |
| | | |
| | | import boxTitle from '../components/boxTitle/index2.vue' |
| | | export default { |
| | | components: { |
| | | selectBus, |
| | | boxTitle |
| | | }, |
| | | mixins: [uploadMixin], |
| | | data() { |
| | | return { |
| | | addOrUpdateTitle: "添加", |
| | | houseCode: "", |
| | | form: { |
| | | // roleName: "", |
| | | // relationName: '', |
| | | // location: "", |
| | | // title: "", |
| | | // roleType:null, |
| | | // description: "", |
| | | }, |
| | | rules: { |
| | | 'selectDefaultName.relationship': { |
| | | required: true, |
| | | message: '请选择与业主关系', |
| | | trigger: ['change', 'blur'], |
| | | }, |
| | | 'name': { |
| | | type: 'string', |
| | | required: true, |
| | | message: '请填写姓名', |
| | | trigger: ['change', 'blur'], |
| | | }, |
| | | 'volunteerOrgTemp': { |
| | | type: 'string', |
| | | required: true, |
| | | message: '请输入其他志愿者组织', |
| | | trigger: ['change', 'blur'], |
| | | }, |
| | | // 'idCard': [{ |
| | | // type: 'string', |
| | | // required: false, |
| | | // message: '请输入身份证号码', |
| | | // trigger: ['change', 'blur'] |
| | | // }, |
| | | // { |
| | | // validator: (rule, value, callback) => { |
| | | // const idCardRegex = |
| | | // /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/ |
| | | // return idCardRegex.test(value) |
| | | // }, |
| | | |
| | | // message: '身份证号码有误', |
| | | // trigger: ['change', 'blur'] |
| | | // } |
| | | // ], |
| | | 'phoneNumber': [{ |
| | | required: true, |
| | | message: '请输入手机号码', |
| | | trigger: ['change', 'blur'] |
| | | }, |
| | | { |
| | | |
| | | validator: (rule, value, callback) => { |
| | | return uni.$u.test.mobile(value); |
| | | }, |
| | | message: '手机号码不正确', |
| | | trigger: ['change', 'blur'] |
| | | |
| | | } |
| | | ] |
| | | }, |
| | | typeShow: false, |
| | | roleName: "", |
| | | dataList: { |
| | | roleType: [], |
| | | relationship: [], |
| | | gender: [{ |
| | | value: 1, |
| | | name: '男', |
| | | }, |
| | | { |
| | | value: 0, |
| | | name: '女', |
| | | }, |
| | | { |
| | | value: 2, |
| | | name: '未知', |
| | | } |
| | | ], |
| | | isPrimaryContact: [{ |
| | | value: 1, |
| | | name: '是', |
| | | }, |
| | | { |
| | | value: 0, |
| | | name: '否', |
| | | } |
| | | ], |
| | | residentialStatus: [{ |
| | | value: 1, |
| | | name: '是', |
| | | }, |
| | | { |
| | | value: 0, |
| | | name: '否', |
| | | } |
| | | ], |
| | | ethnicity: [], |
| | | education: [], |
| | | partyEmber: [{ |
| | | value: 1, |
| | | name: '是', |
| | | }, |
| | | { |
| | | value: 2, |
| | | name: '否', |
| | | } |
| | | ], |
| | | workStatus: [], |
| | | maritalStatus: [], |
| | | residentType: [], |
| | | healthStatus: [], |
| | | cardType: [] |
| | | }, |
| | | // 下拉变量 |
| | | selectBusList: [], |
| | | selectBusVal: '', |
| | | selectBusTitle: '', |
| | | selectBusModel: '', |
| | | selectBusKey: "", |
| | | selectDefaultIndex: { |
| | | roleType: 0, |
| | | relationship: 0, |
| | | gender: 0, |
| | | isPrimaryContact: 0, |
| | | ethnicity: 0, |
| | | education: 0, |
| | | partyEmber: 0, |
| | | workStatus: 0, |
| | | maritalStatus: 0, |
| | | cardType: 0, |
| | | healthStatus: 0, |
| | | residentType: 0, |
| | | residentialStatus: 0 |
| | | }, |
| | | selectDefaultName: { |
| | | roleType: "", |
| | | relationship: "", |
| | | gender: "", |
| | | isPrimaryContact: "", |
| | | ethnicity: "", |
| | | education: "", |
| | | partyEmber: "", |
| | | workStatus: "", |
| | | maritalStatus: "", |
| | | cardType: "", |
| | | healthStatus: "", |
| | | residentType: "", |
| | | residentialStatus: "" |
| | | }, |
| | | showSelectDate: false, |
| | | regionList: [], |
| | | nativePlace: "", //籍贯 |
| | | residentad: "", //户籍 |
| | | homeRegion: "", //居住地 |
| | | homeIndex: 0, |
| | | showRegion: false, |
| | | navtivePlaceDefault: [], |
| | | residentadDefault: [], |
| | | isEdit: false, |
| | | from: "", |
| | | type: "", |
| | | id: "", |
| | | showSelectBirthday: false, |
| | | currentTime: Number(new Date()), |
| | | minDate: "", |
| | | goOutMinDate: "", |
| | | isShowPopup: false, |
| | | addressName: "", |
| | | houseList: [], |
| | | volunteerOrgTypeList: ["信州义警", "蓝天救援", "其他"], |
| | | volunteerOrgTypeIndex: [0], |
| | | volunteerOrg: "", |
| | | showVolunteerOrg: false, |
| | | houseTag: "" //房屋标签 |
| | | } |
| | | }, |
| | | created() { |
| | | this.getHeader() |
| | | this.getAllBizDict() |
| | | this.setCardTypeDefault() |
| | | |
| | | }, |
| | | onReady() { |
| | | this.$refs.form.setRules(this.rules) |
| | | }, |
| | | async onShow(option) { |
| | | this.minDate = Number(new Date('1900-01-01')); //设置出生日期选择器最小值 |
| | | this.goOutMinDate = Number(new Date('1970-01-01')); //设置外出时间选择器最小值 |
| | | await this.getRegionList() |
| | | await this.getAllBizDict() |
| | | this.homeRegion = uni.getStorageSync("curStreet") |
| | | this.form.homeAdcode = this.getHouseRegion(uni.getStorageSync("curStreet")).code; |
| | | this.homeIndex = this.getHouseRegion(uni.getStorageSync("curStreet")).index; |
| | | if (option.from) { |
| | | this.from = option.from; |
| | | if (data.type == 1) { |
| | | this.houseCode = uni.getStorageSync("siteInfo").houseCode |
| | | } |
| | | } |
| | | this.form.roleName = uni.getStorageSync("activeRole").roleName; |
| | | }, |
| | | |
| | | // onShow() { |
| | | // console.log(this.form); |
| | | // if (this.id) { |
| | | // // this.getHouseholdInfo() |
| | | // this.getHoldLabel(); |
| | | // } |
| | | // }, |
| | | |
| | | methods: { |
| | | |
| | | getHouseDetail(code, type) { |
| | | getQrCodeDetail({ |
| | | roleName: uni.getStorageSync("activeRole").roleName, |
| | | addressCode: code || uni.getStorageSync("siteInfo").houseCode, |
| | | }).then(res => { |
| | | console.log(res); |
| | | if (type) { |
| | | if (res.data.isJur = 1) { |
| | | this.houseCode = code; |
| | | this.homeRegion = res.data.townStreetName; |
| | | this.form.currentAddress = res.data.addressName; |
| | | console.log("===>", this.getHouseRegion(res.data.townStreetName)); |
| | | this.form.homeAdcode = this.getHouseRegion(res.data.townStreetName).code; |
| | | this.homeIndex = this.getHouseRegion(res.data.townStreetName).index; |
| | | if (res.data.userHouseLabelVOList.length) { |
| | | this.houseTag = res.data.userHouseLabelVOList[0].labelName |
| | | } |
| | | } else { |
| | | uni.showModal({ |
| | | title: "提示!", |
| | | content: "该区域不是您管辖范围", |
| | | showCancel: false |
| | | }) |
| | | } |
| | | |
| | | } else { |
| | | this.houseCode = code; |
| | | this.homeRegion = res.data.townStreetName; |
| | | this.form.currentAddress = res.data.addressName; |
| | | console.log("===>", this.getHouseRegion(res.data.townStreetName)); |
| | | this.form.homeAdcode = this.getHouseRegion(res.data.townStreetName).code; |
| | | this.homeIndex = this.getHouseRegion(res.data.townStreetName).index; |
| | | if (res.data.userHouseLabelVOList.length) { |
| | | this.houseTag = res.data.userHouseLabelVOList[0].labelName |
| | | } |
| | | } |
| | | |
| | | }) |
| | | }, |
| | | |
| | | setRegionDefault() { |
| | | getQrCodeDetail({ |
| | | roleName: uni.getStorageSync("activeRole").roleName, |
| | | addressCode: this.houseCode || uni.getStorageSync("siteInfo").houseCode, |
| | | }).then(res => { |
| | | this.homeRegion = res.townStreetName; |
| | | this.form.homeAdcode = this.getHouseRegion(res.townStreetName).code; |
| | | this.homeIndex = this.getHouseRegion(res.townStreetName).index; |
| | | |
| | | }) |
| | | }, |
| | | |
| | | |
| | | |
| | | getHouseRegion(name) { |
| | | for (let i = 0, ii = this.regionList.length; i < ii; i++) { |
| | | if (this.regionList[i].name == name) { |
| | | return { |
| | | index: i, |
| | | code: this.regionList[i].code |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | |
| | | |
| | | showLabel() { |
| | | let arr = [] |
| | | for (let i of this.form.householdLabelList) { |
| | | arr.push(i.labelName) |
| | | } |
| | | return arr.join(",") |
| | | }, |
| | | |
| | | |
| | | //选择籍贯 |
| | | changeNativeRegion(e) { |
| | | let { |
| | | code, |
| | | value |
| | | } = e.detail; |
| | | this.nativePlace = `${value[0]}-${value[1]}-${value[2]}` |
| | | this.form.nativePlaceAdcode = code[2]; |
| | | |
| | | }, |
| | | |
| | | //选择户籍 |
| | | changeHouseholdRegion(e) { |
| | | let { |
| | | code, |
| | | value |
| | | } = e.detail; |
| | | this.residentad = `${value[0]}-${value[1]}-${value[2]}` |
| | | this.form.residentAdcode = code[2]; |
| | | }, |
| | | |
| | | |
| | | getRegionList() { |
| | | select(361102).then(res => { |
| | | console.log(res); |
| | | if (res.code == 200) { |
| | | this.regionList = res.data; |
| | | } |
| | | |
| | | }) |
| | | }, |
| | | |
| | | getRegionTree(callback) { |
| | | regionTree().then(res => { |
| | | console.log("region ==>", res.data) |
| | | callback(res.data); |
| | | }) |
| | | }, |
| | | |
| | | regionSelect(e) { |
| | | console.log(e); |
| | | const [result] = e.value; |
| | | this.homeIndex = e.indexs[0]; |
| | | this.homeRegion = result.name; |
| | | this.form.homeAdcode = result.code; |
| | | this.showRegion = false; |
| | | }, |
| | | |
| | | //选择志愿者类型 |
| | | confirmVolunteerOrg(e) { |
| | | this.form.volunteerOrg = '' |
| | | const [result] = e.value; |
| | | this.volunteerOrgTypeIndex = e.indexs[0]; |
| | | this.volunteerOrg = result; |
| | | if (result != "其他") { |
| | | this.form.volunteerOrg = result; |
| | | } else { |
| | | this.form.volunteerOrg = ""; |
| | | } |
| | | |
| | | this.showVolunteerOrg = false; |
| | | }, |
| | | |
| | | |
| | | setCardTypeDefault() { |
| | | this.$set(this.form, "cardType", 111) |
| | | this.$set(this.selectDefaultIndex, "cardType", 0) |
| | | this.$set(this.selectDefaultName, "cardType", "居民身份证") |
| | | }, |
| | | |
| | | //获取身份证中的出生日期 |
| | | getBirthday(idCard) { |
| | | // 提取出生年月日的部分 |
| | | let birthday = idCard.substring(6, 14); |
| | | |
| | | // 将八位数字转换为年月日格式 |
| | | let year = birthday.substring(0, 4); |
| | | let month = birthday.substring(4, 6); |
| | | let day = birthday.substring(6); |
| | | |
| | | // 返回出生日期 |
| | | return `${year}-${month}-${day}`; |
| | | }, |
| | | |
| | | async getAllBizDict() { |
| | | // 获取角色关系字典 |
| | | await this.getBizDict('roleRelation', this.dataList.relationship) |
| | | // 获取角色字典 |
| | | await this.getBizDict('roleType', this.dataList.roleType) |
| | | // 获取民族字典 |
| | | await this.getBizDict('nationType', this.dataList.ethnicity) |
| | | // 获取学历字典 |
| | | await this.getBizDict('educationType', this.dataList.education) |
| | | // 获取工作状态字典 |
| | | await this.getBizDict('workStatusType', this.dataList.workStatus) |
| | | // 获取婚姻状态字典 |
| | | await this.getBizDict('marriageStatusType', this.dataList.maritalStatus) |
| | | // 户籍类别的字典 |
| | | await this.getBizDict('residentType', this.dataList.residentType) |
| | | // 健康状况的字典 |
| | | await this.getBizDict('healthStatus', this.dataList.healthStatus) |
| | | //证件类型字典 |
| | | await this.getBizDict('cardType', this.dataList.cardType) |
| | | |
| | | }, |
| | | // 获取业务字典 |
| | | async getBizDict(code, list) { |
| | | const param = { |
| | | code: code |
| | | } |
| | | const res = await bizDictionary(param) |
| | | res.data.forEach(e => { |
| | | list.push({ |
| | | name: e.dictValue, |
| | | value: Number(e.dictKey) |
| | | }) |
| | | }) |
| | | }, |
| | | // 获取住户信息 |
| | | async getHouseholdInfo() { |
| | | // 获取所有字典 |
| | | await this.getAllBizDict() |
| | | // this.form = data |
| | | getHouseholdDetail({ |
| | | id: this.id |
| | | }).then(res => { |
| | | if (res.code == 200) { |
| | | this.form = res.data; |
| | | let data = res.data; |
| | | for (let i in this.selectDefaultIndex) { |
| | | let { |
| | | index, |
| | | name |
| | | } = this.findObjValue(data[i], this.dataList[i]) |
| | | this.selectDefaultIndex[i] = index || 0; |
| | | this.selectDefaultName[i] = name; |
| | | } |
| | | |
| | | if ((data.idCard && !data.cardType) || (!data.idCard && !data.cardType)) { |
| | | this.setCardTypeDefault() |
| | | } |
| | | |
| | | if (data.idCard && !data.birthday) { |
| | | this.form.birthday = this.getBirthday(data.idCard) |
| | | } |
| | | if (data.nativePlaceAdName) { |
| | | this.nativePlace = |
| | | `${data.nativePlaceProvinceAdName}-${data.nativePlaceCityAdName}-${data.nativePlaceAdName}` |
| | | this.navtivePlaceDefault = [data.nativePlaceProvinceAdName, data |
| | | .nativePlaceCityAdName, data.nativePlaceAdName |
| | | ] |
| | | } |
| | | if (data.residentAdName) { |
| | | this.residentad = |
| | | `${data.residentProvinceAdName}-${data.residentCityAdName}-${data.residentAdName}` |
| | | this.residentadDefault = [data.residentProvinceAdName, data |
| | | .residentCityAdName, |
| | | data.residentAdName |
| | | ] |
| | | } |
| | | |
| | | if (data.homeAdcode) { |
| | | let { |
| | | index, |
| | | name |
| | | } = this.findObjValue(data.homeAdcode, this.regionList, "code") |
| | | this.homeIndex = index; |
| | | this.homeRegion = name; |
| | | } else { |
| | | this.setRegionDefault(); |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | getHoldLabel() { |
| | | getHouseholdDetail({ |
| | | id: this.id |
| | | }).then(res => { |
| | | if (res.code == 200) { |
| | | this.$set(this.form, "householdLabelList", res.data.householdLabelList) |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | // 显示选择弹框 |
| | | showSelectBus(title, key) { |
| | | console.log("************" + JSON.stringify(this.dataList)) |
| | | this.selectBusList = this.dataList[key] |
| | | console.log("************" + JSON.stringify(this.selectBusList)) |
| | | this.selectBusTitle = title |
| | | // this.selectBusModel = model |
| | | this.selectBusKey = key |
| | | this.typeShow = true |
| | | }, |
| | | //类型选择确认 |
| | | typeSelect(item) { |
| | | const [result] = item.value |
| | | // this[this.selectBusModel] = result.name |
| | | this.form[this.selectBusKey] = result.value |
| | | this.selectDefaultName[this.selectBusKey] = result.name; |
| | | this.selectDefaultIndex[this.selectBusKey] = item.indexs[0]; |
| | | this.typeShow = !this.typeShow |
| | | }, |
| | | //表单提交 |
| | | checks() { |
| | | // console.log("************************************") |
| | | this.$refs.form.validate().then(res => { |
| | | console.log("*****1111**" + res) |
| | | // 调用回调函数并返回结果 |
| | | this.$emit('getDataCallback', res); |
| | | }) |
| | | }, |
| | | // 新增更新操作 |
| | | async saveOrUpdate() { |
| | | this.form['houseCode'] = this.houseCode |
| | | this.form.roleName = uni.getStorageSync("activeRole").roleName; |
| | | if (this.form.cardType) { |
| | | if (this.form.cardType == 111) { |
| | | if (!this.form.idCard) { |
| | | // uni.showToast({ |
| | | // title: "请输入身份证号", |
| | | // icon: "none" |
| | | // }) |
| | | // return; |
| | | } else { |
| | | |
| | | if (this.form.cardNo) { |
| | | this.form.cardNo = ""; |
| | | } |
| | | |
| | | const idCardRegex = |
| | | /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/ |
| | | |
| | | if (!idCardRegex.test(this.form.idCard)) { |
| | | this.$showTips("身份证号有误") |
| | | return |
| | | } |
| | | } |
| | | if (this.form.idCard && !this.form.birthday) { |
| | | this.form.birthday = this.getBirthday(this.form.idCard) |
| | | } |
| | | } else { |
| | | if (!this.form.cardNo) { |
| | | uni.showToast({ |
| | | title: "请输入证件号", |
| | | icon: "none" |
| | | }) |
| | | return; |
| | | } else { |
| | | if (this.form.idCard) { |
| | | this.form.idCard = ""; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | // 重新赋值 |
| | | if (this.form.volunteerOrgTemp) { |
| | | this.form.volunteerOrg = this.form.volunteerOrgTemp |
| | | } |
| | | |
| | | const res = await saveOrUpdateHousehold(this.form) |
| | | if (res.code !== 200) { |
| | | uni.showToast({ |
| | | title: "保存失败", |
| | | icon: "error", |
| | | duration: 1500 |
| | | }) |
| | | return |
| | | } |
| | | uni.showToast({ |
| | | title: "保存成功", |
| | | icon: "success", |
| | | duration: 1500, |
| | | success: () => { |
| | | setTimeout(() => { |
| | | uni.navigateBack() |
| | | }, 1500) |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | confirmDate(e) { |
| | | this.form.goOutTime = uni.$u.timeFormat(e.value, 'yyyy-mm-dd') |
| | | this.showSelectDate = false; |
| | | }, |
| | | |
| | | confirmBirthday(e) { |
| | | this.form.birthday = uni.$u.timeFormat(e.value, 'yyyy-mm-dd') |
| | | this.showSelectBirthday = false; |
| | | }, |
| | | |
| | | findObjValue(value, obj, key = "value") { |
| | | let data = { |
| | | index: "", |
| | | name: "" |
| | | } |
| | | for (let i = 0, ii = obj.length; i < ii; i++) { |
| | | if (value == obj[i][key]) { |
| | | data.index = i; |
| | | data.name = obj[i].name; |
| | | } |
| | | } |
| | | return data; |
| | | }, |
| | | |
| | | navTo() { |
| | | let data = JSON.parse(JSON.stringify(this.form)); |
| | | // this.$u.func.globalNavigator( |
| | | // `householdLabel?data=${JSON.stringify(data)}&from=add`) |
| | | if (!this.isEdit) { |
| | | this.$u.func.globalNavigator( |
| | | `householdLabel?data=${JSON.stringify(data)}&from=add`) |
| | | } else { |
| | | this.$u.func.globalNavigator( |
| | | `householdLabel?data=${JSON.stringify(data)}`) |
| | | } |
| | | }, |
| | | |
| | | delAction() { |
| | | uni.showModal({ |
| | | title: "提示!", |
| | | content: "是否要删除该家人信息?", |
| | | success: (res) => { |
| | | if (res.confirm) { |
| | | this.ddelActionRequest() |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | ddelActionRequest() { |
| | | removeHousehold(this.form.id).then(res => { |
| | | if (res.code == 200) { |
| | | setTimeout(() => { |
| | | uni.navigateBack(); |
| | | }, 1000) |
| | | } else { |
| | | uni.showToast({ |
| | | title: "删除失败", |
| | | icon: "error", |
| | | duration: 1500 |
| | | }) |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | queryHouseList(pageNo, pageSize) { |
| | | getHouseList({ |
| | | current: pageNo, |
| | | size: pageSize, |
| | | // townStreetName: uni.getStorageSync("curStreet"), |
| | | address: this.addressName |
| | | }).then(res => { |
| | | this.$refs.paging.complete(res.data.records); |
| | | }) |
| | | }, |
| | | |
| | | refreshList() { |
| | | this.$refs.paging.reload(); |
| | | }, |
| | | |
| | | searchAddress() { |
| | | this.$refs.paging.reload(); |
| | | }, |
| | | |
| | | clearKeyword() { |
| | | this.addressName = "" |
| | | this.$refs.paging.reload(); |
| | | }, |
| | | |
| | | //选择房屋 |
| | | selectHouse(i) { |
| | | this.houseCode = i.houseCode; |
| | | this.form.houseCode = i.houseCode; |
| | | this.form.currentAddress = i.address; |
| | | if (i.userHouseLabelVOList.length) { |
| | | this.houseTag = i.userHouseLabelVOList[0].labelName; |
| | | } |
| | | this.isShowPopup = false; |
| | | }, |
| | | |
| | | |
| | | onScan() { |
| | | uni.scanCode({ |
| | | success: (res) => { |
| | | let obj = this.getUrlParams(res.result); |
| | | this.getHouseDetail(obj.stdId, 1); |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | getUrlParams(url) { |
| | | let urlStr = url.split('?')[1] |
| | | let obj = {}; |
| | | let paramsArr = urlStr.split('&') |
| | | for (let i = 0, len = paramsArr.length; i < len; i++) { |
| | | let arr = paramsArr[i].split('=') |
| | | obj[arr[0]] = arr[1]; |
| | | } |
| | | return obj |
| | | }, |
| | | |
| | | navToHouseTag() { |
| | | uni.navigateTo({ |
| | | url: `/subPackage/house/roomControl/index?code=${this.houseCode}&from=home` |
| | | }) |
| | | }, |
| | | |
| | | //识别身份证信息 |
| | | recognizeSuccess(e, index) { |
| | | let { |
| | | detail: { |
| | | name, |
| | | id, |
| | | address, |
| | | gender, |
| | | nationality |
| | | } |
| | | } = e; |
| | | |
| | | this.$set(this.form, "name", name.text); |
| | | this.$set(this.form, "idCard", id.text); |
| | | this.selectDefaultName.gender = gender.text; //性别 |
| | | this.selectDefaultName.ethnicity = `${nationality.text}族`; //民族 |
| | | this.form.gender = this.getValue(this.dataList.gender, gender.text).value; |
| | | this.form.ethnicity = this.getValue(this.dataList.ethnicity, `${nationality.text}族`) |
| | | .value; |
| | | this.selectDefaultIndex.gender = [this.getValue(this.dataList.gender, gender.text).index]; |
| | | this.selectDefaultIndex.ethnicity = [this.getValue(this.dataList.ethnicity, `${nationality.text}族`) |
| | | .index |
| | | ]; |
| | | let { |
| | | province, |
| | | city, |
| | | district |
| | | } = this.extractAddressComponents(address.text); |
| | | // this.residentadDefault = [province, city, district]; //户籍地区 |
| | | // this.residentad = `${province}-${city}-${district}`; |
| | | this.$set(this.form, "hukouRegistration", address.text); |
| | | // this.getRegionTree(data => { |
| | | // for (let i = 0, ii = data.length; i < ii; i++) { |
| | | // if (data[i].name == province) { |
| | | // for (let j = 0, jj = data[i].children.length; j < jj; j++) { |
| | | // for (let k = 0, kk = data[i].children[j].children.length; k < kk; k++) { |
| | | // if (data[i].children[j].children[k].name == district) { |
| | | // this.$set(this.form, "residentAdcode", data[i].children[j].children[k].id); |
| | | // break; |
| | | // } |
| | | // } |
| | | // } |
| | | // } |
| | | // } |
| | | // }) |
| | | |
| | | }, |
| | | |
| | | |
| | | getValue(arr, name) { |
| | | for (let i = 0, ii = arr.length; i < ii; i++) { |
| | | if (arr[i].name == name) { |
| | | return { |
| | | index: i, |
| | | value: arr[i].value |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | |
| | | extractAddressComponents(address) { |
| | | const provinceRegex = /(?<province>[^省]+省|[^自治区]+自治区|[^市]+市)/; |
| | | const cityRegex = /(?<city>[^市]+市|[^县]+县)/; |
| | | const districtRegex = /(?<district>[^区]+区|[^县]+县|[^乡]+乡|[^镇]+镇|[^街]+街)/; |
| | | |
| | | let province, city, district; |
| | | const provinceMatch = address.match(provinceRegex); |
| | | if (provinceMatch && provinceMatch.groups.province) { |
| | | province = provinceMatch.groups.province; |
| | | const cityMatch = address.substring(address.indexOf(province) + province.length).match(cityRegex); |
| | | if (cityMatch && cityMatch.groups.city) { |
| | | city = cityMatch.groups.city; |
| | | const districtMatch = address.substring(address.indexOf(city) + city.length).match(districtRegex); |
| | | if (districtMatch && districtMatch.groups.district) { |
| | | district = districtMatch.groups.district; |
| | | } |
| | | } |
| | | } |
| | | return { |
| | | province, |
| | | city, |
| | | district |
| | | }; |
| | | } |
| | | |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style scoped lang="scss"> |
| | | .container { |
| | | position: relative; |
| | | width: 100%; |
| | | height: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | background: #F5F5F5; |
| | | |
| | | |
| | | .main { |
| | | // position: relative; |
| | | // flex: 1; |
| | | display: flex; |
| | | flex-direction: column; |
| | | |
| | | .content { |
| | | // height: 0; |
| | | // flex: 1; |
| | | // overflow-y: auto; |
| | | // padding: 20rpx 0 0; |
| | | // padding-bottom: 160rpx; |
| | | // padding-bottom: 36rpx; |
| | | } |
| | | |
| | | |
| | | .btn-group { |
| | | display: flex; |
| | | justify-content: space-around; |
| | | align-items: center; |
| | | height: 116rpx; |
| | | position: fixed; |
| | | left: 0; |
| | | bottom: 0; |
| | | width: 100%; |
| | | } |
| | | } |
| | | |
| | | // .box-title { |
| | | // padding: 10rpx 10rpx; |
| | | // } |
| | | |
| | | .event-info { |
| | | background-color: #ffffff; |
| | | margin: 20rpx 30rpx; |
| | | padding: 30rpx; |
| | | border-radius: 8rpx; |
| | | |
| | | /deep/ .u-form-item { |
| | | background-color: #ffffff; |
| | | padding: 5px 20px; |
| | | border-bottom: 1rpx solid #eff1f3; |
| | | } |
| | | |
| | | /deep/ .u-input__content__field-wrapper__field { |
| | | height: auto; |
| | | white-space: pre-wrap; |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | .event-pic { |
| | | background-color: #ffffff; |
| | | padding: 40rpx 30rpx; |
| | | } |
| | | |
| | | } |
| | | |
| | | .region { |
| | | width: 100%; |
| | | height: 100%; |
| | | |
| | | .region-picker { |
| | | width: 100%; |
| | | heght: 100%; |
| | | } |
| | | |
| | | .c-c0 { |
| | | color: #c0c4cc |
| | | } |
| | | |
| | | .c-30 { |
| | | color: #303133; |
| | | } |
| | | } |
| | | |
| | | .footer { |
| | | width: 100%; |
| | | padding: 20rpx 30rpx; |
| | | box-sizing: border-box; |
| | | z-index: 999; |
| | | position: fixed; |
| | | bottom: 0; |
| | | left: 0; |
| | | backgroun-color: #fff; |
| | | padding-bottom: calc(env(safe-area-inset-bottom) + 20rpx); |
| | | box-shadow: 0rpx 0rpx 10rpx 1rpx rgba(0, 0, 0, 0.1); |
| | | |
| | | .footer-btn { |
| | | width: 48%; |
| | | height: 78rpx; |
| | | line-height: 78rpx; |
| | | border-radius: 8rpx 8rpx 8rpx 8rpx; |
| | | font-size: 32rpx; |
| | | // color: #fff; |
| | | } |
| | | |
| | | .add-btn { |
| | | width: 100%; |
| | | background: linear-gradient(163deg, #01BDFC 0%, #017BFC 100%); |
| | | } |
| | | |
| | | .del-btn { |
| | | // background: linear-gradient(163deg, #FE6C5C 0%, #EA1F1F 99%); |
| | | background-color: transparent; |
| | | border: 1px solid currentColor; |
| | | |
| | | } |
| | | |
| | | .save-btn { |
| | | background: linear-gradient(163deg, #01BDFC 0%, #017BFC 100%); |
| | | } |
| | | } |
| | | |
| | | |
| | | .popup-content { |
| | | width: 100%; |
| | | padding: 0 30rpx 30rpx; |
| | | box-sizing: border-box; |
| | | background-color: #fff; |
| | | height: 800rpx; |
| | | |
| | | .popup-title { |
| | | padding: 30rpx 0; |
| | | text-align: center; |
| | | font-weight: bold; |
| | | } |
| | | |
| | | .popup-list { |
| | | // height: 500rpx; |
| | | margin-top: 20rpx; |
| | | } |
| | | |
| | | .popup-list-item { |
| | | padding: 20rpx 0; |
| | | border-bottom: 1px solid #f1f1f1; |
| | | position: relative; |
| | | } |
| | | |
| | | .address-name { |
| | | width: 90%; |
| | | } |
| | | |
| | | .check-icon { |
| | | position: absolute; |
| | | right: 20rpx; |
| | | top: 20rpx; |
| | | } |
| | | } |
| | | |
| | | .top { |
| | | padding: 0 30rpx; |
| | | marign: 20rpx 0; |
| | | border-radius: 8rpx; |
| | | } |
| | | |
| | | .top-item { |
| | | width: 48%; |
| | | padding: 20rpx; |
| | | border-radius: 8rpx; |
| | | box-sizing: border-box; |
| | | } |
| | | </style> |