Lou
2024-02-03 474d5912ebd3a1da23c1f03cd2cbb9c9ae2c7777
更新
8 files modified
1 files added
404 ■■■■■ changed files
common/setting.js 2 ●●● patch | view | raw | blame | history
subPackage/bs/views/repair.vue 8 ●●●●● patch | view | raw | blame | history
subPackage/house/houseNumber/siteInspect.vue 17 ●●●●● patch | view | raw | blame | history
subPackage/label/index2.vue 311 ●●●●● patch | view | raw | blame | history
subPackage/workbench/views/audit.vue 4 ●●●● patch | view | raw | blame | history
subPackage/workbench/views/auditList.vue 2 ●●● patch | view | raw | blame | history
subPackage/workbench/views/checkReform.vue 55 ●●●● patch | view | raw | blame | history
subPackage/workbench/views/reformList.vue 3 ●●●● patch | view | raw | blame | history
uni_modules/jushi-signature/components/jushi-signature/jushi-signature.vue 2 ●●● patch | view | raw | blame | history
common/setting.js
@@ -10,7 +10,7 @@
    version: '2.0.0',
    // 开发环境接口Url
    // devUrl: 'http://z4042833u6.wicp.vip',
    devUrl: 'http://192.168.0.101:9528',
    devUrl: 'http://192.168.2.109:9528',
    // devUrl: 'https://srgdjczzxtpt.com:2080/api',
    // devUrl: 'https://kt39592615.goho.co',
    minioBaseUrl: "https://srgdjczzxtpt.com:2080/gminio/jczz/",
subPackage/bs/views/repair.vue
@@ -48,7 +48,7 @@
                        <button class="item-btn" :style="{backgroundColor:i.background}">立即上报</button>
                    </view>
                </view>
                <view class="nav-item" @click="navTo('addRepair')" v-if="curSelectSite.addressType == 2">
                <view class="nav-item" @click="navTo()" v-if="curSelectSite.addressType == 2">
                    <image class="nav-item-bg" src="/static/icon/nav-bg-09.png" mode="aspectFill"></image>
                    <view class="nav-item-inner flex f-d-c">
                        <text class="f-32 mb-30">企业商户上报</text>
@@ -131,7 +131,6 @@
            } else {
                this.address = uni.getStorageSync('siteInfo').name;
            }
        },
        methods: {
@@ -148,9 +147,12 @@
            },
            navTo(item) {
                if (item.path) {
                if (item) {
                    let url = item.path + "?title=" + item.title + "&type=" + item.type
                    this.$u.func.globalNavigator(url, "navTo")
                } else {
                    let url = `addRepair?title=企业商户上报&type="5`
                    this.$u.func.globalNavigator(url, "navTo")
                }
            },
subPackage/house/houseNumber/siteInspect.vue
@@ -60,13 +60,18 @@
                    </u-upload>
                </view>
            </view>
            <view class="flex j-c-s-b a-i-c " @click="showSignature = true">
                <view class="f-28">签名</view>
                <u-icon name="arrow-right"></u-icon>
            <view>
                <view class="f-28 mb-20">签名</view>
                <!-- <u-icon name="arrow-right"></u-icon> -->
                <view class="upload-item upload-icon flex_base" @click="showSignature = true" v-if="!signatureUrl">
                    <u-icon name="/static/icon/upload.png" width="60rpx" height="60rpx"></u-icon>
                </view>
                <view v-if="signatureUrl">
                    <u-image :src="signatureUrl" width="100" height="100" @click="previewImg()"></u-image>
                </view>
            </view>
            <view v-if="signatureUrl">
                <u-image :src="signatureUrl" width="70" height="70" @click="previewImg()"></u-image>
            </view>
        </view>
        <view class="cell bgc-ff" v-if="dangerCount > 0">
subPackage/label/index2.vue
New file
@@ -0,0 +1,311 @@
<template>
    <view class="">
        <!--     <u-navbar height="48" :autoBack="true"  safeAreaInsetTop placeholder  bgColor="transparent"  leftIconColor="#fff">
        </u-navbar> -->
        <view class="top">
            <image class="top-img" src="/static/img/repair-bg.png" mode="aspectFill"></image>
        </view>
        <view class="container">
            <view class="c-ff f-36">请选择您需要的服务</view>
            <view class="serve-box bgc-ff mb-20 flex j-c-s-b a-i-c">
                <view class="flex a-i-c">
                    <u-icon name="/static/icon/nav-09.png" width="91rpx" height="70rpx"></u-icon>
                    <view class="flex f-d-c ml-40">
                        <text class="f-36">总申请</text>
                        <view class="flex a-i-c">
                            <text class="f-48 c-blue fw mr-6">{{count.all}}</text>
                            <text class="f-24 c-99">件</text>
                        </view>
                    </view>
                </view>
                <view class="flex a-i-c">
                    <u-icon name="/static/icon/nav-10.png" width="91rpx" height="70rpx"></u-icon>
                    <view class="flex f-d-c ml-40">
                        <text class="f-36">已处理</text>
                        <view class="flex a-i-c">
                            <text class="f-48 c-green fw mr-6">{{count.processed}}</text>
                            <text class="f-24 c-99">件</text>
                        </view>
                    </view>
                </view>
            </view>
            <view class="site-box bgc-ff flex" v-if="curSiteInfo.name">
                <view class="flex a-i-c">
                    <u-icon name="map-fill" color="#AAAAAA"></u-icon>
                    <text class="f-28 c-aa ml-20">当前小区:</text>
                </view>
                <text class="address f-28">{{curSiteInfo.name}}</text>
            </view>
            <!-- <view class="nav flex flex-wrap j-c-s-b" v-if="isNine == 2">
                <view class="nav-item" v-for="(i,k) in labelList" :key="k" @click="navTo(i.path,k)">
                    <image class="nav-item-bg" :src="i.bgImg" mode="aspectFill"></image>
                    <view class="nav-item-inner flex f-d-c">
                        <text class="f-32 mb-30">{{i.title}}</text>
                        <button class="item-btn" :style="{backgroundColor:i.background}">立即上报</button>
                    </view>
                </view>
            </view> -->
            <view class="nav flex flex-wrap j-c-s-b">
                <view class="nav-item" :key="k" @click="navTo('hotel')">
                    <image class="nav-item-bg" src="/static/icon/nav-bg-12.png" mode="aspectFill"></image>
                    <view class="nav-item-inner flex f-d-c">
                        <text class="f-32 mb-30">消防检查</text>
                        <button class="item-btn" :style="{backgroundColor:'#EC7E51'}">立即上报</button>
                    </view>
                </view>
                <view class="nav-item" :key="k" @click="navTo('form')">
                    <image class="nav-item-bg" src="/static/icon/nav-bg-11.png" mode="aspectFill"></image>
                    <view class="nav-item-inner flex f-d-c">
                        <text class="f-32 mb-30">二手交易</text>
                        <button class="item-btn" :style="{backgroundColor:'#4D98E2'}">立即上报</button>
                    </view>
                </view>
            </view>
        </view>
    </view>
</template>
<script>
    import {
        getReportingCount
    } from '@/api/reporting/reporting.js'
    export default {
        data() {
            return {
                navList: [
                    // {
                    //     title:"取保候审",
                    //     bgImg:"/static/icon/nav-bg-10.png",
                    //     path:"bail",
                    //     background:"#63C875"
                    // },
                    {
                        title: "打金店",
                        bgImg: "/static/icon/nav-bg-11.png",
                        path: "form?type=1",
                        background: "#4D98E2",
                        id: "130808"
                    },
                    {
                        title: "旅馆安全",
                        bgImg: "/static/icon/nav-bg-12.png",
                        path: "hotel",
                        background: "#EC7E51",
                        id: "120101,120102,120103,120104"
                    },
                    {
                        title: "二手车交易",
                        bgImg: "/static/icon/nav-bg-13.png",
                        path: "form?type=3",
                        background: "#F4B862",
                        id: "140304"
                    },
                    {
                        title: "二手手机维修",
                        bgImg: "/static/icon/nav-bg-14.png",
                        path: "form?type=2",
                        background: "#13C6C7",
                        id: "130604"
                    },
                    {
                        title: "校园安全",
                        bgImg: "/static/icon/nav-bg-11.png",
                        path: "school",
                        background: "#4D98E2",
                        id: "160100,160101,160102,160103,160104,160105,160106,160107,160109,160110,160111,160112"
                    }
                ],
                curSiteInfo: {},
                count: {},
                labelList: [],
                isNine: 2,
                isNineHotel: false
            }
        },
        onLoad() {
            let siteInfo = uni.getStorageSync("siteInfo");
            this.curSiteInfo = siteInfo;
            this.isNine = siteInfo.isNine || 2;
            if (siteInfo.isNine == 1) {
                for (let i of this.navList[1]) {
                    if (i.id.includes(siteInfo.categoryList[0].categoryNo)) {
                        this.isNineHotel = true;
                    }
                }
            } else {
                this.getMenu()
            }
            // this.navList = uni.getStorageSync("labelMenuList");
        },
        onShow() {
            this.getCount(uni.getStorageSync("siteInfo").houseCode);
        },
        methods: {
            getMenu() {
                let labelList = this.curSiteInfo.categoryList;
                let navList = this.navList;
                let list = []
                for (let i = 0, ii = labelList.length; i < ii; i++) {
                    for (let k = 0, kk = navList.length; k < kk; k++) {
                        if (navList[k].id.includes(labelList[i].categoryNo)) {
                            list.push(navList[k])
                        }
                    }
                }
                this.labelList = list;
            },
            getCount(code) {
                getReportingCount({
                    houseCode: code
                }).then(res => {
                    console.log(res);
                    this.count = res.data;
                })
            },
            navTo(path, index) {
                // let type = 1;
                // if(index == 1){
                //     type == 1
                // }else if (index == 3){
                //     type = 3
                // }else if(index == 4) {
                //     type = 2
                // }
                // this.$u.func.globalNavigator(`${path}?type=${type}`, "navTo")
                this.$u.func.globalNavigator(path, "navTo")
            }
        }
    }
</script>
<style lang="scss">
    page {
        width: 100%;
        height: 100%;
    }
    .top {
        width: 100%;
        height: 659rpx;
        background: linear-gradient(180deg, #017BFC 0%, rgba(1, 123, 252, 0) 100%);
        position: fixed;
        top: 0;
        left: 0;
        .top-img {
            width: 100%;
            height: 659rpx;
        }
    }
    .container {
        width: 100%;
        padding: 0 30rpx;
        position: fixed;
        box-sizing: border-box;
        top: 40rpx;
        left: 0;
        z-index: 100;
        .serve-box {
            width: 100%;
            height: 213rpx;
            border-radius: 8rpx;
            margin-top: 30rpx;
            padding: 0 60rpx 0 40rpx;
            box-sizing: border-box;
        }
        .f-48 {
            font-size: 48rpx;
        }
        .c-blue {
            color: #677CF8;
        }
        .c-green {
            color: #30D17C;
        }
        .ml-40 {
            margin-left: 40rpx;
        }
        .site-box {
            width: 100%;
            padding: 30rpx;
            box-sizing: border-box;
            border-radius: 4rpx;
            .c-aa {
                color: #aaa;
            }
            .address {
                width: 60%;
                margin-left: 25rpx;
            }
        }
        .nav {
            width: 100%;
            .nav-item,
            .nav-item-bg,
            .nav-item-inner {
                width: 330rpx;
                height: 167rpx;
            }
            .nav-item {
                position: relative;
                margin-top: 30rpx;
            }
            .nav-item-inner {
                padding: 30rpx 30rpx 0;
                position: absolute;
                top: 0;
                left: 0;
            }
            .item-btn {
                width: 125rpx;
                height: 42rpx;
                line-height: 42rpx;
                border-radius: 20rpx;
                color: #fff;
                font-size: 22rpx;
                padding: 0;
                margin: 0;
                border: none;
            }
            .item-btn::after {
                border: none;
            }
        }
    }
</style>
subPackage/workbench/views/audit.vue
@@ -23,7 +23,7 @@
                @click="navTo(i.id,i.reportType,i.status,i.type)">
                <view class="item-title flex a-i-c j-c-s-b mb-20">
                    <text class="f-32 fw">{{i.name}}</text>
                    <u-tag v-if="i.status == 4" text="待接收" type="warning" plain plainFill></u-tag>
                    <u-tag v-if="i.status == 4" text="待完成" type="warning" plain plainFill></u-tag>
                    <u-tag v-if="i.status == 1" text="待审批" type="warning" plain plainFill></u-tag>
                    <u-tag v-if="i.status == 2" text="审核通过" type="success" plain plainFill></u-tag>
                    <u-tag v-if="i.status == 3" text="审核拒绝" type="error" plain plainFill></u-tag>
@@ -63,7 +63,7 @@
                        status: "",
                    },
                    {
                        name: "待接收",
                        name: "待完成",
                        status: 4,
                    },
                    {
subPackage/workbench/views/auditList.vue
@@ -24,7 +24,7 @@
                <view class="item-title flex a-i-c j-c-s-b mb-20" v-if="tabIndex == 0">
                    <text class="f-32 fw" v-if="i.type == 7">消防检查</text>
                    <text class="f-32 fw" v-else>{{i.name}}</text>
                    <u-tag v-if="i.status == 4" text="待接收" type="warning" plain plainFill></u-tag>
                    <u-tag v-if="i.status == 4" text="待完成" type="warning" plain plainFill></u-tag>
                    <u-tag v-if="i.status == 1" text="待审批" type="warning" plain plainFill></u-tag>
                    <u-tag v-if="i.status == 2" text="审核通过" type="success" plain plainFill></u-tag>
                    <u-tag v-if="i.status == 3" text="审核拒绝" type="error" plain plainFill></u-tag>
subPackage/workbench/views/checkReform.vue
@@ -53,7 +53,7 @@
            <text v-if="info.status == 1">待审核</text>
            <text v-if="info.status == 2">审核成功</text>
            <text v-if="info.status == 3">审核驳回</text>
            <text v-if="info.status == 4">待接收</text>
            <text v-if="info.status == 4">待完成</text>
        </view>
        <view class="item-row flex j-c-s-b a-i-c" v-if="info.status == 3 && info.reasonFailure">
            <text>驳回原因</text>
@@ -90,7 +90,7 @@
                            <text class="item-left">{{i.title}}</text>
                            <text>不存在</text>
                        </view> -->
                        <u-collapse ref="collapse" :value="ids" v-if="i.id == n.itemId && n.state == 0">
                        <u-collapse v-if="i.id == n.itemId && n.state == 0" ref="collapse">
                            <u-collapse-item :name="n.itemId" :title="i.title" value="存在">
                                <view class="mb-20" v-if="n.imageUrls">
                                    <view class="f-26 mb-10 c-00">隐患照片</view>
@@ -111,8 +111,8 @@
                                <view class="mb-20" v-if="roleType == 2 || (roleType == 1 && n.rectificationImageUrls)">
                                    <view class="f-26 mb-10 c-00">整改后照片</view>
                                    <u-upload v-if="roleType == 2" :fileList="n.urls"
                                        :previewFullImage="uploadConfig.previewFullImage"
                                    <u-upload v-if="roleType == 2 && (info.status == 4 || info.status == 3)"
                                        :fileList="n.urls" :previewFullImage="uploadConfig.previewFullImage"
                                        :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple"
                                        :maxCount="uploadConfig.maxCount" :capture="uploadConfig.capture"
                                        @afterRead="afterReadImgs($event,n,m)" @delete="deleteImages($event,m)">
@@ -123,7 +123,7 @@
                                    </u-upload>
                                    <view class="flex flex-wrap" v-if="roleType == 1 && n.rectificationImageUrls">
                                    <view class="flex flex-wrap" v-if="info.status != 4 &&  n.rectificationImageUrls ">
                                        <view class="mr-20" v-for="r in ($setImageUrl(n.rectificationImageUrls))">
                                            <u-image :src="r" width="140rpx" height="140rpx"
                                                @click="previewImage($setImageUrl(n.rectificationImageUrls),i)"></u-image>
@@ -133,9 +133,11 @@
                                <view class="" v-if="roleType == 2 || (roleType == 1 && n.rectificationRemark)">
                                    <view class="f-26 mb-10 c-00">整改后描述</view>
                                    <u-textarea v-model="n.rectificationRemark" placeholder="请输入处罚说明内容"
                                        placeholderClass="c-99 f-26" :disabled="roleType == 1?true:false"></u-textarea>
                                    <u-textarea v-model="n.rectificationRemark" placeholder="请输入整改后描述"
                                        placeholderClass="c-99 f-26"
                                        :disabled="roleType == 2 && (info.status == 4 || info.status == 3)?false:true"></u-textarea>
                                </view>
                                <!-- <view class="" style="height:140rpx;"></view> -->
                            </u-collapse-item>
                        </u-collapse>
                    </block>
@@ -188,11 +190,30 @@
            await this.getItem();
            this.getDetail(option.id);
        },
        onReady() {
        // onReady() {
        //     setTimou(() => {
        //         if (this.$refs.collapse) {
        //             this.$nextTick(() => {
        //                 this.$refs.collapse.init();
        //             })
        //         }
        //     }, 300)
        },
        // },
        methods: {
            handleOpenChange(item, index) {
                //根据文档使用$nextTick,获取高度无效,试用setTimeout
                setTimeout(() => {
                    this.$refs.collapse[index].queryRect();
                }, 100);
            },
            getDetail(id) {
                getPlaceCheckReformDetail({
                    taskId: id
@@ -207,7 +228,7 @@
                    }
                    let ids = [];
                    for (let i of data.patrolRecordVOList) {
                        if ((data.status == 1 || data.status == 3) && this.roleType == 2) {
                        if ((data.status == 4 || data.status == 3) && this.roleType == 2) {
                            if (i.rectificationImageUrls) {
                                i.urls = this.$setImageUrl(i.rectificationImageUrls, 2);
                            } else {
@@ -220,15 +241,16 @@
                    }
                    this.ids = ids;
                    this.info = data;
                    // if (this.$refs.collapse) {
                    //     this.$nextTick(() => {
                    //         this.$refs.collapse.init()
                    //     })
                    // }
                    this.$nextTick(() => {
                        this.$refs.collapse.init();
                    })
                })
            },
            getItem() {
                getPlaceCheckItem().then(res => {
@@ -290,7 +312,6 @@
                })
            },
            //整改提交
            submitInfo() {
                uni.showLoading({
@@ -306,7 +327,9 @@
                if (data.status == 3) {
                    data.status = 1;
                }
                if (data.status == 4) {
                    data.status = 1;
                }
                addPlaceCheckReform(data).then(res => {
                    uni.hideLoading()
                    if (res.code == 200) {
subPackage/workbench/views/reformList.vue
@@ -157,7 +157,8 @@
                    page: this.currentPage,
                    size: 20,
                    status: this.currentStatus,
                    frequency: this.frequency
                    frequency: this.frequency,
                    reportType: 8
                }
                if (this.selectDate.length) {
                    params.startTime = this.selectDate[0]
uni_modules/jushi-signature/components/jushi-signature/jushi-signature.vue
@@ -135,7 +135,7 @@
                }
                uni.canvasToTempFilePath({
                    canvasId: 'jushiSignature',
                    fileType: 'jpg',
                    fileType: 'png',
                    quality: 1,
                    success: function(res) {
                        //强制返回base64