From b5f084460e9e639358fbf91056a86be8d0a5c4b2 Mon Sep 17 00:00:00 2001
From: yaolonglong <yaolonglong15@163.com>
Date: 星期四, 09 十月 2025 20:18:57 +0800
Subject: [PATCH] 获取验证码功能
---
qiye/complaint/details1.vue | 739 +++++++++++++++++++++++++++++---------------------------
1 files changed, 387 insertions(+), 352 deletions(-)
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
--
Gitblit v1.9.1