Lou
2023-11-12 53a59ee16607e0a3f061f22cf8f66266fe720c6e
Merge branch 'master' of http://s16s652780.51mypc.cn:49896/r/jczz_app
8 files modified
304 ■■■■■ changed files
subPackage/house/family/index.vue 90 ●●●●● patch | view | raw | blame | history
subPackage/house/member/householdLabel.vue 5 ●●●●● patch | view | raw | blame | history
subPackage/house/roomDetails/index.vue 8 ●●●●● patch | view | raw | blame | history
subPackage/workbench/components/formItem.vue 4 ●●● patch | view | raw | blame | history
subPackage/workbench/views/cshw.vue 4 ●●●● patch | view | raw | blame | history
subPackage/workbench/views/csjl.vue 16 ●●●●● patch | view | raw | blame | history
subPackage/workbench/views/editExamine.vue 170 ●●●●● patch | view | raw | blame | history
subPackage/workbench/views/examine.vue 7 ●●●●● patch | view | raw | blame | history
subPackage/house/family/index.vue
@@ -7,13 +7,13 @@
            </view>
            <view class="h0 flex-1 build-list-box content">
                <u-collapse :border="false">
                    <u-collapse-item v-show="isShowBuild" style="border: none;" :name="index"
                        v-for="(item, index) in buildingList" :key="index">
                        <!-- :title="item.unitName" -->
                        <view slot="title" class="flex">
                            <u-icon name="/static/icon/group.png" size="16"></u-icon>
                            <view style="margin-left: 17rpx;">{{ item.unitName }}</view>
                        </view>
                    <u-collapse-item v-if="isShowBuild" style="border: none;" :name="index" :title="item.unitName"
                        :icon="'/static/icon/group.png'" v-for="(item, index) in buildingList" :key="index">
                        <!-- :title="item.unitName" -->
                        <!--     <view slot="title" class="flex">
                            <u-icon name="" size="16"></u-icon>
                            <view style="margin-left: 17rpx;">{{ item.unitName }}</view>
                        </view> -->
                        <view class="flex floor-content" v-for="(cItem, cIndex) in item.children" :key="cIndex">
                            <view class="floor-num-box flex a-i-c j-c-c">
                                {{cItem.floor}}层
@@ -21,7 +21,7 @@
                            <view class="room-content">
                                <u-grid class="flex flex-wrap" col="2" :border="true">
                                    <u-grid-item v-for="(scItem, scIndex) in cItem.children" :key="scItem.id"
                                        @click.native="pushPage(scItem)">
                                        @click="pushPage($event, scItem)">
                                        <view class="room-box flex f-d-c">
                                            <view class="flex a-i-c j-c-s-b">
                                                <view class="l">
@@ -55,19 +55,22 @@
                            </view>
                        </view>
                    </u-collapse-item>
                    <u-collapse-item class="sp-list" v-show="isShowShop" style="border: none;">
                        <view slot="title" class="flex">
                            <u-icon name="/static/icon/group.png" size="16"></u-icon>
                            <view style="margin-left: 17rpx;">商铺</view>
                        </view>
                        <view class="house-list-box flex" v-for="(item, index) in shopList" :name="index" :key="index"
                            @click.native="pushShopPage(item)">
                            <view class="l">
                                <u-icon name="/static/icon/store.png" width="15" height="18"></u-icon>
                            </view>
                            <view class="r nowrap-ellipsis-hidden">
                                {{item.floor}}
                            </view>
                    <u-collapse-item class="sp-list" v-if="isShowShop" style="border: none;" title="商铺"
                        :icon="'/static/icon/group.png'">
                        <!-- <view slot="title" class="flex">
                                <u-icon name="/static/icon/group.png" size="16"></u-icon>
                                <view style="margin-left: 17rpx;">商铺</view>
                        </view> -->
                        <view class="sp-list-box">
                            <view class="house-list-box flex" v-for="(item, index) in shopList" :name="index" :key="index"
                                @click.native="pushShopPage($event, item)">
                                <view class="l">
                                    <u-icon name="/static/icon/store.png" width="15" height="18"></u-icon>
                                </view>
                                <view class="r nowrap-ellipsis-hidden">
                                    {{item.floor}}
                                </view>
                            </view>
                        </view>
                    </u-collapse-item>
                </u-collapse>
@@ -121,10 +124,12 @@
        },
        methods: {
            async getBuildingList() {
                this.isShowBuild = false
                this.isShowShop = false
                const param = {
                    type: 3,
                    code: this.currentId,
                    roleName:uni.getStorageSync('activeRole').roleName,
                    roleName: uni.getStorageSync('activeRole').roleName,
                    name: this.addressType == 1 ? "" : this.neiCode,
                    addressType: this.addressType == 3 ? 2 : 1
                }
@@ -144,19 +149,19 @@
                    this.shopList = shopList || []
                }
            },
            pushPage(value) {
            pushPage(name, scItem) {
                const {
                    addressCode
                } = value
                } = scItem
                let url = `/subPackage/house/roomDetails/index?id=${addressCode}`
                this.$u.func.globalNavigator(url, "navTo")
            },
            // 跳转到商铺页面
            pushShopPage(e) {
                console.log(e, 8888)
            pushShopPage(name, item) {
                const {
                    addressCode
                } = e
                } = item
                let url = `/subPackage/house/houseNumber/index?stdId=${addressCode}`
                this.$u.func.globalNavigator(url, "navTo")
            }
@@ -180,17 +185,18 @@
            height: 0;
            flex: 1;
            overflow-y: auto;
            .content {
                margin-top: 20rpx;
                background-color: #fff;
                background-color: #fff;
                .floor-info-box {
                    margin-top: 30rpx;
                    justify-content: space-between;
                    .proprietor-box {
                        color: #333333;
@@ -257,8 +263,8 @@
                        align-items: center;
                        width: calc(100% - 30rpx);
                        min-height: 116rpx;
                        box-sizing: border-box;
                        background-color: #FAFBFE;
                        box-sizing: border-box;
                        background-color: #FAFBFE;
                        margin: 15rpx;
                        &>view {
@@ -267,7 +273,7 @@
                        }
                    }
                    .u-grid-item {
                    .u-grid-item {
                        border: none;
                    }
                }
@@ -295,11 +301,17 @@
        }
    }
    .sp-list {
        /deep/ .u-collapse-item__content__text {
            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
        }
    // .sp-list {
        // /deep/ .u-collapse-item__content__text {
        //     display: flex;
        //     flex-direction: row;
        //     flex-wrap: wrap;
        // }
    // }
    .sp-list-box {
            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
    }
</style>
subPackage/house/member/householdLabel.vue
@@ -121,10 +121,11 @@
            const data = JSON.parse(option.data);
            this.householdInfo = data;
            this.houseCode = data.houseCode
            this.getDoorPlateAddressDetail()
            // this.getDoorPlateAddressDetail()
        },
        onShow() {
            this.getLabelList()
            this.getLabelList()
            this.getDoorPlateAddressDetail()
        },
        methods: {
            // 获取房屋详情
subPackage/house/roomDetails/index.vue
@@ -12,7 +12,8 @@
                    </view>
                    <view class="flex j-c-s-b info-content">
                        <view class="house-info">
                            {{ houseInfo.unitName }}单元 {{ houseInfo.houseName }}室
                            <text v-if="houseInfo.unitName != null">{{ houseInfo.unitName }}单元</text>
                            {{ houseInfo.houseName }}室
                            <text>(共{{ houseInfo.allNum }}人)</text>
                        </view>
                        <view class="flex a-i-c">
@@ -243,7 +244,8 @@
                    houseRentalList,
                    householdList,
                    subAoi
                } = res.data
                } = res.data
                console.log(res.data);
                this.houseCode = addressCode
                this.rentOutList = houseRentalList
                this.ownerInfoList = householdList
@@ -369,7 +371,7 @@
<style lang="scss" scoped>
    .container {
        width: 100%;
        height: 100%;
        height: 100vh;
        display: flex;
        flex-direction: column;
        background: #F5F5F5;
subPackage/workbench/components/formItem.vue
@@ -35,7 +35,9 @@
    }
</script>
<style lang="scss" scoped>
    .form-box {
    .form-box {
        background-color: #fff;
        padding: 0 30rpx;
        .form-item {
            border-bottom: 1rpx solid #f6f6f6;
            padding: 0 20rpx;
subPackage/workbench/views/cshw.vue
@@ -22,11 +22,11 @@
                </view>
                <view class="item-row flex a-i-c j-c-s-b">
                    <text class="f-28">地址</text>
                    <text class="address f-28 c-66">{{ item.localtion }}</text>
                    <text class="address f-28 c-66">{{ item.localtion ? item.localtion : '未完善' }}</text>
                </view>
                <view class="item-row flex a-i-c j-c-s-b">
                    <text class="f-28">法人信息</text>
                    <text class="f-28 c-66">{{ item.legalPerson }}</text>
                    <text class="f-28 c-66">{{ item.legalPerson  ? item.legalPerson : '未完善'}}</text>
                </view>
            </view>
        </view>
subPackage/workbench/views/csjl.vue
@@ -7,7 +7,7 @@
                </view>
                <view class="search">
                    <u-search placeholder="请输入场所名称" v-model="iptContext" :clearabled="true" :showAction="true"
                        :animation="true" @search="searchConfirm" @clear="clearConfirm"></u-search>
                        :animation="true" @change="keyWordChange" @search="searchConfirm" @clear="clearConfirm"></u-search>
                </view>
            </view>
        </u-sticky>
@@ -138,9 +138,9 @@
    }
</script>
<style lang="scss" scoped>
<style lang="scss">
    page {
        background-color: #f6f6f6;
        background-color: #F5F5F5;
    }
    .tabsAndSearch {
@@ -160,12 +160,14 @@
    }
    .info-box {
    .info-box {
        padding: 20rpx 30rpx;
        // background-color: #f6f6f6;
        .records-card {
            margin: 20rpx 30rpx 0 30rpx;
            background-color: #fff;
            background: #fff;
            padding: 30rpx;
            border-radius: 10rpx;
            border-radius: 10rpx;
            margin-bottom: 20rpx;
            .title {
                line-height: 70rpx;
subPackage/workbench/views/editExamine.vue
@@ -1,53 +1,65 @@
<template>
    <div class="container">
        <view class="">
            <box-title title="基本信息"></box-title>
            <u-form labelWidth="70" :model="form" :rules="rules" ref="form" class="form">
                <u-form-item label="场所位置" required class="form-item" prop="localtion">
                    <u--input border="none" v-model="form.localtion"></u--input>
                </u-form-item>
                <u-form-item label="场所名称" required class="form-item" prop="placeName">
                    <u--input border="none" v-model="form.placeName"></u--input>
                </u-form-item>
                <u-form-item label="法人信息" required class="form-item" prop="legalPerson">
                    <u--input border="none" v-model="form.legalPerson"></u--input>
                </u-form-item>
                <u-form-item label="法人电话" class="form-item">
                    <u--input border="none" v-model="form.legalTel"></u--input>
                </u-form-item>
            </u-form>
        </view>
        <view class="">
            <box-title title="营业执照"></box-title>
            <view class="upload-img">
                <u-upload :fileList="form.imageUrls" :previewFullImage="uploadConfig.previewFullImage"
                    :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple" :maxCount="uploadConfig.maxCount"
                    :capture="uploadConfig.capture" @afterRead="afterReadImg" @delete="deletePic">
                </u-upload>
    <view class="container">
        <view class="main-content">
            <view class="mt-20 b-c-w">
                <box-title :title="'基本信息'"></box-title>
                <u-form labelWidth="70" :model="form" :rules="rules" ref="form" class="form">
                    <u-form-item label="场所位置" required class="form-item" prop="localtion">
                        <u--input border="none" v-model="form.localtion"></u--input>
                    </u-form-item>
                    <u-form-item label="场所名称" required class="form-item" prop="placeName">
                        <u--input border="none" v-model="form.placeName"></u--input>
                    </u-form-item>
                    <u-form-item label="法人信息" required class="form-item" prop="legalPerson">
                        <u--input border="none" v-model="form.legalPerson"></u--input>
                    </u-form-item>
                    <u-form-item label="法人电话" class="form-item">
                        <u--input border="none" v-model="form.legalTel"></u--input>
                    </u-form-item>
                </u-form>
            </view>
            <view class="mt-20 b-c-w">
                <box-title title="营业执照"></box-title>
                <view class="upload-img">
                    <u-upload :fileList="form.imageUrls" :previewFullImage="uploadConfig.previewFullImage"
                        :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple"
                        :maxCount="uploadConfig.maxCount" :capture="uploadConfig.capture" @afterRead="afterReadImg"
                        @delete="deletePic">
                    </u-upload>
                </view>
            </view>
            <view class="mt-20 b-c-w">
                <box-title title="场所平面图"></box-title>
                <view class="upload-img">
                    <u-upload :fileList="form.planImageUrls" :previewFullImage="uploadConfig.previewFullImage"
                        :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple"
                        :maxCount="uploadConfig.maxCount" :capture="uploadConfig.capture" @afterRead="afterReadImg"
                        @delete="deletePic">
                    </u-upload>
                </view>
            </view>
            <view class="practitioner">
                <box-title title="从业人员信息"></box-title>
                <view class="info" v-for="i in personNum" :key="i">
                    <view class="title">人员信息-#{{ i }}</view>
                    <formItem ref="formItemRef"></formItem>
                </view>
                <view class="add-person">
                    <u-button type="success" plain @click="addPerson">在加一人</u-button>
                </view>
            </view>
        </view>
        <view class="">
            <box-title title="场所平面图"></box-title>
            <view class="upload-img">
                <u-upload :fileList="form.planImageUrls" :previewFullImage="uploadConfig.previewFullImage"
                    :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple" :maxCount="uploadConfig.maxCount"
                    :capture="uploadConfig.capture" @afterRead="afterReadImg" @delete="deletePic">
                </u-upload>
            </view>
        </view>
        <view class="practitioner">
            <box-title title="从业人员信息"></box-title>
            <view class="info" v-for="i in personNum" :key="i">
                <view class="title">人员信息-#{{ i }}</view>
                <formItem ref="formItemRef"></formItem>
            </view>
        </view>
        <u-button type="success" plain class="add-person" @click="addPerson">在加一人</u-button>
        <view class="btn-group">
            <u-button class="btn-item" type="primary" @click="submit">提交</u-button>
            <u-button class="btn-item" @click="pushPage">我上报的事件</u-button>
            <view>
                <u-button type="primary" @click="submit">提交</u-button>
            </view>
            <view class="mt-20">
                <u-button @click="pushPage">我上报的事件</u-button>
            </view>
        </view>
    </div>
    </view>
</template>
<script>
@@ -61,7 +73,8 @@
    export default {
        mixins: [uploadMixin],
        components: {
            formItem
            formItem,
            boxTitle
        },
        data() {
            return {
@@ -109,7 +122,8 @@
            //         }
            //     })
            // },
            getCsDetails() {
            getCsDetails() {
                const that = this
                getPlaceDetail({
                    placeId: this.curSelectSite.id
                }).then(detailRes => {
@@ -125,29 +139,33 @@
                        return
                    }
                    const placePractitioner = data?.placePractitioner || []
                    console.log(data);
                    Object.keys(this.form).forEach(key => {
                        this.form[key] = data[key]
                        if (key === 'imageUrls' || key === 'planImageUrls') {
                            data[key] = data[key] || ''
                            this.form[key] = []
                            if (!!data[key]) {
                                data[key] = JSON.parse(data[key])
                                if (Array.isArray(data[key])) {
                                    this.form[key] = data[key]
                                } else {
                                    this.form[key].push(data[key])
                                }
                            } else {
                                this.form[key].push(data[key])
                            }
                        }
                    })
                    console.log(this.form);
                    this.personNum = placePractitioner.length
                    this.$nextTick(() => {
                    that.personNum = placePractitioner.length
                    // that.$nextTick(() => {
                        console.log(placePractitioner);
                        this.$refs.formItemRef.forEach((item, index) => {
                            item.form = placePractitioner[index]
                        })
                    })
                        setTimeout(() => {
                            const componetns = that.$refs.formItemRef || []
                            that.$refs.formItemRef.forEach((item, index) => {
                                item.form = placePractitioner[index]
                            })
                        }, 0)
                    // })
                })
            },
            updatePlaceExt(data) {
@@ -197,12 +215,28 @@
</script>
<style lang="scss" scoped>
    page {
        background-color: #f6f6f6;
    }
    .container {
        padding-bottom: 300rpx;
        width: 100%;
        height: 100vh;
        display: flex;
        flex-direction: column;
        background: #F9F9FA;
        color: #fff;
        font-size: 32rpx;
        .main-content {
            height: 0;
            flex: 1;
            overflow-y: auto;
        }
        .btn-group {
            padding: 20rpx;
            z-index: 999;
            background-color: #fff;
        }
        .form {
            margin-top: 20rpx;
@@ -239,19 +273,5 @@
            }
        }
        .btn-group {
            background-color: #fff;
            position: fixed;
            bottom: 0;
            left: 0;
            width: calc(100% - 40rpx);
            padding: 20rpx;
            border-top: 1rpx solid #f6f6f6;
            z-index: 999;
            .btn-item {
                margin-top: 20rpx;
            }
        }
    }
</style>
subPackage/workbench/views/examine.vue
@@ -231,9 +231,9 @@
    }
</script>
<style lang="scss" scoped>
<style lang="scss">
    page {
        background-color: #f6f6f6;
        background-color: #f5f5f5;
    }
    .container {
@@ -243,7 +243,8 @@
            margin-bottom: 15rpx;
        }
        .info {
        .info {
            background-color: #fff;
            .title {
                font-size: 30rpx;
                padding-left: 10rpx;