linwei
2023-12-29 fb20586c9791fb62dc87766fa0bba7f9f23d2abe
Merge remote-tracking branch 'origin/master'
5 files modified
1 files added
1301 ■■■■ changed files
api/system/region.js 4 ●●●● patch | view | raw | blame | history
common/setting.js 8 ●●●●● patch | view | raw | blame | history
subPackage/house/member/index.vue 592 ●●●● patch | view | raw | blame | history
subPackage/house/member/index02.vue 563 ●●●●● patch | view | raw | blame | history
subPackage/workbench/views/cscj.vue 42 ●●●● patch | view | raw | blame | history
subPackage/workbench/views/editExamine.vue 92 ●●●●● patch | view | raw | blame | history
api/system/region.js
@@ -2,7 +2,7 @@
export const select = (code) => {
    return http.request({
        url: '/api/blade-system/region/select',
        url: '/blade-system/region/select',
        method: 'GET',
        params: {
            code
@@ -18,4 +18,4 @@
            parentCode
        }
    })
}
}
common/setting.js
@@ -3,21 +3,19 @@
 */
module.exports = {
    // 应用名,
    name: '荆楚水库',
    name: '饶城格格通',
    // 应用logo,支持本地路径和网络路径
    logo: '/static/images/base.ico',
    // 版本号
    version: '2.0.0',
    // 开发环境接口Url
    // devUrl:'http://z4042833u6.wicp.vip',
    devUrl: 'http://z4042833u6.wicp.vip',
    // devUrl: 'http://192.168.0.106:9528',
    // devUrl: 'https://srgdjczzxtpt.com:2080/api',
    devUrl:'https://kt39592615.goho.co',
    // devUrl:'https://kt39592615.goho.co',
    minioBaseUrl: "https://srgdjczzxtpt.com:2080/gminio/jczz/",
    // minioBaseUrl:"http://192.168.0.103:9528/",
    // minioBaseUrl: 'https://srgdjczzxtpt.com:2080/',
    // 数据中台接口url
    // dataCenterUrl: 'http://10.10.2.192/services',
    dataCenterUrl: 'https://sk.hubeishuiyi.cn/services',
    //洪水预报接口url
    hsybUrl: "https://sk.hubeishuiyi.cn/hsybApi/api/fh-admin",
subPackage/house/member/index.vue
@@ -7,18 +7,18 @@
                        <view class="box-title">
                            <box-title title="基础信息"></box-title>
                        </view>
                        <u-form-item @click="showSelectBus(dataList.roleList, '角色', 'roleTypeName','roleType')" class="form-item"
                            labelWidth="100" label="角色" required prop="roleType">
                            <u--input border="none" v-model="roleTypeName" disabled disabledColor="#ffffff"
                                placeholder="请选择">
                        <u-form-item @click="showSelectBus('角色','roleType')" class="form-item" labelWidth="100"
                            label="角色" required prop="roleType">
                            <u--input border="none" v-model="selectDefaultName.roleType" disabled
                                disabledColor="#ffffff" placeholder="请选择">
                            </u--input>
                            <u-icon slot="right" name="arrow-right"></u-icon>
                        </u-form-item>
                        <u-form-item @click="showSelectBus(dataList.relationshipList, '角色关系', 'relationshipName','relationship')"
                            class="form-item" labelWidth="100" label="角色关系" required prop="relationship">
                            <u--input border="none" v-model="relationshipName" disabled disabledColor="#ffffff"
                                placeholder="请选择">
                        <u-form-item @click="showSelectBus('角色关系','relationship')" class="form-item" labelWidth="100"
                            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>
@@ -29,14 +29,31 @@
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" label="身份证" prop="idCard">
                        <u-form-item @click="showSelectBus('证件类型','cardType')" class="form-item" labelWidth="100"
                            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="selectDefaultIndex.cardType == 0" class="form-item" labelWidth="100"
                            label="身份证号码" prop="idCard">
                            <u--input border="none" v-model="form.idCard" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item @click="showSelectBus(dataList.genderList, '性别', 'genderName','gender')"
                         class="form-item" labelWidth="100" label="性别" prop="gender">
                            <u--input border="none" v-model="genderName" disabled disabledColor="#ffffff"
                        <u-form-item v-if="selectDefaultIndex.cardType == 1" class="form-item" labelWidth="100"
                            label="证件号码" prop="cardNo">
                            <u--input border="none" v-model="form.cardNo" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item @click="showSelectBus('性别','gender')" class="form-item" labelWidth="100" 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>
@@ -52,89 +69,133 @@
                            </u--input>
                        </u-form-item>
                        <u-form-item @click="showSelectBus(dataList.isPrimaryContactList, '是否主要联系人', 'isPrimaryContactName','isPrimaryContact')"
                        class="form-item" labelWidth="110" label="是否主要联系人"
                         prop="isPrimaryContact">
                            <u--input border="none" v-model="isPrimaryContactName" disabled disabledColor="#ffffff"
                                placeholder="请选择">
                        <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(dataList.residentialStatusList, '居住情况', 'residentialStatusName','residentialStatus')"
                        class="form-item" labelWidth="100" label="居住情况"
                            prop="residentialStatus">
                            <u--input border="none" v-model="residentialStatusName" disabled disabledColor="#ffffff"
                                placeholder="请选择">
                        <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="100" label="港澳台通行证"  prop="hkmtPass">
                        <u-form-item class="form-item" labelWidth="100" label="港澳台通行证" prop="hkmtPass">
                            <u--input border="none" v-model="form.hkmtPass" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" label="护照"  prop="passport">
                        <u-form-item class="form-item" labelWidth="100" label="护照" prop="passport">
                            <u--input border="none" v-model="form.passport" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" label="现居住地"  prop="currentAddress">
                        <u-form-item class="form-item" labelWidth="100" label="现居住地" prop="currentAddress">
                            <u--input border="none" v-model="form.currentAddress" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item @click="showSelectBus(dataList.ethnicityList, '民族', 'ethnicityName','ethnicity')"
                        class="form-item" labelWidth="100" label="民族" prop="ethnicity">
                            <u--input border="none" v-model="ethnicityName" disabled disabledColor="#ffffff"
                                placeholder="请选择">
                        <u-form-item @click="showSelectBus('民族','ethnicity')" class="form-item" labelWidth="100"
                            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(dataList.educationList, '学历', 'educationName','education')"
                        class="form-item" labelWidth="100" label="学历" prop="education">
                            <u--input border="none" v-model="educationName" disabled disabledColor="#ffffff"
                                placeholder="请选择">
                        <u-form-item @click="showSelectBus('学历','education')" class="form-item" labelWidth="100"
                            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 @click="showSelectBus(dataList.partyEmberList, '是否党员', 'partyEmberName','partyEmber')"
                        class="form-item" labelWidth="100" label="是否党员" prop="partyEmber">
                            <u--input border="none" v-model="partyEmberName" disabled disabledColor="#ffffff"
                                placeholder="请选择">
                        <u-form-item @click="showSelectBus('是否党员','partyEmber')" class="form-item" labelWidth="100"
                            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="100" label="职业类别" prop="occupation ">
                            <u--input border="none" v-model="form.occupation " placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" label="工作单位" prop="employer">
                            <u--input border="none" v-model="form.employer" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item @click="showSelectBus(dataList.workStatusList, '工作状态', 'workStatusName','workStatus')"
                        class="form-item" labelWidth="100" label="工作状态" prop="workStatus">
                            <u--input border="none" v-model="workStatusName" disabled disabledColor="#ffffff"
                                placeholder="请选择">
                        <u-form-item class="form-item" labelWidth="100" label="工作单位地址" prop="cmpyRegAddr">
                            <u--input border="none" v-model="form.cmpyRegAddr" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item @click="showSelectBus('工作状态','workStatus')" class="form-item" labelWidth="100"
                            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 @click="showSelectBus(dataList.maritalStatusList, '婚姻状态', 'maritalStatusName','maritalStatus')"
                        class="form-item" labelWidth="100" label="婚姻状态" prop="maritalStatus">
                            <u--input border="none" v-model="maritalStatusName" disabled disabledColor="#ffffff"
                                placeholder="请选择">
                        <u-form-item @click="showSelectBus('婚姻状态','maritalStatus')" class="form-item" labelWidth="100"
                            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="100" 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="100"
                            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="100"
                            label="疾病名称" prop="diseaseName">
                            <u--input border="none" v-model="form.diseaseName" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item @click="showSelectBus('户籍类型','residentType')" class="form-item" labelWidth="100"
                            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="100" label="户籍登记地" prop="hukouRegistration">
                            <u--input border="none" v-model="form.hukouRegistration" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" label="外出详址" prop="goOutAddr">
                            <u--input border="none" v-model="form.goOutAddr" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" label="外出去向" prop="goOutWhere">
                            <u--input border="none" v-model="form.goOutWhere" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" 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="100" label="外出原因" prop="goOutReason  ">
                            <u--input border="none" v-model="form.goOutReason" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" label="车牌号" prop="cardNumber">
                            <u--input border="none" v-model="form.cardNumber" placeholder="多个用中划线(-)隔开">
                            </u--input>
@@ -143,6 +204,48 @@
                        <u-form-item class="form-item" labelWidth="100" label="备注" prop="remark">
                            <u--input border="none" v-model="form.remark" placeholder="补充说明">
                            </u--input>
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" label="籍贯地区" prop="nativePlaceAdcode">
                            <view class="region">
                                <picker mode="region" @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 class="form-item" labelWidth="100" label="户籍地区" prop="residentAdcode">
                            <view class="region">
                                <picker mode="region" @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 class="form-item" labelWidth="100" 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" labelWidth="100" label="标签" @click="navTo">
                            <u-icon slot="right" name="arrow-right"></u-icon>
                        </u-form-item>
                    </view>
                </u-form>
@@ -156,16 +259,25 @@
                    <u-button @click="navigator" type="primary" :plain="true" text="返回首页"></u-button>
                </view>
            </view> -->
            <footer-btn   :text="addOrUpdateTitle"   @click="submit"  />
            <footer-btn :text="addOrUpdateTitle" @click="submit" />
        </view>
        <!-- 事件类型下拉框 -->
    <!--     <select-bus v-if="typeShow" :show="typeShow" v-model="form[selectBusModel]" type="radio"
        <!--     <select-bus v-if="typeShow" :show="typeShow" v-model="form[selectBusModel]" type="radio"
            :popupTitle="selectBusTitle" :dataLists="selectBusList" @cancel="typeShow = false" @submit="typeSelect">
        </select-bus> -->
        <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-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 ref="datetimePicker" :show="showSelectDate" v-model="patrolTime" mode="date"
            :formatter="formatter" @confirm="confirmDate" @cancel="showSelectDate = false"></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>
    </view>
</template>
@@ -173,11 +285,18 @@
    import selectBus from "@/components/my-components/selectBus.vue"
    import uploadMixin from "@/mixin/uploadMixin";
    import {
        saveOrUpdateHousehold,removeHousehold
        getHouseholdDetail,
        saveOrUpdateHousehold,
        removeHousehold
    } from '@/api/house/household.js'
    import {
        bizDictionary
    } from '@/api/system/dict.js'
    import {
        select
    } from "@/api/system/region.js"
    import boxTitle from '../components/boxTitle/index2.vue'
    export default {
        components: {
@@ -187,8 +306,8 @@
        mixins: [uploadMixin],
        data() {
            return {
                addOrUpdateTitle:"添加",
                houseCode:"",
                addOrUpdateTitle: "添加",
                houseCode: "",
                form: {
                    roleName: "",
                    relationName: '',
@@ -210,10 +329,9 @@
                typeShow: false,
                roleName: "",
                dataList: {
                    roleList: [],
                    relationshipList: [],
                    genderList:[
                        {
                    roleType: [],
                    relationship: [],
                    gender: [{
                            value: 1,
                            name: '男',
                        },
@@ -226,8 +344,7 @@
                            name: '未知',
                        }
                    ],
                    isPrimaryContactList:[
                        {
                    isPrimaryContact: [{
                            value: 1,
                            name: '是',
                        },
@@ -236,8 +353,7 @@
                            name: '否',
                        }
                    ],
                    residentialStatusList:[
                        {
                    residentialStatus: [{
                            value: 1,
                            name: '是',
                        },
@@ -246,14 +362,9 @@
                            name: '否',
                        }
                    ],
                    ethnicityList:[
                    ],
                    educationList:[
                    ],
                    partyEmberList:[
                        {
                    ethnicity: [],
                    education: [],
                    partyEmber: [{
                            value: 1,
                            name: '是',
                        },
@@ -262,17 +373,16 @@
                            name: '否',
                        }
                    ],
                    workStatusList:[
                    ],
                    maritalStatusList:[
                    ]
                    workStatus: [],
                    maritalStatus: [],
                    residentType: [],
                    healthStatus: [],
                    cardType: []
                },
                roleTypeName: '',
                relationshipName: '',
                genderName: '',
                residentialStatusName:"",
                residentialStatusName: "",
                isPrimaryContactName: '',
                ethnicityName: '',
                educationName: '',
@@ -284,115 +394,208 @@
                selectBusVal: '',
                selectBusTitle: '',
                selectBusModel: '',
                selectBusKey:"",
                selectDefaultIndex:{
                    roleType:0,
                    relationship:0,
                    gender:0,
                    isPrimaryContact:0,
                    ethnicity:0,
                    education:0,
                    partyEmber:0,
                    workStatus:0,
                    maritalStatus:0
                }
                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
                },
                selectDefaultName: {
                    roleType: "",
                    relationship: "",
                    gender: "",
                    isPrimaryContact: "",
                    ethnicity: "",
                    education: "",
                    partyEmber: "",
                    workStatus: "",
                    maritalStatus: "",
                    cardType: "身份证",
                    healthStatus: "",
                    residentType: ""
                },
                showSelectDate: false,
                regionList: [],
                nativePlace: "", //籍贯
                residentad: "", //户籍
                homeRegion: "", //居住地
                homeIndex: 0,
                showRegion: false,
                navtivePlaceDefault: [],
                residentadDefault: []
            }
        },
        created() {
            this.getHeader()
        },
        mounted() {
        },
        onLoad(option) {
            const data = JSON.parse(option.data)
            console.log("data==>", data)
            this.houseCode = data.houseCode
            if(data.type == 1){
            this.getRegionList()
            if (data.type == 1) {
                this.addOrUpdateTitle = "保存"
                this.getAllBizDict()
            }
            if(data.type == 2){
            if (data.type == 2) {
                this.addOrUpdateTitle = "修改"
                this.getHouseholdInfo(data)
            }
        },
        onShow() {
        },
        methods: {
            async getAllBizDict(){
            //选择籍贯
            changeNativeRegion(e) {
                console.log(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;
                    }
                })
            },
            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;
            },
            async getAllBizDict() {
                // 获取角色关系字典
                await this.getBizDict('roleRelation',this.dataList.relationshipList)
                await this.getBizDict('roleRelation', this.dataList.relationship)
                // 获取角色字典
                await this.getBizDict('roleType',this.dataList.roleList)
                await this.getBizDict('roleType', this.dataList.roleType)
                // 获取民族字典
                await this.getBizDict('nationType',this.dataList.ethnicityList)
                await this.getBizDict('nationType', this.dataList.ethnicity)
                // 获取学历字典
                await this.getBizDict('educationType',this.dataList.educationList)
                await this.getBizDict('educationType', this.dataList.education)
                // 获取工作状态字典
                await this.getBizDict('workStatusType',this.dataList.workStatusList)
                await this.getBizDict('workStatusType', this.dataList.workStatus)
                // 获取婚姻状态字典
                await this.getBizDict('marriageStatusType',this.dataList.maritalStatusList)
                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){
            async getBizDict(code, list) {
                const param = {
                    code: code
                }
                const res = await bizDictionary(param)
                res.data.forEach(e=>{
                res.data.forEach(e => {
                    list.push({
                        name:e.dictValue,
                        value:Number(e.dictKey)
                        name: e.dictValue,
                        value: Number(e.dictKey)
                    })
                })
            },
            // 获取住户信息
            async getHouseholdInfo(data){
            async getHouseholdInfo(data) {
                // 获取所有字典
                await this.getAllBizDict()
                this.form = data
                // this.roleTypeName = this.findObjValue(data.roleType, this.dataList.roleList)
                // this.relationshipName = this.findObjValue(data.relationship, this.dataList.relationshipList)
                // this.genderName = this.findObjValue(data.gender, this.dataList.genderList)
                // this.isPrimaryContactName = this.findObjValue(data.isPrimaryContact, this.dataList.isPrimaryContactList)
                // this.ethnicityName = this.findObjValue(data.ethnicity, this.dataList.ethnicityList)
                // this.educationName = this.findObjValue(data.education, this.dataList.educationList)
                // this.partyEmberName = this.findObjValue(data.partyEmber, this.dataList.partyEmberList)
                // this.workStatusName = this.findObjValue(data.workStatus, this.dataList.workStatusList)
                // this.maritalStatusName = this.findObjValue(data.maritalStatus, this.dataList.maritalStatusList)
                this.roleTypeName = this.findObjValue(data.roleType, this.dataList.roleList).name
                this.selectDefaultIndex.roleType = this.findObjValue(data.roleType, this.dataList.roleList).index;
                this.relationshipName = this.findObjValue(data.relationship, this.dataList.relationshipList).name;
                this.selectDefaultIndex.relationship =  this.findObjValue(data.relationship, this.dataList.relationshipList).index;
                this.genderName = this.findObjValue(data.gender, this.dataList.genderList).name;
                this.selectDefaultIndex.gender = this.findObjValue(data.gender, this.dataList.genderList).index;
                this.isPrimaryContactName = this.findObjValue(data.isPrimaryContact, this.dataList.isPrimaryContactList).name;
                this.selectDefaultIndex.isPrimaryContact = this.findObjValue(data.isPrimaryContact, this.dataList.isPrimaryContactList).index;
                this.ethnicityName = this.findObjValue(data.ethnicity, this.dataList.ethnicityList).name;
                this.selectDefaultIndex.ethnicity = this.findObjValue(data.ethnicity, this.dataList.ethnicityList).index;
                this.educationName = this.findObjValue(data.education, this.dataList.educationList).name;
                this.selectDefaultIndex.education = this.findObjValue(data.education, this.dataList.educationList).index;
                this.partyEmberName = this.findObjValue(data.partyEmber, this.dataList.partyEmberList).name;
                this.selectDefaultIndex.partyEmber = this.findObjValue(data.partyEmber, this.dataList.partyEmberList).index;
                this.workStatusName = this.findObjValue(data.workStatus, this.dataList.workStatusList).name;
                this.selectDefaultIndex.workStatus = this.findObjValue(data.workStatus, this.dataList.workStatusList).index;
                this.maritalStatusName = this.findObjValue(data.maritalStatus, this.dataList.maritalStatusList).name;
                this.selectDefaultIndex.maritalStatus = this.findObjValue(data.maritalStatus, this.dataList.maritalStatusList).index;
                // this.form = data
                getHouseholdDetail({
                    id: data.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;
                            this.selectDefaultName[i] = name;
                        }
                        if (data.idCard && !data.cardType) {
                            this.$set(this.form, "cardType", this.dataList.cardType[0].dictKey)
                            this.$set(this.selectDefaultIndex, "cardType", 0)
                            this.$set(this.selectDefaultName, "cardType", "身份证")
                        }
                        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;
                        }
                    }
                })
            },
            // 显示选择弹框
            showSelectBus(data, title, model, key) {
                this.selectBusList = data
            showSelectBus(title, key) {
                this.selectBusList = this.dataList[key]
                this.selectBusTitle = title
                this.selectBusModel = model
                // this.selectBusModel = model
                this.selectBusKey = key
                this.typeShow = true
            },
            //类型选择确认
            typeSelect(item) {
                const [ result ] = item.value
                this[this.selectBusModel] = result.name
                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
            },
@@ -406,25 +609,35 @@
            async saveOrUpdate() {
                this.form['houseCode'] = this.houseCode
                // 字典解析
                const roleTypeIndex = this.dataList.roleList.findIndex(item => item.name === this.roleTypeName)
                const relationshipIndex = this.dataList.relationshipList.findIndex(item => item.name === this.relationshipName)
                const genderIndex = this.dataList.genderList.findIndex(item => item.name === this.genderName)
                const isPrimaryContactIndex = this.dataList.isPrimaryContactList.findIndex(item => item.name === this.isPrimaryContactName)
                const ethnicityIndex = this.dataList.ethnicityList.findIndex(item => item.name === this.ethnicityName)
                const educationIndex = this.dataList.educationList.findIndex(item => item.name === this.educationName)
                const partyEmberIndex = this.dataList.partyEmberList.findIndex(item => item.name === this.partyEmberName)
                const workStatusIndex = this.dataList.workStatusList.findIndex(item => item.name === this.workStatusName)
                const maritalStatusIndex = this.dataList.maritalStatusList.findIndex(item => item.name === this.maritalStatusName)
                this.form['roleType'] = roleTypeIndex >=0 ? this.dataList.roleList[roleTypeIndex].value : ""
                this.form['relationship'] = relationshipIndex >=0 ? this.dataList.relationshipList[relationshipIndex].value: ""
                this.form['gender'] = genderIndex >=0 ?this.dataList.genderList[genderIndex].value: ""
                this.form['isPrimaryContact'] = isPrimaryContactIndex >=0 ?this.dataList.isPrimaryContactList[isPrimaryContactIndex].value: ""
                this.form['ethnicity'] = ethnicityIndex >=0 ?this.dataList.ethnicityList[ethnicityIndex].value: ""
                this.form['education'] = educationIndex >=0 ?this.dataList.educationList[educationIndex].value: ""
                this.form['partyEmber'] = partyEmberIndex >=0 ?this.dataList.partyEmberList[partyEmberIndex].value:""
                this.form['workStatus'] = workStatusIndex >=0 ?this.dataList.workStatusList[workStatusIndex].value:""
                this.form['maritalStatus'] = maritalStatusIndex >=0 ?this.dataList.maritalStatusList[maritalStatusIndex].value:""
                // const roleTypeIndex = this.dataList.roleList.findIndex(item => item.name === this.roleTypeName)
                // const relationshipIndex = this.dataList.relationshipList.findIndex(item => item.name === this
                //     .relationshipName)
                // const genderIndex = this.dataList.genderList.findIndex(item => item.name === this.genderName)
                // const isPrimaryContactIndex = this.dataList.isPrimaryContactList.findIndex(item => item.name === this
                //     .isPrimaryContactName)
                // const ethnicityIndex = this.dataList.ethnicityList.findIndex(item => item.name === this.ethnicityName)
                // const educationIndex = this.dataList.educationList.findIndex(item => item.name === this.educationName)
                // const partyEmberIndex = this.dataList.partyEmberList.findIndex(item => item.name === this
                //     .partyEmberName)
                // const workStatusIndex = this.dataList.workStatusList.findIndex(item => item.name === this
                //     .workStatusName)
                // const maritalStatusIndex = this.dataList.maritalStatusList.findIndex(item => item.name === this
                //     .maritalStatusName)
                // this.form['roleType'] = roleTypeIndex >= 0 ? this.dataList.roleList[roleTypeIndex].value : ""
                // this.form['relationship'] = relationshipIndex >= 0 ? this.dataList.relationshipList[relationshipIndex]
                //     .value : ""
                // this.form['gender'] = genderIndex >= 0 ? this.dataList.genderList[genderIndex].value : ""
                // this.form['isPrimaryContact'] = isPrimaryContactIndex >= 0 ? this.dataList.isPrimaryContactList[
                //     isPrimaryContactIndex].value : ""
                // this.form['ethnicity'] = ethnicityIndex >= 0 ? this.dataList.ethnicityList[ethnicityIndex].value : ""
                // this.form['education'] = educationIndex >= 0 ? this.dataList.educationList[educationIndex].value : ""
                // this.form['partyEmber'] = partyEmberIndex >= 0 ? this.dataList.partyEmberList[partyEmberIndex].value :
                //     ""
                // this.form['workStatus'] = workStatusIndex >= 0 ? this.dataList.workStatusList[workStatusIndex].value :
                //     ""
                // this.form['maritalStatus'] = maritalStatusIndex >= 0 ? this.dataList.maritalStatusList[
                //     maritalStatusIndex].value : ""
                const res = await saveOrUpdateHousehold(this.form)
                if (res.code !== 200) {
@@ -446,20 +659,19 @@
                    }
                })
            },
            findObjValue(value, obj) {
                // if(value){
                //     const res = obj.find(item => {
                //         return item.value == value
                //     })
                //     return res.name
                // }
                // return ""
            confirmDate(e) {
                this.showSelectDate = false;
                this.form.goOutTime = uni.$u.timeFormat(e.value, 'yyyy-mm-dd')
            },
            findObjValue(value, obj, key = "value") {
                let data = {
                    index: "",
                    name:""
                    name: ""
                }
                for(let i =0,ii = obj.length;i<ii;i++){
                    if(value == obj[i].value){
                for (let i = 0, ii = obj.length; i < ii; i++) {
                    if (value == obj[i][key]) {
                        data.index = i;
                        data.name = obj[i].name;
                    }
@@ -470,6 +682,12 @@
            navigator() {
                this.$u.func.globalNavigator("/subPackage/bs/views/bsList")
            },
            navTo() {
                let data = JSON.parse(JSON.stringify(this.form));
                this.$u.func.globalNavigator(
                    `/subPackage/bs/views/bsList?data=${JSON.stringify(data)}`)
            }
        }
    }
</script>
@@ -482,8 +700,8 @@
        display: flex;
        flex-direction: column;
        background: #F5F5F5;
        .main {
            // position: relative;
            // flex: 1;
@@ -520,6 +738,7 @@
            margin: 20rpx 30rpx;
            padding: 30rpx;
            border-radius: 8rpx;
            /deep/ .u-form-item {
                background-color: #ffffff;
                padding: 5px 20px;
@@ -534,4 +753,23 @@
        }
    }
    .region {
        width: 100%;
        height: 100%;
        .region-picker {
            width: 100%;
            heght: 100%;
        }
        .c-c0 {
            color: #c0c4cc
        }
        .c-30 {
            color: #303133;
        }
    }
</style>
subPackage/house/member/index02.vue
New file
@@ -0,0 +1,563 @@
<template>
    <view class="container">
        <view class="main">
            <view class="content">
                <u-form labelWidth="70" :model="form" :rules="rules" ref="form">
                    <view class="event-info">
                        <view class="box-title">
                            <box-title title="基础信息"></box-title>
                        </view>
                        <u-form-item @click="showSelectBus(dataList.roleList, '角色', 'roleTypeName','roleType')"
                            class="form-item" labelWidth="100" label="角色" required prop="roleType">
                            <u--input border="none" v-model="roleTypeName" disabled disabledColor="#ffffff"
                                placeholder="请选择">
                            </u--input>
                            <u-icon slot="right" name="arrow-right"></u-icon>
                        </u-form-item>
                        <u-form-item
                            @click="showSelectBus(dataList.relationshipList, '角色关系', 'relationshipName','relationship')"
                            class="form-item" labelWidth="100" label="角色关系" required prop="relationship">
                            <u--input border="none" v-model="relationshipName" 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="100" label="姓名" required prop="name">
                            <u--input border="none" v-model="form.name" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" label="身份证" prop="idCard">
                            <u--input border="none" v-model="form.idCard" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item @click="showSelectBus(dataList.genderList, '性别', 'genderName','gender')"
                            class="form-item" labelWidth="100" label="性别" prop="gender">
                            <u--input border="none" v-model="genderName" 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="100" label="手机号码" prop="phoneNumber">
                            <u--input border="none" v-model="form.phoneNumber" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" label="其他联系方式" prop="otherContact">
                            <u--input border="none" v-model="form.otherContact" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item
                            @click="showSelectBus(dataList.isPrimaryContactList, '是否主要联系人', 'isPrimaryContactName','isPrimaryContact')"
                            class="form-item" labelWidth="110" label="是否主要联系人" prop="isPrimaryContact">
                            <u--input border="none" v-model="isPrimaryContactName" disabled disabledColor="#ffffff"
                                placeholder="请选择">
                            </u--input>
                            <u-icon slot="right" name="arrow-right"></u-icon>
                        </u-form-item>
                        <u-form-item
                            @click="showSelectBus(dataList.residentialStatusList, '居住情况', 'residentialStatusName','residentialStatus')"
                            class="form-item" labelWidth="100" label="居住情况" prop="residentialStatus">
                            <u--input border="none" v-model="residentialStatusName" 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="100" label="港澳台通行证" prop="hkmtPass">
                            <u--input border="none" v-model="form.hkmtPass" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" label="护照" prop="passport">
                            <u--input border="none" v-model="form.passport" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" label="现居住地" prop="currentAddress">
                            <u--input border="none" v-model="form.currentAddress" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item @click="showSelectBus(dataList.ethnicityList, '民族', 'ethnicityName','ethnicity')"
                            class="form-item" labelWidth="100" label="民族" prop="ethnicity">
                            <u--input border="none" v-model="ethnicityName" disabled disabledColor="#ffffff"
                                placeholder="请选择">
                            </u--input>
                            <u-icon slot="right" name="arrow-right"></u-icon>
                        </u-form-item>
                        <u-form-item @click="showSelectBus(dataList.educationList, '学历', 'educationName','education')"
                            class="form-item" labelWidth="100" label="学历" prop="education">
                            <u--input border="none" v-model="educationName" disabled disabledColor="#ffffff"
                                placeholder="请选择">
                            </u--input>
                            <u-icon slot="right" name="arrow-right"></u-icon>
                        </u-form-item>
                        <u-form-item
                            @click="showSelectBus(dataList.partyEmberList, '是否党员', 'partyEmberName','partyEmber')"
                            class="form-item" labelWidth="100" label="是否党员" prop="partyEmber">
                            <u--input border="none" v-model="partyEmberName" 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="100" label="工作单位" prop="employer">
                            <u--input border="none" v-model="form.employer" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item
                            @click="showSelectBus(dataList.workStatusList, '工作状态', 'workStatusName','workStatus')"
                            class="form-item" labelWidth="100" label="工作状态" prop="workStatus">
                            <u--input border="none" v-model="workStatusName" disabled disabledColor="#ffffff"
                                placeholder="请选择">
                            </u--input>
                            <u-icon slot="right" name="arrow-right"></u-icon>
                        </u-form-item>
                        <u-form-item
                            @click="showSelectBus(dataList.maritalStatusList, '婚姻状态', 'maritalStatusName','maritalStatus')"
                            class="form-item" labelWidth="100" label="婚姻状态" prop="maritalStatus">
                            <u--input border="none" v-model="maritalStatusName" 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="100" label="户籍登记地" prop="hukouRegistration">
                            <u--input border="none" v-model="form.hukouRegistration" placeholder="请输入">
                            </u--input>
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" label="车牌号" prop="cardNumber">
                            <u--input border="none" v-model="form.cardNumber" placeholder="多个用中划线(-)隔开">
                            </u--input>
                        </u-form-item>
                        <u-form-item class="form-item" labelWidth="100" label="备注" prop="remark">
                            <u--input border="none" v-model="form.remark" placeholder="补充说明">
                            </u--input>
                        </u-form-item>
                    </view>
                </u-form>
            </view>
            <!-- <view class="btn-group b-c-w">
                <view>
                    <u-button @click="submit" type="primary" :text="addOrUpdateTitle" width="120px"></u-button>
                </view>
                <view>
                    <u-button @click="navigator" type="primary" :plain="true" text="返回首页"></u-button>
                </view>
            </view> -->
            <footer-btn :text="addOrUpdateTitle" @click="submit" />
        </view>
        <!-- 事件类型下拉框 -->
        <!--     <select-bus v-if="typeShow" :show="typeShow" v-model="form[selectBusModel]" type="radio"
            :popupTitle="selectBusTitle" :dataLists="selectBusList" @cancel="typeShow = false" @submit="typeSelect">
        </select-bus> -->
        <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>
    </view>
</template>
<script>
    import selectBus from "@/components/my-components/selectBus.vue"
    import uploadMixin from "@/mixin/uploadMixin";
    import {
        saveOrUpdateHousehold,
        removeHousehold
    } from '@/api/house/household.js'
    import {
        bizDictionary
    } from '@/api/system/dict.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: {
                    // roleType: [{
                    //     required: true,
                    //     message: '请选择角色'
                    // }],
                    name: [{
                        required: true,
                        message: '请填写姓名'
                    }],
                },
                typeShow: false,
                roleName: "",
                dataList: {
                    roleList: [],
                    relationshipList: [],
                    genderList: [{
                            value: 1,
                            name: '男',
                        },
                        {
                            value: 0,
                            name: '女',
                        },
                        {
                            value: 2,
                            name: '未知',
                        }
                    ],
                    isPrimaryContactList: [{
                            value: 1,
                            name: '是',
                        },
                        {
                            value: 0,
                            name: '否',
                        }
                    ],
                    residentialStatusList: [{
                            value: 1,
                            name: '是',
                        },
                        {
                            value: 0,
                            name: '否',
                        }
                    ],
                    ethnicityList: [],
                    educationList: [],
                    partyEmberList: [{
                            value: 1,
                            name: '是',
                        },
                        {
                            value: 2,
                            name: '否',
                        }
                    ],
                    workStatusList: [],
                    maritalStatusList: [],
                    residentTypeList: [],
                    healthStatusList: [],
                    cardTypeList: []
                },
                roleTypeName: '',
                relationshipName: '',
                genderName: '',
                residentialStatusName: "",
                isPrimaryContactName: '',
                ethnicityName: '',
                educationName: '',
                partyEmberName: '',
                workStatusName: '',
                maritalStatusName: '',
                // 下拉变量
                selectBusList: [],
                selectBusVal: '',
                selectBusTitle: '',
                selectBusModel: '',
                selectBusKey: "",
                selectDefaultIndex: {
                    roleType: 0,
                    relationship: 0,
                    gender: 0,
                    isPrimaryContact: 0,
                    ethnicity: 0,
                    education: 0,
                    partyEmber: 0,
                    workStatus: 0,
                    maritalStatus: 0
                }
            }
        },
        created() {
            this.getHeader()
        },
        onLoad(option) {
            const data = JSON.parse(option.data)
            this.houseCode = data.houseCode
            if (data.type == 1) {
                this.addOrUpdateTitle = "保存"
                this.getAllBizDict()
            }
            if (data.type == 2) {
                this.addOrUpdateTitle = "修改"
                this.getHouseholdInfo(data)
            }
        },
        methods: {
            async getAllBizDict() {
                // 获取角色关系字典
                await this.getBizDict('roleRelation', this.dataList.relationshipList)
                // 获取角色字典
                await this.getBizDict('roleType', this.dataList.roleList)
                // 获取民族字典
                await this.getBizDict('nationType', this.dataList.ethnicityList)
                // 获取学历字典
                await this.getBizDict('educationType', this.dataList.educationList)
                // 获取工作状态字典
                await this.getBizDict('workStatusType', this.dataList.workStatusList)
                // 获取婚姻状态字典
                await this.getBizDict('marriageStatusType', this.dataList.maritalStatusList)
                // 户籍类别的字典
                await this.getBizDict('residentType', this.dataList.residentTypeList)
                // 健康状况的字典
                await this.getBizDict('healthStatus', this.dataList.healthStatusList)
                //证件类型字典
                await this.getBizDict('cardType', this.dataList.cardTypeList)
            },
            // 获取业务字典
            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(data) {
                // 获取所有字典
                await this.getAllBizDict()
                this.form = data
                // this.roleTypeName = this.findObjValue(data.roleType, this.dataList.roleList)
                // this.relationshipName = this.findObjValue(data.relationship, this.dataList.relationshipList)
                // this.genderName = this.findObjValue(data.gender, this.dataList.genderList)
                // this.isPrimaryContactName = this.findObjValue(data.isPrimaryContact, this.dataList.isPrimaryContactList)
                // this.ethnicityName = this.findObjValue(data.ethnicity, this.dataList.ethnicityList)
                // this.educationName = this.findObjValue(data.education, this.dataList.educationList)
                // this.partyEmberName = this.findObjValue(data.partyEmber, this.dataList.partyEmberList)
                // this.workStatusName = this.findObjValue(data.workStatus, this.dataList.workStatusList)
                // this.maritalStatusName = this.findObjValue(data.maritalStatus, this.dataList.maritalStatusList)
                for (let i of data) {
                }
                this.roleTypeName = this.findObjValue(data.roleType, this.dataList.roleList).name
                this.selectDefaultIndex.roleType = this.findObjValue(data.roleType, this.dataList.roleList).index;
                this.relationshipName = this.findObjValue(data.relationship, this.dataList.relationshipList).name;
                this.selectDefaultIndex.relationship = this.findObjValue(data.relationship, this.dataList
                    .relationshipList).index;
                this.genderName = this.findObjValue(data.gender, this.dataList.genderList).name;
                this.selectDefaultIndex.gender = this.findObjValue(data.gender, this.dataList.genderList).index;
                this.isPrimaryContactName = this.findObjValue(data.isPrimaryContact, this.dataList
                    .isPrimaryContactList).name;
                this.selectDefaultIndex.isPrimaryContact = this.findObjValue(data.isPrimaryContact, this.dataList
                    .isPrimaryContactList).index;
                this.ethnicityName = this.findObjValue(data.ethnicity, this.dataList.ethnicityList).name;
                this.selectDefaultIndex.ethnicity = this.findObjValue(data.ethnicity, this.dataList.ethnicityList)
                    .index;
                this.educationName = this.findObjValue(data.education, this.dataList.educationList).name;
                this.selectDefaultIndex.education = this.findObjValue(data.education, this.dataList.educationList)
                    .index;
                this.partyEmberName = this.findObjValue(data.partyEmber, this.dataList.partyEmberList).name;
                this.selectDefaultIndex.partyEmber = this.findObjValue(data.partyEmber, this.dataList.partyEmberList)
                    .index;
                this.workStatusName = this.findObjValue(data.workStatus, this.dataList.workStatusList).name;
                this.selectDefaultIndex.workStatus = this.findObjValue(data.workStatus, this.dataList.workStatusList)
                    .index;
                this.maritalStatusName = this.findObjValue(data.maritalStatus, this.dataList.maritalStatusList).name;
                this.selectDefaultIndex.maritalStatus = this.findObjValue(data.maritalStatus, this.dataList
                    .maritalStatusList).index;
            },
            // 显示选择弹框
            showSelectBus(data, title, model, key) {
                this.selectBusList = data
                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.selectDefaultIndex[this.selectBusKey] = item.indexs[0];
                this.typeShow = !this.typeShow
            },
            //表单提交
            submit() {
                this.$refs.form.validate().then(res => {
                    this.saveOrUpdate();
                })
            },
            // 新增更新操作
            async saveOrUpdate() {
                this.form['houseCode'] = this.houseCode
                // 字典解析
                const roleTypeIndex = this.dataList.roleList.findIndex(item => item.name === this.roleTypeName)
                const relationshipIndex = this.dataList.relationshipList.findIndex(item => item.name === this
                    .relationshipName)
                const genderIndex = this.dataList.genderList.findIndex(item => item.name === this.genderName)
                const isPrimaryContactIndex = this.dataList.isPrimaryContactList.findIndex(item => item.name === this
                    .isPrimaryContactName)
                const ethnicityIndex = this.dataList.ethnicityList.findIndex(item => item.name === this.ethnicityName)
                const educationIndex = this.dataList.educationList.findIndex(item => item.name === this.educationName)
                const partyEmberIndex = this.dataList.partyEmberList.findIndex(item => item.name === this
                    .partyEmberName)
                const workStatusIndex = this.dataList.workStatusList.findIndex(item => item.name === this
                    .workStatusName)
                const maritalStatusIndex = this.dataList.maritalStatusList.findIndex(item => item.name === this
                    .maritalStatusName)
                this.form['roleType'] = roleTypeIndex >= 0 ? this.dataList.roleList[roleTypeIndex].value : ""
                this.form['relationship'] = relationshipIndex >= 0 ? this.dataList.relationshipList[relationshipIndex]
                    .value : ""
                this.form['gender'] = genderIndex >= 0 ? this.dataList.genderList[genderIndex].value : ""
                this.form['isPrimaryContact'] = isPrimaryContactIndex >= 0 ? this.dataList.isPrimaryContactList[
                    isPrimaryContactIndex].value : ""
                this.form['ethnicity'] = ethnicityIndex >= 0 ? this.dataList.ethnicityList[ethnicityIndex].value : ""
                this.form['education'] = educationIndex >= 0 ? this.dataList.educationList[educationIndex].value : ""
                this.form['partyEmber'] = partyEmberIndex >= 0 ? this.dataList.partyEmberList[partyEmberIndex].value :
                    ""
                this.form['workStatus'] = workStatusIndex >= 0 ? this.dataList.workStatusList[workStatusIndex].value :
                    ""
                this.form['maritalStatus'] = maritalStatusIndex >= 0 ? this.dataList.maritalStatusList[
                    maritalStatusIndex].value : ""
                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)
                    }
                })
            },
            findObjValue(value, obj) {
                // if(value){
                //     const res = obj.find(item => {
                //         return item.value == value
                //     })
                //     return res.name
                // }
                // return ""
                let data = {
                    index: "",
                    name: ""
                }
                for (let i = 0, ii = obj.length; i < ii; i++) {
                    if (value == obj[i].value) {
                        data.index = i;
                        data.name = obj[i].name;
                    }
                }
                return data;
            },
            // 跳转到首页
            navigator() {
                this.$u.func.globalNavigator("/subPackage/bs/views/bsList")
            },
        }
    }
</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-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;
            }
        }
        .event-pic {
            background-color: #ffffff;
            padding: 40rpx 30rpx;
        }
    }
</style>
subPackage/workbench/views/cscj.vue
@@ -121,6 +121,10 @@
                </view>
                <lineItem :dataInfo="comprehensiveData.basic">
                </lineItem>
                <!-- <view class="bgc-ff flex j-c-s-b a-i-c" @click="navTo(1)" style="padding:20rpx;">
                    <text>历史事件</text>
                    <u-icon name="arrow-right"></u-icon>
                </view> -->
                <lineItem :dataInfo="comprehensiveData.scene">
                    <template v-slot:pic="{scope}">
@@ -151,6 +155,10 @@
                </view>
                <lineItem :dataInfo="publicData.basic">
                </lineItem>
                <!-- <view class="bgc-ff flex j-c-s-b a-i-c" @click="navTo(2)" style="padding:20rpx;">
                    <text>历史事件</text>
                    <u-icon name="arrow-right"></u-icon>
                </view> -->
                <lineItem :dataInfo="publicData.scene">
                    <template v-slot:pic="{scope}">
@@ -312,10 +320,10 @@
                            name: 'createTime',
                            value: "未完善"
                        },
                        {
                            label: "历史事件",
                            value: "未完善",
                        }
                        // {
                        //     label: "历史事件",
                        //     value: "未完善",
                        // }
                    ],
                },
                publicData: {
@@ -366,10 +374,10 @@
                        //     label: "采集时间",
                        //     value: "未完善",
                        // },
                        {
                            label: "历史事件",
                            value: "未完善",
                        }
                        // {
                        //     label: "历史事件",
                        //     value: "未完善",
                        // }
                    ],
                },
@@ -386,7 +394,8 @@
                categoryIndex: [],
                firstId: "",
                secondId: "",
                categoryValue: ""
                categoryValue: "",
                houseCode: ""
            }
        },
        created() {
@@ -487,6 +496,18 @@
            //     })
            // },
            navTo(type) {
                if (type == 1) {
                    uni.navigateTo({
                        url: `/subPackage/workbench/views/report?code=${this.houseCode}`
                    })
                } else {
                    uni.navigateTo({
                        url: `/subPackage/workbench/views/audit?code=${this.houseCode}`
                    })
                }
            },
            //获取分类
            getCategory(level = 2, id) {
                let params = {
@@ -578,6 +599,7 @@
                        })
                        return
                    }
                    this.houseCode = data.houseCode;
                    const dpaEntity = data?.doorplateAddressEntity || {}
                    const gridEntity = data?.grid || {}
                    // this.form.buildingCode = dpaEntity?.buildingCode || ''
@@ -662,6 +684,8 @@
                            })
                            this.form.imageUrls = urls.join(",")
                        }
                        this.form.roleName = uni.getStorageSync("activeRole").roleName;
                        add(this.form).then(res => {
                            uni.showToast({
                                icon: 'success',
subPackage/workbench/views/editExamine.vue
@@ -8,6 +8,10 @@
                        <u--input border="none" v-model="form.location" placeholder="请选择场所位置"></u--input>
                        <u-icon slot="right" name="arrow-right"></u-icon>
                    </u-form-item>
                    <u-form-item label="经纬度" required class="form-item">
                        <u--input border="none" v-model="jwd" placeholder="请选择场所位置" disabled
                            disabledColor="#ffffff"></u--input>
                    </u-form-item>
                    <u-form-item label="场所名称" required class="form-item" prop="placeName">
                        <u--input border="none" v-model="form.placeName" placeholder="请填写场所名称"></u--input>
                    </u-form-item>
@@ -23,9 +27,9 @@
                <box-title title="营业执照"></box-title>
                <view class="upload-img">
                    <u-upload :fileList="form.imageUrls" :previewFullImage="uploadConfig.previewFullImage"
                        :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple"
                        uploadIcon="/static/icon/upload.png"
                        :maxCount="uploadConfig.maxCount" :capture="uploadConfig.capture" @afterRead="afterReadImg($event,'imageUrls')"
                        :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple"
                        uploadIcon="/static/icon/upload.png" :maxCount="uploadConfig.maxCount"
                        :capture="uploadConfig.capture" @afterRead="afterReadImg($event,'imageUrls')"
                        @delete="deletePic($event,'imageUrls')">
                    </u-upload>
                </view>
@@ -34,9 +38,9 @@
                <box-title title="场所平面图"></box-title>
                <view class="upload-img">
                    <u-upload :fileList="form.planImageUrls" :previewFullImage="uploadConfig.previewFullImage"
                        :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple"
                        uploadIcon="/static/icon/upload.png"
                        :maxCount="uploadConfig.maxCount" :capture="uploadConfig.capture" @afterRead="afterReadImg($event,'planImageUrls')"
                        :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple"
                        uploadIcon="/static/icon/upload.png" :maxCount="uploadConfig.maxCount"
                        :capture="uploadConfig.capture" @afterRead="afterReadImg($event,'planImageUrls')"
                        @delete="deletePic($event,'planImageUrls')">
                    </u-upload>
                </view>
@@ -73,7 +77,9 @@
    import uploadMixin from "@/mixin/uploadMixin";
    import boxTitle from "@/subPackage/workbench/components/boxTitle/index.vue"
    import formItem from '../components/formItem.vue'
    import { minioBaseUrl } from '@/common/setting'
    import {
        minioBaseUrl
    } from '@/common/setting'
    export default {
        mixins: [uploadMixin],
        components: {
@@ -111,6 +117,7 @@
                },
                personNum: 1,
                curSelectSite: {},
                jwd: ""
            }
        },
        onShow() {
@@ -125,11 +132,16 @@
        methods: {
            getLocation() {
                uni.chooseLocation({
                    success: (addressResult) => {
                    success: (res) => {
                        const {
                            address
                        } = addressResult
                            address,
                            latitude,
                            longitude
                        } = res
                        this.form.location = address
                        this.form.lat = latitude;
                        this.form.lng = longitude;
                        this.jwd = `${Number(longitude).toFixed(6)},${Number(data.latitude).toFixed(6)}`
                    }
                })
            },
@@ -148,6 +160,11 @@
                        })
                        return
                    }
                    if (data.lat) {
                        this.jwd = `${Number(data.lng).toFixed(6)},${Number(data.lat).toFixed(6)}`
                    }
                    const placePractitioner = data?.placePractitioner || []
                    // Object.keys(this.form).forEach(key => {
                    //     this.form[key] = data[key]
@@ -164,22 +181,22 @@
                    //         }
                    //     }
                    // })
                    for(let i in this.form){
                        if(i === 'imageUrls' || i === 'planImageUrls'){
                            if(this.form[i]){
                                if(data[i]){
                                    this.form[i] = this.setImageUrl(i,data[i].split('、'))
                                }else {
                    for (let i in this.form) {
                        if (i === 'imageUrls' || i === 'planImageUrls') {
                            if (this.form[i]) {
                                if (data[i]) {
                                    this.form[i] = this.setImageUrl(i, data[i].split('、'))
                                } else {
                                    this.form[i] = []
                                }
                            }
                        }else{
                            this.form[i]  = data[i]
                        } else {
                            this.form[i] = data[i]
                        }
                    }
                    this.personNum = placePractitioner.length
                    const componetns = this.$refs.formItemRef || []
                    this.$refs.formItemRef.forEach((item, index) => {
@@ -187,31 +204,31 @@
                    })
                })
            },
            setImageUrl(key,arr){
            setImageUrl(key, arr) {
                let urls = [];
                for(let i of arr){
                for (let i of arr) {
                    urls.push({
                        name:i,
                        url:`${minioBaseUrl}${i}`
                    })
                        name: i,
                        url: `${minioBaseUrl}${i}`
                    })
                }
                return urls
            },
            getImageUrl(key){
                if(this.form[key].length){
            getImageUrl(key) {
                if (this.form[key].length) {
                    let urls = [];
                   for(let i of this.form[key]){
                        urls.push(i.name)
                   }
                   return urls.join('、');
                }else {
                    for (let i of this.form[key]) {
                        urls.push(i.name)
                    }
                    return urls.join('、');
                } else {
                    return "";
                }
            },
            updatePlaceExt(data) {
                data['imageUrls'] = this.getImageUrl('imageUrls')
                data['planImageUrls'] = this.getImageUrl('planImageUrls')
@@ -269,6 +286,7 @@
        height: 100%;
        display: flex;
        flex-direction: column;
        .main-content {
            // height: 0;
            // flex: 1;