From 2ffea51205b7eb94cf3fb7221aede7ff66669fc1 Mon Sep 17 00:00:00 2001
From: wjt <1797368093@qq.com>
Date: 星期一, 29 七月 2024 15:59:04 +0800
Subject: [PATCH] 新需求修改

---
 policy/translate/translate.vue |   88 ++++++++++++++++++++++++++++++++++++++------
 1 files changed, 76 insertions(+), 12 deletions(-)

diff --git a/policy/translate/translate.vue b/policy/translate/translate.vue
index 6058099..5fe7646 100644
--- a/policy/translate/translate.vue
+++ b/policy/translate/translate.vue
@@ -1,8 +1,8 @@
 <template>
 	<view class="page-box">
 		<view class="list">
-			<view class="select-box" v-for="(item,index) in list" :key="index" :class="{start: isJudege}">
-				<view class="select-image" v-if="isJudege" @click="setIsSelect(index)">
+			<view class="select-box" @click="setIsSelect(index)" v-for="(item,index) in list" :key="index" :class="{start: isJudege}">
+				<view class="select-image" v-if="isJudege" >
 					<image src="/static/policy/checkbox.png" mode="widthFix" v-show="item.isSelect"></image>
 					<image src="/static/policy/none-checkbox.png" mode="widthFix" v-show="!item.isSelect"></image>
 				</view>
@@ -13,29 +13,51 @@
 					</view>
 					<view class="user-info">
 						<text>{{item.applyUser}}</text>
-						<view class="driver"></view>
+					<!-- 	<view class="driver"></view>
+						<text>{{item.checkDeptName}}</text> -->
+					</view>
+					<view class="user-info">
+						<!-- <text>{{item.applyUser}}</text>
+						<view class="driver"></view> -->
 						<text>{{item.checkDeptName}}</text>
 					</view>
 					<view class="set-line">
 						<text>鎵ф硶瀵硅薄锛�</text>{{item.companyName}}
 					</view>
+					
 					<view class="line"></view>
 					<view class="set-flex set-start set-flex-content-between">
-						<view>
+						<view style="width: 75%;">
 							<view class="set-line1">
 								<text>鎵ф硶鏃堕棿锛�</text>{{item.planTime}}
 							</view>
 							<view class="set-line1">
 								<text>鐢宠鏃堕棿锛�</text>{{item.applyTime}}
 							</view>
+							<view class="look" v-if="item.show">
+								<view class="set-line">
+									<text>鎵ф硶涓婚锛�</text>{{item.enforceReason}}
+								</view>
+								<view class="set-line">
+									<text>鎵ф硶绫诲瀷锛�</text>{{handlerType(item.enforceType)}}
+								</view>
+								<view class="set-line set-line-flex">
+									<text>鎵ф硶鍐呭锛�</text> <view>{{item.enforceContent}}</view>
+								</view>
+							</view>
+							
 						</view>
-						<view class="button" v-if="!isJudege" @click="goStartJudeg(item.orderId)">
+						<view class="button" v-if="!isJudege" @click.self="goStartJudeg([item.orderId])">
 							瀹℃壒
 						</view>
 					</view>
+					<view @click="showItem(item)" class="icon" style="text-align: center;display: flex;justify-content: center;align-items: center;">
+						<u-icon name="arrow-down" color="#bfbfbf" size="20" v-if="!item.show"></u-icon>
+						<u-icon name="arrow-up" color="#bfbfbf" size="20" v-else></u-icon>
+					</view>
 				</view>
 			</view>
-			<u-empty v-if="!list.length"></u-empty>
+			<u-empty v-if="!list.length" style="margin-top: 200rpx;"></u-empty>
 		</view>
 		<view class="down" v-if="!isJudege">
 			<view class="button" @click="goRecord">瀹℃壒璁板綍</view>
@@ -56,6 +78,7 @@
 <script>
 	import popupCom from '@/policy/components/popup.vue'
 	import { checkLogList, checkUpd } from '@/api/policy.js'
+	import { getDicts } from '@/api/data.js'
 	export default {
 		components: {
 			popupCom
@@ -70,9 +93,12 @@
 				queryms: {
 					pageNum: 1,
 					pageSize: 10,
-					checkStatus: 0
+					orderStatus: 1,
+					isAsc: "desc",
+					orderByColumn: "apply_time"
 				},
-				recordList: []
+				recordList: [],
+				typeList: []
 			}
 		},
 		computed: {
@@ -86,7 +112,8 @@
 			}
 		},
 		onLoad() {
-			this.checkLogList()
+			
+			this.getDicts()
 		},
 		onReachBottom() {
 			if(this.total == this.list.length) {
@@ -94,8 +121,26 @@
 			}
 			this.queryms.pageNum++
 			this.checkLogList()
+			
 		},
 		methods: {
+			showItem(item) {
+				item.show = !item.show
+			},
+			handlerType(type) {
+				const value = this.typeList.find(item => item.dictCode == type)
+				if(value) {
+					return value.dictLabel
+				} else {
+					return ''
+				}
+			},
+			getDicts(type) {
+				getDicts('enforce_type').then(val => {
+					this.typeList = val.data.data
+					this.checkLogList()
+				})
+			},
 			goRecord() {
 				uni.navigateTo({
 					url: `/policy/translateRecord/translateRecord`
@@ -116,15 +161,21 @@
 				this.isJudege = true
 			},
 			setIsSelect(index){
+				if(!this.isJudege) {
+					return
+				}
 				this.list[index].isSelect = !this.list[index].isSelect
 			},
 			allSelect() {
-				this.list.map(item => item.isSelect = !this.isAllSelect)
+				const value = this.isAllSelect
+				this.list.map(item => item.isSelect = !value)
 			},
 			moreStart() {
 				const value = this.list.some(item => item.isSelect)
 				if(value) {
-					this.goStartJudeg()
+					const valueData = this.list.filter(item => item.isSelect).map(item => item.orderId)
+					// console.log(valueData)
+					this.goStartJudeg(valueData)
 				} else {
 					uni.showToast({
 						title: '璇烽�夋嫨瀹℃壒',
@@ -134,7 +185,7 @@
 			},
 			entery(form) {
 				// 1浼佷笟瀹℃壒锛�2鎵ф硶鍗曞鎵�
-				checkUpd({...form, id: this.recordList, checkType: 2}).then(val => {
+				checkUpd({...form, ids: this.recordList, checkType: 2}).then(val => {
 					if(val.data.code == 200) {
 						uni.showToast({
 							title: '瀹℃壒鎴愬姛',
@@ -157,6 +208,7 @@
 				checkLogList(this.queryms).then(val => {
 					val.data.rows.map(item => {
 						item.isSelect = false
+						item.show = false
 					})
 					this.list = [...this.list,...val.data.rows ]
 					this.total = val.data.total
@@ -181,4 +233,16 @@
 		background-color: #F4F4F4 !important;
 		border: none;
 	}
+	.set-line-flex{
+		display: flex;
+		justify-content: flex-start;
+		align-items: flex-start;
+		text{
+			width: 28%;
+			display: inline-block;
+		}
+		& > view{
+			width: 70%;
+		}
+	}
 </style>
\ No newline at end of file

--
Gitblit v1.9.1