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