Lou
2024-03-01 af606cf6bf3995dfa28af782c4f0265d4dbafdeb
首页修改,场所采集新增扫码功能、人口采集选择房屋
6 files modified
1 files renamed
931 ■■■■■ changed files
api/house/house.js 15 ●●●● patch | view | raw | blame | history
common/setting.js 4 ●●●● patch | view | raw | blame | history
pages/home/index.vue 334 ●●●●● patch | view | raw | blame | history
pages/home/index4.vue 267 ●●●●● patch | view | raw | blame | history
pages/home/selectSite.vue 49 ●●●● patch | view | raw | blame | history
subPackage/house/member/add.vue 193 ●●●● patch | view | raw | blame | history
subPackage/workbench/views/cscj.vue 69 ●●●●● patch | view | raw | blame | history
api/house/house.js
@@ -19,7 +19,7 @@
}
//获取小区详情
export const getDistrictDetail=(param)=>{
export const getDistrictDetail = (param) => {
    return http.request({
        url: 'blade-district/district/getDetail',
        method: 'GET',
@@ -28,10 +28,21 @@
}
//获取社区概况数据统计 (数据驾驶舱)
export const getHouseStatistics  =(param)=>{
export const getHouseStatistics = (param) => {
    return http.request({
        url: 'blade-house/house/getHouseStatistics',
        method: 'GET',
        params: param
    })
}
//获取房屋数据
export const getHouseList = (param) => {
    return http.request({
        url: 'blade-house/house/page',
        method: 'GET',
        params: param
    })
}
common/setting.js
@@ -10,8 +10,8 @@
    version: '2.0.0',
    // 开发环境接口Url
    // devUrl: 'http://z4042833u6.wicp.vip',
    // devUrl: 'http://192.168.2.140:9528',
    devUrl: 'https://srgdjczzxtpt.com:2080/api',
    devUrl: 'http://192.168.2.140:9528',
    // devUrl: 'https://srgdjczzxtpt.com:2080/api',
    // devUrl: 'https://kt39592615.goho.co',
    minioBaseUrl: "https://srgdjczzxtpt.com:2080/gminio/jczz/",
    // minioBaseUrl: "http://192.168.0.101:9528/",
pages/home/index.vue
@@ -70,8 +70,7 @@
                    </view>
                </view>
                <view class="nav bgc-ff" v-if="liveList.length || roleType == 2">
                    <!-- <caption-row title="生活" /> -->
                <!-- <view class="nav bgc-ff" v-if="liveList.length || roleType == 2">
                    <u-grid :border="false" col="4">
                        <block v-if="liveList.length">
                            <u-grid-item @click.native="navigatorPage(i.path)" v-for="(i,k) in liveList" :key="k">
@@ -90,8 +89,89 @@
                            </u-grid-item>
                        </block>
                    </u-grid>
                </view> -->
                <view class="nav bgc-ff" v-if="roleType == 2 &&  curSelectSite.addressType == 1">
                    <view class="mb-20">
                        <u-tabs :list="tabs" @click="changeTabs" :current="tabIndex" lineColor="#ecf4ff" :activeStyle="{
                                    color: '#017BFC',
                                    fontWeight: 'bold',
                                    backgroundColor:'#ecf4ff',
                                    borderRadius:'14rpx',
                                    padding:'14rpx 28rpx',
                                    transition:'background .2s'
                                }" :itemStyle="{fontSize:'28rpx'}"></u-tabs>
                    </view>
                    <u-grid :border="false" col="4">
                        <u-grid-item @click="navigatorPage(i.path)" v-for="(i,k) in tabs[tabIndex].list" :key="k">
                            <view class="nav-item flex f-d-c a-i-c">
                                <u-icon :name="i.icon" width="80rpx" height="80rpx"></u-icon>
                                <text class="nav-item-text f-26  mt-10">{{i.text}}</text>
                            </view>
                        </u-grid-item>
                    </u-grid>
                </view>
                <view class="nav bgc-ff" v-if="roleType == 2 && curSelectSite.addressType == 2">
                    <view class="mb-20">
                        <u-tabs :list="tabs2" @click="changeTabs" :current="tabIndex" lineColor="#ecf4ff" :activeStyle="{
                                    color: '#017BFC',
                                    fontWeight: 'bold',
                                    backgroundColor:'#ecf4ff',
                                    borderRadius:'14rpx',
                                    padding:'14rpx 28rpx',
                                    transition:'background .2s'
                                }" :itemStyle="{fontSize:'28rpx'}"></u-tabs>
                    </view>
                    <u-grid :border="false" col="4">
                        <u-grid-item @click="navigatorPage(i.path)" v-for="(i,k) in tabs2[tabIndex].list" :key="k">
                            <view class="nav-item flex f-d-c a-i-c">
                                <u-icon :name="i.icon" width="80rpx" height="80rpx"></u-icon>
                                <text class="nav-item-text f-26  mt-10">{{i.text}}</text>
                            </view>
                        </u-grid-item>
                        <block v-if="tabIndex == 1">
                            <u-grid-item @click="navigatorPage('/subPackage/label/form')"
                                v-if="curSelectSite.isFront == 1">
                                <view class="nav-item flex f-d-c a-i-c">
                                    <u-icon name="/static/icon/nav-11.png" width="80rpx" height="80rpx"></u-icon>
                                    <text class="nav-item-text f-26  mt-10">二手交易</text>
                                </view>
                            </u-grid-item>
                            <u-grid-item @click="navigatorPage('/subPackage/label/check')"
                                v-if="curSelectSite.isNine == 1">
                                <view class="nav-item flex f-d-c a-i-c">
                                    <u-icon name="/static/icon/nav-11.png" width="80rpx" height="80rpx"></u-icon>
                                    <text class="nav-item-text f-26  mt-10">消防自查</text>
                                </view>
                            </u-grid-item>
                        </block>
                        <block v-if="tabIndex == 2">
                            <u-grid-item @click="navToAddRepair()">
                                <view class="nav-item flex f-d-c a-i-c">
                                    <u-icon name="/static/icon/nav-11.png" width="80rpx" height="80rpx"></u-icon>
                                    <text class="nav-item-text f-26  mt-10">企业商户上报</text>
                                </view>
                            </u-grid-item>
                            <u-grid-item @click="navToSiteList()">
                                <view class="nav-item flex f-d-c a-i-c">
                                    <u-icon name="/static/icon/nav-11.png" width="80rpx" height="80rpx"></u-icon>
                                    <text class="nav-item-text f-26  mt-10">场所任务</text>
                                </view>
                            </u-grid-item>
                        </block>
                    </u-grid>
                </view>
            </view>
            <view class="bgc-ff p-20 mb-20 pb-20" v-if="isShowHouse">
                <caption-row title="楼盘表" />
@@ -104,7 +184,35 @@
                </view>
            </view>
            <view class="bgc-ff mb-20 p-20 pb-20" v-if="jobList.length">
            <view class="bgc-ff mb-20 p-20 pb-20" v-if="sectionList.length">
                <view class="menu-tabs">
                    <u-tabs :list="sectionList" @click="changeMenuTabs" :current="menuTabIndex" lineColor="#ecf4ff"
                        :activeStyle="{
                                 color: '#017BFC',
                                 fontWeight: 'bold',
                                 backgroundColor:'#ecf4ff',
                                 borderRadius:'14rpx',
                                 padding:'14rpx 28rpx',
                                 transition:'background .2s'
                             }" :itemStyle="{fontSize:'28rpx'}" :scrollable="false"></u-tabs>
                </view>
                <u-grid :border="false" col="4">
                    <u-grid-item @click="navigatorPage(item.path)"
                        v-for="(item, index) in sectionList[menuTabIndex].children" :index="index" :key="index"
                        :customStyle="{paddingTop:20+'rpx'}">
                        <view class="grid-item flex f-d-c a-i-c" :style="{background:item.background}">
                            <u-icon :name="item.pictureImg" width="60rpx" height="60rpx"></u-icon>
                            <text class="grid-text f-24 fw mt-10">{{item.name}}</text>
                        </view>
                    </u-grid-item>
                </u-grid>
            </view>
            <!-- <view class="bgc-ff mb-20 p-20 pb-20" v-if="jobList.length">
                <caption-row title="工作台" />
                <u-grid :border="false" col="4">
                    <u-grid-item @click="navigatorPage(item.path)" v-for="(item, index) in jobList" :index="index"
@@ -114,18 +222,10 @@
                            <text class="grid-text f-24 fw mt-10">{{item.name}}</text>
                        </view>
                    </u-grid-item>
                    <!-- <u-grid-item @click="navigatorPage('/subPackage/house/houseNumber/siteInspect')"
                        :customStyle="{paddingTop:20+'rpx'}">
                        <view class="grid-item flex f-d-c a-i-c"
                            style="background:linear-gradient(133deg, #F9FAFE 0%, rgba(249,250,254,0) 100%)">
                            <u-icon name="/static/icon/menu-02.png" width="60rpx" height="60rpx"></u-icon>
                            <text class="grid-text f-24 fw mt-10">场所检查</text>
                        </view>
                    </u-grid-item> -->
                </u-grid>
            </view>
            </view> -->
            <view class="bgc-ff mb-20 p-20 pb-20" v-if="(roleType == 2) && (curSelectSite.addressType == 2)">
            <!-- <view class="bgc-ff mb-20 p-20 pb-20" v-if="(roleType == 2) && (curSelectSite.addressType == 2)">
                <caption-row title="工作台" />
                <u-grid :border="false" col="4">
                    <u-grid-item @click="navigatorPage('/subPackage/workbench/views/editExamine')"
@@ -144,7 +244,8 @@
                        </view>
                    </u-grid-item>
                </u-grid>
            </view>
            </view> -->
            <view class="p-20 bgc-ff mb-20" v-if="isShowNotice">
                <caption-row title="通知公告" :is-link="true" url="/subPackage/article/list" />
                <notice-list :data="notice" />
@@ -252,7 +353,108 @@
                        path: "/subPackage/article/list?type=1"
                    }
                ]
                ],
                tabs: [{
                        name: '公众服务',
                        list: [{
                                icon: "/static/icon/nav-02.png",
                                text: "公共报事",
                                path: '/subPackage/bs/views/repair'
                            },
                            {
                                icon: "/static/icon/nav-03.png",
                                text: "便民热线",
                                path: '/subPackage/hotLine/index'
                            },
                        ]
                    },
                    {
                        name: '生活服务',
                        list: [{
                            text: "租客上报",
                            path: "/subPackage/bs/views/zhsb",
                            icon: "/static/icon/nav-04.png"
                        }]
                    },
                    {
                        name: '社区服务',
                        list: [{
                                text: "选举调查",
                                icon: "/static/icon/nav-14.png",
                                path: "/subPackage/article/communityList?type=1"
                            },
                            {
                                text: "公益报名",
                                icon: "/static/icon/nav-13.png",
                                path: "/subPackage/article/signUpList?type=0"
                            },
                            {
                                text: "公共收益",
                                icon: "/static/icon/nav-15.png",
                                path: "/subPackage/article/list?type=1"
                            }
                        ]
                    }
                ],
                tabs2: [{
                        name: '公众服务',
                        list: [{
                                icon: "/static/icon/nav-02.png",
                                text: "公共报事",
                                path: '/subPackage/bs/views/repair'
                            },
                            {
                                icon: "/static/icon/nav-03.png",
                                text: "便民热线",
                                path: '/subPackage/hotLine/index'
                            },
                        ]
                    }, {
                        name: '警务服务',
                        list: []
                    },
                    {
                        name: '企业服务',
                        list: [{
                            text: "场所维护",
                            icon: "",
                            path: "/subPackage/workbench/views/editExamine"
                        }]
                    },
                    {
                        name: '社区服务',
                        list: [{
                                text: "选举调查",
                                icon: "/static/icon/nav-14.png",
                                path: "/subPackage/article/communityList?type=1"
                            },
                            {
                                text: "公益报名",
                                icon: "/static/icon/nav-13.png",
                                path: "/subPackage/article/signUpList?type=0"
                            },
                            {
                                text: "公共收益",
                                icon: "/static/icon/nav-15.png",
                                path: "/subPackage/article/list?type=1"
                            }
                        ]
                    }
                ],
                tabIndex: 0,
                isBailer: false, //是否取保候审人员
                sectionList: [],
                menuTabIndex: 0
            }
        },
@@ -311,10 +513,31 @@
                            this.getMenuList()
                        });
                    }
                },
                deep: true,
                // immediate: true
            },
            isBailer(newVal, oldVal) {
                if (newVal) {
                    this.tabs.splice(1, 0, {
                        name: '警务服务',
                        list: [{
                            icon: "/static/icon/nav-11.png",
                            text: "取保候审",
                            path: '/subPackage/label/bail'
                        }]
                    })
                }
                immediate: true
            }
        },
        // onPullDownRefresh() {
        //     this.$store.dispatch("getMenuList").then(res => {
@@ -326,6 +549,19 @@
        // },
        methods: {
            changeTabs(e) {
                // console.log(item);
                this.tabIndex = e.index
            },
            changeMenuTabs(e) {
                this.menuTabIndex = e.index;
            },
            //初始化
            init() {
@@ -418,6 +654,10 @@
                }
                const res = await getFuncList(type, roleName)
                this.columnData = res.data;
                if (res.data.length) {
                    uni.setStorageSync("curStreet", res.data[0].name);
                }
                let data = res.data
                this.siteColumns = []
                this.buildSiteColumn(data, 0)
@@ -425,6 +665,7 @@
            buildSiteColumn(dataList, index) {
                if (dataList.length > 0) {
                    this.siteColumns[index] = dataList
                    if (dataList[0].children && dataList[0].children.length > 0) {
                        this.curSelectSite = dataList[0].children[0];
@@ -503,14 +744,28 @@
                this.menuList = uni.getStorageSync("menu")
                this.liveList = this.setLiveMenu(this.hasMenu('生活'));
                this.jobList = this.hasMenu('工作台')
                this.sectionList = this.hasMenu('首页菜单')
                if (this.menuList.length) {
                    this.getContactMenu();
                    this.getHouseMenu();
                    this.getNoticeMenu();
                }
                setTimeout(() => {
                    if (this.jobList.length) {
                        let taskList = this.jobList.filter(item => item.name == "我的任务")
                    // if (this.jobList.length) {
                    //     let taskList = this.jobList.filter(item => item.name == "我的任务")
                    //     if (taskList.length) {
                    //         uni.setStorageSync("taskMenu", taskList[0].children);
                    //     } else {
                    //         uni.setStorageSync("taskMenu", []);
                    //     }
                    // } else {
                    //     uni.setStorageSync("taskMenu", []);
                    // }
                    if (this.sectionList.length) {
                        let list = this.sectionList.filter(item => item.name == "日常办公");
                        let taskList = list[0].children.filter(item => item.name == "待办事项");
                        console.log("taskList===>", taskList)
                        if (taskList.length) {
                            uni.setStorageSync("taskMenu", taskList[0].children);
                        } else {
@@ -519,6 +774,7 @@
                    } else {
                        uni.setStorageSync("taskMenu", []);
                    }
                }, 200)
            },
@@ -548,6 +804,23 @@
            setLiveMenu(arr) {
                if (arr.length) {
                    let index3 = arr.findIndex(item => item.name.trim() == "取保候审")
                    if (index != -1) {
                        this.isBailer = true;
                        // this.tabs.splice(1, 0, {
                        //     name: '警务服务',
                        //     list: [{
                        //         icon: "/static/icon/nav-11.png",
                        //         text: "取保候审",
                        //         path: '/subPackage/label/bail'
                        //     }]
                        // })
                    }
                    return;
                    let index = this.getLiveMenuItem(arr, 1)
                    let index2 = this.getLiveMenuItem(arr, 2)
                    if (this.curSelectSite.addressType == 1) {
@@ -659,7 +932,6 @@
                                `/subPackage/bs/views/danger?id=${obj.stdId}`, "navTo")
                            return
                        }
                        if (obj.stdId == "3C77B40EFC5F4C899AA74BEE747D9DF1") {
                            eventType = 1;
                            that.$u.func.globalNavigator(
@@ -770,7 +1042,14 @@
                uni.navigateTo({
                    url: `/subPackage/workbench/views/audit?code=${houseCode}&from=index`
                })
            },
            //企业商户上报
            navToAddRepair() {
                let url = `/subPackage/bs/views/addRepair?title=企业商户上报&type="5`
                this.$u.func.globalNavigator(url, "navTo")
            }
        }
    }
</script>
@@ -931,4 +1210,23 @@
    .pb-20 {
        padding-bottom: 20rpx;
    }
    .tabs {
        padding: 20rpx;
        .tabs-item {
            padding: 10rpx 30rpx;
        }
        .tabs-active {
            border-radius: 10rpx;
            background-color: rgb(236, 244, 255);
            color: #017BFC;
            font-weight: bold;
        }
    }
    .menu-tabs {
        padding: 20rpx 0;
    }
</style>
pages/home/index4.vue
File was renamed from pages/home/index5.vue
@@ -70,7 +70,8 @@
                    </view>
                </view>
                <!-- <view class="nav bgc-ff" v-if="liveList.length || roleType == 2">
                <view class="nav bgc-ff" v-if="liveList.length || roleType == 2">
                    <!-- <caption-row title="生活" /> -->
                    <u-grid :border="false" col="4">
                        <block v-if="liveList.length">
                            <u-grid-item @click.native="navigatorPage(i.path)" v-for="(i,k) in liveList" :key="k">
@@ -89,89 +90,8 @@
                            </u-grid-item>
                        </block>
                    </u-grid>
                </view> -->
                <view class="nav bgc-ff" v-if="roleType == 2 &&  curSelectSite.addressType == 1">
                    <view class="mb-20">
                        <u-tabs :list="tabs" @click="changeTabs" :current="tabIndex" lineColor="#ecf4ff" :activeStyle="{
                                    color: '#017BFC',
                                    fontWeight: 'bold',
                                    backgroundColor:'#ecf4ff',
                                    borderRadius:'14rpx',
                                    padding:'14rpx 28rpx',
                                    transition:'background .2s'
                                }" :itemStyle="{fontSize:'28rpx'}"></u-tabs>
                    </view>
                    <u-grid :border="false" col="4">
                        <u-grid-item @click="navigatorPage(i.path)" v-for="(i,k) in tabs[tabIndex].list" :key="k">
                            <view class="nav-item flex f-d-c a-i-c">
                                <u-icon :name="i.icon" width="80rpx" height="80rpx"></u-icon>
                                <text class="nav-item-text f-26  mt-10">{{i.text}}</text>
                            </view>
                        </u-grid-item>
                    </u-grid>
                </view>
                <view class="nav bgc-ff" v-if="roleType == 2 && curSelectSite.addressType == 2">
                    <view class="mb-20">
                        <u-tabs :list="tabs2" @click="changeTabs" :current="tabIndex" lineColor="#ecf4ff" :activeStyle="{
                                    color: '#017BFC',
                                    fontWeight: 'bold',
                                    backgroundColor:'#ecf4ff',
                                    borderRadius:'14rpx',
                                    padding:'14rpx 28rpx',
                                    transition:'background .2s'
                                }" :itemStyle="{fontSize:'28rpx'}"></u-tabs>
                    </view>
                    <u-grid :border="false" col="4">
                        <u-grid-item @click="navigatorPage(i.path)" v-for="(i,k) in tabs2[tabIndex].list" :key="k">
                            <view class="nav-item flex f-d-c a-i-c">
                                <u-icon :name="i.icon" width="80rpx" height="80rpx"></u-icon>
                                <text class="nav-item-text f-26  mt-10">{{i.text}}</text>
                            </view>
                        </u-grid-item>
                        <block v-if="tabIndex == 1">
                            <u-grid-item @click="navigatorPage('/subPackage/label/form')"
                                v-if="curSelectSite.isFront == 1">
                                <view class="nav-item flex f-d-c a-i-c">
                                    <u-icon name="/static/icon/nav-11.png" width="80rpx" height="80rpx"></u-icon>
                                    <text class="nav-item-text f-26  mt-10">二手交易</text>
                                </view>
                            </u-grid-item>
                            <u-grid-item @click="navigatorPage('/subPackage/label/check')"
                                v-if="curSelectSite.isNine == 1">
                                <view class="nav-item flex f-d-c a-i-c">
                                    <u-icon name="/static/icon/nav-11.png" width="80rpx" height="80rpx"></u-icon>
                                    <text class="nav-item-text f-26  mt-10">消防自查</text>
                                </view>
                            </u-grid-item>
                        </block>
                        <block v-if="tabIndex == 2">
                            <u-grid-item @click="navToAddRepair()">
                                <view class="nav-item flex f-d-c a-i-c">
                                    <u-icon name="/static/icon/nav-11.png" width="80rpx" height="80rpx"></u-icon>
                                    <text class="nav-item-text f-26  mt-10">企业商户上报</text>
                                </view>
                            </u-grid-item>
                            <u-grid-item @click="navToSiteList()">
                                <view class="nav-item flex f-d-c a-i-c">
                                    <u-icon name="/static/icon/nav-11.png" width="80rpx" height="80rpx"></u-icon>
                                    <text class="nav-item-text f-26  mt-10">场所任务</text>
                                </view>
                            </u-grid-item>
                        </block>
                    </u-grid>
                </view>
            </view>
            <view class="bgc-ff p-20 mb-20 pb-20" v-if="isShowHouse">
                <caption-row title="楼盘表" />
@@ -194,10 +114,18 @@
                            <text class="grid-text f-24 fw mt-10">{{item.name}}</text>
                        </view>
                    </u-grid-item>
                    <!-- <u-grid-item @click="navigatorPage('/subPackage/house/houseNumber/siteInspect')"
                        :customStyle="{paddingTop:20+'rpx'}">
                        <view class="grid-item flex f-d-c a-i-c"
                            style="background:linear-gradient(133deg, #F9FAFE 0%, rgba(249,250,254,0) 100%)">
                            <u-icon name="/static/icon/menu-02.png" width="60rpx" height="60rpx"></u-icon>
                            <text class="grid-text f-24 fw mt-10">场所检查</text>
                        </view>
                    </u-grid-item> -->
                </u-grid>
            </view>
            <!-- <view class="bgc-ff mb-20 p-20 pb-20" v-if="(roleType == 2) && (curSelectSite.addressType == 2)">
            <view class="bgc-ff mb-20 p-20 pb-20" v-if="(roleType == 2) && (curSelectSite.addressType == 2)">
                <caption-row title="工作台" />
                <u-grid :border="false" col="4">
                    <u-grid-item @click="navigatorPage('/subPackage/workbench/views/editExamine')"
@@ -216,8 +144,7 @@
                        </view>
                    </u-grid-item>
                </u-grid>
            </view> -->
            </view>
            <view class="p-20 bgc-ff mb-20" v-if="isShowNotice">
                <caption-row title="通知公告" :is-link="true" url="/subPackage/article/list" />
                <notice-list :data="notice" />
@@ -325,106 +252,7 @@
                        path: "/subPackage/article/list?type=1"
                    }
                ],
                tabs: [{
                        name: '公众服务',
                        list: [{
                                icon: "/static/icon/nav-02.png",
                                text: "公共报事",
                                path: '/subPackage/bs/views/repair'
                            },
                            {
                                icon: "/static/icon/nav-03.png",
                                text: "便民热线",
                                path: '/subPackage/hotLine/index'
                            },
                        ]
                    },
                    {
                        name: '生活服务',
                        list: [{
                            text: "租客上报",
                            path: "/subPackage/bs/views/zhsb",
                            icon: "/static/icon/nav-04.png"
                        }]
                    },
                    {
                        name: '社区服务',
                        list: [{
                                text: "选举调查",
                                icon: "/static/icon/nav-14.png",
                                path: "/subPackage/article/communityList?type=1"
                            },
                            {
                                text: "公益报名",
                                icon: "/static/icon/nav-13.png",
                                path: "/subPackage/article/signUpList?type=0"
                            },
                            {
                                text: "公共收益",
                                icon: "/static/icon/nav-15.png",
                                path: "/subPackage/article/list?type=1"
                            }
                        ]
                    }
                ],
                tabs2: [{
                        name: '公众服务',
                        list: [{
                                icon: "/static/icon/nav-02.png",
                                text: "公共报事",
                                path: '/subPackage/bs/views/repair'
                            },
                            {
                                icon: "/static/icon/nav-03.png",
                                text: "便民热线",
                                path: '/subPackage/hotLine/index'
                            },
                        ]
                    }, {
                        name: '警务服务',
                        list: []
                    },
                    {
                        name: '企业服务',
                        list: [{
                            text: "场所维护",
                            icon: "",
                            path: "/subPackage/workbench/views/editExamine"
                        }]
                    },
                    {
                        name: '社区服务',
                        list: [{
                                text: "选举调查",
                                icon: "/static/icon/nav-14.png",
                                path: "/subPackage/article/communityList?type=1"
                            },
                            {
                                text: "公益报名",
                                icon: "/static/icon/nav-13.png",
                                path: "/subPackage/article/signUpList?type=0"
                            },
                            {
                                text: "公共收益",
                                icon: "/static/icon/nav-15.png",
                                path: "/subPackage/article/list?type=1"
                            }
                        ]
                    }
                ],
                tabIndex: 0,
                isBailer: false //是否取保候审人员
                ]
            }
        },
@@ -483,31 +311,10 @@
                            this.getMenuList()
                        });
                    }
                },
                deep: true,
                // immediate: true
            },
            isBailer(newVal, oldVal) {
                if (newVal) {
                    this.tabs.splice(1, 0, {
                        name: '警务服务',
                        list: [{
                            icon: "/static/icon/nav-11.png",
                            text: "取保候审",
                            path: '/subPackage/label/bail'
                        }]
                    })
                }
                immediate: true
            }
        },
        // onPullDownRefresh() {
        //     this.$store.dispatch("getMenuList").then(res => {
@@ -519,14 +326,6 @@
        // },
        methods: {
            changeTabs(e) {
                // console.log(item);
                this.tabIndex = e.index
            },
            //初始化
            init() {
@@ -749,23 +548,6 @@
            setLiveMenu(arr) {
                if (arr.length) {
                    let index3 = arr.findIndex(item => item.name.trim() == "取保候审")
                    if (index != -1) {
                        this.isBailer = true;
                        // this.tabs.splice(1, 0, {
                        //     name: '警务服务',
                        //     list: [{
                        //         icon: "/static/icon/nav-11.png",
                        //         text: "取保候审",
                        //         path: '/subPackage/label/bail'
                        //     }]
                        // })
                    }
                    return;
                    let index = this.getLiveMenuItem(arr, 1)
                    let index2 = this.getLiveMenuItem(arr, 2)
                    if (this.curSelectSite.addressType == 1) {
@@ -877,6 +659,7 @@
                                `/subPackage/bs/views/danger?id=${obj.stdId}`, "navTo")
                            return
                        }
                        if (obj.stdId == "3C77B40EFC5F4C899AA74BEE747D9DF1") {
                            eventType = 1;
                            that.$u.func.globalNavigator(
@@ -987,14 +770,7 @@
                uni.navigateTo({
                    url: `/subPackage/workbench/views/audit?code=${houseCode}&from=index`
                })
            },
            //企业商户上报
            navToAddRepair() {
                let url = `/subPackage/bs/views/addRepair?title=企业商户上报&type="5`
                this.$u.func.globalNavigator(url, "navTo")
            }
        }
    }
</script>
@@ -1154,20 +930,5 @@
    .pb-20 {
        padding-bottom: 20rpx;
    }
    .tabs {
        padding: 20rpx;
        .tabs-item {
            padding: 10rpx 30rpx;
        }
        .tabs-active {
            border-radius: 10rpx;
            background-color: rgb(236, 244, 255);
            color: #017BFC;
            font-weight: bold;
        }
    }
</style>
pages/home/selectSite.vue
@@ -17,11 +17,11 @@
                </block>
            </view>
            <view class="">
                <view class="nomore f-30"  v-if="!list[selectIndex].children.length" >
                      暂无{{selectIndex == 0?"房屋":"场所"}}信息
                <view class="nomore f-30" v-if="!list[selectIndex].children.length">
                    暂无{{selectIndex == 0?"房屋":"场所"}}信息
                </view>
                <view class="site-list f-30 flex j-c-s-b a-i-c" v-for="(i,k) in list[selectIndex].children"
                    @click="selectChilren(i,k)">
                    <text>{{i.name}}</text>
@@ -41,12 +41,12 @@
            </view>
            <view class="">
                <view class="nomore f-30" v-if="!list[selectIndex].children.length">
                    暂无社区信息
                    暂无社区信息
                </view>
                <view class="site-list f-30 flex j-c-s-b a-i-c" v-for="(i,k) in list[selectIndex].children"
                    @click="selectChilren(i,k)">
                    <text>{{i.name}}</text>
@@ -57,8 +57,8 @@
        </view>
        <u-picker :show="isShow" :columns="[list]" :defaultIndex=[selectIndex] title="选择街道" keyName="name"
            @confirm="confirmSelect" @cancel="isShow = false"   @close="isShow = false"></u-picker>
            <u-toast ref="uToast"></u-toast>
            @confirm="confirmSelect" @cancel="isShow = false" @close="isShow = false"></u-picker>
        <u-toast ref="uToast"></u-toast>
    </view>
</template>
@@ -78,7 +78,7 @@
                roleType: 1,
                cateName: "",
                isShow: false,
                rolesType:1
                rolesType: 1
            }
        },
@@ -86,7 +86,7 @@
            let {
                roleName
            } = uni.getStorageSync("activeRole");
            if (roleName == '网格员' || roleName == '系统管理员') {
                this.rolesType = 1;
            } else if (roleName == '居民') {
@@ -109,9 +109,9 @@
                this.chilrenIndex = index;
                console.log(item)
                uni.navigateBack({
                    success:()=> {
                        this.$store.commit("setSiteInfo",item)
                        uni.$emit("refreshPage",item)
                    success: () => {
                        this.$store.commit("setSiteInfo", item)
                        uni.$emit("refreshPage", item)
                    }
                })
            },
@@ -129,7 +129,7 @@
                    console.log(res);
                    this.list = res.data;
                    this.$nextTick(() => {
                        if(this.list.length){
                        if (this.list.length) {
                            this.getSelectIndex()
                        }
                        this.$refs.uToast.isShow = false
@@ -145,16 +145,18 @@
                this.selectIndex = e.indexs[0];
                this.cateName = e.value[0].name;
                this.isShow = false;
                uni.setStorageSync("curStreet", e.value[0].name);
            },
            getSelectIndex(){
            getSelectIndex() {
                let data = uni.getStorageSync("siteInfo");
                this.currentSite = data;
                for(let i = 0,ii = this.list.length;i<ii;i++){
                    for(let k= 0,kk = this.list[i].children.length;k<kk;k++){
                        if(this.list[i].children[k].name == data.name){
                for (let i = 0, ii = this.list.length; i < ii; i++) {
                    for (let k = 0, kk = this.list[i].children.length; k < kk; k++) {
                        if (this.list[i].children[k].name == data.name) {
                            this.selectIndex = i;
                            this.cateName = this.list[i].name;
                            uni.setStorageSync("curStreet", this.list[i].name);
                            this.chilrenId = this.list[i].children[k].id;
                            this.chilrenIndex = k
                        }
@@ -196,7 +198,8 @@
            border-radius: 30rpx;
        }
    }
    .nomore{
        padding:30rpx;
    .nomore {
        padding: 30rpx;
    }
</style>
subPackage/house/member/add.vue
@@ -7,13 +7,17 @@
                        <view class="box-title">
                            <box-title title="基础信息"></box-title>
                        </view>
                        <!-- <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-form-item class="form-item" labelWidth="100" label="房屋" required prop="currentAddress"
                            @click="isShowPopup = true">
                            <u--input v-if="!form.currentAddress" border="none" disabled disabledColor="#ffffff"
                                placeholder="请选择房屋">
                            </u--input>
                            <u-textarea v-if="form.currentAddress" border="none" :disabled="true"
                                disabledColor="#ffffff" v-model="form.currentAddress" placeholder="请选择房屋">
                            </u-textarea>
                            <u-icon slot="right" name="arrow-right"></u-icon>
                        </u-form-item> -->
                        </u-form-item>
                        <u-form-item @click="showSelectBus('与业主关系','relationship')" class="form-item" labelWidth="100"
                            label="与业主关系" required prop="relationship">
                            <u--input border="none" v-model="selectDefaultName.relationship" disabled
@@ -103,11 +107,11 @@
                            </u--input>
                            <u-icon slot="right" name="arrow-right"></u-icon>
                        </u-form-item>
                        <u-form-item class="form-item  address-row" labelWidth="100" label="现居住地" prop="currentAddress">
                        <!-- <u-form-item class="form-item  address-row" labelWidth="100" label="现居住地" prop="currentAddress">
                            <u-textarea border="none" :disabled="form.source ==1?true:false" disabledColor="#ffffff"
                                v-model="form.currentAddress" placeholder="请输入现居住地">
                            </u-textarea>
                        </u-form-item>
                        </u-form-item> -->
                        <u-form-item class="form-item" labelWidth="100" label="籍贯地区" prop="nativePlaceAdcode">
                            <view class="region">
                                <picker mode="region" :value="navtivePlaceDefault" @change="changeNativeRegion">
@@ -263,14 +267,6 @@
                </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> -->
            <view class="footer flex j-c-s-b a-i-c bgc-ff" v-if="type == 2 && from == 'family'">
                <button class="del-btn footer-btn" @click="delAction">删除</button>
@@ -298,6 +294,31 @@
            @close="showRegion = false" @cancel="showRegion = false" keyName="name" @confirm="regionSelect"></u-picker>
        <u-popup :show="isShowPopup" mode="bottom" :round="12" closeable="true" @close="isShowPopup = false">
            <view class="popup-content">
                <z-paging ref="paging" v-model="houseList" @query="queryHouseList" @onRefresh="refreshList"
                    :fixed="false">
                    <view class="" slot="top">
                        <view class="popup-title f-30">选择房屋</view>
                        <u-search placeholder="请输入房屋地址" :showAction="true" actionText="搜索" :animation="true"
                            v-model="addressName" @search="searchAddress" @custom="searchAddress"
                            @clear="clearKeyword"></u-search>
                    </view>
                    <view class="popup-list">
                        <view class="popup-list-item" v-for="(i,k) in houseList" :key="k" @click="selectHouse(i)">
                            <view class="address-name f-28">
                                {{i.address}}
                            </view>
                            <view class="check-icon" v-if="i.houseCode == form.houseCode">
                                <u-icon name="checkbox-mark" color="#017BFC" size="30"></u-icon>
                            </view>
                        </view>
                    </view>
                </z-paging>
            </view>
        </u-popup>
    </view>
</template>
@@ -319,6 +340,12 @@
    import {
        select
    } from "@/api/system/region.js"
    import {
        getHouseList
    } from "@/api/house/house.js"
    import boxTitle from '../components/boxTitle/index2.vue'
    export default {
@@ -489,7 +516,10 @@
                showSelectBirthday: false,
                currentTime: Number(new Date()),
                minDate: "",
                goOutMinDate: ""
                goOutMinDate: "",
                isShowPopup: false,
                addressName: "",
                houseList: []
            }
        },
        created() {
@@ -501,32 +531,37 @@
        async onLoad(option) {
            this.minDate = Number(new Date('1900-01-01')); //设置出生日期选择器最小值
            this.goOutMinDate = Number(new Date('1970-01-01')); //设置外出时间选择器最小值
            const data = JSON.parse(option.data)
            console.log("data==>", data)
            this.houseCode = data.houseCode;
            this.getRegionList()
            this.type = data.type;
            if (data.id) {
                this.id = data.id;
            }
            if (data.type == 1) {
                uni.setNavigationBarTitle({
                    title: "添加成员"
                })
                this.isEdit = false;
                this.addOrUpdateTitle = "保存"
                await this.getAllBizDict()
                this.setCardTypeDefault()
                this.getHouseDetail();
            }
            if (data.type == 2) {
                this.isEdit = true;
                this.addOrUpdateTitle = "修改"
                uni.setNavigationBarTitle({
                    title: "编辑成员资料"
                })
                this.getHouseholdInfo(data)
            }
            // const data = JSON.parse(option.data)
            // this.houseCode = data.houseCode;
            await this.getRegionList()
            await this.getAllBizDict()
            this.setCardTypeDefault()
            this.homeRegion = uni.getStorageSync("curStreet")
            this.form.homeAdcode = this.getHouseRegion(uni.getStorageSync("curStreet")).code;
            this.homeIndex = this.getHouseRegion(uni.getStorageSync("curStreet")).index;
            // this.getHouseDetail();
            // this.type = data.type;
            // if (data.id) {
            //     this.id = data.id;
            // }
            // if (data.type == 1) {
            //     uni.setNavigationBarTitle({
            //         title: "添加成员"
            //     })
            //     this.isEdit = false;
            //     this.addOrUpdateTitle = "保存"
            //     await this.getAllBizDict()
            //     this.setCardTypeDefault()
            //     this.getHouseDetail();
            // }
            // if (data.type == 2) {
            //     this.isEdit = true;
            //     this.addOrUpdateTitle = "修改"
            //     uni.setNavigationBarTitle({
            //         title: "编辑成员资料"
            //     })
            //     this.getHouseholdInfo(data)
            // }
            if (option.from) {
                this.from = option.from;
                if (data.type == 1) {
@@ -868,10 +903,6 @@
                }
                return data;
            },
            // 跳转到首页
            navigator() {
                this.$u.func.globalNavigator("/subPackage/bs/views/bsList")
            },
            navTo() {
                let data = JSON.parse(JSON.stringify(this.form));
@@ -911,7 +942,41 @@
                        })
                    }
                })
            },
            queryHouseList(pageNo, pageSize) {
                getHouseList({
                    current: pageNo,
                    size: pageSize,
                    townStreetName: uni.getStorageSync("curStreet"),
                    address: this.addressName
                }).then(res => {
                    this.$refs.paging.complete(res.data.records);
                })
            },
            refreshList() {
                this.$refs.paging.reload();
            },
            searchAddress() {
                this.$refs.paging.reload();
            },
            clearKeyword() {
                this.addressName = ""
                this.$refs.paging.reload();
            },
            //选择房屋
            selectHouse(i) {
                this.houseCode = i.houseCode;
                this.form.houseCode = i.houseCode;
                this.form.currentAddress = i.address;
                this.isShowPopup = false;
            }
        }
    }
@@ -1039,4 +1104,40 @@
            background: linear-gradient(163deg, #01BDFC 0%, #017BFC 100%);
        }
    }
    .popup-content {
        width: 100%;
        padding: 0 30rpx 30rpx;
        box-sizing: border-box;
        background-color: #fff;
        height: 800rpx;
        .popup-title {
            padding: 30rpx 0;
            text-align: center;
            font-weight: bold;
        }
        .popup-list {
            // height: 500rpx;
            margin-top: 20rpx;
        }
        .popup-list-item {
            padding: 20rpx 0;
            border-bottom: 1px solid #f1f1f1;
            position: relative;
        }
        .address-name {
            width: 90%;
        }
        .check-icon {
            position: absolute;
            right: 20rpx;
            top: 20rpx;
        }
    }
</style>
subPackage/workbench/views/cscj.vue
@@ -2,6 +2,15 @@
    <view class="container">
        <view class="wrap">
            <u-form labelWidth="70" :model="form" :rules="rules" ref="form">
                <view class="top item flex j-c-s-b a-i-c" @click="onScan()" v-if="!currentId">
                    <view class="flex a-i-c">
                        <u-icon name="/static/icon/nav-05.png" width="90rpx" height="90rpx"></u-icon>
                        <text class="f-28 ml-10">扫码获取信息</text>
                    </view>
                    <u-icon name="arrow-right" size="20"></u-icon>
                </view>
                <view class="item">
                    <!-- u-form-item v-if="!currentId" @click="showPicker = true" class="form-item" labelWidth="100" label="楼栋:"
                    :required="isRequired" :disabled="isDisabled" prop="buildingCode">
@@ -258,6 +267,10 @@
    import cateSelector from "../components/cateSelector.vue"
    import {
        getQrCodeDetail
    } from "@/api/system/index"
    export default {
        mixins: [uploadMixin],
        components: {
@@ -502,13 +515,11 @@
                nineTypeValue: "",
                frontTypeValue: "",
                isView: false
            }
        },
        created() {
            this.buildColumn()
        },
        // created() {
        //     this.buildColumn()
        // },
        options: {
            styleIsolation: 'shared', // 解除样式隔离
        },
@@ -986,7 +997,6 @@
                    success: (res) => {
                        // var latitude = res.latitude; // 维度
                        // var longitude = res.longitude; // 经度
                        // this.form.lng = longitude
                        // this.form.lat = latitude
                        // this.form.jwd =
@@ -1115,6 +1125,49 @@
                    urls: minioBaseUrl + [value],
                })
            },
            onScan() {
                uni.scanCode({
                    success: (res) => {
                        let obj = this.getUrlParams(res.result);
                        this.getHouseType(obj.stdId);
                    }
                })
            },
            getUrlParams(url) {
                let urlStr = url.split('?')[1]
                let obj = {};
                let paramsArr = urlStr.split('&')
                for (let i = 0, len = paramsArr.length; i < len; i++) {
                    let arr = paramsArr[i].split('=')
                    obj[arr[0]] = arr[1];
                }
                return obj
            },
            getHouseType(code) {
                getQrCodeDetail({
                    roleName: uni.getStorageSync("activeRole").roleName,
                    addressCode: code
                }).then(res => {
                    let {
                        isJur,
                        doorplateType,
                        addressLevel
                    } = res.data;
                    if ((doorplateType == "中门牌" && addressLevel != 4) || doorplateType == "小门牌") {
                        if (res.data.addressType) {
                            this.addressType = res.data.addressType
                        }
                        this.houseCode = code;
                        this.form.houseCode = code;
                        this.isView = true;
                        this.getBuildingDetail()
                    }
                })
            }
        }
    }
</script>
@@ -1251,4 +1304,8 @@
        background-color: #fff;
        text-align: center;
    }
    .top {
        padding: 20rpx !important;
    }
</style>