From bdb3123664234ec9bfe7f43be21fac7250f9479f Mon Sep 17 00:00:00 2001
From: 王恒 <318726284@qq.com>
Date: 星期三, 13 八月 2025 20:00:51 +0800
Subject: [PATCH] '修改字段、处理空值'

---
 policy/translate/translate.vue |  482 +++++++++++++++++++++++++++--------------------------
 1 files changed, 248 insertions(+), 234 deletions(-)

diff --git a/policy/translate/translate.vue b/policy/translate/translate.vue
index 5fe7646..fb41d6e 100644
--- a/policy/translate/translate.vue
+++ b/policy/translate/translate.vue
@@ -1,248 +1,262 @@
 <template>
-	<view class="page-box">
-		<view class="list">
-			<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>
-				<view class="list-item">
-					<view class="top-title">
-						<text>{{item.enforceReason}}</text>
-						<text class="status">寰呭鎵�</text>
-					</view>
-					<view class="user-info">
-						<text>{{item.applyUser}}</text>
-					<!-- 	<view class="driver"></view>
+  <view class="page-box">
+    <view class="list">
+      <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>
+        <view class="list-item">
+          <view class="top-title">
+            <text>{{item.enforceReason}}</text>
+            <text class="status">寰呭鎵�</text>
+          </view>
+          <view class="user-info">
+            <text>{{item.applyUser}}</text>
+            <!-- 	<view class="driver"></view>
 						<text>{{item.checkDeptName}}</text> -->
-					</view>
-					<view class="user-info">
-						<!-- <text>{{item.applyUser}}</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 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.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" style="margin-top: 200rpx;"></u-empty>
-		</view>
-		<view class="down" v-if="!isJudege">
-			<view class="button" @click="goRecord">瀹℃壒璁板綍</view>
-			<view class="button more-options" @click="moreJudeg">鎵归噺瀹℃壒</view>
-		</view>
-		<view class="down judge" v-else>
-			<view class="select-image"  @click="allSelect()">
-				<image src="/static/policy/checkbox.png" mode="widthFix" v-show="isAllSelect"></image>
-				<image src="/static/policy/none-checkbox.png" mode="widthFix" v-show="!isAllSelect"></image>
-				<view class="show-check">鍏ㄩ��</view>
-			</view>
-			<view class="button more-options start-option" @click="moreStart">绔嬪嵆瀹℃壒</view>
-		</view>
-		<popupCom ref="popup" @entery="entery" @cancel="cancelSelect"></popupCom>
-	</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 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.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" style="margin-top: 200rpx;"></u-empty>
+    </view>
+    <view class="down" v-if="!isJudege">
+      <view class="button" @click="goRecord">瀹℃壒璁板綍</view>
+      <view class="button more-options" @click="moreJudeg">鎵归噺瀹℃壒</view>
+    </view>
+    <view class="down judge" v-else>
+      <view class="select-image" @click="allSelect()">
+        <image src="/static/policy/checkbox.png" mode="widthFix" v-show="isAllSelect"></image>
+        <image src="/static/policy/none-checkbox.png" mode="widthFix" v-show="!isAllSelect"></image>
+        <view class="show-check">鍏ㄩ��</view>
+      </view>
+      <view class="button more-options start-option" @click="moreStart">绔嬪嵆瀹℃壒</view>
+    </view>
+    <popupCom ref="popup" @entery="entery" @cancel="cancelSelect"></popupCom>
+  </view>
 </template>
 
 <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
-		},
-		data() {
-			return {
-				isJudege: false,
-				list: [
-					
-				],
-				total: 1,
-				queryms: {
-					pageNum: 1,
-					pageSize: 10,
-					orderStatus: 1,
-					isAsc: "desc",
-					orderByColumn: "apply_time"
-				},
-				recordList: [],
-				typeList: []
-			}
-		},
-		computed: {
-			isAllSelect(){
-				if(this.list.length) {
-					const value = this.list.every(item => item.isSelect)
-					return value
-				} else {
-					return false
-				}
-			}
-		},
-		onLoad() {
-			
-			this.getDicts()
-		},
-		onReachBottom() {
-			if(this.total == this.list.length) {
-				return
-			}
-			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`
-				})
-			},
-			click() {
+  import popupCom from '@/policy/components/popup.vue'
+  import {
+    checkLogList,
+    checkUpd
+  } from '@/api/policy.js'
+  import {
+    getDicts
+  } from '@/api/data.js'
+  export default {
+    components: {
+      popupCom
+    },
+    data() {
+      return {
+        isJudege: false,
+        list: [
 
-			},
-			goStartJudeg(id) {
-				this.recordList = id
-				this.$refs.popup.open()
-			},
-			// 鎵归噺瀹℃壒
-			moreJudeg() {
-				if(!this.list.length){
-					return
-				}
-				this.isJudege = true
-			},
-			setIsSelect(index){
-				if(!this.isJudege) {
-					return
-				}
-				this.list[index].isSelect = !this.list[index].isSelect
-			},
-			allSelect() {
-				const value = this.isAllSelect
-				this.list.map(item => item.isSelect = !value)
-			},
-			moreStart() {
-				const value = this.list.some(item => item.isSelect)
-				if(value) {
-					const valueData = this.list.filter(item => item.isSelect).map(item => item.orderId)
-					// console.log(valueData)
-					this.goStartJudeg(valueData)
-				} else {
-					uni.showToast({
-						title: '璇烽�夋嫨瀹℃壒',
-						icon: 'none'
-					})
-				}
-			},
-			entery(form) {
-				// 1浼佷笟瀹℃壒锛�2鎵ф硶鍗曞鎵�
-				checkUpd({...form, ids: this.recordList, checkType: 2}).then(val => {
-					if(val.data.code == 200) {
-						uni.showToast({
-							title: '瀹℃壒鎴愬姛',
-							icon: 'none'
-						})
-					}
-					this.list = []
-					this.queryms.pageNum = 1
-					this.checkLogList()
-					this.$refs.popup.close()
-					this.isJudege = false
-				})
-				
-			},
-			cancelSelect() {
-				this.isJudege = false
-				this.list.map(item => item.isSelect = false)
-			},
-			checkLogList() {
-				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
-				})
-			}
-		}
-	}
+        ],
+        total: 1,
+        queryms: {
+          pageNum: 1,
+          pageSize: 10,
+          orderStatus: 1,
+          isAsc: "desc",
+          orderByColumn: "apply_time"
+        },
+        recordList: [],
+        typeList: []
+      }
+    },
+    computed: {
+      isAllSelect() {
+        if (this.list.length) {
+          const value = this.list.every(item => item.isSelect)
+          return value
+        } else {
+          return false
+        }
+      }
+    },
+    onLoad() {
+
+      this.getDicts()
+    },
+    onReachBottom() {
+      if (this.total == this.list.length) {
+        return
+      }
+      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`
+        })
+      },
+      click() {
+
+      },
+      goStartJudeg(id) {
+        this.recordList = id
+        this.$refs.popup.open()
+      },
+      // 鎵归噺瀹℃壒
+      moreJudeg() {
+        if (!this.list.length) {
+          return
+        }
+        this.isJudege = true
+      },
+      setIsSelect(index) {
+        if (!this.isJudege) {
+          return
+        }
+        this.list[index].isSelect = !this.list[index].isSelect
+      },
+      allSelect() {
+        const value = this.isAllSelect
+        this.list.map(item => item.isSelect = !value)
+      },
+      moreStart() {
+        const value = this.list.some(item => item.isSelect)
+        if (value) {
+          const valueData = this.list.filter(item => item.isSelect).map(item => item.orderId)
+          // console.log(valueData)
+          this.goStartJudeg(valueData)
+        } else {
+          uni.showToast({
+            title: '璇烽�夋嫨瀹℃壒',
+            icon: 'none'
+          })
+        }
+      },
+      entery(form) {
+        // 1浼佷笟瀹℃壒锛�2鎵ф硶鍗曞鎵�
+        checkUpd({
+          ...form,
+          ids: this.recordList,
+          checkType: 2
+        }).then(val => {
+          if (val.data.code == 200) {
+            uni.showToast({
+              title: '瀹℃壒鎴愬姛',
+              icon: 'none'
+            })
+          }
+          this.list = []
+          this.queryms.pageNum = 1
+          this.checkLogList()
+          this.$refs.popup.close()
+          this.isJudege = false
+        })
+
+      },
+      cancelSelect() {
+        this.isJudege = false
+        this.list.map(item => item.isSelect = false)
+      },
+      checkLogList() {
+        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
+        })
+      }
+    }
+  }
 </script>
 <style>
-	page {
-		background-color: #F4F4F4;
-	}
+  page {
+    background-color: #F4F4F4;
+  }
 </style>
 <style lang="scss" scoped>
-	@import "./translate.scss";
+  @import "./translate.scss";
 
-	/deep/ .u-radio {
-		margin-right: 84rpx !important;
-	}
+  ::v-deep .u-radio {
+    margin-right: 84rpx !important;
+  }
 
-	/deep/ .u-textarea {
-		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%;
-		}
-	}
+  ::v-deep .u-textarea {
+    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