diff --git a/src/components/Template/HandleFormItem.vue b/src/components/Template/HandleFormItem.vue
index d5623c0..27cb6d4 100644
--- a/src/components/Template/HandleFormItem.vue
+++ b/src/components/Template/HandleFormItem.vue
@@ -498,7 +498,7 @@ export default {
return false;
},
handleClickable(item, event) {
- if (item.fillType !== 'actFill') {
+ if (this.templateFillType !== 'actFill') {
return
}
this.$emit("clickable", item)
diff --git a/src/components/Template/SelectTable.vue b/src/components/Template/SelectTable.vue
index c7e3338..cadf057 100644
--- a/src/components/Template/SelectTable.vue
+++ b/src/components/Template/SelectTable.vue
@@ -148,6 +148,7 @@ export default {
this.localSelectedId = row[this.selectedCode];
this.$emit("radioSelect", row[this.selectedCode],row);
},
+
}
}
diff --git a/src/components/Template/Step.vue b/src/components/Template/Step.vue
index 274ef84..2a47de3 100644
--- a/src/components/Template/Step.vue
+++ b/src/components/Template/Step.vue
@@ -2,7 +2,7 @@
添加步骤
-
+
@@ -28,9 +34,26 @@
+
+
\ No newline at end of file
diff --git a/src/components/Template/StepComponents/ry/clfcz.vue b/src/components/Template/StepComponents/ry/clfcz.vue
new file mode 100644
index 0000000..3d32432
--- /dev/null
+++ b/src/components/Template/StepComponents/ry/clfcz.vue
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/components/Template/StepComponents/ry/czhj.vue b/src/components/Template/StepComponents/ry/czhj.vue
index c52d6ce..c0cd755 100644
--- a/src/components/Template/StepComponents/ry/czhj.vue
+++ b/src/components/Template/StepComponents/ry/czhj.vue
@@ -1,48 +1,62 @@
-
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/src/components/Template/StepComponents/ry/jrry.vue b/src/components/Template/StepComponents/ry/jrry.vue
new file mode 100644
index 0000000..291db60
--- /dev/null
+++ b/src/components/Template/StepComponents/ry/jrry.vue
@@ -0,0 +1,81 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/components/Template/StepComponents/ry/qywz.vue b/src/components/Template/StepComponents/ry/qywz.vue
new file mode 100644
index 0000000..13071f5
--- /dev/null
+++ b/src/components/Template/StepComponents/ry/qywz.vue
@@ -0,0 +1,53 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/components/Template/StepComponents/ry/tpjydd.vue b/src/components/Template/StepComponents/ry/tpjydd.vue
new file mode 100644
index 0000000..94b5f69
--- /dev/null
+++ b/src/components/Template/StepComponents/ry/tpjydd.vue
@@ -0,0 +1,125 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/components/Template/StepComponents/ry/tpjysd.vue b/src/components/Template/StepComponents/ry/tpjysd.vue
new file mode 100644
index 0000000..78e5e08
--- /dev/null
+++ b/src/components/Template/StepComponents/ry/tpjysd.vue
@@ -0,0 +1,226 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/components/Template/StepComponents/ry/xzrq.vue b/src/components/Template/StepComponents/ry/xzrq.vue
new file mode 100644
index 0000000..1641544
--- /dev/null
+++ b/src/components/Template/StepComponents/ry/xzrq.vue
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/components/Template/StepFormPackage.vue b/src/components/Template/StepFormPackage.vue
index 4db7d5a..34a1299 100644
--- a/src/components/Template/StepFormPackage.vue
+++ b/src/components/Template/StepFormPackage.vue
@@ -17,20 +17,14 @@
-
-
+
+
-
-
-
-
@@ -40,6 +34,16 @@
{{ formFields[key] }}
+
+ {{ sItem.buttonName }}
+
+
+
{{sItem.otherLabel ? $t(sItem.otherLabel) : $t("template.common.other") }}
+
+
@@ -80,10 +84,12 @@ export default {
mounted() {
EventBus.$on("onReagentSubmit",this.onReagentSubmit)
EventBus.$on("onInstrumentSubmit",this.onInstrumentSubmit)
+ EventBus.$on("onMixReagentSubmit",this.onMixReagentSubmit)
},
unmounted() {
EventBus.$off("onReagentSubmit",this.onReagentSubmit)
EventBus.$off("onInstrumentSubmit",this.onInstrumentSubmit)
+ EventBus.$off("onMixReagentSubmit",this.onMixReagentSubmit)
},
data() {
return {
@@ -97,6 +103,12 @@ export default {
}
},
methods: {
+ // 处理选择试剂/供试品/给药制剂提交
+ onMixReagentSubmit(data){
+ if(data.uuid !== this.uuid) return;
+ this.formFields[this.currentClickKey] = data.selectedId;
+ this.$emit("onDialogSubmit",data)
+ },
// 处理选择试剂提交
onReagentSubmit(data){
if(data.uuid !== this.uuid) return;
@@ -110,15 +122,33 @@ export default {
getClickableItem(sItem) {
return {
...sItem,
- type:"clickable"
+ type:"clickable",
+
}
},
handleClickInstrument(key,type) {
this.currentClickKey = key;
if(type === 'regent'){
- EventBus.$emit("showSelectReagentDialog",{
+ EventBus.$emit("showSelectMixReagentDialog",{
+ studyFormId:this.templateData.id,
+ uuid:this.uuid,
+ sourceFrom:'step',
+ type:"sj"
+ })
+ }else if(type === 'gsp'){
+ EventBus.$emit("showSelectMixReagentDialog",{
+ studyFormId:this.templateData.id,
+ uuid:this.uuid,
+ sourceFrom:'step',
+ type:"gsp"
+ })
+ }else if(type === 'gsp'){
+ EventBus.$emit("showSelectMixReagentDialog",{
studyFormId:this.templateData.id,
uuid:this.uuid,
+ sourceFrom:'step',
+ type:"sj",
+ mixType:true,
})
}else if(type === 'instrument'){
EventBus.$emit("showSelectInstrumentDialog",{
@@ -138,6 +168,7 @@ export default {
display: flex;
align-items: center;
font-size: 14px;
+ flex-wrap: wrap;
}
.step-row {
@@ -148,5 +179,6 @@ export default {
display: flex;
align-items: center;
margin-left: 5px;
+ margin-bottom: 10px;
}
\ No newline at end of file
diff --git a/src/components/Template/mixins/formPackageMixins.js b/src/components/Template/mixins/formPackageMixins.js
index 43b8b77..30e4fc8 100644
--- a/src/components/Template/mixins/formPackageMixins.js
+++ b/src/components/Template/mixins/formPackageMixins.js
@@ -35,6 +35,9 @@ export default {
},
methods: {
+ handleClickButton(key){
+ this.$emit("clickButton", key)
+ },
getFillType(type) {
const typeObj = {
actFill: "orange-border",//实际填写的边框颜色
@@ -242,7 +245,7 @@ export default {
continue
}
//span的字段不校验
- if (o.type === "span" || o.type ==="text") {
+ if (o.type === "span" || o.type ==="text" || o.type === "button") {
continue
}
if (o.fillType === this.templateFillType && !o.disabled) {
diff --git a/src/components/Template/mixins/stepMixins.js b/src/components/Template/mixins/stepMixins.js
index b71fc42..f02150c 100644
--- a/src/components/Template/mixins/stepMixins.js
+++ b/src/components/Template/mixins/stepMixins.js
@@ -1,4 +1,5 @@
export default {
+ dicts:["business_tjdw","business_czhj","business_rqcz","business_zldw"],
props: {
formData: {
type: Object,
@@ -11,6 +12,10 @@ export default {
},
getFilledFormData() {
return this.$refs.stepFormPackageRef?.getFilledFormData();
- }
+ },
+ //试验配制条件options
+ getDictOptions(dictType) {
+ return this.dict.type[dictType] || []
+ },
},
}
\ No newline at end of file
diff --git a/src/views/business/comps/template/TemplateTable.vue b/src/views/business/comps/template/TemplateTable.vue
index e32f06d..7dd9b9d 100644
--- a/src/views/business/comps/template/TemplateTable.vue
+++ b/src/views/business/comps/template/TemplateTable.vue
@@ -6,6 +6,7 @@
+
@@ -16,6 +17,7 @@ import SubPackageDialog from "./dialog/SubPackageDialog.vue";//分装弹窗
import TagPrintDialog from "./dialog/PrintTagDialog.vue";//标签打印弹窗
import SelectReagentDialog from "./dialog/SelectReagentDialog.vue";//选择试剂弹窗
import SelectInstrumentDialog from "./dialog/SelectInstrumentDialog.vue";//选择仪器弹窗
+import SelectMixReagentDialog from "./dialog/SelectMixReagentDialog.vue";//选择试剂/供试品/给药制剂弹窗
//色谱
import SWYPFXRYPZB from "./comps/sp/SWYPFXRYPZB.vue";
@@ -44,7 +46,7 @@ import MJYLQSQD from "./comps/gsp/MJYLQSQD.vue";
export default {
name: "TemplateTable",
components: {
- SubPackageDialog,TagPrintDialog,SelectReagentDialog,SelectInstrumentDialog,
+ SubPackageDialog,TagPrintDialog,SelectReagentDialog,SelectInstrumentDialog,SelectMixReagentDialog,
//供试品
MJYLQSQD, SYWZPZJHB,
//色谱
@@ -179,6 +181,10 @@ export default {
EventBus.$on("showSelectReagentDialog",(data)=>{
this.$refs.selectReagentDialogRef.show(data.studyFormId,data)
})
+ //选择试剂/供试品/给药制剂弹窗
+ EventBus.$on("showSelectMixReagentDialog",(data)=>{
+ this.$refs.selectMixReagentDialogRef.show(data.studyFormId,data)
+ })
},
beforeDestroy() {
// 记得移除监听,避免内存泄漏
@@ -187,6 +193,7 @@ export default {
EventBus.$off("showTagPrintDialog");
EventBus.$off("showSelectReagentDialog");
EventBus.$off("showSelectInstrumentDialog");
+ EventBus.$off("showSelectMixReagentDialog");
},
methods: {
async getFormData() {
diff --git a/src/views/business/comps/template/dialog/SelectInstrumentDialog.vue b/src/views/business/comps/template/dialog/SelectInstrumentDialog.vue
index 700039c..eae086a 100644
--- a/src/views/business/comps/template/dialog/SelectInstrumentDialog.vue
+++ b/src/views/business/comps/template/dialog/SelectInstrumentDialog.vue
@@ -98,10 +98,12 @@ export default {
if(data && data.uuid) {//为了标识eventBus的事件id
this.uuid = data.uuid
}
- if(this.$refs.selectSjRef){
- this.$refs.selectSjRef.show()
- }
this.visible = true
+ setTimeout(() => {
+ if(this.$refs.selectSjRef){
+ this.$refs.selectSjRef.show()
+ }
+ }, 10);
this.studyFormId = studyFormId
},
onCancel() {
diff --git a/src/views/business/comps/template/dialog/SelectMixReagentDialog.vue b/src/views/business/comps/template/dialog/SelectMixReagentDialog.vue
index 05fc35e..3a37e3e 100644
--- a/src/views/business/comps/template/dialog/SelectMixReagentDialog.vue
+++ b/src/views/business/comps/template/dialog/SelectMixReagentDialog.vue
@@ -2,13 +2,19 @@