Merge remote-tracking branch 'origin/dev_drug' into dev_drug

dev_unify
qiuyt 8 months ago
commit 95e17e8d73

@ -524,18 +524,19 @@
:close-on-press-escape="false"
width="85%"
v-if="selectDrugLevelVisible"
@close="closeSelectDrugLevelVisible"
>
<el-form :model="filterQueryDrugLevel" class="query-form" label-width="100px" >
<el-form :model="filterQueryDrugLevel" class="query-form" label-width="100px">
<el-row>
<el-col :span="8">
<el-form-item label="层级标识:">
<el-input v-model="filterQueryDrugLevel.nameCode" placeholder="请输入层级标识" clearable></el-input>
<el-input v-model="filterQueryDrugLevel.nameCode" placeholder="请输入层级标识" clearable></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="通用名称:">
<el-input v-model="filterQueryDrugLevel.cpmctymc" placeholder="请输入通用名称" clearable></el-input>
<el-input v-model="filterQueryDrugLevel.cpmctymc" placeholder="请输入通用名称" clearable></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
@ -555,7 +556,7 @@
</el-form>
<el-table :data="selectDrugLevelList" style="width: 100%; margin-bottom: 8px" key="2" border>
<el-table-column label="序号" type="index" ></el-table-column>
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column label="层级标识" prop="nameCode" show-overflow-tooltip></el-table-column>
<el-table-column label="药品类型" prop="type" show-overflow-tooltip></el-table-column>
<el-table-column label="批准文号" prop="approvalNum" show-overflow-tooltip></el-table-column>
@ -567,9 +568,9 @@
<el-table-column label="包装规格" prop="bzgg" show-overflow-tooltip></el-table-column>
<el-table-column label="包装比例" prop="packRatio" show-overflow-tooltip></el-table-column>
<el-table-column label="包装级别" prop="packLevel" show-overflow-tooltip></el-table-column>
<el-table-column label="操作">
<el-table-column label="操作" fixed="right">
<template slot-scope="scope">
<el-button type="text" @click="selectDrugLevelItem(scope.row)" >
<el-button type="text" @click="selectDrugLevelItem(scope.row)">
选入
</el-button>
</template>
@ -648,8 +649,8 @@ export default {
ybDrugDetail: {},
productData: {},
filterQueryDrugLevel: {
nameCode: "",
cpmctymc: "",
nameCode: '',
cpmctymc: '',
page: 1,
limit: 20,
total: 0,
@ -956,7 +957,7 @@ export default {
sjcpbm: row.sjcpbm,
bhxjcpbm: row.bhxjcpbm,
bhxjsl: row.bhxjsl,
relId: this.newProductData.id,
relId: this.newProductData.rlId,
uuid: this.newProductData.uuid,
productId: row.productId,
diType: row.diType,
@ -1011,19 +1012,31 @@ export default {
selectDrugLevelItem(row){
getDrugLevelListBycode({nameCode:row.nameCode}).then((response) => {
if (response.code == 20000) {
if (response.data.length > 0){
response.data.forEach( item => {
//
if (response.data.length > 0) {
response.data.forEach(item => {
let parts = item.bzgg.split('/');
// ':'
const ratioParts = item.packRatio.split(':');
let selectedValue;
if (item.packLevel >= 0 && item.packLevel < ratioParts.length) {
selectedValue = ratioParts[item.packLevel];
} else {
selectedValue = null; //
const levels = item.packRatio.split(":").map(Number);
const calculatedLevels = [levels[0]];
for (let i = levels.length - 1; i > 0; i--) {
const ratio = levels[i] / levels[i - 1];
calculatedLevels.unshift(ratio);
}
calculatedLevels.reverse();
let selectedValue = calculatedLevels[item.packLevel - 1];
console.log(item)
if (item.packLevel == 1) {
selectedValue = this.extractNumber(this.newProductData.bzgg)
item.xjdw = this.extractUnitAfterNumber(this.newProductData.bzgg)
}
// const ratioParts = item.packRatio.split(':');
// let selectedValue;
// if (item.packLevel >= 0 && item.packLevel < ratioParts.length) {
// selectedValue = ratioParts[item.packLevel];
// } else {
// selectedValue = 1; //
// }
let editQuery = {
nameCode: item.nameCode,
packLevel: item.packLevel,
@ -1032,7 +1045,7 @@ export default {
relId: this.newProductData.id,
uuid: this.newProductData.uuid,
productId: item.productId,
diType: item.packLevel == 1?1:4,
diType: item.packLevel == 1 ? 1 : 4,
xjdw: item.xjdw
}
updateLevelDrug(editQuery).then(res => {
@ -1043,7 +1056,7 @@ export default {
packLevel: item.packLevel,
packUnit: parts[1] || '',
bhxjsl: selectedValue,
diType: item.packLevel == 1?1:4,
diType: item.packLevel == 1 ? 1 : 4,
isDisabled: false,
rowDisabled: false,
isUpDisabled: true
@ -1053,7 +1066,6 @@ export default {
})
}
}
}).catch(() => {
})
@ -1062,15 +1074,19 @@ export default {
this.selectedIndex = this.detailList.length - 1
this.isSave = false
this.selectDrugLevelVisible = false
},
handleCurrentChange(){
this.getDetailList()
}
,
handleCurrentChange() {
this.selectDrugLevel()
},
addDrugLevel() {
this.detailList.push({
nameCode: '',
packLevel: 0,
bhxjsl: 0,
packLevel: null,
bhxjsl: null,
isDisabled: false,
rowDisabled: false,
isUpDisabled: true

@ -118,11 +118,19 @@
<el-button
type="text"
size="small"
:disabled="scope.row.drugLink == 1"
v-if="scope.row.drugLink == 0"
@click.native.stop="association(scope.row)"
>关联
</el-button
>
<el-button
type="text"
size="small"
v-if="scope.row.drugLink == 1"
@click.native.stop="newDistributionForm(scope.row)"
>查看
</el-button
>
</template>
</el-table-column>
</el-table>
@ -203,11 +211,32 @@
</editCodeDialog>
</el-dialog>
<el-dialog
title="关联明细"
:visible.sync="newSpDistributionVisible"
width="45%"
append-to-body
:close-on-click-modal="false"
:close-on-press-escape="false"
v-if="newSpDistributionVisible"
>
<el-table v-loading="loading" :data="parentCodeArray" style="width: 100%;" max-height="800" height="500"
border
ref="multipleTable">
<el-table-column label="序号" type="index" width="55"></el-table-column>
<el-table-column
label="追溯码"
prop="curCode"
width="280"
show-overflow-tooltip
></el-table-column>
</el-table>
</el-dialog>
</div>
</template>
<script>
import {getDetailList} from "@/api/collect/relCode";
import {deleteCodesTempById, errorCodeList, updateCodeBindSup} from "@/api/inout/order";
import selectRlDialog from "./DialogSelectRl";
import DialogSelectUnit from "./DialogSelectUnit";
@ -253,16 +282,37 @@ export default {
},
codeDetail: null,
codeArray: [],
parentCodeArray: [],
total: 0,
curRow: null,
selectRlVisible: false,
dialogTableVisible: false,
editCodeVisible: false,
editOriginCodeVisible: false,
newSpDistributionVisible: false,
fromCorp: null,
}
},
methods: {
newDistributionForm(row) {
//
let post = {
// batchIdFk: row.id,
parentCode: row.code,
page: 1,
limit: 500
}
getDetailList(post).then((response) => {
if (response.code == 20000) {
this.parentCodeArray = response.data.list
this.newSpDistributionVisible = true;
} else {
this.$message.error(response.message);
}
}).catch(() => {
});
},
getCodeList() {
this.loading = true;
this.query.orderId = this.idQuery.billNo;

@ -1217,14 +1217,14 @@ export default {
this.queryList2 = re.data.queryList;
this.fromList2 = re.data.fromList;
});
getHead("InvoiceRegistration-afpdj-cpmx","1").then((re) => {
getHead("InvoiceRegistrationDrug-afpdj-cpmx","1").then((re) => {
//
this.tableObj3 = re.data;
this.tableHeader3 = re.data.tableList;
this.queryList3 = re.data.queryList;
this.fromList3 = re.data.fromList;
});
getHead("InvoiceRegistration-afpdj-djxq","1").then((re) => {
getHead("InvoiceRegistrationDrug-afpdj-djxq","1").then((re) => {
//
this.tableObj4 = re.data;
this.tableHeader4 = re.data.tableList;

@ -254,9 +254,9 @@ import {
filterBizOrderList,
updateorderBiz, parseInvoice, deleteInvoiceByOrderFk, checkInvoiceCode
} from '@/api/inout/orderDetailBiz'
import AcceptOrder from '@/views/inout/DialogReviewOrder'
import DialogInvoice from '@/views/inout/DialogInvoice'
import InvoiceRegister from '@/views/inout/InvoiceRegister'
import AcceptOrder from '@/views/pharmaceuticals/inout/DialogReviewOrder'
import DialogInvoice from '@/views/pharmaceuticals/inout/DialogInvoice'
import InvoiceRegister from '@/views/pharmaceuticals/inout/InvoiceRegister'
import {previewImage, previewFile} from '@/api/purchase/supCompany'
import ElImageViewer from 'element-ui/packages/image/src/image-viewer'
import store from '@/store'

@ -295,6 +295,9 @@
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row type="flex">
<el-col :span="11" class="el-col">
<el-form-item label="药品通用名称:" prop="cpmctymc">
<el-input style="width: 90%" size="small" placeholder="请输入药品通用名称"
@ -329,6 +332,8 @@
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row type="flex">
<el-col :span="11" class="el-col">
<el-form-item label="制剂规格:" prop="prepnSpec">
<el-input style="width: 90%" size="small" placeholder="请输入制剂规格"
@ -697,6 +702,7 @@
:close-on-press-escape="false"
width="85%"
v-if="selectDrugLevelVisible"
@close="closeSelectDrugLevelVisible"
>
<el-form :model="filterQueryDrugLevel" class="query-form" label-width="100px">
@ -744,7 +750,7 @@
<el-table-column label="包装规格" prop="bzgg" show-overflow-tooltip></el-table-column>
<el-table-column label="包装比例" prop="packRatio" show-overflow-tooltip></el-table-column>
<el-table-column label="包装级别" prop="packLevel" show-overflow-tooltip></el-table-column>
<el-table-column label="操作">
<el-table-column label="操作" fixed="right">
<template slot-scope="scope">
<el-button type="text" @click="selectDrugLevelItem(scope.row)">
选入
@ -1101,7 +1107,6 @@ export default {
//
levelSave(row) {
if (isBlank(row.nameCode)) {
this.$message.error('层级标识不能为空')
return
@ -1185,27 +1190,38 @@ export default {
})
},
selectDrugLevelItem(row) {
getDrugLevelListBycode({ nameCode: row.nameCode }).then((response) => {
getDrugLevelListBycode({nameCode: row.nameCode}).then((response) => {
if (response.code == 20000) {
if (response.data.length > 0) {
response.data.forEach(item => {
//
let parts = item.bzgg.split('/')
// ':'
const ratioParts = item.packRatio.split(':')
let selectedValue
if (item.packLevel >= 0 && item.packLevel < ratioParts.length) {
selectedValue = ratioParts[item.packLevel]
} else {
selectedValue = null //
let parts = item.bzgg.split('/');
const levels = item.packRatio.split(":").map(Number);
const calculatedLevels = [levels[0]];
for (let i = levels.length - 1; i > 0; i--) {
const ratio = levels[i] / levels[i - 1];
calculatedLevels.unshift(ratio);
}
calculatedLevels.reverse();
let selectedValue = calculatedLevels[item.packLevel - 1];
if (item.packLevel == 1) {
selectedValue = this.extractNumber(this.newProductData.bzgg)
item.xjdw = this.extractUnitAfterNumber(this.newProductData.bzgg)
}
// const ratioParts = item.packRatio.split(':');
// let selectedValue;
// if (item.packLevel >= 0 && item.packLevel < ratioParts.length) {
// selectedValue = ratioParts[item.packLevel];
// } else {
// selectedValue = 1; //
// }
let editQuery = {
nameCode: item.nameCode,
packLevel: item.packLevel,
packUnit: parts[1] || '',
bhxjsl: selectedValue,
relId: this.newProductData.id,
relId: this.newProductData.rlId,
uuid: this.newProductData.uuid,
productId: item.productId,
diType: item.packLevel == 1 ? 1 : 4,
@ -1238,7 +1254,10 @@ export default {
this.selectedIndex = this.detailList.length - 1
this.isSave = false
this.selectDrugLevelVisible = false
},
this.getDetailList()
}
,
addDrugLevel() {
this.detailList.push({
nameCode: '',

Loading…
Cancel
Save