8 files modified
1 files added
| | |
| | | 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/", |
| | |
| | | <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> |
| | |
| | | } else { |
| | | this.address = uni.getStorageSync('siteInfo').name; |
| | | } |
| | | |
| | | }, |
| | | |
| | | methods: { |
| | |
| | | }, |
| | | |
| | | 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") |
| | | } |
| | | }, |
| | | |
| | |
| | | </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"> |
| New file |
| | |
| | | <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> |
| | |
| | | @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> |
| | |
| | | status: "", |
| | | }, |
| | | { |
| | | name: "待接收", |
| | | name: "待完成", |
| | | status: 4, |
| | | }, |
| | | { |
| | |
| | | <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> |
| | |
| | | <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> |
| | |
| | | <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> |
| | |
| | | |
| | | <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)"> |
| | |
| | | </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> |
| | |
| | | |
| | | <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> |
| | |
| | | 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 |
| | |
| | | } |
| | | 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 { |
| | |
| | | } |
| | | 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 => { |
| | |
| | | }) |
| | | }, |
| | | |
| | | |
| | | //整改提交 |
| | | submitInfo() { |
| | | uni.showLoading({ |
| | |
| | | if (data.status == 3) { |
| | | data.status = 1; |
| | | } |
| | | |
| | | if (data.status == 4) { |
| | | data.status = 1; |
| | | } |
| | | addPlaceCheckReform(data).then(res => { |
| | | uni.hideLoading() |
| | | if (res.code == 200) { |
| | |
| | | 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.canvasToTempFilePath({ |
| | | canvasId: 'jushiSignature', |
| | | fileType: 'jpg', |
| | | fileType: 'png', |
| | | quality: 1, |
| | | success: function(res) { |
| | | //强制返回base64 |