From bdb3123664234ec9bfe7f43be21fac7250f9479f Mon Sep 17 00:00:00 2001 From: 王恒 <318726284@qq.com> Date: 星期三, 13 八月 2025 20:00:51 +0800 Subject: [PATCH] '修改字段、处理空值' --- policy/reportDetails/reportDetails.vue | 288 ++- qiye/complaint/details.vue | 898 ++++++------ pages/message/details.vue | 363 ++-- policy/policyApply/policyApply.vue | 4 policy/judgeApply/judgeApply.vue | 407 ++-- qiye/complaint/details1.vue | 739 +++++---- common/config.js | 6 policy/translate/translate.vue | 2 qiye/record/details.vue | 1113 +++++++------- policy/applyRecordDetails/applyRecordDetails.vue | 397 ++-- 10 files changed, 2,172 insertions(+), 2,045 deletions(-) diff --git a/common/config.js b/common/config.js index 39a3001..36f7d8b 100644 --- a/common/config.js +++ b/common/config.js @@ -2,14 +2,14 @@ hasHead: true, authCallBackUrl: 'https://wxbank.hnnx.com/mer/payOut/getAuthCode.do?authCallBackUrl=', webURL: 'https://jmy.jinmingyuan.com/ecosphere-user', - serverTempl: "http://172.16.60.20:8086", + serverTempl: "http://172.16.60.251:8086", socketTempl: "wss://yqzx.jinmingyuan.com/wsPerCode", h5Temp: "https://yqzx.jinmingyuan.com/ecosphere-h5", - serverUrl: 'http://172.16.60.20:8086', + serverUrl: 'http://172.16.60.251:8086', h5Url: 'http://172.16.60.172:8086/service-merchant', ftpUrl: 'https://yqzx.jinmingyuan.com/file', // ftpUrl: 'https://echftp.jinmingyuan.com', - baseUrl: 'http://172.16.60.20:8086', + baseUrl: 'http://172.16.60.251:8086', wx_appid: 'wxad8cc511da676bd4', ali_appid: '2021003199690698' } diff --git a/pages/message/details.vue b/pages/message/details.vue index 110fc55..d5c056a 100644 --- a/pages/message/details.vue +++ b/pages/message/details.vue @@ -1,188 +1,201 @@ <template> - <view> - <u-navbar placeholder bgColor="#1171E0FF" leftIconColor="white" :autoBack="true"> - <template slot="center"> - <view style="color: white;">淇℃伅鍏ず璇︽儏</view> - </template> - </u-navbar> - <view class="donw-box"></view> - <view class="page-main"> - <view class="wbox"> - <view class="item"> - <view class="k"> - 鎵ф硶绫诲瀷 - </view> - <view class="v"> - {{type}} - </view> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶浜� - </view> - <view class="v"> - {{msg.executeUser}} - </view> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶閮ㄩ棬 - </view> - <view class="v"> - {{msg.executeDeptName}} - </view> - </view> - <view class="item"> - <view class="k"> - 浼佷笟 - </view> - <view class="v"> - {{msg.companyName}} - </view> - </view> - </view> - <view style="height: 20rpx;"></view> - <view class="wbox"> - <view class="item"> - <view class="k"> - 鎵ф硶涓婚 - </view> - <view class="v"> - {{msg.enforceReason}} - </view> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶杩囩▼ - </view> - </view> - <view class="imgbox"> - <img v-for="(item,index) in img" :key="index" :src="item" class="more" alt="" @click="imgclick(item)" /> - - <!-- <img src="/static/i01.png" class="more" @click="imgclick('/static/i01.png')" alt="" /> + <view> + <u-navbar placeholder bgColor="#1171E0FF" leftIconColor="white" :autoBack="true"> + <template slot="center"> + <view style="color: white;">淇℃伅鍏ず璇︽儏</view> + </template> + </u-navbar> + <view class="donw-box"></view> + <view class="page-main"> + <view class="wbox"> + <view class="item"> + <view class="k"> + 妫�鏌ユ柟寮� + </view> + <view class="v"> + {{type}} + </view> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶浜� + </view> + <view class="v"> + {{msg.executeUser}} + </view> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶閮ㄩ棬 + </view> + <view class="v"> + {{msg.executeDeptName}} + </view> + </view> + <view class="item"> + <view class="k"> + 浼佷笟 + </view> + <view class="v"> + {{msg.companyName}} + </view> + </view> + </view> + <view style="height: 20rpx;"></view> + <view class="wbox"> + <view class="item"> + <view class="k"> + 鎵ф硶涓婚 + </view> + <view class="v"> + {{msg.enforceReason}} + </view> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶杩囩▼ + </view> + </view> + <view class="imgbox"> + <img v-for="(item,index) in img" :key="index" :src="item" class="more" alt="" @click="imgclick(item)" /> + + <!-- <img src="/static/i01.png" class="more" @click="imgclick('/static/i01.png')" alt="" /> <img src="/static/i02.png" class="more" alt="" /> <img src="/static/i03.png" class="more" alt="" /> <img src="/static/i04.png" class="more" alt="" /> --> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶缁撴灉 - </view> - <view class="v" style="color: #EB4746;"> - {{msg.regionReason}} - </view> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶鏃堕棿 - </view> - <view class="v"> - {{msg.executeTime}} - </view> - </view> - </view> - </view> - - </view> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶缁撴灉 + </view> + <view class="v" style="color: #EB4746;"> + {{msg.regionReason}} + </view> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶鏃堕棿 + </view> + <view class="v"> + {{msg.executeTime}} + </view> + </view> + </view> + </view> + + </view> </template> <script> - import { order } from '@/api/index.js' - import { getDicts } from '@/api/data.js' - import { config } from '@/common/config' - - export default { - data() { - return { - msg:{}, - type:'', - img:[], - baseUrl: config.baseUrl - - } - }, - onLoad(options) { - this.getdata(options.id) - }, - methods: { - getdata(id){ - order(id).then(val => { - this.msg = val.data.data - let arr = this.msg.regionImgs.split(","); - for(let i = 0;i<arr.length;i++){ - this.img.push(this.baseUrl+arr[i]) - } - console.log(this.img) - getDicts('enforce_type').then(val => { - const value = val.data.data.find(item => item.dictCode == this.msg.enforceType) - this.type = value.dictLabel - }) - }) - }, - imgclick(url){ - uni.previewImage({ - urls: [url] - }) - } - } - } + import { + order + } from '@/api/index.js' + import { + getDicts + } from '@/api/data.js' + import { + config + } from '@/common/config' + + export default { + data() { + return { + msg: {}, + type: '', + img: [], + baseUrl: config.baseUrl + + } + }, + onLoad(options) { + this.getdata(options.id) + }, + methods: { + getdata(id) { + order(id).then(val => { + this.msg = val.data.data + let arr = this.msg.regionImgs.split(","); + for (let i = 0; i < arr.length; i++) { + this.img.push(this.baseUrl + arr[i]) + } + console.log(this.img) + getDicts('enforce_type').then(val => { + const value = val.data.data.find(item => item.dictCode == this.msg.enforceType) + this.type = value.dictLabel + }) + }) + }, + imgclick(url) { + uni.previewImage({ + urls: [url] + }) + } + } + } </script> <style> - page{ - background: #F4F4F4; - } - + page { + background: #F4F4F4; + } </style> <style lang="scss" scoped> - .page-main{ - position: relative; - top: -380rpx; - } - .donw-box{ - width: 100%; - height: 380rpx; - flex-shrink: 0; - background: linear-gradient(180deg, #1171E0 42.5%, #F4F4F4 100%); - } - .wbox{ - background: #fff; - border-radius: 5px; - padding: 24rpx; - box-sizing: border-box; - margin: 0 32rpx; - .item{ - display: flex; - margin-bottom: 20rpx; - font-size: 30rpx; - .k{ - color: #7E8596; - width: 30%; - - } - .v{ - color: #202D44; - width: 70%; - - } - } - .item:last-child{ - margin-bottom: 0; - } - .imgbox{ - // display: flex; - // flex-wrap: wrap; - // justify-content: space-between; - display: grid; - grid-template-columns: 1fr 1fr 1fr; - grid-gap: 10rpx; - border-radius: 10rpx; - img{ - width: 198rpx; - height: 198rpx; - margin-bottom: 20rpx; - border-radius: 10rpx; - } - } - } + .page-main { + position: relative; + top: -380rpx; + } + + .donw-box { + width: 100%; + height: 380rpx; + flex-shrink: 0; + background: linear-gradient(180deg, #1171E0 42.5%, #F4F4F4 100%); + } + + .wbox { + background: #fff; + border-radius: 5px; + padding: 24rpx; + box-sizing: border-box; + margin: 0 32rpx; + + .item { + display: flex; + margin-bottom: 20rpx; + font-size: 30rpx; + + .k { + color: #7E8596; + width: 30%; + + } + + .v { + color: #202D44; + width: 70%; + + } + } + + .item:last-child { + margin-bottom: 0; + } + + .imgbox { + // display: flex; + // flex-wrap: wrap; + // justify-content: space-between; + display: grid; + grid-template-columns: 1fr 1fr 1fr; + grid-gap: 10rpx; + border-radius: 10rpx; + + img { + width: 198rpx; + height: 198rpx; + margin-bottom: 20rpx; + border-radius: 10rpx; + } + } + } </style> \ No newline at end of file diff --git a/policy/applyRecordDetails/applyRecordDetails.vue b/policy/applyRecordDetails/applyRecordDetails.vue index 2f1f5d4..773e099 100644 --- a/policy/applyRecordDetails/applyRecordDetails.vue +++ b/policy/applyRecordDetails/applyRecordDetails.vue @@ -1,88 +1,88 @@ <template> - <view> - <u-navbar placeholder bgColor="#1171E0FF" leftIconColor="white" :autoBack="true"> - <template slot="center"> - <view style="color: white;">鐢宠璇︽儏</view> - </template> - </u-navbar> - <view class="top-content"></view> - <view class="main-page"> - <view class="status"> - {{mapStatus[details.orderStatus]}} - </view> - <view class="base-card"> - <view class="title"> - <text>鍩烘湰淇℃伅</text> - </view> - <view class="view-form"> - <view class="view-form-item"> - <view class="label">鎵ф硶涓婚</view> - <view>{{details.enforceReason}}</view> - </view> - <view class="view-form-item"> - <view class="label">鎵ф硶瀵硅薄</view> - <view>{{details.companyName}}</view> - </view> - <view class="view-form-item"> - <view class="label">鎵ф硶鏃堕棿</view> - <view>{{details.planTime}}</view> - </view> - <view class="view-form-item"> - <view class="label">鎵ф硶绫诲瀷</view> - <view>{{typeList}}</view> - </view> + <view> + <u-navbar placeholder bgColor="#1171E0FF" leftIconColor="white" :autoBack="true"> + <template slot="center"> + <view style="color: white;">鐢宠璇︽儏</view> + </template> + </u-navbar> + <view class="top-content"></view> + <view class="main-page"> + <view class="status"> + {{mapStatus[details.orderStatus]}} + </view> + <view class="base-card"> + <view class="title"> + <text>鍩烘湰淇℃伅</text> + </view> + <view class="view-form"> + <view class="view-form-item"> + <view class="label">鎵ф硶涓婚</view> + <view>{{details.enforceReason}}</view> + </view> + <view class="view-form-item"> + <view class="label">鎵ф硶瀵硅薄</view> + <view>{{details.companyName}}</view> + </view> + <view class="view-form-item"> + <view class="label">鎵ф硶鏃堕棿</view> + <view>{{details.planTime || details.planMonth || ''}}</view> + </view> + <view class="view-form-item"> + <view class="label">妫�鏌ユ柟寮�</view> + <view>{{typeList}}</view> + </view> - <template v-if="!details.executeUser"> - <view class="view-form-item"> - <view class="label">鎵ф硶浜哄憳</view> - <view>{{details.applyUser}}</view> - </view> - <view class="view-form-item"> - <view class="label">鎵ф硶閮ㄩ棬</view> - <view>{{details.applyDeptName}}</view> - </view> - </template> - <template v-else> - <view class="view-form-item"> - <view class="label">鎵ф硶浜哄憳</view> - <view>{{details.executeUser}}</view> - </view> - <view class="view-form-item"> - <view class="label">鎵ф硶閮ㄩ棬</view> - <view>{{details.executeDeptName}}</view> - </view> - </template> - <view class="view-form-item" > - <view class="label">闅忚浜哄憳</view> - <view> - <view v-for="(item,index) in details.peers" :key="index"> - {{item.peerUser}}({{item.peerDeptName}}) - </view> - </view> - </view> - <view class="view-form-item"> - <view class="label">鏄惁閫氱煡浼佷笟</view> - <view>{{details.isNoticeCompany == 0 ? '鍚�': '鏄�'}}</view> - </view> - <view class="view-form-item"> - <view class="label">鐢宠鏃堕棿</view> - <view>{{details.applyTime}}</view> - </view> - <view class="view-form-item"> - <view class="label">褰撳墠鐘舵��</view> - <view>{{mapStatus[details.orderStatus]}}</view> - </view> - </view> - </view> - <view class="base-card"> - <view class="title"> - <text>鎵ф硶鍐呭</text> - </view> - <view class="view-content"> - {{ details.enforceContent }} - </view> - </view> - <!-- <view class="base-card" v-if="judgeDetails.length"> + <template v-if="!details.executeUser"> + <view class="view-form-item"> + <view class="label">鎵ф硶浜哄憳</view> + <view>{{details.applyUser || ''}}</view> + </view> + <view class="view-form-item"> + <view class="label">鎵ф硶閮ㄩ棬</view> + <view>{{details.applyDeptName || details.applyDeptNames || ''}}</view> + </view> + </template> + <template v-else> + <view class="view-form-item"> + <view class="label">鎵ф硶浜哄憳</view> + <view>{{details.executeUser}}</view> + </view> + <view class="view-form-item"> + <view class="label">鎵ф硶閮ㄩ棬</view> + <view>{{details.executeDeptName}}</view> + </view> + </template> + <view class="view-form-item"> + <view class="label">闅忚浜哄憳</view> + <view> + <view v-for="(item,index) in details.peers" :key="index"> + {{item.peerUser}}({{item.peerDeptName}}) + </view> + </view> + </view> + <view class="view-form-item"> + <view class="label">鏄惁閫氱煡浼佷笟</view> + <view>{{details.isNoticeCompany == 0 ? '鍚�': '鏄�'}}</view> + </view> + <view class="view-form-item"> + <view class="label">鐢宠鏃堕棿</view> + <view>{{details.applyTime}}</view> + </view> + <view class="view-form-item"> + <view class="label">褰撳墠鐘舵��</view> + <view>{{mapStatus[details.orderStatus]}}</view> + </view> + </view> + </view> + <view class="base-card"> + <view class="title"> + <text>鎵ф硶鍐呭</text> + </view> + <view class="view-content"> + {{ details.enforceContent }} + </view> + </view> + <!-- <view class="base-card" v-if="judgeDetails.length"> <view class="title"> <text>瀹℃壒鎯呭喌</text> </view> @@ -108,31 +108,34 @@ </view> </view> </view> --> - <view class="base-card" v-if="(details.orderStatus == 3 || details.orderStatus == 4) && details.regionImgs && details.regionImgs.length"> - <view class="title"> - <text>鎵ф硶鍥剧墖</text> - </view> - <view class="view-image"> - <image :src="baseUrl+item" @click="previewImage(details.regionImgs, index)" mode="aspectFill" v-for="(item,index) in details.regionImgs" :key="index"></image> - </view> - </view> - <view class="base-card"> - <view class="title"> - <text>鎵ф硶杩涘害</text> - </view> - <view class="view-step"> - <view class="step-content" :class="{none: index == nodeList.length - 1}" v-for="(item,index) in nodeList" :key="index"> - <image class="icon" src="/static/policy/icon.png" mode="widthFix" v-if="!item.nodeReason"></image> - <image src="/static/policy/refject.png" mode="widthFix" class="icon" v-else></image> - <view class="top-title"> - {{item.nodeName}} - </view> - <view class="down-tips"> - <view class=" submit-per">鎻愪氦浜猴細<text>{{item.nodeUser}}</text></view> - <view class="time">{{item.nodeTime}}</view> - </view> - </view> - <!-- <view class="step-content"> + <view class="base-card" + v-if="(details.orderStatus == 3 || details.orderStatus == 4) && details.regionImgs && details.regionImgs.length"> + <view class="title"> + <text>鎵ф硶鍥剧墖</text> + </view> + <view class="view-image"> + <image :src="baseUrl+item" @click="previewImage(details.regionImgs, index)" mode="aspectFill" + v-for="(item,index) in details.regionImgs" :key="index"></image> + </view> + </view> + <view class="base-card"> + <view class="title"> + <text>鎵ф硶杩涘害</text> + </view> + <view class="view-step"> + <view class="step-content" :class="{none: index == nodeList.length - 1}" v-for="(item,index) in nodeList" + :key="index"> + <image class="icon" src="/static/policy/icon.png" mode="widthFix" v-if="!item.nodeReason"></image> + <image src="/static/policy/refject.png" mode="widthFix" class="icon" v-else></image> + <view class="top-title"> + {{item.nodeName}} + </view> + <view class="down-tips"> + <view class=" submit-per" v-if="item.nodeUser">鎻愪氦浜猴細<text>{{item.nodeUser}}</text></view> + <view class="time">{{item.nodeTime}}</view> + </view> + </view> + <!-- <view class="step-content"> <image class="icon" src="/static/policy/icon.png" mode="widthFix"></image> <view class="top-title"> 瀹℃壒閫氳繃 @@ -153,95 +156,103 @@ <view class="time">2024-06-07 12:14</view> </view> </view> --> - </view> - </view> - </view> - </view> + </view> + </view> + </view> + </view> </template> <script> - import { - orderDetails, - orderNodeList, - enforceLogList - } from '@/api/policy.js' - import { getDicts } from '@/api/data.js' - import { config } from '@/common/config' - export default { - data() { - return { - details: {}, - nodeList: [], - mapStatus: { - 1: '寰呭鎵�', - 2: "寰呮墽琛�", - 3: "寰呬笂鎶�", - '-1':"宸叉嫆缁�", - 4: "宸蹭笂鎶�", - 5: "浼佷笟宸插幓浜�" - }, - typeList: '', - judgeDetails: [], - baseUrl: config.baseUrl - } - }, - onLoad(options) { - this.getDetails(options.id) - this.orderNodeList(options.id) - this.enforceLogList(options.id) - if(options.setTitle) { - uni.setNavigationBarTitle({ - title: '' - }) - } - }, - methods: { - getDetails(orderId) { - orderDetails({ - orderId - }).then(val => { - this.details = val.data.data - if(this.details.regionImgs){ - this.details.regionImgs = this.details.regionImgs.split(",") - } - this.getDicts() - }) - }, - // 鑺傜偣 - orderNodeList(orderId) { - orderNodeList({orderId}).then(val => { - this.nodeList = val.data.data - }) - }, - // 鐢宠璁板綍 - enforceLogList(orderId) { - enforceLogList({orderId}).then(val => { - // console.log(val.data.rows) - this.judgeDetails = val.data.rows - }) - }, - getDicts() { - getDicts('enforce_type').then(val => { - const value = val.data.data.find(item => item.dictCode == this.details.enforceType) - this.typeList = value.dictLabel - }) - }, - previewImage(list, index) { - const data = list.map(item => this.baseUrl + item) - console.log(data) - uni.previewImage({ - urls: data, - current: index - }) - } - } - } + import { + orderDetails, + orderNodeList, + enforceLogList + } from '@/api/policy.js' + import { + getDicts + } from '@/api/data.js' + import { + config + } from '@/common/config' + export default { + data() { + return { + details: {}, + nodeList: [], + mapStatus: { + 1: '寰呭鎵�', + 2: "寰呮墽琛�", + 3: "寰呬笂鎶�", + '-1': "宸叉嫆缁�", + 4: "宸蹭笂鎶�", + 5: "浼佷笟宸插幓浜�" + }, + typeList: '', + judgeDetails: [], + baseUrl: config.baseUrl + } + }, + onLoad(options) { + this.getDetails(options.id) + this.orderNodeList(options.id) + this.enforceLogList(options.id) + if (options.setTitle) { + uni.setNavigationBarTitle({ + title: '' + }) + } + }, + methods: { + getDetails(orderId) { + orderDetails({ + orderId + }).then(val => { + this.details = val.data.data + if (this.details.regionImgs) { + this.details.regionImgs = this.details.regionImgs.split(",") + } + this.getDicts() + }) + }, + // 鑺傜偣 + orderNodeList(orderId) { + orderNodeList({ + orderId + }).then(val => { + this.nodeList = val.data.data + }) + }, + // 鐢宠璁板綍 + enforceLogList(orderId) { + enforceLogList({ + orderId + }).then(val => { + // console.log(val.data.rows) + this.judgeDetails = val.data.rows + }) + }, + getDicts() { + getDicts('enforce_type').then(val => { + const value = val.data.data.find(item => item.dictCode == this.details.enforceType) + this.typeList = value.dictLabel + }) + }, + previewImage(list, index) { + const data = list.map(item => this.baseUrl + item) + console.log(data) + uni.previewImage({ + urls: data, + current: index + }) + } + } + } </script> <style> - page { - background-color: #F4F4F4; - } + page { + background-color: #F4F4F4; + } </style> <style lang="scss" scoped> - @import "./applyRecordDetails.scss"; -</style> + @import "./applyRecordDetails.scss"; +</style> \ No newline at end of file diff --git a/policy/judgeApply/judgeApply.vue b/policy/judgeApply/judgeApply.vue index 4342bcd..c009fb4 100644 --- a/policy/judgeApply/judgeApply.vue +++ b/policy/judgeApply/judgeApply.vue @@ -1,88 +1,88 @@ <template> - <view> - <u-navbar placeholder bgColor="#1171E0FF" leftIconColor="white" :autoBack="true"> - <template slot="center"> - <view style="color: white;">瀹℃壒璇︽儏</view> - </template> - </u-navbar> - <view class="top-content"></view> - <view class="main-page"> - <view class="status"> - {{mapStatus[details.checkStatus]}} - </view> - <view class="base-card"> - <view class="title"> - <text>鍩烘湰淇℃伅</text> - </view> - <view class="view-form"> - <view class="view-form-item"> - <view class="label">鎵ф硶涓婚</view> - <view>{{details.enforceReason}}</view> - </view> - <view class="view-form-item"> - <view class="label">鎵ф硶瀵硅薄</view> - <view>{{details.companyName}}</view> - </view> - <view class="view-form-item"> - <view class="label">鎵ф硶鏃堕棿</view> - <view>{{details.planTime}}</view> - </view> - <view class="view-form-item"> - <view class="label">鎵ф硶绫诲瀷</view> - <view>{{typeList}}</view> - </view> - - <template v-if="!details.executeUser"> - <view class="view-form-item"> - <view class="label">鎵ф硶浜哄憳</view> - <view>{{details.applyUser}}</view> - </view> - <view class="view-form-item"> - <view class="label">鎵ф硶閮ㄩ棬</view> - <view>{{details.applyDeptName}}</view> - </view> - </template> - <template v-else> - <view class="view-form-item"> - <view class="label">鎵ф硶浜哄憳</view> - <view>{{details.executeUser}}</view> - </view> - <view class="view-form-item"> - <view class="label">鎵ф硶閮ㄩ棬</view> - <view>{{details.executeDeptName}}</view> - </view> - </template> - <view class="view-form-item" > - <view class="label">闅忚浜哄憳</view> - <view> - <view v-for="(item,index) in details.peers" :key="index"> - {{item.peerUser}}({{item.peerDeptName}}) - </view> - </view> - </view> - <view class="view-form-item"> - <view class="label">鏄惁閫氱煡浼佷笟</view> - <view>{{details.isNoticeCompany == 0 ? '鍚�': '鏄�'}}</view> - </view> - <view class="view-form-item"> - <view class="label">鐢宠鏃堕棿</view> - <view>{{details.applyTime}}</view> - </view> - <view class="view-form-item"> - <view class="label">褰撳墠鐘舵��</view> - <view>{{mapStatus[details.checkStatus]}}</view> - </view> - </view> - </view> - <view class="base-card"> - <view class="title"> - <text>鎵ф硶鍐呭</text> - </view> - <view class="view-content"> - {{ details.enforceContent }} - </view> - </view> - <!-- <view class="base-card" v-if="judgeDetails.length"> + <view> + <u-navbar placeholder bgColor="#1171E0FF" leftIconColor="white" :autoBack="true"> + <template slot="center"> + <view style="color: white;">瀹℃壒璇︽儏</view> + </template> + </u-navbar> + <view class="top-content"></view> + <view class="main-page"> + <view class="status"> + {{mapStatus[details.checkStatus]}} + </view> + <view class="base-card"> + <view class="title"> + <text>鍩烘湰淇℃伅</text> + </view> + <view class="view-form"> + <view class="view-form-item"> + <view class="label">鎵ф硶涓婚</view> + <view>{{details.enforceReason}}</view> + </view> + <view class="view-form-item"> + <view class="label">鎵ф硶瀵硅薄</view> + <view>{{details.companyName}}</view> + </view> + <view class="view-form-item"> + <view class="label">鎵ф硶鏃堕棿</view> + <view>{{details.planTime}}</view> + </view> + <view class="view-form-item"> + <view class="label">妫�鏌ユ柟寮�</view> + <view>{{typeList}}</view> + </view> + + <template v-if="!details.executeUser"> + <view class="view-form-item"> + <view class="label">鎵ф硶浜哄憳</view> + <view>{{details.applyUser}}</view> + </view> + <view class="view-form-item"> + <view class="label">鎵ф硶閮ㄩ棬</view> + <view>{{details.applyDeptName}}</view> + </view> + </template> + <template v-else> + <view class="view-form-item"> + <view class="label">鎵ф硶浜哄憳</view> + <view>{{details.executeUser}}</view> + </view> + <view class="view-form-item"> + <view class="label">鎵ф硶閮ㄩ棬</view> + <view>{{details.executeDeptName}}</view> + </view> + </template> + <view class="view-form-item"> + <view class="label">闅忚浜哄憳</view> + <view> + <view v-for="(item,index) in details.peers" :key="index"> + {{item.peerUser}}({{item.peerDeptName}}) + </view> + </view> + </view> + <view class="view-form-item"> + <view class="label">鏄惁閫氱煡浼佷笟</view> + <view>{{details.isNoticeCompany == 0 ? '鍚�': '鏄�'}}</view> + </view> + <view class="view-form-item"> + <view class="label">鐢宠鏃堕棿</view> + <view>{{details.applyTime}}</view> + </view> + <view class="view-form-item"> + <view class="label">褰撳墠鐘舵��</view> + <view>{{mapStatus[details.checkStatus]}}</view> + </view> + </view> + </view> + <view class="base-card"> + <view class="title"> + <text>鎵ф硶鍐呭</text> + </view> + <view class="view-content"> + {{ details.enforceContent }} + </view> + </view> + <!-- <view class="base-card" v-if="judgeDetails.length"> <view class="title"> <text>瀹℃壒鎯呭喌</text> </view> @@ -108,31 +108,34 @@ </view> </view> </view> --> - <view class="base-card" v-if="(details.orderStatus == 3 || details.orderStatus == 4) && details.regionImgs && details.regionImgs.length"> - <view class="title"> - <text>鎵ф硶鍥剧墖</text> - </view> - <view class="view-image"> - <image :src="baseUrl+item" @click="previewImage(details.regionImgs, index)" mode="aspectFill" v-for="(item,index) in details.regionImgs" :key="index"></image> - </view> - </view> - <view class="base-card"> - <view class="title"> - <text>瀹℃壒杩涘害</text> - </view> - <view class="view-step"> - <view class="step-content" :class="{none: index == nodeList.length - 1}" v-for="(item,index) in nodeList" :key="index"> - <image class="icon" src="/static/policy/icon.png" mode="widthFix" v-if="!item.nodeReason"></image> - <image src="/static/policy/refject.png" mode="widthFix" class="icon" v-else></image> - <view class="top-title"> - {{item.nodeName}} - </view> - <view class="down-tips"> - <view class=" submit-per">鎻愪氦浜猴細<text>{{item.nodeUser}}</text></view> - <view class="time">{{item.nodeTime}}</view> - </view> - </view> - <!-- <view class="step-content"> + <view class="base-card" + v-if="(details.orderStatus == 3 || details.orderStatus == 4) && details.regionImgs && details.regionImgs.length"> + <view class="title"> + <text>鎵ф硶鍥剧墖</text> + </view> + <view class="view-image"> + <image :src="baseUrl+item" @click="previewImage(details.regionImgs, index)" mode="aspectFill" + v-for="(item,index) in details.regionImgs" :key="index"></image> + </view> + </view> + <view class="base-card"> + <view class="title"> + <text>瀹℃壒杩涘害</text> + </view> + <view class="view-step"> + <view class="step-content" :class="{none: index == nodeList.length - 1}" v-for="(item,index) in nodeList" + :key="index"> + <image class="icon" src="/static/policy/icon.png" mode="widthFix" v-if="!item.nodeReason"></image> + <image src="/static/policy/refject.png" mode="widthFix" class="icon" v-else></image> + <view class="top-title"> + {{item.nodeName}} + </view> + <view class="down-tips"> + <view class=" submit-per">鎻愪氦浜猴細<text>{{item.nodeUser}}</text></view> + <view class="time">{{item.nodeTime}}</view> + </view> + </view> + <!-- <view class="step-content"> <image class="icon" src="/static/policy/icon.png" mode="widthFix"></image> <view class="top-title"> 瀹℃壒閫氳繃 @@ -153,100 +156,108 @@ <view class="time">2024-06-07 12:14</view> </view> </view> --> - </view> - </view> - </view> - </view> + </view> + </view> + </view> + </view> </template> <script> - import { - orderDetails, - orderNodeList, - enforceLogList - } from '@/api/policy.js' - import { getDicts } from '@/api/data.js' - import { config } from '@/common/config' - export default { - data() { - return { - details: {}, - nodeList: [], - mapStatus: { - // 1: '寰呭鎵�', - // 2: "寰呮墽琛�", - // 3: "寰呬笂鎶�", - // '-1':"宸叉嫆缁�", - // 4: "宸茬粨鏉�" - // -1鎷掔粷锛�0寰呭鎵癸紝1瀹℃壒涓紝2閫氳繃 - "-1": '宸叉嫆缁�', - 0: '寰呭鎵�', - 1: '瀹℃壒涓�', - 2: "宸插鎵�" - }, - - typeList: '', - judgeDetails: [], - baseUrl: config.baseUrl - } - }, - onLoad(options) { - this.getDetails(options.id) - this.orderNodeList(options.id) - this.enforceLogList(options.id) - if(options.setTitle) { - uni.setNavigationBarTitle({ - title: '' - }) - } - }, - methods: { - getDetails(orderId) { - orderDetails({ - orderId - }).then(val => { - this.details = val.data.data - if(this.details.regionImgs){ - this.details.regionImgs = this.details.regionImgs.split(",") - } - this.getDicts() - }) - }, - // 鑺傜偣 - orderNodeList(orderId) { - orderNodeList({orderId}).then(val => { - this.nodeList = val.data.data - }) - }, - // 鐢宠璁板綍 - enforceLogList(orderId) { - enforceLogList({orderId}).then(val => { - // console.log(val.data.rows) - this.judgeDetails = val.data.rows - }) - }, - getDicts() { - getDicts('enforce_type').then(val => { - const value = val.data.data.find(item => item.dictCode == this.details.enforceType) - this.typeList = value.dictLabel - }) - }, - previewImage(list, index) { - const data = list.map(item => this.baseUrl + item) - console.log(data) - uni.previewImage({ - urls: data, - current: index - }) - } - } - } + import { + orderDetails, + orderNodeList, + enforceLogList + } from '@/api/policy.js' + import { + getDicts + } from '@/api/data.js' + import { + config + } from '@/common/config' + export default { + data() { + return { + details: {}, + nodeList: [], + mapStatus: { + // 1: '寰呭鎵�', + // 2: "寰呮墽琛�", + // 3: "寰呬笂鎶�", + // '-1':"宸叉嫆缁�", + // 4: "宸茬粨鏉�" + // -1鎷掔粷锛�0寰呭鎵癸紝1瀹℃壒涓紝2閫氳繃 + "-1": '宸叉嫆缁�', + 0: '寰呭鎵�', + 1: '瀹℃壒涓�', + 2: "宸插鎵�" + }, + + typeList: '', + judgeDetails: [], + baseUrl: config.baseUrl + } + }, + onLoad(options) { + this.getDetails(options.id) + this.orderNodeList(options.id) + this.enforceLogList(options.id) + if (options.setTitle) { + uni.setNavigationBarTitle({ + title: '' + }) + } + }, + methods: { + getDetails(orderId) { + orderDetails({ + orderId + }).then(val => { + this.details = val.data.data + if (this.details.regionImgs) { + this.details.regionImgs = this.details.regionImgs.split(",") + } + this.getDicts() + }) + }, + // 鑺傜偣 + orderNodeList(orderId) { + orderNodeList({ + orderId + }).then(val => { + this.nodeList = val.data.data + }) + }, + // 鐢宠璁板綍 + enforceLogList(orderId) { + enforceLogList({ + orderId + }).then(val => { + // console.log(val.data.rows) + this.judgeDetails = val.data.rows + }) + }, + getDicts() { + getDicts('enforce_type').then(val => { + const value = val.data.data.find(item => item.dictCode == this.details.enforceType) + this.typeList = value.dictLabel + }) + }, + previewImage(list, index) { + const data = list.map(item => this.baseUrl + item) + console.log(data) + uni.previewImage({ + urls: data, + current: index + }) + } + } + } </script> <style> - page { - background-color: #F4F4F4; - } + page { + background-color: #F4F4F4; + } </style> <style lang="scss" scoped> - @import "./judgeApply.scss"; + @import "./judgeApply.scss"; </style> \ No newline at end of file diff --git a/policy/policyApply/policyApply.vue b/policy/policyApply/policyApply.vue index e81b0d1..0162820 100644 --- a/policy/policyApply/policyApply.vue +++ b/policy/policyApply/policyApply.vue @@ -29,7 +29,7 @@ </view> <view class="form-item" @click="showType = true"> <view class="form-label require"> - 鎵ф硶绫诲瀷 + 妫�鏌ユ柟寮� </view> <view class="input"> <input type="text" placeholder="璇烽�夋嫨" v-model.trim="form.enforceTypeName" disabled /> @@ -252,7 +252,7 @@ return '璇峰~鍐欐墽娉曟椂闂�' } if (!this.form.enforceTypeName) { - return '璇烽�夋嫨鎵ф硶绫诲瀷' + return '璇烽�夋嫨妫�鏌ユ柟寮�' } console.log(!this.form.enforceContent.replace(/\s+/g, "")) if (!this.form.enforceContent || !this.form.enforceContent.replace(/\s+/g, "")) { diff --git a/policy/reportDetails/reportDetails.vue b/policy/reportDetails/reportDetails.vue index b7090eb..0c9453e 100644 --- a/policy/reportDetails/reportDetails.vue +++ b/policy/reportDetails/reportDetails.vue @@ -1,149 +1,157 @@ <template> - <view class="page-box"> - <view class="box"> - <view class="form"> - <view class="form-item"> - <view class="label">鎵ф硶涓婚</view> - <view class="input">{{details.enforceReason}}</view> - </view> - <view class="form-item"> - <view class="label">鎵ф硶瀵硅薄</view> - <view class="input">{{details.companyName}}</view> - </view> - <view class="form-item"> - <view class="label">鎵ф硶鏃堕棿</view> - <view class="input">{{details.planTime}}</view> - </view> - <view class="form-item"> - <view class="label">鎵ф硶绫诲瀷</view> - <view class="input">{{enforceType}}</view> - </view> - <view class="form-item"> - <view class="label">鎵ф硶浜哄憳</view> - <view class="input">{{details.executeUser}}</view> - </view> - <view class="form-item"> - <view class="label">鎵ф硶閮ㄩ棬</view> - <view class="input">{{details.executeDeptName}}</view> - </view> - </view> - </view> - <view class="box"> - <view class="form-input"> - <view class="form-input-item" style="margin-bottom: 40rpx;"> - <view class="form-label require" style="margin-bottom: 40rpx;">鎵ф硶缁撴灉</view> - <view> - <u-radio-group v-model="form.regionStatus"> - <u-radio shape="circle" label="姝e父" name="0"></u-radio> - <u-radio shape="circle" label="寰呮暣鏀�" name="1"></u-radio> - </u-radio-group> - </view> - </view> - <view class="form-input-item"> - <view class="form-label require">鎵ф硶缁撴灉璇存槑</view> - <u-textarea placeholder="璇疯緭鍏�..." count v-model="form.regionReason" maxlength="500"></u-textarea> - </view> - - <view class="form-input-item"> - <view class="form-label require">鎵ф硶鐓х墖</view> - <view> - <view class="show-hint">鍙笂浼�9寮犲浘锛屽崟寮犱笉寰楄秴杩�10M</view> - </view> - <view> - <uploadImage ref="uploadImage"></uploadImage> - </view> - </view> - </view> - </view> - <view class="down"> - <view class="button" @click="startReport"> - 涓婃姤缁撴灉 - </view> - </view> - </view> + <view class="page-box"> + <view class="box"> + <view class="form"> + <view class="form-item"> + <view class="label">鎵ф硶涓婚</view> + <view class="input">{{details.enforceReason}}</view> + </view> + <view class="form-item"> + <view class="label">鎵ф硶瀵硅薄</view> + <view class="input">{{details.companyName}}</view> + </view> + <view class="form-item"> + <view class="label">鎵ф硶鏃堕棿</view> + <view class="input">{{details.planTime}}</view> + </view> + <view class="form-item"> + <view class="label">妫�鏌ユ柟寮�</view> + <view class="input">{{enforceType}}</view> + </view> + <view class="form-item"> + <view class="label">鎵ф硶浜哄憳</view> + <view class="input">{{details.executeUser}}</view> + </view> + <view class="form-item"> + <view class="label">鎵ф硶閮ㄩ棬</view> + <view class="input">{{details.executeDeptName}}</view> + </view> + </view> + </view> + <view class="box"> + <view class="form-input"> + <view class="form-input-item" style="margin-bottom: 40rpx;"> + <view class="form-label require" style="margin-bottom: 40rpx;">鎵ф硶缁撴灉</view> + <view> + <u-radio-group v-model="form.regionStatus"> + <u-radio shape="circle" label="姝e父" name="0"></u-radio> + <u-radio shape="circle" label="寰呮暣鏀�" name="1"></u-radio> + </u-radio-group> + </view> + </view> + <view class="form-input-item"> + <view class="form-label require">鎵ф硶缁撴灉璇存槑</view> + <u-textarea placeholder="璇疯緭鍏�..." count v-model="form.regionReason" maxlength="500"></u-textarea> + </view> + + <view class="form-input-item"> + <view class="form-label require">鎵ф硶鐓х墖</view> + <view> + <view class="show-hint">鍙笂浼�9寮犲浘锛屽崟寮犱笉寰楄秴杩�10M</view> + </view> + <view> + <uploadImage ref="uploadImage"></uploadImage> + </view> + </view> + </view> + </view> + <view class="down"> + <view class="button" @click="startReport"> + 涓婃姤缁撴灉 + </view> + </view> + </view> </template> <script> - import uploadImage from '@/policy/components/upload.vue' - import { orderDetails,orderUpd } from '@/api/policy.js' - import { getDicts } from '@/api/data.js' - export default { - components: { - uploadImage - }, - data() { - return { - form: { - regionReason: '', - regionStatus: '0' - }, - fileList1: [], - details: {}, - enforceType: "" - } - }, - onLoad(options) { - this.orderDetails(options.id) - }, - methods: { - // 鑾峰彇鎵ф硶绫诲瀷鏋氫妇 - getDicts() { - getDicts('enforce_type').then(val => { - if(val.data.data) { - this.enforceType = val.data.data.find(item => item.dictCode == this.details.enforceType).dictLabel - } - }) - }, - // 鑾峰彇鎵ф硶鍗曡鎯� - orderDetails(id) { - orderDetails({orderId: id}).then(val => { - this.details = val.data.data - this.getDicts() - }) - }, - // 涓婃姤鎵ц缁撴灉 - startReport() { - if(!this.form.regionReason){ - uni.showToast({ - title: '璇峰~鍐欐墽娉曠粨鏋�', - icon: 'none' - }) - return - } - const image = this.$refs.uploadImage.imageList - if(!image.length){ - uni.showToast({ - title: '璇蜂笂浼犳墽娉曞浘鐗�', - icon: 'none' - }) - return - } - this.details.regionReason = this.form.regionReason - this.form.regionImgs = image.join() - this.form.orderId = this.details.orderId - orderUpd(this.form).then(val =>{ - if(val.data.code == 200) { - uni.showToast({ - title: '涓婃姤鎴愬姛', - icon: 'none' - }) - setTimeout(() => { - uni.navigateBack() - }, 500) - } - }) - } - } - } + import uploadImage from '@/policy/components/upload.vue' + import { + orderDetails, + orderUpd + } from '@/api/policy.js' + import { + getDicts + } from '@/api/data.js' + export default { + components: { + uploadImage + }, + data() { + return { + form: { + regionReason: '', + regionStatus: '0' + }, + fileList1: [], + details: {}, + enforceType: "" + } + }, + onLoad(options) { + this.orderDetails(options.id) + }, + methods: { + // 鑾峰彇鎵ф硶绫诲瀷鏋氫妇 + getDicts() { + getDicts('enforce_type').then(val => { + if (val.data.data) { + this.enforceType = val.data.data.find(item => item.dictCode == this.details.enforceType).dictLabel + } + }) + }, + // 鑾峰彇鎵ф硶鍗曡鎯� + orderDetails(id) { + orderDetails({ + orderId: id + }).then(val => { + this.details = val.data.data + this.getDicts() + }) + }, + // 涓婃姤鎵ц缁撴灉 + startReport() { + if (!this.form.regionReason) { + uni.showToast({ + title: '璇峰~鍐欐墽娉曠粨鏋�', + icon: 'none' + }) + return + } + const image = this.$refs.uploadImage.imageList + if (!image.length) { + uni.showToast({ + title: '璇蜂笂浼犳墽娉曞浘鐗�', + icon: 'none' + }) + return + } + this.details.regionReason = this.form.regionReason + this.form.regionImgs = image.join() + this.form.orderId = this.details.orderId + orderUpd(this.form).then(val => { + if (val.data.code == 200) { + uni.showToast({ + title: '涓婃姤鎴愬姛', + icon: 'none' + }) + setTimeout(() => { + uni.navigateBack() + }, 500) + } + }) + } + } + } </script> <style> - page { - background-color: #F4F4F4; - } + page { + background-color: #F4F4F4; + } </style> <style lang="scss" scoped> - @import "./reportDetails.scss"; - ::v-deep .u-radio{ - margin-right: 80rpx; - } + @import "./reportDetails.scss"; + + ::v-deep .u-radio { + margin-right: 80rpx; + } </style> \ No newline at end of file diff --git a/policy/translate/translate.vue b/policy/translate/translate.vue index 6f7e592..fb41d6e 100644 --- a/policy/translate/translate.vue +++ b/policy/translate/translate.vue @@ -40,7 +40,7 @@ <text>鎵ф硶涓婚锛�</text>{{item.enforceReason}} </view> <view class="set-line"> - <text>鎵ф硶绫诲瀷锛�</text>{{handlerType(item.enforceType)}} + <text>妫�鏌ユ柟寮忥細</text>{{handlerType(item.enforceType)}} </view> <view class="set-line set-line-flex"> <text>鎵ф硶鍐呭锛�</text> diff --git a/qiye/complaint/details.vue b/qiye/complaint/details.vue index 48e1d70..02c90df 100644 --- a/qiye/complaint/details.vue +++ b/qiye/complaint/details.vue @@ -1,433 +1,469 @@ -<template> - <view> - <u-navbar placeholder bgColor="#1171E0FF" leftIconColor="white" :autoBack="true"> - <template slot="center"> - <view style="color: white;">鎶曡瘔璁板綍</view> - </template> - </u-navbar> - <view class="donw-box"></view> - <view class="page-main"> - <view class="title"> - <template v-if="msg.orderStatus>2&&msg.isEva==0">宸叉墽娉曞緟璇勪环</template> - <template v-if="msg.orderStatus>2&&msg.isEva==1">宸茶瘎浠�</template> - <template v-if="msg.orderStatus==2">寰呮墽娉�</template> - </view> - <view class="wbox"> - <view class="item" v-if="dictLabel"> - <view class="k"> - 鎵ф硶绫诲瀷 - </view> - <view class="v"> - {{dictLabel}} - </view> - </view> - <view class="item" v-if="details.executeUser"> - <view class="k"> - 鎵ф硶浜� - </view> - <view class="v"> - {{details.executeUser}} - </view> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶閮ㄩ棬 - </view> - <view class="v"> - {{details.executeDeptName}} - </view> - </view> - <view class="item"> - <view class="k"> - 浼佷笟 - </view> - <view class="v"> - {{details.companyName}} - </view> - </view> - </view> - <view style="height: 20rpx;"></view> - <template v-if="orderId"> - <view class="wbox"> - <view class="item"> - <view class="k"> - 鎵ф硶涓婚 - </view> - <view class="v"> - {{details.enforceReason}} - </view> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶杩囩▼ - </view> - </view> - <view class="imgbox"> - <img :src="baseUrl+item" v-for="(item,index) in orderDetailsMsg.regionImgs" :key="index" class="more" @click="imgclick(item)" alt="" /> - - </view> - <view class="item"> - <view class="k"> - 鎵ф硶缁撴灉 - </view> - <view class="v" style="color: #EB4746;"> - <!-- {{details.regionStatus == 0? "姝e父" : "鍋滀笟鏁撮】" }} --> - {{orderDetailsMsg.regionReason}} - </view> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶鏃堕棿 - </view> - <view class="v"> - {{details.executeTime}} - </view> - </view> - </view> - <view style="height: 20rpx;"></view> - </template> - <view class="wbox2"> - <view class="t"> - 鎶曡瘔璁板綍 - </view> - <view class="jilu" :class="{start: item.nodeName == '鍙戣捣鎶曡瘔' || item.nodeName == '宸插姙缁�', handler: item.nodeName == '澶勭悊涓�', nonde: index == nodeList.length - 1}" v-for="(item,index) in nodeList" :key="index"> - <image src="/static/policy/icon.png" class="img" alt="" mode="widthFix" v-if="item.nodeName == '鍙戣捣鎶曡瘔' || item.nodeName == '鍙戣捣璇夋眰'"/> - <image src="/static/guocheng.png" class="img" alt="" mode="widthFix" v-if="item.nodeName == '澶勭悊涓�'"/> - <image src="/static/policy/refject.png" class="img" mode="widthFix" alt="" v-if="item.nodeName == '宸查┏鍥�'"/> - <image src="/static/policy/icon.png" class="img" alt="" mode="widthFix" v-if="item.nodeName == '宸插姙缁�'"/> - <view class="font" style="width: calc(100% - 50rpx);"> - <view class="h" > - <view class="s" > - {{item.nodeName}} - </view> - <view class="time"> - {{item.nodeTime}} - </view> - </view> - <view class="b"> - <view class="name" style="margin-bottom: 18rpx;"> - {{item.nodeUser}} - </view> - <view class="p" style="margin-bottom: 18rpx;"> - <span>鐢宠瘔涓婚锛�</span> - {{dictLabel1}} - </view> - <view class="p" style="margin-bottom: 18rpx;"> - <span>鐢宠瘔鍐呭锛�</span> - {{details.complaintReason}} - </view> - <view class="p" v-if="item.nodeName == '宸查┏鍥�'"> - <span>椹冲洖鍘熷洜锛�</span> - {{item.nodeReason}} +<template> + <view> + <u-navbar placeholder bgColor="#1171E0FF" leftIconColor="white" :autoBack="true"> + <template slot="center"> + <view style="color: white;">鎶曡瘔璁板綍</view> + </template> + </u-navbar> + <view class="donw-box"></view> + <view class="page-main"> + <view class="title"> + <template v-if="msg.orderStatus>2&&msg.isEva==0">宸叉墽娉曞緟璇勪环</template> + <template v-if="msg.orderStatus>2&&msg.isEva==1">宸茶瘎浠�</template> + <template v-if="msg.orderStatus==2">寰呮墽娉�</template> + </view> + <view class="wbox"> + <view class="item" v-if="dictLabel"> + <view class="k"> + 妫�鏌ユ柟寮� + </view> + <view class="v"> + {{dictLabel}} + </view> + </view> + <view class="item" v-if="details.executeUser"> + <view class="k"> + 鎵ф硶浜� + </view> + <view class="v"> + {{details.executeUser}} + </view> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶閮ㄩ棬 + </view> + <view class="v"> + {{details.executeDeptName}} + </view> + </view> + <view class="item"> + <view class="k"> + 浼佷笟 + </view> + <view class="v"> + {{details.companyName}} + </view> + </view> + </view> + <view style="height: 20rpx;"></view> + <template v-if="orderId"> + <view class="wbox"> + <view class="item"> + <view class="k"> + 鎵ф硶涓婚 + </view> + <view class="v"> + {{details.enforceReason}} + </view> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶杩囩▼ + </view> + </view> + <view class="imgbox"> + <img :src="baseUrl+item" v-for="(item,index) in orderDetailsMsg.regionImgs" :key="index" class="more" + @click="imgclick(item)" alt="" /> + + </view> + <view class="item"> + <view class="k"> + 鎵ф硶缁撴灉 + </view> + <view class="v" style="color: #EB4746;"> + <!-- {{details.regionStatus == 0? "姝e父" : "鍋滀笟鏁撮】" }} --> + {{orderDetailsMsg.regionReason}} + </view> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶鏃堕棿 + </view> + <view class="v"> + {{details.executeTime}} + </view> + </view> + </view> + <view style="height: 20rpx;"></view> + </template> + <view class="wbox2"> + <view class="t"> + 鎶曡瘔璁板綍 + </view> + <view class="jilu" + :class="{start: item.nodeName == '鍙戣捣鎶曡瘔' || item.nodeName == '宸插姙缁�', handler: item.nodeName == '澶勭悊涓�', nonde: index == nodeList.length - 1}" + v-for="(item,index) in nodeList" :key="index"> + <image src="/static/policy/icon.png" class="img" alt="" mode="widthFix" + v-if="item.nodeName == '鍙戣捣鎶曡瘔' || item.nodeName == '鍙戣捣璇夋眰'" /> + <image src="/static/guocheng.png" class="img" alt="" mode="widthFix" v-if="item.nodeName == '澶勭悊涓�'" /> + <image src="/static/policy/refject.png" class="img" mode="widthFix" alt="" v-if="item.nodeName == '宸查┏鍥�'" /> + <image src="/static/policy/icon.png" class="img" alt="" mode="widthFix" v-if="item.nodeName == '宸插姙缁�'" /> + <view class="font" style="width: calc(100% - 50rpx);"> + <view class="h"> + <view class="s"> + {{item.nodeName}} + </view> + <view class="time"> + {{item.nodeTime}} + </view> + </view> + <view class="b"> + <view class="name" style="margin-bottom: 18rpx;"> + {{item.nodeUser}} + </view> + <view class="p" style="margin-bottom: 18rpx;"> + <span>鐢宠瘔涓婚锛�</span> + {{dictLabel1}} + </view> + <view class="p" style="margin-bottom: 18rpx;"> + <span>鐢宠瘔鍐呭锛�</span> + {{details.complaintReason}} + </view> + <view class="p" v-if="item.nodeName == '宸查┏鍥�'"> + <span>椹冲洖鍘熷洜锛�</span> + {{item.nodeReason}} + </view> + <view class="p" v-if="item.nodeName == '宸插姙缁�' && item.nodeReason"> + <span>鍔炵粨缁撴灉锛�</span> + {{item.nodeReason}} + </view> + </view> + </view> + </view> + <!-- <view class="jilu"> + <image src="/static/policy/refject.png" class="img" alt="" /> + <view class="font"> + <view class="h"> + <view class="s"> + {{item.nodeName}} </view> - <view class="p" v-if="item.nodeName == '宸插姙缁�' && item.nodeReason"> - <span>鍔炵粨缁撴灉锛�</span> - {{item.nodeReason}} - </view> - </view> - </view> - </view> - <!-- <view class="jilu"> - <image src="/static/policy/refject.png" class="img" alt="" /> - <view class="font"> - <view class="h"> - <view class="s"> - {{item.nodeName}} - </view> - <view class="time"> - {{item.nodeTime}} - </view> - </view> - <view class="b"> - <view class="name"> - {{details.companyUser}} - </view> - <view class="p"> - <span>鐢宠瘔涓婚锛�</span> - {{dictLabel1}} - </view> - <view class="p"> - <span>鐢宠瘔鍐呭锛�</span> - {{details.complaintReason}} - </view> - </view> - </view> - </view> - <view class="jilu"> - <image src="/static/guocheng.png" class="img" alt="" /> - <view class="font"> - <view class="h"> - <view class="s"> - 澶勭悊涓� - </view> - <view class="time"> - 2024-06-07 12:14 - </view> - </view> - <view class="b"> - <view class="name"> - {{details.companyUser}} - </view> - <view class="p"> - <span>鐢宠瘔涓婚锛�</span> - {{dictLabel1}} - </view> - <view class="p"> - <span>鐢宠瘔鍐呭锛�</span> - {{details.complaintReason}} - </view> - </view> - </view> - </view> - --> - </view> - </view> - - </view> -</template> - -<script> - import { complaintDetails, orderNodeList, orderComplaintNodeList } from '@/api/qiye.js' - import { orderDetails, orderDetailsLog } from '@/api/policy.js' - import { config } from '@/common/config.js' - import { getDicts } from '@/api/data.js' - export default { - data() { - return { - details: {}, - orderId: "", - orderDetailsMsg: {}, - baseUrl: config.baseUrl, - dictLabel: "", - dictLabel1: "", - nodeList: [] - } - }, - onLoad(options) { - this.complaint(options.id) - if(options.orderId && options.orderId !== 'null') { - this.orderId = options.orderId - this.orderDetails() - } else { - this.orderNodeList(options.id) - } - }, - methods: { - orderNodeList(id) { - orderNodeList({id}).then(val => { - // console.log(val) - this.nodeList = val.data.data - }) - }, - // 鑾峰彇鎶曡瘔绫诲瀷 - getComtype() { - getDicts('complaint_type').then(val => { - this.dictLabel1 = val.data.data.find(item => item.dictCode == this.details.complaintType).dictLabel - - }) - }, - enforceType() { - getDicts('enforce_type').then(val => { - console.log(val) - this.dictLabel = val.data.data.find(item => item.dictCode == this.orderDetailsMsg.enforceType).dictLabel - - }) - }, - imgclick(url) { - url = this.baseUrl + url - uni.previewImage({ - urls: [url] - }) - }, - complaint(details) { - complaintDetails(details).then(val => { - // console.log(val.data.data) - this.details = val.data.data - this.getComtype() - }) - }, - orderDetails() { - orderDetails({ orderId: this.orderId}).then(val => { - // console.log(val.data.data) - val.data.data.regionImgs = val.data.data.regionImgs.split(",") - this.orderDetailsMsg = val.data.data - if(this.orderId) { - this.orderComplaintNodeList() - } - this.enforceType() - }) - }, - orderComplaintNodeList() { - orderComplaintNodeList({ orderId: this.orderId }).then(val => { - console.log(val.data.data, 'val===') - this.nodeList = val.data.data - }) - } - } - } -</script> - -<style> - page { - background: #F4F4F4; - } -</style> -<style lang="scss" scoped> - .page-main { - position: relative; - top: -380rpx; - } - - .donw-box { - width: 100%; - height: 380rpx; - flex-shrink: 0; - background: linear-gradient(180deg, #1171E0 42.5%, #F4F4F4 100%); - } - .wbox { - background: #fff; - border-radius: 5px; - padding: 24rpx; - box-sizing: border-box; - margin: 0 32rpx; - - .item { - display: flex; - margin-bottom: 20rpx; - font-size: 30rpx; - - .k { - color: #7E8596; - width: 30%; - - } - - .v { - color: #202D44; - width: 70%; - - } - } - - .item:last-child { - margin-bottom: 0; - } - - .imgbox { - display: flex; - flex-wrap: wrap; - justify-content: space-between; - border-radius: 10rpx; - - img { - width: 198rpx; - height: 198rpx; - margin-bottom: 20rpx; - - } - } - } - .title { - color: #ffffff; - font-size: 44rpx; - font-weight: bold; - padding-left: 32rpx; - margin-top: 24rpx; - margin-bottom: 24rpx; - - } - - .wbox2 { - background: #fff; - border-radius: 5px; - box-sizing: border-box; - margin: 0 32rpx; - position: relative; - z-index: 10; - .t { - padding: 24rpx; - border-bottom: 1px solid #EEEEEE; - color: #202d44; - font-size: 36rpx; - font-weight: bold; - } - - } - - .jilu{ - display: flex; - justify-content: space-between; - padding: 24rpx; - position: relative; - &::before{ - content: ''; - display: inline-block; - width: 2rpx; - height: 100%; - background: #eb47460d; - position: absolute; - left: 44rpx; - top: 30rpx; - z-index: 99; - } - - .img{ - width: 50rpx; - height: 50rpx; - margin-right: 24rpx; - position: relative; - z-index: 100; - } - .font{ - width: calc(100% - 70rpx); - .h{ - display: flex; - justify-content: space-between; - margin-bottom: 20rpx; - .s{ - color: #202d44; - font-size: 32rpx; - } - .time{ - color: #7e8596; - font-size: 24rpx; - } - } - .b{ - // width: 289px; - // height: 111px; - // flex-shrink: 0; - border-radius: 4px; - background: #F6F6F6; - padding: 24rpx; - .name{ - color: #202d44; - font-size: 32rpx; - } - .p{ - color: #202d44; - font-size: 26rpx; - span{ - color: #666666; - - } - } - } - } - } - .handler{ - &::before { - background: #fe7b320d; - } - } - .start{ - &::before{ - background: #E7F8F0; - } - } - .nonde{ - &::before{ - background: none; - } - } + <view class="time"> + {{item.nodeTime}} + </view> + </view> + <view class="b"> + <view class="name"> + {{details.companyUser}} + </view> + <view class="p"> + <span>鐢宠瘔涓婚锛�</span> + {{dictLabel1}} + </view> + <view class="p"> + <span>鐢宠瘔鍐呭锛�</span> + {{details.complaintReason}} + </view> + </view> + </view> + </view> + <view class="jilu"> + <image src="/static/guocheng.png" class="img" alt="" /> + <view class="font"> + <view class="h"> + <view class="s"> + 澶勭悊涓� + </view> + <view class="time"> + 2024-06-07 12:14 + </view> + </view> + <view class="b"> + <view class="name"> + {{details.companyUser}} + </view> + <view class="p"> + <span>鐢宠瘔涓婚锛�</span> + {{dictLabel1}} + </view> + <view class="p"> + <span>鐢宠瘔鍐呭锛�</span> + {{details.complaintReason}} + </view> + </view> + </view> + </view> + --> + </view> + </view> + + </view> +</template> + +<script> + import { + complaintDetails, + orderNodeList, + orderComplaintNodeList + } from '@/api/qiye.js' + import { + orderDetails, + orderDetailsLog + } from '@/api/policy.js' + import { + config + } from '@/common/config.js' + import { + getDicts + } from '@/api/data.js' + export default { + data() { + return { + details: {}, + orderId: "", + orderDetailsMsg: {}, + baseUrl: config.baseUrl, + dictLabel: "", + dictLabel1: "", + nodeList: [] + } + }, + onLoad(options) { + this.complaint(options.id) + if (options.orderId && options.orderId !== 'null') { + this.orderId = options.orderId + this.orderDetails() + } else { + this.orderNodeList(options.id) + } + }, + methods: { + orderNodeList(id) { + orderNodeList({ + id + }).then(val => { + // console.log(val) + this.nodeList = val.data.data + }) + }, + // 鑾峰彇鎶曡瘔绫诲瀷 + getComtype() { + getDicts('complaint_type').then(val => { + this.dictLabel1 = val.data.data.find(item => item.dictCode == this.details.complaintType).dictLabel + + }) + }, + enforceType() { + getDicts('enforce_type').then(val => { + console.log(val) + this.dictLabel = val.data.data.find(item => item.dictCode == this.orderDetailsMsg.enforceType).dictLabel + + }) + }, + imgclick(url) { + url = this.baseUrl + url + uni.previewImage({ + urls: [url] + }) + }, + complaint(details) { + complaintDetails(details).then(val => { + // console.log(val.data.data) + this.details = val.data.data + this.getComtype() + }) + }, + orderDetails() { + orderDetails({ + orderId: this.orderId + }).then(val => { + // console.log(val.data.data) + val.data.data.regionImgs = val.data.data.regionImgs.split(",") + this.orderDetailsMsg = val.data.data + if (this.orderId) { + this.orderComplaintNodeList() + } + this.enforceType() + }) + }, + orderComplaintNodeList() { + orderComplaintNodeList({ + orderId: this.orderId + }).then(val => { + console.log(val.data.data, 'val===') + this.nodeList = val.data.data + }) + } + } + } +</script> + +<style> + page { + background: #F4F4F4; + } +</style> +<style lang="scss" scoped> + .page-main { + position: relative; + top: -380rpx; + } + + .donw-box { + width: 100%; + height: 380rpx; + flex-shrink: 0; + background: linear-gradient(180deg, #1171E0 42.5%, #F4F4F4 100%); + } + + .wbox { + background: #fff; + border-radius: 5px; + padding: 24rpx; + box-sizing: border-box; + margin: 0 32rpx; + + .item { + display: flex; + margin-bottom: 20rpx; + font-size: 30rpx; + + .k { + color: #7E8596; + width: 30%; + + } + + .v { + color: #202D44; + width: 70%; + + } + } + + .item:last-child { + margin-bottom: 0; + } + + .imgbox { + display: flex; + flex-wrap: wrap; + justify-content: space-between; + border-radius: 10rpx; + + img { + width: 198rpx; + height: 198rpx; + margin-bottom: 20rpx; + + } + } + } + + .title { + color: #ffffff; + font-size: 44rpx; + font-weight: bold; + padding-left: 32rpx; + margin-top: 24rpx; + margin-bottom: 24rpx; + + } + + .wbox2 { + background: #fff; + border-radius: 5px; + box-sizing: border-box; + margin: 0 32rpx; + position: relative; + z-index: 10; + + .t { + padding: 24rpx; + border-bottom: 1px solid #EEEEEE; + color: #202d44; + font-size: 36rpx; + font-weight: bold; + } + + } + + .jilu { + display: flex; + justify-content: space-between; + padding: 24rpx; + position: relative; + + &::before { + content: ''; + display: inline-block; + width: 2rpx; + height: 100%; + background: #eb47460d; + position: absolute; + left: 44rpx; + top: 30rpx; + z-index: 99; + } + + .img { + width: 50rpx; + height: 50rpx; + margin-right: 24rpx; + position: relative; + z-index: 100; + } + + .font { + width: calc(100% - 70rpx); + + .h { + display: flex; + justify-content: space-between; + margin-bottom: 20rpx; + + .s { + color: #202d44; + font-size: 32rpx; + } + + .time { + color: #7e8596; + font-size: 24rpx; + } + } + + .b { + // width: 289px; + // height: 111px; + // flex-shrink: 0; + border-radius: 4px; + background: #F6F6F6; + padding: 24rpx; + + .name { + color: #202d44; + font-size: 32rpx; + } + + .p { + color: #202d44; + font-size: 26rpx; + + span { + color: #666666; + + } + } + } + } + } + + .handler { + &::before { + background: #fe7b320d; + } + } + + .start { + &::before { + background: #E7F8F0; + } + } + + .nonde { + &::before { + background: none; + } + } </style> \ No newline at end of file diff --git a/qiye/complaint/details1.vue b/qiye/complaint/details1.vue index df1dcbc..d5f4dd9 100644 --- a/qiye/complaint/details1.vue +++ b/qiye/complaint/details1.vue @@ -1,125 +1,128 @@ <template> - <view> - <u-navbar placeholder bgColor="#1171E0FF" leftIconColor="white" :autoBack="true"> - <template slot="center"> - <view style="color: white;">寤鸿璁板綍</view> - </template> - </u-navbar> - <view class="donw-box"></view> - <view class="page-main"> - <view class="title"> - <template v-if="msg.orderStatus>2&&msg.isEva==0">宸叉墽娉曞緟璇勪环</template> - <template v-if="msg.orderStatus>2&&msg.isEva==1">宸茶瘎浠�</template> - <template v-if="msg.orderStatus==2">寰呮墽娉�</template> - </view> - <view class="wbox"> - <view class="item" v-if="dictLabel"> - <view class="k"> - 鎵ф硶绫诲瀷 - </view> - <view class="v"> - {{dictLabel}} - </view> - </view> - <view class="item" v-if="details.executeUser"> - <view class="k"> - 鎵ф硶浜� - </view> - <view class="v"> - {{details.executeUser}} - </view> - </view> - <view class="item"> - <view class="k"> - 浼佷笟 - </view> - <view class="v"> - {{details.companyName}} - </view> - </view> - </view> - <view style="height: 20rpx;"></view> - <template v-if="orderId"> - <view class="wbox"> - <view class="item"> - <view class="k"> - 鎵ф硶涓婚 - </view> - <view class="v"> - {{details.enforceReason}} - </view> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶杩囩▼ - </view> - </view> - <view class="imgbox"> - <img :src="baseUrl+item" v-for="(item,index) in orderDetailsMsg.regionImgs" :key="index" class="more" @click="imgclick(item)" alt="" /> - - </view> - <view class="item"> - <view class="k"> - 鎵ф硶缁撴灉 - </view> - <view class="v" style="color: #EB4746;"> - <!-- {{details.regionStatus == 0? "姝e父" : "鍋滀笟鏁撮】" }} --> - {{orderDetailsMsg.regionReason}} - </view> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶鏃堕棿 - </view> - <view class="v"> - {{details.executeTime}} - </view> - </view> - </view> - <view style="height: 20rpx;"></view> - </template> - <view class="wbox2"> - <view class="t"> - 寤鸿璁板綍 - </view> - <view class="jilu" :class="{start: item.nodeName == '鍙戣捣璇夋眰' || item.nodeName == '宸插姙缁�', handler: item.nodeName == '澶勭悊涓�', nonde: index == nodeList.length - 1}" v-for="(item,index) in nodeList" :key="index"> - <image src="/static/policy/icon.png" class="img" alt="" mode="widthFix" v-if="item.nodeName == '鍙戣捣璇夋眰'"/> - <image src="/static/guocheng.png" class="img" alt="" mode="widthFix" v-if="item.nodeName == '澶勭悊涓�'"/> - <image src="/static/policy/refject.png" class="img" mode="widthFix" alt="" v-if="item.nodeName == '宸查┏鍥�'"/> - <image src="/static/policy/icon.png" class="img" alt="" mode="widthFix" v-if="item.nodeName == '宸插姙缁�'"/> - <view class="font" style="width: calc(100% - 50rpx);"> - <view class="h" > - <view class="s" > - {{item.nodeName}} - </view> - <view class="time"> - {{item.nodeTime}} - </view> - </view> - <view class="b"> - <view class="name" style="margin-bottom: 18rpx;"> - {{item.nodeUser}} - </view> - <!-- <view class="p" style="margin-bottom: 18rpx;"> + <view> + <u-navbar placeholder bgColor="#1171E0FF" leftIconColor="white" :autoBack="true"> + <template slot="center"> + <view style="color: white;">寤鸿璁板綍</view> + </template> + </u-navbar> + <view class="donw-box"></view> + <view class="page-main"> + <view class="title"> + <template v-if="msg.orderStatus>2&&msg.isEva==0">宸叉墽娉曞緟璇勪环</template> + <template v-if="msg.orderStatus>2&&msg.isEva==1">宸茶瘎浠�</template> + <template v-if="msg.orderStatus==2">寰呮墽娉�</template> + </view> + <view class="wbox"> + <view class="item" v-if="dictLabel"> + <view class="k"> + 妫�鏌ユ柟寮� + </view> + <view class="v"> + {{dictLabel}} + </view> + </view> + <view class="item" v-if="details.executeUser"> + <view class="k"> + 鎵ф硶浜� + </view> + <view class="v"> + {{details.executeUser}} + </view> + </view> + <view class="item"> + <view class="k"> + 浼佷笟 + </view> + <view class="v"> + {{details.companyName}} + </view> + </view> + </view> + <view style="height: 20rpx;"></view> + <template v-if="orderId"> + <view class="wbox"> + <view class="item"> + <view class="k"> + 鎵ф硶涓婚 + </view> + <view class="v"> + {{details.enforceReason}} + </view> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶杩囩▼ + </view> + </view> + <view class="imgbox"> + <img :src="baseUrl+item" v-for="(item,index) in orderDetailsMsg.regionImgs" :key="index" class="more" + @click="imgclick(item)" alt="" /> + + </view> + <view class="item"> + <view class="k"> + 鎵ф硶缁撴灉 + </view> + <view class="v" style="color: #EB4746;"> + <!-- {{details.regionStatus == 0? "姝e父" : "鍋滀笟鏁撮】" }} --> + {{orderDetailsMsg.regionReason}} + </view> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶鏃堕棿 + </view> + <view class="v"> + {{details.executeTime}} + </view> + </view> + </view> + <view style="height: 20rpx;"></view> + </template> + <view class="wbox2"> + <view class="t"> + 寤鸿璁板綍 + </view> + <view class="jilu" + :class="{start: item.nodeName == '鍙戣捣璇夋眰' || item.nodeName == '宸插姙缁�', handler: item.nodeName == '澶勭悊涓�', nonde: index == nodeList.length - 1}" + v-for="(item,index) in nodeList" :key="index"> + <image src="/static/policy/icon.png" class="img" alt="" mode="widthFix" v-if="item.nodeName == '鍙戣捣璇夋眰'" /> + <image src="/static/guocheng.png" class="img" alt="" mode="widthFix" v-if="item.nodeName == '澶勭悊涓�'" /> + <image src="/static/policy/refject.png" class="img" mode="widthFix" alt="" v-if="item.nodeName == '宸查┏鍥�'" /> + <image src="/static/policy/icon.png" class="img" alt="" mode="widthFix" v-if="item.nodeName == '宸插姙缁�'" /> + <view class="font" style="width: calc(100% - 50rpx);"> + <view class="h"> + <view class="s"> + {{item.nodeName}} + </view> + <view class="time"> + {{item.nodeTime}} + </view> + </view> + <view class="b"> + <view class="name" style="margin-bottom: 18rpx;"> + {{item.nodeUser}} + </view> + <!-- <view class="p" style="margin-bottom: 18rpx;"> <span>鐢宠瘔涓婚锛�</span> {{dictLabel1}} </view> --> - <view class="p" style="margin-bottom: 18rpx;"> - <span>鐢宠瘔鍐呭锛�</span> - {{details.complaintReason}} - </view> - <view class="p" v-if="item.nodeName == '宸查┏鍥�'"> - <span>椹冲洖鍘熷洜锛�</span> - {{item.nodeReason}} - </view> - <view class="p" v-if="item.nodeName == '宸插姙缁�' && item.nodeReason"> - <span>鍔炵粨缁撴灉锛�</span> - {{item.nodeReason}} - </view> - </view> - </view> - </view> - <!-- <view class="jilu"> + <view class="p" style="margin-bottom: 18rpx;"> + <span>鐢宠瘔鍐呭锛�</span> + {{details.complaintReason}} + </view> + <view class="p" v-if="item.nodeName == '宸查┏鍥�'"> + <span>椹冲洖鍘熷洜锛�</span> + {{item.nodeReason}} + </view> + <view class="p" v-if="item.nodeName == '宸插姙缁�' && item.nodeReason"> + <span>鍔炵粨缁撴灉锛�</span> + {{item.nodeReason}} + </view> + </view> + </view> + </view> + <!-- <view class="jilu"> <image src="/static/policy/refject.png" class="img" alt="" /> <view class="font"> <view class="h"> @@ -172,247 +175,279 @@ </view> </view> --> - </view> - </view> - - </view> + </view> + </view> + + </view> </template> <script> - import { complaintDetails, orderNodeList, orderComplaintNodeList } from '@/api/qiye.js' - import { orderDetails, orderDetailsLog } from '@/api/policy.js' - import { config } from '@/common/config.js' - import { getDicts } from '@/api/data.js' - export default { - data() { - return { - details: {}, - orderId: "", - orderDetailsMsg: {}, - baseUrl: config.baseUrl, - dictLabel: "", - dictLabel1: "", - nodeList: [] - } - }, - onLoad(options) { - this.complaint(options.id) - if(options.orderId && options.orderId !== 'null') { - this.orderId = options.orderId - this.orderDetails() - } else { - this.orderNodeList(options.id) - } - }, - methods: { - orderNodeList(id) { - orderNodeList({id}).then(val => { - // console.log(val) - this.nodeList = val.data.data - }) - }, - enforceType() { - getDicts('enforce_type').then(val => { - console.log(val) - this.dictLabel = val.data.data.find(item => item.dictCode == this.orderDetailsMsg.enforceType).dictLabel - - }) - }, - imgclick(url) { - url = this.baseUrl + url - uni.previewImage({ - urls: [url] - }) - }, - complaint(details) { - complaintDetails(details).then(val => { - // console.log(val.data.data) - this.details = val.data.data - // this.getComtype() - }) - }, - orderDetails() { - orderDetails({ orderId: this.orderId}).then(val => { - // console.log(val.data.data) - val.data.data.regionImgs = val.data.data.regionImgs.split(",") - this.orderDetailsMsg = val.data.data - if(this.orderId) { - this.orderComplaintNodeList() - } - this.enforceType() - }) - }, - orderComplaintNodeList() { - orderComplaintNodeList({ orderId: this.orderId }).then(val => { - console.log(val.data.data, 'val===') - this.nodeList = val.data.data - }) - } - } - } + import { + complaintDetails, + orderNodeList, + orderComplaintNodeList + } from '@/api/qiye.js' + import { + orderDetails, + orderDetailsLog + } from '@/api/policy.js' + import { + config + } from '@/common/config.js' + import { + getDicts + } from '@/api/data.js' + export default { + data() { + return { + details: {}, + orderId: "", + orderDetailsMsg: {}, + baseUrl: config.baseUrl, + dictLabel: "", + dictLabel1: "", + nodeList: [] + } + }, + onLoad(options) { + this.complaint(options.id) + if (options.orderId && options.orderId !== 'null') { + this.orderId = options.orderId + this.orderDetails() + } else { + this.orderNodeList(options.id) + } + }, + methods: { + orderNodeList(id) { + orderNodeList({ + id + }).then(val => { + // console.log(val) + this.nodeList = val.data.data + }) + }, + enforceType() { + getDicts('enforce_type').then(val => { + console.log(val) + this.dictLabel = val.data.data.find(item => item.dictCode == this.orderDetailsMsg.enforceType).dictLabel + + }) + }, + imgclick(url) { + url = this.baseUrl + url + uni.previewImage({ + urls: [url] + }) + }, + complaint(details) { + complaintDetails(details).then(val => { + // console.log(val.data.data) + this.details = val.data.data + // this.getComtype() + }) + }, + orderDetails() { + orderDetails({ + orderId: this.orderId + }).then(val => { + // console.log(val.data.data) + val.data.data.regionImgs = val.data.data.regionImgs.split(",") + this.orderDetailsMsg = val.data.data + if (this.orderId) { + this.orderComplaintNodeList() + } + this.enforceType() + }) + }, + orderComplaintNodeList() { + orderComplaintNodeList({ + orderId: this.orderId + }).then(val => { + console.log(val.data.data, 'val===') + this.nodeList = val.data.data + }) + } + } + } </script> <style> - page { - background: #F4F4F4; - } + page { + background: #F4F4F4; + } </style> <style lang="scss" scoped> - .page-main { - position: relative; - top: -380rpx; - } - - .donw-box { - width: 100%; - height: 380rpx; - flex-shrink: 0; - background: linear-gradient(180deg, #1171E0 42.5%, #F4F4F4 100%); - } - .wbox { - background: #fff; - border-radius: 5px; - padding: 24rpx; - box-sizing: border-box; - margin: 0 32rpx; - - .item { - display: flex; - margin-bottom: 20rpx; - font-size: 30rpx; - - .k { - color: #7E8596; - width: 30%; - - } - - .v { - color: #202D44; - width: 70%; - - } - } - - .item:last-child { - margin-bottom: 0; - } - - .imgbox { - display: flex; - flex-wrap: wrap; - justify-content: space-between; - border-radius: 10rpx; - - img { - width: 198rpx; - height: 198rpx; - margin-bottom: 20rpx; - - } - } - } - .title { - color: #ffffff; - font-size: 44rpx; - font-weight: bold; - padding-left: 32rpx; - margin-top: 24rpx; - margin-bottom: 24rpx; - - } - - .wbox2 { - background: #fff; - border-radius: 5px; - box-sizing: border-box; - margin: 0 32rpx; - position: relative; - z-index: 10; - .t { - padding: 24rpx; - border-bottom: 1px solid #EEEEEE; - color: #202d44; - font-size: 36rpx; - font-weight: bold; - } - - } + .page-main { + position: relative; + top: -380rpx; + } - .jilu{ - display: flex; - justify-content: space-between; - padding: 24rpx; - position: relative; - &::before{ - content: ''; - display: inline-block; - width: 2rpx; - height: 100%; - background: #eb47460d; - position: absolute; - left: 44rpx; - top: 30rpx; - z-index: 99; - } - - .img{ - width: 50rpx; - height: 50rpx; - margin-right: 24rpx; - position: relative; - z-index: 100; - } - .font{ - width: calc(100% - 70rpx); - .h{ - display: flex; - justify-content: space-between; - margin-bottom: 20rpx; - .s{ - color: #202d44; - font-size: 32rpx; - } - .time{ - color: #7e8596; - font-size: 24rpx; - } - } - .b{ - // width: 289px; - // height: 111px; - // flex-shrink: 0; - border-radius: 4px; - background: #F6F6F6; - padding: 24rpx; - .name{ - color: #202d44; - font-size: 32rpx; - } - .p{ - color: #202d44; - font-size: 26rpx; - span{ - color: #666666; - - } - } - } - } - } - .handler{ - &::before { - background: #fe7b320d; - } - } - .start{ - &::before{ - background: #E7F8F0; - } - } - .nonde{ - &::before{ - background: none; - } - } + .donw-box { + width: 100%; + height: 380rpx; + flex-shrink: 0; + background: linear-gradient(180deg, #1171E0 42.5%, #F4F4F4 100%); + } + + .wbox { + background: #fff; + border-radius: 5px; + padding: 24rpx; + box-sizing: border-box; + margin: 0 32rpx; + + .item { + display: flex; + margin-bottom: 20rpx; + font-size: 30rpx; + + .k { + color: #7E8596; + width: 30%; + + } + + .v { + color: #202D44; + width: 70%; + + } + } + + .item:last-child { + margin-bottom: 0; + } + + .imgbox { + display: flex; + flex-wrap: wrap; + justify-content: space-between; + border-radius: 10rpx; + + img { + width: 198rpx; + height: 198rpx; + margin-bottom: 20rpx; + + } + } + } + + .title { + color: #ffffff; + font-size: 44rpx; + font-weight: bold; + padding-left: 32rpx; + margin-top: 24rpx; + margin-bottom: 24rpx; + + } + + .wbox2 { + background: #fff; + border-radius: 5px; + box-sizing: border-box; + margin: 0 32rpx; + position: relative; + z-index: 10; + + .t { + padding: 24rpx; + border-bottom: 1px solid #EEEEEE; + color: #202d44; + font-size: 36rpx; + font-weight: bold; + } + + } + + .jilu { + display: flex; + justify-content: space-between; + padding: 24rpx; + position: relative; + + &::before { + content: ''; + display: inline-block; + width: 2rpx; + height: 100%; + background: #eb47460d; + position: absolute; + left: 44rpx; + top: 30rpx; + z-index: 99; + } + + .img { + width: 50rpx; + height: 50rpx; + margin-right: 24rpx; + position: relative; + z-index: 100; + } + + .font { + width: calc(100% - 70rpx); + + .h { + display: flex; + justify-content: space-between; + margin-bottom: 20rpx; + + .s { + color: #202d44; + font-size: 32rpx; + } + + .time { + color: #7e8596; + font-size: 24rpx; + } + } + + .b { + // width: 289px; + // height: 111px; + // flex-shrink: 0; + border-radius: 4px; + background: #F6F6F6; + padding: 24rpx; + + .name { + color: #202d44; + font-size: 32rpx; + } + + .p { + color: #202d44; + font-size: 26rpx; + + span { + color: #666666; + + } + } + } + } + } + + .handler { + &::before { + background: #fe7b320d; + } + } + + .start { + &::before { + background: #E7F8F0; + } + } + + .nonde { + &::before { + background: none; + } + } </style> \ No newline at end of file diff --git a/qiye/record/details.vue b/qiye/record/details.vue index 546dac2..a198fa5 100644 --- a/qiye/record/details.vue +++ b/qiye/record/details.vue @@ -1,44 +1,44 @@ <template> - <view> - <u-navbar placeholder bgColor="#1171E0FF" leftIconColor="white" :autoBack="true"> - <template slot="center"> - <view style="color: white;">鎵ф硶淇℃伅</view> - </template> - </u-navbar> - <view class="donw-box"></view> - <view class="page-main"> - <view class="title"> - 鎵ф硶璇︽儏 - <!-- <template v-if="msg.isEva==0">鏈瘎浠�</template> + <view> + <u-navbar placeholder bgColor="#1171E0FF" leftIconColor="white" :autoBack="true"> + <template slot="center"> + <view style="color: white;">鎵ф硶淇℃伅</view> + </template> + </u-navbar> + <view class="donw-box"></view> + <view class="page-main"> + <view class="title"> + 鎵ф硶璇︽儏 + <!-- <template v-if="msg.isEva==0">鏈瘎浠�</template> <template v-if="msg.isEva==1">宸茶瘎浠�</template> <template v-if="msg.orderStatus==2">寰呮墽娉�</template> --> - </view> - <view class="wbox"> - <view class="item"> - <view class="k"> - 鎵ф硶绫诲瀷 - </view> - <view class="v"> - {{type}} - </view> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶浜� - </view> - <view class="v"> - {{msg.executeUser || msg.applyUser}} - </view> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶閮ㄩ棬 - </view> - <view class="v"> - {{msg.executeDeptName || msg.applyDeptName}} - </view> - </view> - <!-- <view class="item"> + </view> + <view class="wbox"> + <view class="item"> + <view class="k"> + 妫�鏌ユ柟寮� + </view> + <view class="v"> + {{type}} + </view> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶浜� + </view> + <view class="v"> + {{msg.executeUser || msg.applyUser}} + </view> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶閮ㄩ棬 + </view> + <view class="v"> + {{msg.executeDeptName || msg.applyDeptName}} + </view> + </view> + <!-- <view class="item"> <view class="k"> 浼佷笟 </view> @@ -46,568 +46,581 @@ {{msg.companyName}} </view> </view> --> - </view> - <view style="height: 20rpx;"></view> - <view class="wbox"> - <view class="item"> - <view class="k"> - 鎵ф硶涓婚 - </view> - <view class="v"> - {{msg.enforceReason}} - </view> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶鍐呭 - </view> - <view class="v" v-if="!img.length"> - {{ msg.enforceContent}} - </view> - </view> - <view class="imgbox" v-if="img.length"> - <template > - <img v-for="(item,index) in img" :key="index" :src="item" class="more" alt="" @click="imgclick(item)" /> - </template> - - <!-- <img src="/static/i01.png" class="more" @click="imgclick('/static/i01.png')" alt="" /> + </view> + <view style="height: 20rpx;"></view> + <view class="wbox"> + <view class="item"> + <view class="k"> + 鎵ф硶涓婚 + </view> + <view class="v"> + {{msg.enforceReason}} + </view> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶鍐呭 + </view> + <view class="v" v-if="!img.length"> + {{ msg.enforceContent}} + </view> + </view> + <view class="imgbox" v-if="img.length"> + <template> + <img v-for="(item,index) in img" :key="index" :src="item" class="more" alt="" @click="imgclick(item)" /> + </template> + + <!-- <img src="/static/i01.png" class="more" @click="imgclick('/static/i01.png')" alt="" /> <img src="/static/i02.png" class="more" alt="" /> <img src="/static/i03.png" class="more" alt="" /> <img src="/static/i04.png" class="more" alt="" /> --> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶缁撴灉 - </view> - <view class="v" style="color: #EB4746;"> - {{msg.regionReason || '--'}} - </view> - </view> - <view class="item"> - <view class="k"> - 鎵ф硶鏃堕棿 - </view> - <view class="v"> - {{msg.inTime || msg.planTime}} - </view> - </view> - </view> - <view style="height: 20rpx;"></view> - <view class="wbox2" v-if="msg.isEva==1"> - <view class="t"> - 鎵ф硶璇勪环 - </view> - <template v-for="(item,index) in qlist"> - <view class="sbox" v-if="item.questionType==2"> - <view class="t2"> - {{item.questionName}} - </view> - <view class="xbox"> - <view> - <img src="/static/qiye/xing1.png" alt="" /> - <view> - 寰堢碂绯� - </view> - </view> - <view> - <img v-if="item.getScore>=2" src="/static/qiye/xing1.png" alt="" /> - <img v-else src="/static/qiye/xing2.png" alt="" /> - <view :class="item.getScore==2?'hei':''"> - 涓嶆弧鎰� - </view> - </view> - <view> - <img v-if="item.getScore>=3" src="/static/qiye/xing1.png" alt="" /> - <img v-else src="/static/qiye/xing2.png" alt="" /> - <view :class="item.getScore==3?'hei':''"> - 涓�鑸埇 - </view> - </view> - <view> - <img v-if="item.getScore>=4" src="/static/qiye/xing1.png" alt="" /> - <img v-else src="/static/qiye/xing2.png" alt="" /> - <view :class="item.getScore==4?'hei':''"> - 婊℃剰 - </view> - </view> - <view> - <img v-if="item.getScore>=5" src="/static/qiye/xing1.png" alt="" /> - <img v-else src="/static/qiye/xing2.png" alt="" /> - <view :class="item.getScore==5?'hei':''"> - 闈炲父婊℃剰 - </view> - </view> - </view> - <view class="line"></view> - </view> - <view class="sbox" v-if="item.questionType==1"> - <view class="t2"> - {{item.questionName}} - </view> - <u-radio-group v-model="item.remark"> - <u-radio v-for="(aa, ii) in item.answerList" :key="ii" :name="aa.answerId" - :disabled="item.remark!=aa.answerId"> - {{aa.answerName}} - </u-radio> - </u-radio-group> - <!-- <u-radio-group v-model="value"> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶缁撴灉 + </view> + <view class="v" style="color: #EB4746;"> + {{msg.regionReason || '--'}} + </view> + </view> + <view class="item"> + <view class="k"> + 鎵ф硶鏃堕棿 + </view> + <view class="v"> + {{msg.inTime || msg.planTime}} + </view> + </view> + </view> + <view style="height: 20rpx;"></view> + <view class="wbox2" v-if="msg.isEva==1"> + <view class="t"> + 鎵ф硶璇勪环 + </view> + <template v-for="(item,index) in qlist"> + <view class="sbox" v-if="item.questionType==2"> + <view class="t2"> + {{item.questionName}} + </view> + <view class="xbox"> + <view> + <img src="/static/qiye/xing1.png" alt="" /> + <view> + 寰堢碂绯� + </view> + </view> + <view> + <img v-if="item.getScore>=2" src="/static/qiye/xing1.png" alt="" /> + <img v-else src="/static/qiye/xing2.png" alt="" /> + <view :class="item.getScore==2?'hei':''"> + 涓嶆弧鎰� + </view> + </view> + <view> + <img v-if="item.getScore>=3" src="/static/qiye/xing1.png" alt="" /> + <img v-else src="/static/qiye/xing2.png" alt="" /> + <view :class="item.getScore==3?'hei':''"> + 涓�鑸埇 + </view> + </view> + <view> + <img v-if="item.getScore>=4" src="/static/qiye/xing1.png" alt="" /> + <img v-else src="/static/qiye/xing2.png" alt="" /> + <view :class="item.getScore==4?'hei':''"> + 婊℃剰 + </view> + </view> + <view> + <img v-if="item.getScore>=5" src="/static/qiye/xing1.png" alt="" /> + <img v-else src="/static/qiye/xing2.png" alt="" /> + <view :class="item.getScore==5?'hei':''"> + 闈炲父婊℃剰 + </view> + </view> + </view> + <view class="line"></view> + </view> + <view class="sbox" v-if="item.questionType==1"> + <view class="t2"> + {{item.questionName}} + </view> + <u-radio-group v-model="item.remark"> + <u-radio v-for="(aa, ii) in item.answerList" :key="ii" :name="aa.answerId" + :disabled="item.remark!=aa.answerId"> + {{aa.answerName}} + </u-radio> + </u-radio-group> + <!-- <u-radio-group v-model="value"> <u-radio name="orange">閫変腑</u-radio> <u-radio name="1" :disabled="true">鏈�変腑</u-radio> </u-radio-group> --> - <view class="line"></view> - </view> - </template> - - - <view class="sbox" v-if="msg.evaluateVo.questionRemark"> - <view class="t2"> - 瀵规垜浠殑璇勪环 - </view> - <view class="pjbox"> - {{msg.evaluateVo.questionRemark}} - </view> - </view> - </view> - </view> - <view class="bottom" v-if=" msg.orderStatus== 5"> - <view class="one" v-if="msg.isComplaint != 1 && msg.isEva == 1"> - <view class="b1" @click="open()"> - 鎶曡瘔 - </view> - </view> - <view class="two" v-if="msg.isComplaint != 1 && msg.isEva != 1"> - <view class="b2" @click="open()" > - 鎶曡瘔 - </view> - <view class="b3" @click="pingjia()"> - 鎴戣璇勪环 - </view> - </view> - <view class="one" v-if="msg.isComplaint == 1 && msg.isEva != 1"> - <view class="b1" @click="pingjia()"> - 鎴戣璇勪环 - </view> - </view> - </view> - <view class="bottom" v-if=" msg.orderStatus == 4"> - <view class="one" > - <view class="b1" style="background-color: #1171E0;color: white;" @click="enterOrder()"> - 纭 - </view> - </view> - - - </view> - <u-popup :show="show" @close="close" mode="bottom" round="10" closeable> - <view class="page-box"> - <view class="title1"> - 浼佷笟鎶曡瘔 - </view> - <view class="border"></view> - <view class="padding"> - <view class="font"> - 鎶曡瘔涓婚 - </view> - <view> - <u-radio-group v-model="complaintType"> - <u-radio v-for="(aa, ii) in list" :key="ii" :name="aa.dictCode"> - {{aa.dictLabel}} - </u-radio> - </u-radio-group> - </view> - <view class="font"> - 鎶曡瘔鍐呭 - </view> - <view class="margin-top"> - <u-textarea :cursorSpacing="70" v-model="complaintReason" placeholder="璇疯緭鍏�..."></u-textarea> - </view> - </view> - <view class="down"> - <view class="enter" @click="entery()">鎻愪氦</view> - </view> - </view> - </u-popup> - </view> + <view class="line"></view> + </view> + </template> + + + <view class="sbox" v-if="msg.evaluateVo.questionRemark"> + <view class="t2"> + 瀵规垜浠殑璇勪环 + </view> + <view class="pjbox"> + {{msg.evaluateVo.questionRemark}} + </view> + </view> + </view> + </view> + <view class="bottom" v-if=" msg.orderStatus== 5"> + <view class="one" v-if="msg.isComplaint != 1 && msg.isEva == 1"> + <view class="b1" @click="open()"> + 鎶曡瘔 + </view> + </view> + <view class="two" v-if="msg.isComplaint != 1 && msg.isEva != 1"> + <view class="b2" @click="open()"> + 鎶曡瘔 + </view> + <view class="b3" @click="pingjia()"> + 鎴戣璇勪环 + </view> + </view> + <view class="one" v-if="msg.isComplaint == 1 && msg.isEva != 1"> + <view class="b1" @click="pingjia()"> + 鎴戣璇勪环 + </view> + </view> + </view> + <view class="bottom" v-if=" msg.orderStatus == 4"> + <view class="one"> + <view class="b1" style="background-color: #1171E0;color: white;" @click="enterOrder()"> + 纭 + </view> + </view> + + + </view> + <u-popup :show="show" @close="close" mode="bottom" round="10" closeable> + <view class="page-box"> + <view class="title1"> + 浼佷笟鎶曡瘔 + </view> + <view class="border"></view> + <view class="padding"> + <view class="font"> + 鎶曡瘔涓婚 + </view> + <view> + <u-radio-group v-model="complaintType"> + <u-radio v-for="(aa, ii) in list" :key="ii" :name="aa.dictCode"> + {{aa.dictLabel}} + </u-radio> + </u-radio-group> + </view> + <view class="font"> + 鎶曡瘔鍐呭 + </view> + <view class="margin-top"> + <u-textarea :cursorSpacing="70" v-model="complaintReason" placeholder="璇疯緭鍏�..."></u-textarea> + </view> + </view> + <view class="down"> + <view class="enter" @click="entery()">鎻愪氦</view> + </view> + </view> + </u-popup> + </view> </template> <script> - import { order } from '@/api/index.js' - import { getDicts } from '@/api/data.js' - import { config } from '@/common/config' - import { orderComplaint, confirmOrderId } from '@/api/qiye.js' - export default { - data() { - return { - complaintType:'', - complaintReason:'', - id:'', - msg:{}, - type:'', - img:[], - baseUrl: config.baseUrl, - xing: 5, - value: 'orange', - //type: 2, - show: false, - list: [ - ], - qlist:[] - } - }, - onLoad(options) { - this.id = options.id - //this.getdata(options.id) - getDicts('complaint_type').then(val => { - this.list = val.data.data - console.log(this.list) - // const value = val.data.data.find(item => item.dictCode == this.msg.enforceType) - // this.type = value.dictLabel - }) - // this.getdata() - }, - onShow(options) { - this.getdata() - }, - methods: { - enterOrder() { - uni.showModal({ - title: '鎻愮ず', - content: '纭璇ヨ鍗曪紵', - success: val => { - if(val.confirm) { - confirmOrderId({orderId: this.msg.orderId}).then(val => { - if(val.data.code == 200) { - uni.showToast({ - title: '纭鎴愬姛', - icon: 'none' - }) - this.getdata() - } - }) - } - } - - }) - - }, - getdata(){ - order(this.id).then(val => { - - this.msg = val.data.data - getDicts('enforce_type').then(val => { - const value = val.data.data.find(item => item.dictCode == this.msg.enforceType) - this.type = value.dictLabel - }) - let arr = this.msg.regionImgs.split(","); - for(let i = 0;i<arr.length;i++){ - this.img.push(this.baseUrl+arr[i]) - } - this.qlist = this.msg.evaluateVo.questionList - for(let i = 0;i<this.qlist.length;i++){ - if(this.qlist[i].questionType==1&&this.qlist[i].remark){ - this.qlist[i].remark = Number(this.qlist[i].remark) - } - } - - }) - }, - daxing(a) { - this.xing = a - }, - imgclick(url) { - uni.previewImage({ - urls: [url] - }) - }, - pingjia(){ - uni.navigateTo({ - url: `/qiye/record/evaluate?id=${this.msg.orderId}` - }) - }, - open() { - this.show = true - }, - close() { - this.show = false - this.$emit('cancel') - }, - entery() { - this.$emit('entery') - if(this.complaintType==''){ - uni.showToast({ - title: '璇烽�夋嫨鎶曡瘔涓婚', - icon: 'none' - }) - return - } - if(this.complaintReason==''){ - uni.showToast({ - title: '璇疯緭鍏ユ姇璇夊唴瀹�', - icon: 'none' - }) - return - } - let data = { - orderId:Number(this.id), - complaintType:this.complaintType, - complaintReason:this.complaintReason - } - console.log(data) - //return; - orderComplaint(data).then(val => { - uni.showToast({ - title: '鎻愪氦鎴愬姛', - icon: 'none' - }) - this.show = false - }) - }, + import { + order + } from '@/api/index.js' + import { + getDicts + } from '@/api/data.js' + import { + config + } from '@/common/config' + import { + orderComplaint, + confirmOrderId + } from '@/api/qiye.js' + export default { + data() { + return { + complaintType: '', + complaintReason: '', + id: '', + msg: {}, + type: '', + img: [], + baseUrl: config.baseUrl, + xing: 5, + value: 'orange', + //type: 2, + show: false, + list: [], + qlist: [] + } + }, + onLoad(options) { + this.id = options.id + //this.getdata(options.id) + getDicts('complaint_type').then(val => { + this.list = val.data.data + console.log(this.list) + // const value = val.data.data.find(item => item.dictCode == this.msg.enforceType) + // this.type = value.dictLabel + }) + // this.getdata() + }, + onShow(options) { + this.getdata() + }, + methods: { + enterOrder() { + uni.showModal({ + title: '鎻愮ず', + content: '纭璇ヨ鍗曪紵', + success: val => { + if (val.confirm) { + confirmOrderId({ + orderId: this.msg.orderId + }).then(val => { + if (val.data.code == 200) { + uni.showToast({ + title: '纭鎴愬姛', + icon: 'none' + }) + this.getdata() + } + }) + } + } - } - } + }) + + }, + getdata() { + order(this.id).then(val => { + + this.msg = val.data.data + getDicts('enforce_type').then(val => { + const value = val.data.data.find(item => item.dictCode == this.msg.enforceType) + this.type = value.dictLabel + }) + let arr = this.msg.regionImgs.split(","); + for (let i = 0; i < arr.length; i++) { + this.img.push(this.baseUrl + arr[i]) + } + this.qlist = this.msg.evaluateVo.questionList + for (let i = 0; i < this.qlist.length; i++) { + if (this.qlist[i].questionType == 1 && this.qlist[i].remark) { + this.qlist[i].remark = Number(this.qlist[i].remark) + } + } + + }) + }, + daxing(a) { + this.xing = a + }, + imgclick(url) { + uni.previewImage({ + urls: [url] + }) + }, + pingjia() { + uni.navigateTo({ + url: `/qiye/record/evaluate?id=${this.msg.orderId}` + }) + }, + open() { + this.show = true + }, + close() { + this.show = false + this.$emit('cancel') + }, + entery() { + this.$emit('entery') + if (this.complaintType == '') { + uni.showToast({ + title: '璇烽�夋嫨鎶曡瘔涓婚', + icon: 'none' + }) + return + } + if (this.complaintReason == '') { + uni.showToast({ + title: '璇疯緭鍏ユ姇璇夊唴瀹�', + icon: 'none' + }) + return + } + let data = { + orderId: Number(this.id), + complaintType: this.complaintType, + complaintReason: this.complaintReason + } + console.log(data) + //return; + orderComplaint(data).then(val => { + uni.showToast({ + title: '鎻愪氦鎴愬姛', + icon: 'none' + }) + this.show = false + }) + }, + + } + } </script> <style> - page { - background: #F4F4F4; - } + page { + background: #F4F4F4; + } </style> <style lang="scss" scoped> - .page-main { - position: relative; - top: -380rpx; - } + .page-main { + position: relative; + top: -380rpx; + } - .donw-box { - width: 100%; - height: 380rpx; - flex-shrink: 0; - background: linear-gradient(180deg, #1171E0 42.5%, #F4F4F4 100%); - } + .donw-box { + width: 100%; + height: 380rpx; + flex-shrink: 0; + background: linear-gradient(180deg, #1171E0 42.5%, #F4F4F4 100%); + } - .wbox { - background: #fff; - border-radius: 5px; - padding: 24rpx; - box-sizing: border-box; - margin: 0 32rpx; + .wbox { + background: #fff; + border-radius: 5px; + padding: 24rpx; + box-sizing: border-box; + margin: 0 32rpx; - .item { - display: flex; - margin-bottom: 20rpx; - font-size: 30rpx; + .item { + display: flex; + margin-bottom: 20rpx; + font-size: 30rpx; - .k { - color: #7E8596; - width: 30%; + .k { + color: #7E8596; + width: 30%; - } + } - .v { - color: #202D44; - width: 70%; + .v { + color: #202D44; + width: 70%; - } - } + } + } - .item:last-child { - margin-bottom: 0; - } + .item:last-child { + margin-bottom: 0; + } - .imgbox { - display: grid; - grid-template-columns: 1fr 1fr 1fr; - grid-gap: 10rpx; - // display: flex; - // flex-wrap: wrap; - // justify-content: space-between; - border-radius: 10rpx; + .imgbox { + display: grid; + grid-template-columns: 1fr 1fr 1fr; + grid-gap: 10rpx; + // display: flex; + // flex-wrap: wrap; + // justify-content: space-between; + border-radius: 10rpx; - img { - width: 198rpx; - height: 198rpx; - margin-bottom: 20rpx; - border-radius: 10rpx; - } - } - } + img { + width: 198rpx; + height: 198rpx; + margin-bottom: 20rpx; + border-radius: 10rpx; + } + } + } - .title { - color: #ffffff; - font-size: 44rpx; - font-weight: bold; - padding-left: 32rpx; - margin-top: 24rpx; - margin-bottom: 24rpx; + .title { + color: #ffffff; + font-size: 44rpx; + font-weight: bold; + padding-left: 32rpx; + margin-top: 24rpx; + margin-bottom: 24rpx; - } + } - .wbox2 { - background: #fff; - border-radius: 5px; - box-sizing: border-box; - margin: 0 32rpx; + .wbox2 { + background: #fff; + border-radius: 5px; + box-sizing: border-box; + margin: 0 32rpx; - .t { - padding: 24rpx; - border-bottom: 1px solid #EEEEEE; - color: #202d44; - font-size: 36rpx; - font-weight: bold; - } + .t { + padding: 24rpx; + border-bottom: 1px solid #EEEEEE; + color: #202d44; + font-size: 36rpx; + font-weight: bold; + } - .sbox { - padding: 24rpx; + .sbox { + padding: 24rpx; - .line { - border-bottom: 1px dashed #f1f1f1; - margin-top: 32rpx; - } + .line { + border-bottom: 1px dashed #f1f1f1; + margin-top: 32rpx; + } - .xbox { - display: flex; - margin-top: 36rpx; - justify-content: space-between; + .xbox { + display: flex; + margin-top: 36rpx; + justify-content: space-between; - img { - width: 74rpx; - height: 74rpx; - } + img { + width: 74rpx; + height: 74rpx; + } - >view { - text-align: center; - font-size: 28rpx; - color: #C3C6CD; - } - } - } - } + >view { + text-align: center; + font-size: 28rpx; + color: #C3C6CD; + } + } + } + } - .pjbox { - background: #F4F4F4; - border-radius: 5px; - margin: 10rpx 0; - padding: 24rpx; - color: #202d44; - font-size: 32rpx; + .pjbox { + background: #F4F4F4; + border-radius: 5px; + margin: 10rpx 0; + padding: 24rpx; + color: #202d44; + font-size: 32rpx; - } + } - ::v-deep .u-radio-group { - margin-top: 20rpx; - flex-wrap: wrap; - .u-radio { - margin-right: 20rpx; - margin-bottom: 20rpx; - } - } + ::v-deep .u-radio-group { + margin-top: 20rpx; + flex-wrap: wrap; - .hei { - color: #202D44; - } + .u-radio { + margin-right: 20rpx; + margin-bottom: 20rpx; + } + } - .bottom { - position: fixed; - bottom: 0; - width: 100%; - left: 0; - height: 132rpx; - background: #fff; + .hei { + color: #202D44; + } - .one { - display: flex; - justify-content: center; - align-items: center; - height: 100%; + .bottom { + position: fixed; + bottom: 0; + width: 100%; + left: 0; + height: 132rpx; + background: #fff; - .b1 { - width: 686rpx; - height: 88rpx; - border-radius: 10px; - background: #F7F7F7; - line-height: 88rpx; - text-align: center; - } - } + .one { + display: flex; + justify-content: center; + align-items: center; + height: 100%; - .two { - display: flex; - justify-content: center; - align-items: center; - height: 100%; + .b1 { + width: 686rpx; + height: 88rpx; + border-radius: 10px; + background: #F7F7F7; + line-height: 88rpx; + text-align: center; + } + } - .b2 { - width: 146rpx; - height: 88rpx; - border-radius: 10px; - background: #F7F7F7; - line-height: 88rpx; - text-align: center; - margin-right: 18rpx; - } + .two { + display: flex; + justify-content: center; + align-items: center; + height: 100%; - .b3 { - width: 524rpx; - height: 88rpx; - border-radius: 10px; - background: #1171E0; - line-height: 88rpx; - text-align: center; - color: #fff; - } - } - } + .b2 { + width: 146rpx; + height: 88rpx; + border-radius: 10px; + background: #F7F7F7; + line-height: 88rpx; + text-align: center; + margin-right: 18rpx; + } - .page-box { - padding: 24rpx 0; - .font{ - color: #4a4e60; - font-size: 32rpx; - margin-top: 20rpx; - } - .title1 { - font-size: 36rpx; - font-weight: 700; - padding: 0 32rpx; - border-bottom: 2rpx solid #F4F4F4; - padding-bottom: 24rpx; - } + .b3 { + width: 524rpx; + height: 88rpx; + border-radius: 10px; + background: #1171E0; + line-height: 88rpx; + text-align: center; + color: #fff; + } + } + } - .padding { - padding: 0 24rpx; - } + .page-box { + padding: 24rpx 0; - .margin-top { - margin-top: 20rpx; - } + .font { + color: #4a4e60; + font-size: 32rpx; + margin-top: 20rpx; + } - .down { - padding: 34rpx 30rpx 30rpx; - display: flex; - justify-content: space-between; + .title1 { + font-size: 36rpx; + font-weight: 700; + padding: 0 32rpx; + border-bottom: 2rpx solid #F4F4F4; + padding-bottom: 24rpx; + } - >view { - display: inline-block; - } + .padding { + padding: 0 24rpx; + } - .button { - padding: 20rpx 40rpx; - background: #F7F7F7; - border-radius: 20rpx; - } + .margin-top { + margin-top: 20rpx; + } - .enter { - width: 100%; - background: #1171E0; - color: white; - border-radius: 20rpx; - padding: 20rpx 40rpx; - text-align: center; - } - } - } + .down { + padding: 34rpx 30rpx 30rpx; + display: flex; + justify-content: space-between; - ::v-deep .u-textarea { - background-color: #F4F4F4; - } + >view { + display: inline-block; + } + + .button { + padding: 20rpx 40rpx; + background: #F7F7F7; + border-radius: 20rpx; + } + + .enter { + width: 100%; + background: #1171E0; + color: white; + border-radius: 20rpx; + padding: 20rpx 40rpx; + text-align: center; + } + } + } + + ::v-deep .u-textarea { + background-color: #F4F4F4; + } </style> \ No newline at end of file -- Gitblit v1.9.1