From 9fad473922a1b6dc8f2d34e023195019d00f5a92 Mon Sep 17 00:00:00 2001
From: luojie <125330818@qq.com>
Date: Mon, 19 Jan 2026 22:54:47 +0800
Subject: [PATCH] =?UTF-8?q?feat:[=E6=A8=A1=E6=9D=BF=E7=AE=A1=E7=90=86][?=
=?UTF-8?q?=E4=B9=B1=E4=B8=83=E5=85=AB=E7=B3=9F=E7=9A=84=E6=B5=93=E5=BA=A6?=
=?UTF-8?q?=E8=AE=A1=E7=AE=97]?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/components/Template/HandleFormItem.vue | 22 +++++++++--
.../comps/template/comps/sp/SWYPBQGZYZBB.vue | 17 +-------
.../comps/template/comps/sp/SWYPFXCBYPZB.vue | 1 +
.../comps/template/comps/sp/SWYPFXRYPZB.vue | 1 +
.../comps/template/comps/sp/SWYPNBGZYZBB.vue | 46 +++++++++++++++-------
.../template/formConfig/paralleAndLadderConfig.js | 10 ++---
.../comps/template/mixins/templateMixin.js | 2 +-
7 files changed, 57 insertions(+), 42 deletions(-)
diff --git a/src/components/Template/HandleFormItem.vue b/src/components/Template/HandleFormItem.vue
index bae6a91..a83a8c2 100644
--- a/src/components/Template/HandleFormItem.vue
+++ b/src/components/Template/HandleFormItem.vue
@@ -28,7 +28,7 @@
- {{ value }}
+ {{ inputValue }}
{{ getPlaceholder() }}
@@ -167,6 +167,13 @@ export default {
watch: {
value(newVal) {
this.inputValue = newVal;
+
+ // 当type为clickable时,值变化时调用保存记录方法
+ if (this.item.type === 'clickable') {
+ this.$nextTick(() => {
+ this.onCommonHandleSaveRecord(newVal);
+ });
+ }
}
},
filters: {
@@ -360,7 +367,9 @@ export default {
} else if (!this.error && isEmpty) {
this.$emit('update:error', true);
}
-
+ console.log(this.oldValue,this.inputValue,"onCommonHandleSaveRecord")
+ // 值发生了变化,需要弹出密码输入框
+ console.log(this.oldValue,this.in)
// 值发生了变化,需要弹出密码输入框
const isSame = this.isEqual(this.oldValue, this.inputValue);
if(isSame){
@@ -523,8 +532,13 @@ export default {
return placeholder ? this.$t(placeholder) : (this.$t(prex) + this.$t(label))
},
- onCopy() {
- this.$emit("copy")
+ async onCopy() {
+ // 触发复制事件
+ this.$emit("copy");
+ // 等待复制操作完成后,调用保存记录方法
+ this.$nextTick(async () => {
+ await this.onCommonHandleSaveRecord(this.inputValue);
+ });
},
//判断是否显示问题图标
getIsShowQuestionIcon() {
diff --git a/src/views/business/comps/template/comps/sp/SWYPBQGZYZBB.vue b/src/views/business/comps/template/comps/sp/SWYPBQGZYZBB.vue
index 53961ec..e6565a1 100644
--- a/src/views/business/comps/template/comps/sp/SWYPBQGZYZBB.vue
+++ b/src/views/business/comps/template/comps/sp/SWYPBQGZYZBB.vue
@@ -403,21 +403,6 @@ export default {
subSolutionVisible: false,
currentSubKey: "",//当前点击的子项key
stepTableDataSource: [],
- sysjColumns: [
- { label: "试剂名称", prop: "reagentName" },
- { label: "编号", prop: "reagentCode" },
- { label: "批号", prop: "reagentNo" },
- { label: "浓度/含量/纯度", prop: "concentration" },
- { label: "来源", prop: "source" },
- { label: "失效日", prop: "expireDate" },
- ],
- yqsColumns: [
- { label: "仪器名称", prop: "instrumentName" },
- { label: "仪器型号", prop: "instrumentModel" },
- { label: "仪器编号", prop: "instrumentCode" },
- { label: "下次测试/校准/检定日期", prop: "nextTestDate" },
- ],
-
};
},
mounted() {
@@ -437,7 +422,7 @@ export default {
//选择试剂提交事件
onSelectReagentSubmit(code,row){
if(this.currentSubKey === "subStartSolution"){//起始源溶液点击事件
- this.$refs.stepFormPackageRef.updateFormData("targetAcSolution", row.sjnd);
+ this.$refs.stepFormPackageRef.updateFormData("targetAcSolution", row.nd);
this.updateStepTableData(row);
}
this.$refs.stepFormPackageRef.updateFormData(this.currentSubKey, code);
diff --git a/src/views/business/comps/template/comps/sp/SWYPFXCBYPZB.vue b/src/views/business/comps/template/comps/sp/SWYPFXCBYPZB.vue
index 654920b..d6ac9ae 100644
--- a/src/views/business/comps/template/comps/sp/SWYPFXCBYPZB.vue
+++ b/src/views/business/comps/template/comps/sp/SWYPFXCBYPZB.vue
@@ -111,6 +111,7 @@ export default {
label: 'template.common.versionNumber',
type: "input",
fillType: "actFill",
+ prepend:"V",
maxlength: 50
},
diff --git a/src/views/business/comps/template/comps/sp/SWYPFXRYPZB.vue b/src/views/business/comps/template/comps/sp/SWYPFXRYPZB.vue
index d567134..f032914 100644
--- a/src/views/business/comps/template/comps/sp/SWYPFXRYPZB.vue
+++ b/src/views/business/comps/template/comps/sp/SWYPFXRYPZB.vue
@@ -111,6 +111,7 @@ export default {
label: 'template.common.versionNumber',
type: "input",
fillType: "actFill",
+ prepend:"V",
maxlength: 50
},
diff --git a/src/views/business/comps/template/comps/sp/SWYPNBGZYZBB.vue b/src/views/business/comps/template/comps/sp/SWYPNBGZYZBB.vue
index 9a69a07..6020331 100644
--- a/src/views/business/comps/template/comps/sp/SWYPNBGZYZBB.vue
+++ b/src/views/business/comps/template/comps/sp/SWYPNBGZYZBB.vue
@@ -63,6 +63,7 @@
fieldItemLabel="平行配制" />
onHandleTableBlur('paralle', paralleIndex,e)" :ref="`paralleStepTableRef_${paralleIndex}`"
:columns="paralleStepColumns" :formData="paralleConfig"
+ @clickable="(col,rowIndex) => handleTableClickable('paralle', paralleIndex, col,rowIndex)"
:prefixKey="'paralle' + paralleIndex" fieldItemLabel="平行配制">
{
label: "目标溶液编号",
prop: "targetSolutionCode",
bodyType: "select",
- bodyOptions: [{
- label: "溶液1",
- value: "1",
- }],
+ bodyOptions: $this.getDictOptions('business_jmdyzqdyp'),
subType: "span",
subKey: "subTargetSolutionCode",
bodyFillType: "preFill",
@@ -251,9 +248,8 @@ export const getParallelColumnsConfig = ($this) => {
label: "实际原始溶液编号",
prop: "actStartSolutionCode",
width: 280,
- bodyType: "input",
+ bodyType: "clickable",
bodyFillType: "actFill",
- bodyDisabled: true,
},
{
label: "预设原始溶液浓度",
@@ -270,7 +266,7 @@ export const getParallelColumnsConfig = ($this) => {
},
{
label: "实际原始溶液浓度",
- prop: "actStartSolutionConcentration",
+ prop: "targetAcSolution",
width: 280,
bodyType: "inputNumber",
bodyFillType: "actFill",
diff --git a/src/views/business/comps/template/mixins/templateMixin.js b/src/views/business/comps/template/mixins/templateMixin.js
index deaff33..d786f41 100644
--- a/src/views/business/comps/template/mixins/templateMixin.js
+++ b/src/views/business/comps/template/mixins/templateMixin.js
@@ -22,7 +22,7 @@ export default {
if (v.bdnr) {
this.formData = { ...JSON.parse(v.bdnr), studyMc,studySn,templateMc,templateMcEn,templateSn,startDate,endDate, };
}
- const { effectivePeriod, effectivePeriodUnit, expireDate } = this.formData;
+ const { effectivePeriod, effectivePeriodUnit, expireDate } = this.formData;
//实际填报的时候,如果有了开始时间,并且有有效周期,但是没有失效日,就计算失效日为开始时间+有效周期
if (startDate && this.fillType === "actFill" && effectivePeriod && effectivePeriodUnit && !expireDate) {
const start = moment(startDate);