diff --git a/src/components/Template/SelectTable.vue b/src/components/Template/SelectTable.vue
index 3eb7097..b425c6c 100644
--- a/src/components/Template/SelectTable.vue
+++ b/src/components/Template/SelectTable.vue
@@ -66,7 +66,11 @@ export default {
listApi:{
type: Function,
default: () => {},
- }
+ },
+ studyFormId: {
+ type: String,
+ default: "",
+ },
},
data() {
return {
@@ -106,6 +110,7 @@ export default {
this.listParams[key] = "";
}
this.listParams = {...this.listParams}
+ this.listParams.studyFormId = this.studyFormId || ''
},
async getList() {
const res = await this.listApi(this.listParams);
diff --git a/src/lang/en.js b/src/lang/en.js
index b01b86e..50a5d10 100644
--- a/src/lang/en.js
+++ b/src/lang/en.js
@@ -15,6 +15,8 @@ import template from './en/system/template'
import commonTemplate from './en/template/commonTemplate'
//色谱模板
import sp from './en/template/sp'
+//供试品模板
+import gspmb from './en/template/gsp'
// 试验管理
import study from './en/business/study/study'
@@ -172,6 +174,7 @@ export default {
},
template: {
common: commonTemplate,
- sp: sp
+ sp: sp,
+ gsp: gspmb
}
}
diff --git a/src/lang/en/template/gsp.js b/src/lang/en/template/gsp.js
index 093412e..aa606ae 100644
--- a/src/lang/en/template/gsp.js
+++ b/src/lang/en/template/gsp.js
@@ -2,12 +2,33 @@
export default {
// 试验物质配制计划表
SYWZPZJHB: {
- title:
- '试验物质配制计划表',
+ title:'试验物质配制计划表',
+ jhxx:'Plan Information',
+ tbsm:'Special Note',
+ lqsj:'领取时间',
+ fxsj:'分析时间',
+ sywz:'试验物质',
+ pzpl:'配置频率',
+ gyzjhzb:'给药剂量或组别',
+ pznd:'配制浓度',
+ pztj:'配制体积',
},
// 麻醉/精神药品配制/领取申请单
MJYLQSQD: {
title: '麻醉/精神药品配制/领取申请单',
+ jbxx:'Basic Information',
+ qxzsyhbm:'请选择试验/部门',
+ sybhhbmmc:'试验编号或部门名称',
+ sd:'SD/部长',
+ sywzmc:'试验物质名称',
+ gyjl:'给药剂量',
+ xynd:'需要浓度',
+ xyl:'需要量',
+ xysj:'需要时间',
+ yjghsj:'预计归还时间',
+ dwzs:'动物种属',
+ dwpjtz:'动物平均体重',
+ dwsl:'动物数量',
},
}
diff --git a/src/lang/zh.js b/src/lang/zh.js
index 9636376..bc53c7c 100644
--- a/src/lang/zh.js
+++ b/src/lang/zh.js
@@ -15,6 +15,8 @@ import template from './zh/system/template'
import commonTemplate from './zh/template/commonTemplate'
//色谱模板
import sp from './zh/template/sp'
+//供试品模板
+import gspmb from './zh/template/gsp'
// 试验管理
import study from './zh/business/study/study'
@@ -167,6 +169,7 @@ export default {
},
template: {
common: commonTemplate,
- sp: sp
+ sp: sp,
+ gsp: gspmb,
}
}
diff --git a/src/lang/zh/template/gsp.js b/src/lang/zh/template/gsp.js
index adb62db..c6c842c 100644
--- a/src/lang/zh/template/gsp.js
+++ b/src/lang/zh/template/gsp.js
@@ -3,10 +3,32 @@ export default {
// 试验物质配制计划表
SYWZPZJHB: {
title: '试验物质配制计划表',
+ jhxx:'计划信息',
+ tbsm:'特别说明',
+ lqsj:'领取时间',
+ fxsj:'分析时间',
+ sywz:'试验物质',
+ pzpl:'配置频率',
+ gyzjhzb:'给药剂量或组别',
+ pznd:'配制浓度',
+ pztj:'配制体积',
},
// 麻醉/精神药品配制/领取申请单
MJYLQSQD: {
title: '麻醉/精神药品配制/领取申请单',
+ jbxx:'基本信息',
+ qxzsyhbm:'请选择试验/部门',
+ sybhhbmmc:'试验编号或部门名称',
+ sd:'SD/部长',
+ sywzmc:'试验物质名称',
+ gyjl:'给药剂量',
+ xynd:'需要浓度',
+ xyl:'需要量',
+ xysj:'需要时间',
+ yjghsj:'预计归还时间',
+ dwzs:'动物种属',
+ dwpjtz:'动物平均体重',
+ dwsl:'动物数量',
},
}
diff --git a/src/views/business/comps/template/comps/gsp/MJYLQSQD.vue b/src/views/business/comps/template/comps/gsp/MJYLQSQD.vue
index 4ceb8dd..e388104 100644
--- a/src/views/business/comps/template/comps/gsp/MJYLQSQD.vue
+++ b/src/views/business/comps/template/comps/gsp/MJYLQSQD.vue
@@ -3,21 +3,19 @@

{{ formData.bdmc ||
- $t('template.gsp.SYWZPZJHB.title') }}

+ $t('template.gsp.MJYLQSQD.title') }}

-
@@ -74,7 +72,7 @@ export default {
type: "textarea",
fillType: "actFill",
span: 1,
- placeholder: "请输入备注",
+ placeholder: "template.common.remarkPlaceholder",
maxlength: 1000,
rows: 5
}
@@ -89,60 +87,60 @@ export default {
type: "step",
config: {
syNo: {
- label: "试验编号或部门名称",
+ label: "template.gsp.MJYLQSQD.sybhhbmmc",
type: "clickable",
fillType: "actFill",
},
SD: {
- label: "SD/部长",
+ label: "template.gsp.MJYLQSQD.sd",
type: "input",
fillType: "actFill",
},
sywzmc: {
- label: "试验物质名称",
+ label: "template.gsp.MJYLQSQD.sywzmc",
type: "select",
fillType: "actFill",
otherCode: "sywzmcOther",
options: this.getDictOptions('business_sywzmc'),
},
gyjl: {
- label: "给药剂量",
+ label: "template.gsp.MJYLQSQD.gyjl",
type: "select",
fillType: "actFill",
otherCode: "gyjlOther",
options: this.getDictOptions('business_gyjl'),
},
xynd: {
- label: "需要浓度",
+ label: "template.gsp.MJYLQSQD.xynd",
type: "select",
fillType: "actFill",
otherCode: "xyndOther",
options: this.getDictOptions('business_gynd'),
},
xyl: {
- label: "需要量",
+ label: "template.gsp.MJYLQSQD.xyl",
type: "inputNumber",
fillType: "actFill",
},
xysj: {
- label: "需要时间",
+ label: "template.gsp.MJYLQSQD.xysj",
type: "dateTime",
fillType: "actFill",
},
yjghsj: {
- label: "预计归还时间",
+ label: "template.gsp.MJYLQSQD.yjghsj",
type: "dateTime",
fillType: "actFill",
},
dwzs: {
- label: "动物种属",
+ label: "template.gsp.MJYLQSQD.dwzs",
type: "select",
fillType: "actFill",
otherCode: "dwzsOther",
options: this.getDictOptions('business_dwzs'),
},
dwpjtz: {
- label: "动物平均体重",
+ label: "template.gsp.MJYLQSQD.dwpjtz",
type: "input",
fillType: "actFill",
subType: "select",
@@ -151,7 +149,7 @@ export default {
subOptions: this.getDictOptions('business_dwtz'),
},
dwsl: {
- label: "动物数量",
+ label: "template.gsp.MJYLQSQD.dwsl",
type: "input",
fillType: "actFill",
subType: "select",
diff --git a/src/views/business/comps/template/comps/gsp/SYWZPZJHB.vue b/src/views/business/comps/template/comps/gsp/SYWZPZJHB.vue
index 09caa8c..c199b02 100644
--- a/src/views/business/comps/template/comps/gsp/SYWZPZJHB.vue
+++ b/src/views/business/comps/template/comps/gsp/SYWZPZJHB.vue
@@ -6,9 +6,9 @@
src="@/assets/images/detail-title.png" />
-
-
+
@@ -19,11 +19,9 @@
-
-
+
-
@@ -76,7 +74,7 @@ export default {
type: "textarea",
fillType: "actFill",
span: 1,
- placeholder: "请输入特别说明",
+ placeholder: "template.common.remarkPlaceholder",
maxlength: 1000,
rows: 5
}
@@ -91,12 +89,12 @@ export default {
type: "cardItem",
config: {
studyMc: {
- label: "试验名称",
+ label: "template.common.testName",
type: "input",
disabled: true,
},
studySn: {
- label: "试验编号",
+ label: "template.common.testNumber",
type: "input",
disabled: true,
},
@@ -112,22 +110,22 @@ export default {
type: "step",
config: {
drawTime: {
- label: "领取时间",
+ label: "template.gsp.SYWZPZJHB.lqsj",
type: "dateTime",
fillType: "actFill",
},
analyzeTime: {
- label: "分析时间",
+ label: "template.gsp.SYWZPZJHB.fxsj",
type: "dateTime",
fillType: "actFill",
},
testSubstance: {
- label: "试验物质",
+ label: "template.gsp.SYWZPZJHB.sywz",
type: "input",
fillType: "actFill",
},
configFrequency: {
- label: "配置频率",
+ label: "template.gsp.SYWZPZJHB.pzpl",
type: "input",
fillType: "actFill",
},
@@ -139,7 +137,7 @@ export default {
stepColumns() {
return [
{
- label: "给药剂量或组别",
+ label: "template.gsp.SYWZPZJHB.gyzjhzb",
prop: "startSolutionCode",
width: 280,
bodyType: "input",
@@ -147,7 +145,7 @@ export default {
bodyMaxlength: 10,
},
{
- label: "配制浓度",
+ label: "template.gsp.SYWZPZJHB.pznd",
prop: "preparationConcentration",
width: 280,
headerSelectKey: "preparationConcentrationUnit",
@@ -159,7 +157,7 @@ export default {
bodyMaxlength: 10,
},
{
- label: "配制体积",
+ label: "template.gsp.SYWZPZJHB.pztj",
prop: "preparationVolume",
width: 280,
headerSelectKey: "preparationVolumeUnit",
diff --git a/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/CBYDB.vue b/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/CBYDB.vue
index d83a0c6..f9154ec 100644
--- a/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/CBYDB.vue
+++ b/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/CBYDB.vue
@@ -268,7 +268,7 @@ export default {
handleJzClickable(obj){
this.reagentType = 1//本表单特殊字段
this.currentSubKey = obj.subKey;
- this.$refs.selectReagentDialogRef.show()
+ this.$refs.selectReagentDialogRef.show(this.formData.id)
},
//选择试剂提交事件
onSelectReagentSubmit(code,row){
@@ -291,7 +291,7 @@ export default {
console.log("clickable",rowIndex, col)
if(col.prop === "sjry"){
//调用对应弹窗的方法-多个点击的需要判断是哪个字段点击
- this.$refs.selectReagentDialogRef.show()
+ this.$refs.selectReagentDialogRef.show(this.formData.id)
}
},
//获取目标溶液编号
diff --git a/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/CBYHGZYWDX.vue b/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/CBYHGZYWDX.vue
index be2ac2e..f6962bc 100644
--- a/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/CBYHGZYWDX.vue
+++ b/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/CBYHGZYWDX.vue
@@ -268,7 +268,7 @@ export default {
handleJzClickable(obj){
this.reagentType = 1//本表单特殊字段
this.currentSubKey = obj.subKey;
- this.$refs.selectReagentDialogRef.show()
+ this.$refs.selectReagentDialogRef.show(this.formData.id)
},
//选择试剂提交事件
onSelectReagentSubmit(code,row){
@@ -291,7 +291,7 @@ export default {
console.log("clickable",rowIndex, col)
if(col.prop === "sjry"){
//调用对应弹窗的方法-多个点击的需要判断是哪个字段点击
- this.$refs.selectReagentDialogRef.show()
+ this.$refs.selectReagentDialogRef.show(this.formData.id)
}
},
//获取目标溶液编号
diff --git a/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/JZXY.vue b/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/JZXY.vue
index b26716b..db0ddea 100644
--- a/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/JZXY.vue
+++ b/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/JZXY.vue
@@ -279,7 +279,7 @@ export default {
console.log("clickable",rowIndex, col)
if(col.prop === "sjry" || col.prop === "kbjzbh"){
//调用对应弹窗的方法-多个点击的需要判断是哪个字段点击
- this.$refs.selectReagentDialogRef.show()
+ this.$refs.selectReagentDialogRef.show(this.formData.id)
}
},
//获取目标溶液编号
diff --git a/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/QXWDX.vue b/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/QXWDX.vue
index a652321..c8cc6db 100644
--- a/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/QXWDX.vue
+++ b/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/QXWDX.vue
@@ -268,7 +268,7 @@ export default {
handleJzClickable(obj){
this.reagentType = 1//本表单特殊字段
this.currentSubKey = obj.subKey;
- this.$refs.selectReagentDialogRef.show()
+ this.$refs.selectReagentDialogRef.show(this.formData.id)
},
//选择试剂提交事件
onSelectReagentSubmit(code,row){
@@ -291,7 +291,7 @@ export default {
console.log("clickable",rowIndex, col)
if(col.prop === "sjry"){
//调用对应弹窗的方法-多个点击的需要判断是哪个字段点击
- this.$refs.selectReagentDialogRef.show()
+ this.$refs.selectReagentDialogRef.show(this.formData.id)
}
},
//获取目标溶液编号
diff --git a/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/RXJZXY.vue b/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/RXJZXY.vue
index 51c5dfb..962866d 100644
--- a/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/RXJZXY.vue
+++ b/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/RXJZXY.vue
@@ -268,7 +268,7 @@ export default {
handleJzClickable(obj){
this.reagentType = 1//本表单特殊字段
this.currentSubKey = obj.subKey;
- this.$refs.selectReagentDialogRef.show()
+ this.$refs.selectReagentDialogRef.show(this.formData.id)
},
//选择试剂提交事件
onSelectReagentSubmit(code,row){
@@ -291,7 +291,7 @@ export default {
console.log("clickable",rowIndex, col)
if(col.prop === "sjry"){
//调用对应弹窗的方法-多个点击的需要判断是哪个字段点击
- this.$refs.selectReagentDialogRef.show()
+ this.$refs.selectReagentDialogRef.show(this.formData.id)
}
},
//获取目标溶液编号
diff --git a/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/Recovery.vue b/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/Recovery.vue
index f9379de..cadbcdd 100644
--- a/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/Recovery.vue
+++ b/src/views/business/comps/template/comps/sp/SWYPFXFFXYPZBB/Recovery.vue
@@ -235,6 +235,7 @@ export default {
subKey: "subGzy",
subFillType: "actFill",
maxlength: 20,
+ labelWidth: 80,
},
}
},
@@ -249,6 +250,7 @@ export default {
subKey: "subXsy",
subFillType: "actFill",
maxlength: 20,
+ labelWidth: 80,
},
}
},
@@ -290,8 +292,8 @@ export default {
formData: {
immediate: true,
handler(v) {
- if (!v.targetCodeSn && this.fillType === "actFill") {
- this.getCode();
+ if (this.fillType === "actFill") {
+ this.getCode(v);
}
}
}
@@ -301,12 +303,12 @@ export default {
handleJzClickable(obj) {
this.reagentType = 1//本表单特殊字段
this.currentSubKey = obj.subKey;
- this.$refs.selectReagentDialogRef.show()
+ this.$refs.selectReagentDialogRef.show(this.formData.id)
},
handleRongyeClickable(obj) {
this.reagentType = 2//本表单特殊字段
this.currentSubKey = obj.subKey;
- this.$refs.selectReagentDialogRef.show()
+ this.$refs.selectReagentDialogRef.show(this.formData.id)
},
//选择试剂提交事件
onSelectReagentSubmit(code, row) {
@@ -348,24 +350,65 @@ export default {
}
},
//获取目标溶液编号
- async getCode() {
- const { stepTableFormData = [] } = v;
- if (stepTableFormData && stepTableFormData.length > 0 && !stepTableFormData[0].bhCode) {
+ async getCode(v) {
+ // 基质表格
+ const {stepTableFormData = []} = v;
+ if(stepTableFormData && stepTableFormData.length>0 && !stepTableFormData[0].bhCode){
const result = await getLatestSn({
count: stepTableFormData.length,
})
- if (result.code == 200) {
- if (stepTableFormData.length === 0) {
- this.$refs.tableRef.updateDataSourceByRowIndex(0, {
- [bhCode]: result.data,
+ if(result.code == 200){
+ if(stepTableFormData.length===1){
+ this.$refs.tableRef.updateDataSourceByRowIndex(0,{
+ bhCode: result.data,
+ })
+ }else{
+ for(let i=0;i {
+ debugger
+ EventBus.$emit('onModifyRecord', params,)
+ }, 10);
+ }
+ }
+ // 溶液表格
+ const {stepTableFormData_1 = []} = v;
+ if(stepTableFormData_1 && stepTableFormData_1.length>0 && !stepTableFormData_1[0].bhCode){
+ const result = await getLatestSn({
+ count: stepTableFormData_1.length,
+ })
+ if(result.code == 200){
+ if(stepTableFormData_1.length===1){
+ this.$refs.rongyeTableRef.updateDataSourceByRowIndex(0,{
+ bhCode: result.data,
})
- } else {
- for (let i = 0; i < stepTableFormData.length; i++) {
- this.$refs.tableRef.updateDataSourceByRowIndex(i, {
+ }else{
+ for(let i=0;i {
+ debugger
+ EventBus.$emit('onModifyRecord', params,)
+ }, 10);
}
}
},
@@ -376,29 +419,59 @@ export default {
async getFormData() {
let content = await this.validFormFields(["baseInfoRef", "storageConditionRef", "stepFormPackageRef", "tableRef", "stepRef",
"rongyeTableRef", "rongyeStepFormPackageRef", "remarkRef"]);
- console.log(content)
+ console.log(content)
//生成resource
let tmpResource = []
- //配置的试剂
- tmpResource.push({
- mc: content.targetName,
- bh: content.targetCode + content.targetCodeSn,
- ph: '',
- nd: content.targetActConcentration + content.targetActConcentrationUnit,
- source: 'ELN配制',
- sxrq: content.expireDate,
- ndz: content.targetActConcentration,
- nddw: content.targetActConcentrationUnit,
- kc: content.targetActVolume,
- kcdw: content.targetActVolumeUnit,
- syl: null,
- syldw: content.targetActVolumeUnit,
- yxzq: content.effectivePeriod,
- yxzqdw: content.effectivePeriodUnit,
- })
- //使用的试剂
- this.resource = tmpResource
+ let tableList = content.stepTableFormData
+ if(tableList && tableList.length>0){
+ for(let i=0;i0){
+ for(let i=0;i
@@ -106,6 +107,7 @@ export default {
bzList:[],
depart:"",
+ studyFormId:''//有个studyFormId需要从外面动态传过来
}
},
computed: {
@@ -127,15 +129,16 @@ export default {
}
},
methods: {
- show(){
+ show(studyFormId){
this.visible = true
+ this.studyFormId = studyFormId
this.showTableData()
if(this.type === 'MJYLQSQD'){
this.getBzList()
}
},
getBzList(){
- public_bzList(this.searchForm).then(response => {
+ public_bzList().then(response => {
this.bzList = response.data
});
},
diff --git a/src/views/business/comps/template/formConfig/SWYPFXFFXYPZBBTableConfig.js b/src/views/business/comps/template/formConfig/SWYPFXFFXYPZBBTableConfig.js
index 360e0fb..617679e 100644
--- a/src/views/business/comps/template/formConfig/SWYPFXFFXYPZBBTableConfig.js
+++ b/src/views/business/comps/template/formConfig/SWYPFXFFXYPZBBTableConfig.js
@@ -178,8 +178,8 @@ export const getSWYPFXFFXYPZBBTQHSLTableConfig = ($this, selectKey) => {
bodyType: 'inputNumber',
bodyFillType: 'actFill',
bodyMaxlength: 10,
- bodyCompareTo: 'yjjzxql',
- copyFrom: 'yjjzxql'
+ bodyCompareTo: 'yjgzyxql',
+ copyFrom: 'yjgzyxql'
},
{
label: 'template.sp.sp009.yjxsyxql',
@@ -202,8 +202,8 @@ export const getSWYPFXFFXYPZBBTQHSLTableConfig = ($this, selectKey) => {
bodyType: 'inputNumber',
bodyFillType: 'actFill',
bodyMaxlength: 10,
- bodyCompareTo: 'yjjzxql',
- copyFrom: 'yjjzxql'
+ bodyCompareTo: 'yjxsyxql',
+ copyFrom: 'yjxsyxql'
},
{
label: 'template.sp.sp008.hhwznd',
diff --git a/src/views/business/comps/template/mixins/templateMixin.js b/src/views/business/comps/template/mixins/templateMixin.js
index 48bf329..77167ae 100644
--- a/src/views/business/comps/template/mixins/templateMixin.js
+++ b/src/views/business/comps/template/mixins/templateMixin.js
@@ -44,7 +44,8 @@ export default {
templateSn,
startDate,
bdmc,
- endDate
+ endDate,
+ id
} = v
if (v.resource) {
//试验试剂信息
@@ -60,7 +61,8 @@ export default {
templateSn,
startDate,
bdmc,
- endDate
+ endDate,
+ id
}
} else {
this.formData = {
@@ -71,7 +73,8 @@ export default {
templateSn,
startDate,
bdmc,
- endDate
+ endDate,
+ id
}
}
const { effectivePeriod, effectivePeriodUnit, expireDate } =
@@ -164,15 +167,18 @@ export default {
if (validFormData) {
validFormData.forEach((item) => {
for (const [key, value] of Object.entries(item)) {
- let index = 0;
+ let index = 0
// 如果当前键是可能重复的字段,且结果对象中已经存在该键,则添加索引后缀
- if ((key === 'headerSelectFields' || key === 'stepTableFormData') && result.hasOwnProperty(key)) {
+ if (
+ (key === 'headerSelectFields' || key === 'stepTableFormData') &&
+ result.hasOwnProperty(key)
+ ) {
// 为重复字段生成带索引的键名,从1开始(因为第一个组件不需要后缀)
- const newKey = `${key}_${++index}`;
- result[newKey] = value;
+ const newKey = `${key}_${++index}`
+ result[newKey] = value
} else {
// 正常合并其他字段
- result[key] = value;
+ result[key] = value
}
}
})