From 6e1cb1b850f3536eb91b3247f2b5e6aadf6805c9 Mon Sep 17 00:00:00 2001
From: zhangwencui <1064582902@qq.com>
Date: 星期二, 03 二月 2026 16:52:43 +0800
Subject: [PATCH] 样式修改
---
src/pages/safeProduction/dangerInvestigation/rectify.vue | 312 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 312 insertions(+), 0 deletions(-)
diff --git a/src/pages/safeProduction/dangerInvestigation/rectify.vue b/src/pages/safeProduction/dangerInvestigation/rectify.vue
new file mode 100644
index 0000000..1e814ec
--- /dev/null
+++ b/src/pages/safeProduction/dangerInvestigation/rectify.vue
@@ -0,0 +1,312 @@
+<template>
+ <view class="danger-investigation-rectify">
+ <PageHeader title="闅愭偅鏁存敼"
+ @back="goBack" />
+ <view class="section">
+ <view class="section-title">闅愭偅淇℃伅</view>
+ <view class="info-item">
+ <text class="info-label">闅愭偅缂栧彿</text>
+ <text class="info-value">{{ form.hiddenCode || '-' }}</text>
+ </view>
+ <view class="info-item">
+ <text class="info-label">闅愭偅绫诲瀷</text>
+ <text class="info-value">{{ hidden_danger_type.find(i => String(i.value) === String(form.type))?.label || '-' }}</text>
+ </view>
+ <view class="info-item">
+ <text class="info-label">椋庨櫓绛夌骇</text>
+ <text class="info-value">{{ form.riskLevel || '-' }}</text>
+ </view>
+ <view class="info-item">
+ <text class="info-label">闅愭偅鎻忚堪</text>
+ <text class="info-value">{{ form.hiddenDesc || '-' }}</text>
+ </view>
+ <view class="info-item">
+ <text class="info-label">闅愭偅鍏蜂綋浣嶇疆</text>
+ <text class="info-value">{{ form.location || '-' }}</text>
+ </view>
+ <view class="info-item">
+ <text class="info-label">涓婃姤浜�</text>
+ <text class="info-value">{{ form.createUserName || '-' }}</text>
+ </view>
+ <view class="info-item">
+ <text class="info-label">涓婃姤鏃堕棿</text>
+ <text class="info-value">{{ form.createTime || '-' }}</text>
+ </view>
+ <view class="info-item">
+ <text class="info-label">鏁存敼瀹屾垚鏈熼檺</text>
+ <text class="info-value">{{ form.rectifyTime || '-' }}</text>
+ </view>
+ <view class="info-item">
+ <text class="info-label">鏁存敼璐d换浜�</text>
+ <text class="info-value">{{ form.rectifyUserName || '-' }}</text>
+ </view>
+ <view class="info-item">
+ <text class="info-label">鏁存敼璐d换浜鸿仈绯绘柟寮�</text>
+ <text class="info-value">{{ form.rectifyUserMobile || '-' }}</text>
+ </view>
+ </view>
+ <u-form @submit="handleSubmit"
+ ref="formRef"
+ label-width="130">
+ <!-- 鏁存敼淇℃伅 -->
+ <u-cell-group title="鏁存敼淇℃伅">
+ <u-form-item label="瀹為檯鏁存敼瀹屾垚鏃堕棿"
+ prop="rectifyActualTime"
+ required
+ border-bottom>
+ <u-input v-model="form.rectifyActualTime"
+ placeholder="璇烽�夋嫨瀹為檯鏁存敼瀹屾垚鏃堕棿"
+ @click="showTimePicker" />
+ <template #right>
+ <up-icon name="arrow-right"
+ @click="showTimePicker"></up-icon>
+ </template>
+ </u-form-item>
+ <u-form-item label="鏁存敼鍏蜂綋鎺柦"
+ required
+ border-bottom>
+ <u-textarea v-model="form.rectifyMeasures"
+ readonly
+ :autoHeight="true" />
+ </u-form-item>
+ </u-cell-group>
+ <!-- 鎻愪氦鎸夐挳 -->
+ <view class="footer-btns">
+ <u-button class="cancel-btn"
+ @click="goBack">鍙栨秷</u-button>
+ <u-button class="sign-btn"
+ type="primary"
+ @click="handleSubmit"
+ :loading="loading">鎻愪氦鏁存敼</u-button>
+ </view>
+ </u-form>
+ <!-- 鏃堕棿閫夋嫨鍣� -->
+ <up-datetime-picker :show="showTime"
+ v-model="currentTime"
+ @confirm="onTimeConfirm"
+ @cancel="showTime = false"
+ mode="date" />
+ </view>
+</template>
+
+<script setup>
+ // 鏇挎崲 toast 鏂规硶
+ defineOptions({ name: "danger-investigation-rectify" });
+ const showToast = message => {
+ uni.showToast({
+ title: message,
+ icon: "none",
+ });
+ };
+
+ import { ref, onMounted } from "vue";
+ import PageHeader from "@/components/PageHeader.vue";
+ import { safeHiddenUpdate } from "@/api/safeProduction/dangerInvestigation";
+ import useUserStore from "@/store/modules/user";
+ import dayjs from "dayjs";
+ import { onLoad } from "@dcloudio/uni-app";
+ import { useDict } from "@/utils/dict";
+
+ const userStore = useUserStore();
+ const { hidden_danger_type } = useDict("hidden_danger_type");
+ // 琛ㄥ崟鏁版嵁
+ const form = ref({
+ id: "",
+ hiddenCode: "",
+ hiddenDesc: "",
+ location: "",
+ rectifyTime: "",
+ rectifyUserName: "",
+ rectifyUserMobile: "",
+ rectifyMeasures: "",
+ rectifyActualTime: "",
+ rectifyResult: "",
+ });
+
+ // 椤甸潰鐘舵��
+ const loading = ref(false);
+ const formRef = ref(null);
+
+ // 鏃堕棿鐩稿叧
+ const currentTime = ref(Date.now());
+ const showTime = ref(false);
+
+ // 杩斿洖涓婁竴椤�
+ const goBack = () => {
+ // 杩斿洖鏃舵竻闄ゆ湰鍦板瓨鍌ㄧ殑鏁版嵁
+ uni.removeStorageSync("dangerInvestigation");
+ uni.navigateBack();
+ };
+
+ // 鏄剧ず鏃堕棿閫夋嫨鍣�
+ const showTimePicker = () => {
+ showTime.value = true;
+ };
+
+ // 纭鏃堕棿閫夋嫨
+ const onTimeConfirm = e => {
+ form.value.rectifyActualTime = dayjs(e.value).format("YYYY-MM-DD");
+ currentTime.value = e.value;
+ showTime.value = false;
+ };
+
+ // 鎻愪氦琛ㄥ崟
+ const handleSubmit = async () => {
+ if (!form.value.rectifyActualTime) {
+ showToast("璇烽�夋嫨瀹為檯鏁存敼瀹屾垚鏃堕棿");
+ return;
+ }
+ if (!form.value.rectifyMeasures) {
+ showToast("璇疯緭鍏ユ暣鏀瑰叿浣撴帾鏂�");
+ return;
+ }
+
+ try {
+ loading.value = true;
+
+ // 浣跨敤瀹夊叏娴呮嫹璐濓紝閬垮厤瀵硅薄灞曞紑鍦ㄦ煇浜涜繍琛屾椂鎶涢敊
+ const source =
+ form.value && typeof form.value === "object" ? form.value : {};
+ const submitData = {};
+ Object.keys(source).forEach(k => {
+ submitData[k] = source[k];
+ });
+ console.log("submitData", submitData);
+
+ const { code } = await safeHiddenUpdate(submitData);
+ if (code === 200) {
+ showToast("鏁存敼鎻愪氦鎴愬姛");
+ setTimeout(() => {
+ goBack();
+ }, 500);
+ } else {
+ loading.value = false;
+ showToast("鏁存敼鎻愪氦澶辫触锛岃閲嶈瘯");
+ }
+ } catch (e) {
+ loading.value = false;
+ console.error("鎻愪氦澶辫触:", e);
+ showToast("鎻愪氦澶辫触锛岃閲嶈瘯");
+ }
+ };
+
+ onLoad(() => {
+ // 浠庢湰鍦板瓨鍌ㄨ幏鍙栭殣鎮f暟鎹�
+ const dangerInvestigation = uni.getStorageSync("dangerInvestigation");
+ if (dangerInvestigation && dangerInvestigation.id) {
+ form.value = dangerInvestigation;
+ console.log("form.value", form.value);
+ } else {
+ showToast("鏆傛棤闅愭偅鏁版嵁");
+ }
+ });
+
+ // 鍒濆鍖栭〉闈㈡暟鎹�
+ const initPageData = () => {
+ // 璁剧疆榛樿瀹為檯鏁存敼瀹屾垚鏃堕棿涓哄綋鍓嶆椂闂�
+ if (!form.value.rectifyActualTime) {
+ form.value.rectifyActualTime = dayjs().format("YYYY-MM-DD");
+ currentTime.value = Date.now();
+ }
+ };
+
+ onMounted(() => {
+ initPageData();
+ });
+</script>
+
+<style scoped lang="scss">
+ @import "@/static/scss/form-common.scss";
+ .danger-investigation-rectify {
+ min-height: 100vh;
+ background-color: #f8f9fa;
+ padding-bottom: 160rpx;
+ }
+ .footer-btns {
+ position: fixed;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ background: #fff;
+ display: flex;
+ justify-content: space-around;
+ align-items: center;
+ padding: 0.75rem 0;
+ box-shadow: 0 -0.125rem 0.5rem rgba(0, 0, 0, 0.05);
+ z-index: 1000;
+ }
+
+ .cancel-btn {
+ font-weight: 400;
+ font-size: 1rem;
+ color: #666;
+ background: #f5f5f5;
+ border: 1px solid #ddd;
+ width: 45%;
+ height: 2.5rem;
+ border-radius: 2.5rem 2.5rem 2.5rem 2.5rem;
+ }
+
+ .sign-btn {
+ font-weight: 500;
+ font-size: 1rem;
+ color: #fff;
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
+ border: none;
+ width: 45%;
+ height: 2.5rem;
+ border-radius: 2.5rem 2.5rem 2.5rem 2.5rem;
+ }
+
+ .section {
+ background-color: #ffffff;
+ margin-bottom: 16px;
+ overflow: hidden;
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
+ }
+
+ .section-title {
+ font-size: 16px;
+ font-weight: 600;
+ color: #333333;
+ padding: 16px 16px 12px;
+ border-bottom: 1px solid #f0f0f0;
+ }
+
+ .info-item {
+ display: flex;
+ padding: 14px 16px;
+ border-bottom: 1px solid #f8f8f8;
+ align-items: flex-start;
+ }
+
+ .info-item:last-child {
+ border-bottom: none;
+ }
+
+ .info-label {
+ font-size: 14px;
+ color: #666666;
+ min-width: 80px;
+ flex-shrink: 0;
+ line-height: 22px;
+ }
+
+ .info-value {
+ font-size: 14px;
+ color: #333333;
+ flex: 1;
+ line-height: 22px;
+ text-align: right;
+ }
+
+ .multi-line {
+ text-align: left;
+ word-break: break-all;
+ line-height: 1.6;
+ }
+
+ .remark-item {
+ padding-bottom: 16px;
+ }
+</style>
\ No newline at end of file
--
Gitblit v1.9.3