From 5d9a3141d4b3677bf8155da16b435d2a8818793b Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期五, 23 十月 2026 17:44:08 +0800
Subject: [PATCH] feat(report): 引入 SuperDoc 在线编辑器实现报告审核功能 支持审核页面直接编辑报告 - 新增检测报告与检验报告切换功能,切换时自动保存当前编辑内容 - 检测时间从单日选择改为日期范围选择,兼容历史单日数据回显 - 标准模型新增标准要求值字段,复制模板时携带完整表单数据 - 产品委托单下载报告按钮增加可用性状态控制

---
 src/views/business/inspectionView/index.vue |   19 +++++++++++--------
 1 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/src/views/business/inspectionView/index.vue b/src/views/business/inspectionView/index.vue
index fb429cf..8abe80f 100644
--- a/src/views/business/inspectionView/index.vue
+++ b/src/views/business/inspectionView/index.vue
@@ -144,9 +144,9 @@
             <span class="template-panel__unit">鈩�</span>
           </el-form-item>
           <el-form-item label="妫�娴嬫椂闂�:">
-            <el-date-picker v-model="currentOtherForm.detectionTime" :disabled="state > 1" type="date"
-                            value-format="YYYY-MM-DD" placeholder="璇烽�夋嫨鏃ユ湡" size="small" style="width: 160px"
-                            @change="m => subOtherForm(m, 'detectionTime')" />
+            <el-date-picker v-model="currentOtherForm.detectionTimeRange" :disabled="state > 1" type="daterange"
+                            value-format="YYYY-MM-DD" range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" size="small" style="width: 260px"
+                            @change="m => subOtherForm(m, 'detectionTimeRange')" />
           </el-form-item>
           <el-form-item label="妫�娴嬪湴鐐�:">
             <el-input v-model="currentOtherForm.detectionPlace" :disabled="state > 1" clearable
@@ -491,6 +491,7 @@
 <script>
 // Vue3 娌℃湁 this.$createElement锛堜笅闈㈢敤 h 閫� VNode 褰� $msgbox 鐨� message锛�
 import { h } from 'vue'
+import { readDetectionTimeRange, isCompleteDetectionTimeRange, toDetectionTimePayload } from '@/utils/detectionTimeRange'
 import excelFunction from "@/utils/excelFountion";
 import limsTable from "@/components/Table/lims-table.vue";
 import UnPassDialog from "../unpass/components/unPassDialog.vue";
@@ -754,7 +755,7 @@
     currentOtherForm() {
       return this.otherForm[this.currentTable] || {
         temperature: null,
-        detectionTime: null,
+        detectionTimeRange: null,
         detectionPlace: null,
         deviceIds: [],
         insResult: null,
@@ -950,7 +951,7 @@
         (this.insOrder.templateConditions || []).forEach((item) => {
           this.otherForm[item.templateId] = {
             temperature: item.temperature != null ? item.temperature : null,
-            detectionTime: item.detectionTime != null ? item.detectionTime : null,
+            detectionTimeRange: readDetectionTimeRange(item),
             detectionPlace: item.detectionPlace != null ? item.detectionPlace : null,
             deviceIds: Array.isArray(item.deviceIds) ? [...item.deviceIds] : [],
             insResult: item.insResult != null ? item.insResult : null,
@@ -1463,7 +1464,7 @@
       if (templateId == null || this.otherForm[templateId]) return;
       this.otherForm[templateId] = {
         temperature: null,
-        detectionTime: null,
+        detectionTimeRange: null,
         detectionPlace: null,
         deviceIds: [],
         insResult: null,
@@ -1478,7 +1479,9 @@
         payload.templateId = this.currentTable;
         if (type === "deviceIds") {
           payload.deviceIds = Array.isArray(m) ? [...m] : [];
-        } else if (type === "detectionTime" || type === "detectionPlace") {
+        } else if (type === "detectionTimeRange") {
+          Object.assign(payload, toDetectionTimePayload(m));
+        } else if (type === "detectionPlace") {
           payload[type] = m === "" || m == null ? null : m;
         } else {
           payload[type] = Number(m);
@@ -2111,7 +2114,7 @@
         if (this.insOrder.ifsOrderType !== "02wg") {
           if (!form.temperature) missing.push(`璇峰~鍐欍��${item.templateName}銆嶇殑娓╁害`);
         }
-        if (!form.detectionTime) missing.push(`璇烽�夋嫨銆�${item.templateName}銆嶇殑妫�娴嬫椂闂碻);
+        if (!isCompleteDetectionTimeRange(form.detectionTimeRange)) missing.push(`璇烽�夋嫨銆�${item.templateName}銆嶇殑妫�娴嬫椂闂碻);
         if (!form.detectionPlace) missing.push(`璇峰~鍐欍��${item.templateName}銆嶇殑妫�娴嬪湴鐐筦);
         if (!form.deviceIds || form.deviceIds.length === 0) {
           missing.push(`璇烽�夋嫨銆�${item.templateName}銆嶇殑璁惧`);

--
Gitblit v1.9.3