diff --git a/pages/consult/select-drug/edit-popup.vue b/pages/consult/select-drug/edit-popup.vue
index 6263c76..4c00322 100644
--- a/pages/consult/select-drug/edit-popup.vue
+++ b/pages/consult/select-drug/edit-popup.vue
@@ -46,6 +46,13 @@
+
+
+ 用药时机
+ {{ current.dose_time_name }}
+
+
+
已为您填入药品常规用量,请确认!
@@ -80,6 +87,8 @@ const popup = ref()
const current = ref({})
const usageIndex = ref(0)
const frequencyIndex = ref(0)
+const timeIndex = ref(0)
+
const gtMax = computed(() => {
return current.value.quantity > current.value.recommended_quantity && current.value.recommended_quantity > 0
})
@@ -89,6 +98,10 @@ const usageList = computed(() => {
const frequencyList = computed(() => {
return props.consultType === 'onlineMedicinePurchase' ? onlineMedicine.value.frequencyList : storeMedicine.value.frequencyList;
})
+const timeList = computed(() => {
+ return props.consultType === 'onlineMedicinePurchase' ? onlineMedicine.value.timeList : storeMedicine.value.timeList;
+})
+
function usageChange(e) {
const index = e.detail.value;
@@ -106,6 +119,13 @@ function frequencyChange(e) {
frequencyIndex.value = index;
}
+function timeChange(e) {
+ const index = e.detail.value;
+ const time = timeList.value[index];
+ current.value.dose_time_name = time ? time.name : '';
+ timeIndex.value = index;
+}
+
function close() {
emits('close')
}
@@ -123,6 +143,9 @@ function confirm() {
if (!(frequencyIndex.value >= 0)) {
return toast('请选择用药频率', { mask: false })
}
+ if (!(timeIndex.value >= 0)) {
+ return toast('请选择用药时机', { mask: false })
+ }
// 延迟执行是因为 单次剂量以及数量 手动输入的时候 值改变有延时 手机端可以可以出现 开发工具不行
setTimeout(() => {
const arr = [current.value.usageName, current.value.frequencyName, current.value.dosage ? `每次${current.value.dosage}${current.value.dosage_unit || ''}` : ''].filter(Boolean);
@@ -144,6 +167,9 @@ watch(() => props.visible, (val) => {
const frequency = frequencyList.value[frequencyIndex.value];
current.value.frequencyName = frequency ? frequency.name : '';
current.value.frequencyCode = frequency ? frequency.code : '';
+ timeIndex.value = timeList.value.findIndex(item => item.name === current.value.dose_time_name);
+ const time = timeList.value[timeIndex.value];
+ current.value.dose_time_name = time ? time.name : '';
} else {
popup.value && popup.value.close()
}
diff --git a/store/db.js b/store/db.js
index 4e9c116..8160b22 100644
--- a/store/db.js
+++ b/store/db.js
@@ -23,12 +23,14 @@ export default defineStore("dbStore", () => {
const onlineMedicine = computed(() => ({
frequencyList: medicineConfigGroup.value['online-medicine-frequence'] || [],
usageList: medicineConfigGroup.value['online-medicine-administration'] || [],
+ timeList: medicineConfigGroup.value['medicine-use-time'] || [],
}))
//门店药品 单次剂量单位 用药频次 用药途径 包装单位
const storeMedicine = computed(() => ({
frequencyList: medicineConfigGroup.value['store-medicine-frequence'] || [],
usageList: medicineConfigGroup.value['store-medicine-administration'] || [],
+ timeList: medicineConfigGroup.value['medicine-use-time'] || [],
}))
async function getMedicineConfigGroup() {
@@ -37,6 +39,8 @@ export default defineStore("dbStore", () => {
// `${corpId}-online-medicine-administration`,
`${corpId}-store-medicine-frequence`,
`${corpId}-store-medicine-administration`,
+ `${corpId}-store-medicine-use-time`,
+
];
const res = await getHlwConfigByCorpIds(corpIds);
if (res && res.success && Array.isArray(res.data)) {