|
|
@@ -56,7 +56,7 @@
|
|
|
</div>
|
|
|
<!-- @change="getPharmacyID" -->
|
|
|
<!-- @change="changePharmacy(recipe_tabs[recipe_tabs_c].lastType)" -->
|
|
|
- <div class="t-con-radio flex-vertical-center-l">
|
|
|
+ <div class="t-con-radio flex-vertical-center-l" v-if="false">
|
|
|
<div class="t-radio-group">
|
|
|
<el-radio-group
|
|
|
v-model="recipe_tabs[recipe_tabs_c].radio"
|
|
|
@@ -73,6 +73,17 @@
|
|
|
</el-radio-group>
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <div class="t-con-radio flex-vertical-center-l" style="flex-wrap: wrap;align-items: center;">
|
|
|
+ <div class="t-radio-group2" :class="{multiple: group.options.length > 1}" v-for="group in pharmacyTypeGroup" :key="group.name">
|
|
|
+ <label v-if="group.options.length > 1">{{group.name}}</label>
|
|
|
+ <el-radio v-for="item in group.options" :key="item.ptype"
|
|
|
+ v-model="recipe_tabs[recipe_tabs_c].radio"
|
|
|
+ :disabled="recipe_tabs[recipe_tabs_c].disable"
|
|
|
+ :label="item.ptype"
|
|
|
+ @click.native.prevent="changePharmacy(recipe_tabs[recipe_tabs_c].lastType,item.ptype)"
|
|
|
+ >{{item.name}}</el-radio>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
|
|
|
<!-- <div class="add-presc1 flex-center" @click="clearRecipe()">清空处方</div> -->
|
|
|
</div>
|
|
|
@@ -347,7 +358,7 @@
|
|
|
</el-table-column>
|
|
|
|
|
|
<el-table-column prop="spec" label="规格" width="100"></el-table-column>
|
|
|
- <el-table-column prop="dose" label="剂量" width="40">
|
|
|
+ <el-table-column prop="dose" label="剂量" width="60">
|
|
|
<template slot-scope="scope" v-if="scope.row.name">
|
|
|
<div class="t_dose">
|
|
|
<el-input
|
|
|
@@ -583,7 +594,7 @@
|
|
|
</el-table-column>
|
|
|
<!-- fixed="left" -->
|
|
|
<el-table-column prop="spec" label="规格" width="100"></el-table-column>
|
|
|
- <el-table-column prop="dose" label="剂量" width="40">
|
|
|
+ <el-table-column prop="dose" label="剂量" width="60">
|
|
|
<template slot-scope="scope" v-if="scope.row.name">
|
|
|
<div class="t_dose">
|
|
|
<el-input
|
|
|
@@ -982,6 +993,7 @@ import { debounce } from "@/utils/format.js";
|
|
|
import { mapState, mapGetters, mapActions, mapMutations } from "vuex";
|
|
|
import popup from "@/components/Propup.vue";
|
|
|
import accompanied from "./ui/accompanied.vue";
|
|
|
+import {CC_Dosage2Basis} from '@/utils/medicine';
|
|
|
|
|
|
let medicineBlurTimer;
|
|
|
export default {
|
|
|
@@ -1102,6 +1114,7 @@ export default {
|
|
|
isAutoCheck: "0", // 是否自动审核 0 手动 1自动 (自动的时候用his 的是否支付成功字段 判断显示)
|
|
|
pharmacyList: [], // 药房选择器 数据
|
|
|
pharmacyTypes: [],
|
|
|
+ pharmacyTypeGroup: [],
|
|
|
clickPid: "", // 点击的药品id
|
|
|
maxDose: null,
|
|
|
minDose: null,
|
|
|
@@ -1837,6 +1850,8 @@ export default {
|
|
|
showSearch: false,
|
|
|
showDoseSection: false // 展示剂量区间
|
|
|
};
|
|
|
+ obj.ggnum = +item.ggnum || 1;
|
|
|
+ obj.xbzxs = +item.xbzxs || '34'.includes(item.zylx) ? obj.ggnum : 1;
|
|
|
Object.assign(totalData[scope.row.id - 1], obj);
|
|
|
|
|
|
// 调用 父级合理用药接口
|
|
|
@@ -2373,18 +2388,43 @@ export default {
|
|
|
});
|
|
|
if (res.ResultCode == 0) {
|
|
|
let pharmacyTypes = [];
|
|
|
+ let pharmacyTypeGroup = [];
|
|
|
res.Data.forEach(item => {
|
|
|
item.dosageForms = item.dosageForms.split(",");
|
|
|
item.dosageForms.forEach(item1 => {
|
|
|
pharmacyTypes.push({
|
|
|
type: item1,
|
|
|
ptype: item.pid + "@" + item1,
|
|
|
- name: item.displayName //+ this.getRadioName(item1)
|
|
|
+ name: item.displayName + (item.dosageForms.length > 1 ? ` (${this.getRadioName(item1)})` : '')
|
|
|
});
|
|
|
});
|
|
|
+ if (item.dosageForms.length > 1) {
|
|
|
+ pharmacyTypeGroup.push({
|
|
|
+ name: item.displayName,
|
|
|
+ options: item.dosageForms.map(item1 => {
|
|
|
+ return {
|
|
|
+ type: item1,
|
|
|
+ ptype: item.pid + "@" + item1,
|
|
|
+ name: this.getRadioName(item1),
|
|
|
+ }
|
|
|
+ })
|
|
|
+ })
|
|
|
+ } else if (item.dosageForms.length === 1) {
|
|
|
+ pharmacyTypeGroup.push({
|
|
|
+ name: item.displayName,
|
|
|
+ options: item.dosageForms.map(item1 => {
|
|
|
+ return {
|
|
|
+ type: item1,
|
|
|
+ ptype: item.pid + "@" + item1,
|
|
|
+ name: item.displayName,
|
|
|
+ }
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
});
|
|
|
this.pharmacyList = res.Data;
|
|
|
this.pharmacyTypes = pharmacyTypes;
|
|
|
+ this.pharmacyTypeGroup = pharmacyTypeGroup;
|
|
|
}
|
|
|
},
|
|
|
// 获取药房id
|
|
|
@@ -2422,14 +2462,14 @@ export default {
|
|
|
|
|
|
this.recipe_tabs[this.recipe_tabs_c].totalTableD.forEach(item => {
|
|
|
if (item.name) {
|
|
|
+ item.oldDose = CC_Dosage2Basis(item);
|
|
|
let idDose =
|
|
|
item.medid +
|
|
|
"&" +
|
|
|
- (item.dose || item.oldDose) +
|
|
|
+ item.oldDose +
|
|
|
"&" +
|
|
|
(item.usage || "");
|
|
|
// drugIds.push(item.medid)
|
|
|
- item.oldDose = item.dose;
|
|
|
drugIds.push(idDose);
|
|
|
}
|
|
|
});
|
|
|
@@ -2489,7 +2529,8 @@ export default {
|
|
|
oldDose: item1.oldDose
|
|
|
};
|
|
|
/* 修正 */ item1.usage = item1.useage = getUsage(item1.usage);
|
|
|
-
|
|
|
+ item1.ggnum = +item.ggnum || 1;
|
|
|
+ item1.xbzxs = +item.xbzxs || '34'.includes(item.zylx) ? item1.ggnum : 1;
|
|
|
item1.color = item.kc > 0 ? "#000" : 'red';
|
|
|
}
|
|
|
|
|
|
@@ -2643,6 +2684,7 @@ export default {
|
|
|
|
|
|
// 根据表格获取数据类型
|
|
|
async getSelectType(data, index) {
|
|
|
+ if (data === '中药药品用法' && this.usageList.length) return;
|
|
|
let res = await getSelectType(data);
|
|
|
|
|
|
if (data == "中药药品用法") {
|
|
|
@@ -2935,6 +2977,24 @@ export default {
|
|
|
flex: 1;
|
|
|
}
|
|
|
|
|
|
+ .t-radio-group2 {
|
|
|
+ padding: 4px 8px;
|
|
|
+
|
|
|
+ &.multiple {
|
|
|
+ border: 2px dashed #5386f6;
|
|
|
+
|
|
|
+ > label:first-of-type {
|
|
|
+ margin-right: 8px;
|
|
|
+ color: rgba(0, 0, 0, 0.6);
|
|
|
+
|
|
|
+ &:after {
|
|
|
+ margin-left: 2px;
|
|
|
+ content: ":";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
.add-presc1 {
|
|
|
width: 84px;
|
|
|
height: 34px;
|