From b5f084460e9e639358fbf91056a86be8d0a5c4b2 Mon Sep 17 00:00:00 2001
From: yaolonglong <yaolonglong15@163.com>
Date: 星期四, 09 十月 2025 20:18:57 +0800
Subject: [PATCH] 获取验证码功能

---
 policy/reportDetails/reportDetails.vue |  235 +++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 213 insertions(+), 22 deletions(-)

diff --git a/policy/reportDetails/reportDetails.vue b/policy/reportDetails/reportDetails.vue
index 8183fd0..706a3aa 100644
--- a/policy/reportDetails/reportDetails.vue
+++ b/policy/reportDetails/reportDetails.vue
@@ -1,22 +1,213 @@
-<template>
-	<view>
-		
-	</view>
-</template>
-
-<script>
-	export default {
-		data() {
-			return {
-				
-			}
-		},
-		methods: {
-			
-		}
-	}
-</script>
-
-<style>
-
-</style>
+<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 || details.planMonth || ''}}</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" style="margin-bottom: 40rpx;">
+          <view class="form-label require" style="margin-bottom: 40rpx;">鏄惁鍒涘缓鏁存敼璁″垝</view>
+          <view>
+            <u-radio-group v-model="isRectify" @change="changeRectify">
+              <u-radio shape="circle" label="鏄�" :name="1"></u-radio>
+              <u-radio shape="circle" label="鍚�" :name="0"></u-radio>
+            </u-radio-group>
+          </view>
+        </view>
+        <!-- 鏁存敼鏃堕棿 -->
+        <view v-if="isRectify == 1" class="form-input-item" style="margin-bottom: 40rpx;">
+          <view class="form-label require" style="margin-bottom: 40rpx;">鏁存敼璁″垝鏃堕棿</view>
+          <view class="form-input-content" @click="showTimeFun">
+            <input type="text" placeholder="璇烽�夋嫨鏁存敼璁″垝鏃堕棿" disabled v-model.trim="form.planTime" />
+            <u-icon name="arrow-right"></u-icon>
+          </view>
+        </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>
+
+    <yt-dateTimePicker ref="myPicker" @submit="confirmTime" :time-init="timeInit" :start-year="year" :startMonth="month"
+      :time-hide="[true, true, true, true, false, false]" />
+  </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',
+          planTime: null, // 鏁存敼璁″垝鏃堕棿
+        },
+        fileList1: [],
+        details: {},
+        enforceType: "",
+        timeInit: '',
+        planTimeStr: '',
+        isRectify: 0, // 鏄惁鍒涘缓鏁存敼
+      }
+    },
+    onLoad(options) {
+      this.orderDetails(options.id)
+    },
+    methods: {
+      changeRectify(e) {
+        console.log(e)
+        if (e == 0) {
+          this.form.planTime = null
+          this.timeInit = ''
+          this.planTimeStr = ''
+        }
+      },
+
+      // 鑾峰彇鎵ф硶绫诲瀷鏋氫妇
+      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)
+          }
+        })
+      },
+
+      showTimeFun() {
+        this.$refs.myPicker.show();
+      },
+
+      confirmTime(e) {
+        this.form.planTime = e.year + '-' + e.month + '-' + +e.day + ' ' + e.hour + ":" + "00:00"
+        this.planTimeStr = e.year + '-' + e.month + '-' + +e.day + ' ' + e.hour + ":" + "00"
+        this.timeInit = this.$u.timeFormat(new Date(this.planTimeStr), 'yyyy-mm-dd hh:MM')
+      },
+    }
+  }
+</script>
+<style>
+  page {
+    background-color: #F4F4F4;
+  }
+</style>
+<style lang="scss" scoped>
+  @import "./reportDetails.scss";
+
+  ::v-deep .u-radio {
+    margin-right: 80rpx;
+  }
+
+  .form-input-content {
+    width: 100%;
+    display: flex;
+    justify-content: space-between;
+    align-items: center;
+    background-color: #F4F4F4;
+    border-radius: 12rpx;
+    padding: 10rpx 20rpx;
+    box-sizing: border-box;
+  }
+</style>
\ No newline at end of file

--
Gitblit v1.9.1