|
@@ -31,8 +31,8 @@
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="医药物料" prop="medicineMaterial">
|
|
|
<el-select v-model="basicForm.medicineMaterial" placeholder="医药物料" clearable :disabled="disable"
|
|
|
- @change="controlMedic">
|
|
|
- <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
|
|
|
+ @change="controlMedic">
|
|
|
+ <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -59,8 +59,8 @@
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="生产厂家/代理人" prop="factory">
|
|
|
<el-select ref="factoryOrman" v-model="basicForm.factory" placeholder="生产厂家/代理人" clearable
|
|
|
- :disabled="disable" @focus="chooseFactory">
|
|
|
- <el-option v-for="item in factoryOptions" :key="item.id" :label="item.name" :value="item.id" />
|
|
|
+ :disabled="disable" @focus="chooseFactory">
|
|
|
+ <el-option v-for="item in factoryOptions" :key="item.id" :label="item.name" :value="item.id"/>
|
|
|
</el-select>
|
|
|
<!-- <el-input :disabled="disable" v-model="basicForm.factory">
|
|
|
<el-button :disabled="disable" slot="append" icon="el-icon-more" @click="test02"></el-button>
|
|
@@ -78,7 +78,7 @@
|
|
|
<el-form-item label="存储条件" prop="storageConditions">
|
|
|
<el-select v-model="basicForm.storageConditions" placeholder="存储条件" clearable :disabled="disable">
|
|
|
<el-option v-for="dict in dict.type.sys_storage_condition" :key="dict.value" :label="dict.label"
|
|
|
- :value="dict.value" />
|
|
|
+ :value="dict.value"/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -86,7 +86,7 @@
|
|
|
<el-form-item label="运输条件" prop="transportCondition">
|
|
|
<el-select v-model="basicForm.transportCondition" placeholder="运输条件" clearable :disabled="disable">
|
|
|
<el-option v-for="dict in dict.type.sys_conditions_carriage" :key="dict.value" :label="dict.label"
|
|
|
- :value="dict.value" />
|
|
|
+ :value="dict.value"/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -98,8 +98,12 @@
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
- <el-form-item label="业务线" prop="remark">
|
|
|
- <el-input :disabled="disable" v-model="basicForm.businessLine"></el-input>
|
|
|
+ <el-form-item label="业务线" prop="businessLine"
|
|
|
+ :rules="{ required: isOneClass, message: '骨科、介入、检验、普耗、设备类物料产线必须输入对应的业务线', trigger: 'blur' }">
|
|
|
+ <el-select ref="lines" v-model="basicForm.businessLine" placeholder="请选择" clearable :disabled="disable"
|
|
|
+ @focus="chooseLine">
|
|
|
+ <el-option v-for="item in lineOptions" :key="item.id" :label="item.name" :value="item.id"/>
|
|
|
+ </el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
@@ -148,7 +152,8 @@
|
|
|
<el-form :model="basicForm2" ref="basic2" label-width="160px">
|
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="8">
|
|
|
- <el-form-item label="药品" prop="drug">
|
|
|
+ <el-form-item label="药品" prop="drug"
|
|
|
+ :rules="{ required: !isControl, message: '请选择是否药品', trigger: 'change' }">
|
|
|
<el-select v-model="basicForm2.drug" placeholder="请选择" clearable :disabled="disable || isControl">
|
|
|
<el-option v-for="dict in dict.type.sys_medicine" :key="dict.value" :label="dict.label"
|
|
|
:value="dict.value"/>
|
|
@@ -317,6 +322,7 @@
|
|
|
<fourClass ref="fourClass" @doSubmit="acceptFourClass" :selectData="selectData3" :single="true"/>
|
|
|
|
|
|
<dose ref="dose" @doSubmit="acceptDose" :selectData="selectData9" :single="true"/>
|
|
|
+ <serviceline ref="line" @doSubmit="acceptLine" :selectData="selectData8" :single="true" />
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -324,12 +330,13 @@
|
|
|
import popDialog from '@/components/PopDialog/index.vue'
|
|
|
import factory from '@/components/PopDialog/productFactory.vue'
|
|
|
import {addChangeList, getMaterialDetails, getChangeDetails, editChangeList} from '@/api/changeApply/basic'
|
|
|
- import {getDose} from '@/api/requisition/basic'
|
|
|
+ import {getDose, getLine} from '@/api/requisition/basic'
|
|
|
// 生产厂商/代理人调用用于回显
|
|
|
import {getProductFactory} from '@/api/changeApply/basic'
|
|
|
// 四级分类
|
|
|
import fourClass from '@/components/PopDialog/fourClass.vue'
|
|
|
import dose from '@/components/PopDialog/dose.vue'
|
|
|
+ import serviceline from '@/components/PopDialog/serviceline.vue'
|
|
|
// 调用物料分类详情接口用于数据回显
|
|
|
import {getDetail} from '@/api/classify/basic';
|
|
|
|
|
@@ -340,6 +347,7 @@
|
|
|
popDialog,
|
|
|
factory,
|
|
|
dose,
|
|
|
+ serviceline,
|
|
|
fourClass
|
|
|
},
|
|
|
props: ['pageStu', 'row', 'disable'],
|
|
@@ -353,8 +361,12 @@
|
|
|
// 剂型
|
|
|
doseOptions: [],
|
|
|
selectData9: [],
|
|
|
+ selectData8: [],
|
|
|
tabValue: 'first',
|
|
|
isControl: true,
|
|
|
+ // 业务线
|
|
|
+ lineOptions: [],
|
|
|
+ isOneClass: false,
|
|
|
basicForm: {
|
|
|
code: '',
|
|
|
orgId: '德荣集团',
|
|
@@ -427,8 +439,8 @@
|
|
|
registrationNo: '',
|
|
|
medicalDevices: '',
|
|
|
maintenanceType: '',
|
|
|
- // 剂型
|
|
|
- dosageFrom: ''
|
|
|
+ // 剂型
|
|
|
+ dosageFrom: ''
|
|
|
// 医药属性子表
|
|
|
// medicineTypeChanges:[
|
|
|
// ],
|
|
@@ -562,6 +574,10 @@
|
|
|
if (res.data.medicineChange && res.data.medicineChange.dosageFrom) {
|
|
|
this.getDoseDetails(res.data.medicineChange.dosageFrom)
|
|
|
}
|
|
|
+ // 业务线回显
|
|
|
+ if (res.data.businessLine) {
|
|
|
+ this.getLineDetails(res.data.businessLine)
|
|
|
+ }
|
|
|
}
|
|
|
})
|
|
|
},
|
|
@@ -572,13 +588,17 @@
|
|
|
console.log('保存参数', sparams)
|
|
|
this.$refs['basic'].validate((valid) => {
|
|
|
if (valid) {
|
|
|
- addChangeList(sparams).then(res => {
|
|
|
- if (res.code === 200) {
|
|
|
- this.$message({
|
|
|
- message: res.msg,
|
|
|
- type: 'success'
|
|
|
- });
|
|
|
- this.back()
|
|
|
+ this.$refs['basic2'].validate(valid => {
|
|
|
+ if (valid) {
|
|
|
+ addChangeList(sparams).then(res => {
|
|
|
+ if (res.code === 200) {
|
|
|
+ this.$message({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'success'
|
|
|
+ });
|
|
|
+ this.back()
|
|
|
+ }
|
|
|
+ })
|
|
|
}
|
|
|
})
|
|
|
}
|
|
@@ -591,13 +611,17 @@
|
|
|
console.log('提交参数', sparams)
|
|
|
this.$refs['basic'].validate((valid) => {
|
|
|
if (valid) {
|
|
|
- editChangeList(sparams).then(res => {
|
|
|
- if (res.code === 200) {
|
|
|
- this.$message({
|
|
|
- message: res.msg,
|
|
|
- type: 'success'
|
|
|
- });
|
|
|
- this.back()
|
|
|
+ this.$refs['basic2'].validate(valid => {
|
|
|
+ if (valid) {
|
|
|
+ editChangeList(sparams).then(res => {
|
|
|
+ if (res.code === 200) {
|
|
|
+ this.$message({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'success'
|
|
|
+ });
|
|
|
+ this.back()
|
|
|
+ }
|
|
|
+ })
|
|
|
}
|
|
|
})
|
|
|
}
|
|
@@ -733,6 +757,32 @@
|
|
|
this.basicForm.twoClass = res.data.twoClass
|
|
|
this.basicForm.threeClass = res.data.threeClass
|
|
|
this.basicForm.fourClass = res.data.fourClass
|
|
|
+ const classjudge = res.data.oneClass
|
|
|
+ if (classjudge == '介入耗材5' || classjudge == '骨科耗材2' || classjudge == '普通耗材3' || classjudge == '医用设备1' || classjudge == '体外诊断4') {
|
|
|
+ this.isOneClass = true
|
|
|
+ } else {
|
|
|
+ this.isOneClass = false
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ // 选择业务线
|
|
|
+ acceptLine(selections) {
|
|
|
+ this.lineOptions = selections
|
|
|
+ this.basicForm.businessLine = selections[0].id
|
|
|
+ this.getLineDetails(selections[0].id)
|
|
|
+ },
|
|
|
+ // 业务线显示列表
|
|
|
+ chooseLine() {
|
|
|
+ this.$refs.lines.blur()
|
|
|
+ this.$refs.line.init()
|
|
|
+ },
|
|
|
+ // 业务线回显
|
|
|
+ getLineDetails(id) {
|
|
|
+ getLine({id: id}).then(res => {
|
|
|
+ console.log('业务线', res)
|
|
|
+ if (res.code === 200) {
|
|
|
+ this.lineOptions = res.data.tableBody
|
|
|
}
|
|
|
})
|
|
|
},
|