diff --git a/openhis-ui-vue3/src/views/basicmanage/medicalOrderSet/components/MedicalOrderSetDialog.vue b/openhis-ui-vue3/src/views/basicmanage/medicalOrderSet/components/MedicalOrderSetDialog.vue
index 1779b5e7..077cf79a 100644
--- a/openhis-ui-vue3/src/views/basicmanage/medicalOrderSet/components/MedicalOrderSetDialog.vue
+++ b/openhis-ui-vue3/src/views/basicmanage/medicalOrderSet/components/MedicalOrderSetDialog.vue
@@ -138,9 +138,9 @@
-
-
-
+
+
+
- {{ scope.row.dose }}
+ -
+
+
+ {{ scope.row.dose }}
+ -
- {{ '-' }}
-
-
+
+
- {{ scope.row.methodCode }}
+ -
+
+
+ {{ scope.row.methodCode_dictText || scope.row.methodCode }}
+ -
- {{ '-' }}
-
-
+
+
- {{ scope.row.rateCode_dictText }}
+ -
+
+
+ {{ scope.row.rateCode_dictText }}
+ -
- {{ '-' }}
-
-
+
+
- {{ scope.row.dispensePerDuration }}
+ -
+
+
+ {{ scope.row.dispensePerDuration }}
+ -
- {{ '-' }}
@@ -700,6 +712,35 @@ function submitForm() {
return;
}
+ // 验证西药类医嘱的必填字段
+ const westernMedicineRows = detailList.filter((item) => item.adviceType == 1);
+ for (const row of westernMedicineRows) {
+ if (!row.dose && row.dose !== 0) {
+ proxy?.$modal?.msgWarning?.('单次剂量为必填项');
+ return;
+ }
+ if (!row.methodCode) {
+ proxy?.$modal?.msgWarning?.('给药途径为必填项');
+ return;
+ }
+ if (!row.rateCode) {
+ proxy?.$modal?.msgWarning?.('用药频次为必填项');
+ return;
+ }
+ if (!row.dispensePerDuration && row.dispensePerDuration !== 0) {
+ proxy?.$modal?.msgWarning?.('用药天数为必填项');
+ return;
+ }
+ if (!row.sortNumber && row.sortNumber !== 0) {
+ proxy?.$modal?.msgWarning?.('总量/执行次数为必填项');
+ return;
+ }
+ if (!row.selectUnitCode) {
+ proxy?.$modal?.msgWarning?.('单位为必填项');
+ return;
+ }
+ }
+
submitLoading.value = true;
setTimeout(() => {
console.log('[submitForm] 当前tab:', currentTab.value);
diff --git a/openhis-ui-vue3/src/views/doctorstation/components/prescription/prescriptionlist.vue b/openhis-ui-vue3/src/views/doctorstation/components/prescription/prescriptionlist.vue
index 280f3e04..41b289c6 100644
--- a/openhis-ui-vue3/src/views/doctorstation/components/prescription/prescriptionlist.vue
+++ b/openhis-ui-vue3/src/views/doctorstation/components/prescription/prescriptionlist.vue
@@ -648,21 +648,49 @@
-
+
+
+ {{ scope.row.doseUnitCode_dictText }}
+
+
{{ scope.row.dose ? scope.row.dose + ' ' + scope.row.doseUnitCode_dictText : '' }}
-
+
+
+ {{ scope.row.unitCode_dictText }}
+
+
{{ scope.row.quantity ? scope.row.quantity + ' ' + scope.row.unitCode_dictText : '' }}
-
+
+
+ {{ (scope.row.totalPrice !== undefined && scope.row.totalPrice !== null && !isNaN(scope.row.totalPrice) &&
+ isFinite(scope.row.totalPrice)) ? Number(scope.row.totalPrice).toFixed(2) : '0.00' }} 元
+
+
+
{{ (scope.row.totalPrice !== undefined && scope.row.totalPrice !== null && !isNaN(scope.row.totalPrice) &&
isFinite(scope.row.totalPrice)) ? Number(scope.row.totalPrice).toFixed(2) + ' 元' : '-' }}
@@ -670,14 +698,34 @@
-
+
+ {{ scope.row.positionName || '请选择药房' }}
+
+
{{ scope.row.positionName }}
-
+
+
+
+
+
+ 天
+
+
+
+
+
{{
scope.row.rateCode_dictText
? scope.row.rateCode_dictText +
@@ -3041,25 +3089,29 @@ function handleSaveGroup(orderGroupList) {
// 🔥 新版组件已经预处理了数据,优先使用 mergedDetail
// 如果没有 mergedDetail,则回退到旧版处理逻辑
const mergedDetail = item.mergedDetail || {
- // 医嘱库基础信息
+ // 医嘱库基础信息(作为默认值)
...(item.orderDetailInfos || {}),
- // 组套级别字段
- adviceName: item.orderDetailInfos?.adviceName || item.orderDefinitionName || '未知项目',
- adviceType: item.orderDetailInfos?.adviceType,
+ // 组套级别字段(优先级更高,覆盖医嘱库字段)
+ adviceName: item.orderDefinitionName || item.orderDetailInfos?.adviceName || '未知项目',
+ adviceType: item.adviceType || item.orderDetailInfos?.adviceType,
adviceDefinitionId: item.orderDefinitionId || item.orderDetailInfos?.adviceDefinitionId,
quantity: item.quantity,
unitCode: item.unitCode || item.orderDetailInfos?.unitCode,
- unitCodeName: item.unitCodeName,
- dose: item.dose || item.orderDetailInfos?.dose,
+ unitCodeName: item.unitCodeName || item.orderDetailInfos?.unitCode_dictText,
+ dose: item.dose !== undefined && item.dose !== null ? item.dose : item.orderDetailInfos?.dose,
rateCode: item.rateCode || item.orderDetailInfos?.rateCode,
methodCode: item.methodCode || item.orderDetailInfos?.methodCode,
- dispensePerDuration: item.dispensePerDuration || item.orderDetailInfos?.dispensePerDuration,
- doseQuantity: item.doseQuantity,
+ dispensePerDuration: item.dispensePerDuration !== undefined && item.dispensePerDuration !== null
+ ? item.dispensePerDuration
+ : item.orderDetailInfos?.dispensePerDuration,
+ doseQuantity: item.doseQuantity !== undefined && item.doseQuantity !== null
+ ? item.doseQuantity
+ : item.orderDetailInfos?.doseQuantity,
inventoryList: item.orderDetailInfos?.inventoryList || [],
priceList: item.orderDetailInfos?.priceList || [],
partPercent: item.orderDetailInfos?.partPercent || 1,
- // 🔧 Bug #218 修复:positionId 可能存储在 item 本身,优先使用 item.positionId
+ // positionId 优先使用 item 中设置的(从 checkOrderGroupAvailability 中)
positionId: item.positionId || item.orderDetailInfos?.positionId,
defaultLotNumber: item.orderDetailInfos?.defaultLotNumber,
};
@@ -3715,6 +3767,11 @@ async function checkOrderGroupAvailability(detailList) {
}
const adviceInfo = res.data.records[0];
+
+ // 🔧 Bug Fix: 将医嘱库信息保存到 item 中,供后续使用
+ item.orderDetailInfos = adviceInfo;
+ item.adviceType = adviceInfo.adviceType;
+ item.positionId = adviceInfo.positionId;
if (adviceInfo.adviceType != 3) {
if (!adviceInfo.positionId) {
diff --git a/openhis-ui-vue3/src/views/medicationmanagement/chkstock/chkstockBatch/components/api.js b/openhis-ui-vue3/src/views/medicationmanagement/chkstock/chkstockBatch/components/api.js
index d27f85f9..4a268657 100644
--- a/openhis-ui-vue3/src/views/medicationmanagement/chkstock/chkstockBatch/components/api.js
+++ b/openhis-ui-vue3/src/views/medicationmanagement/chkstock/chkstockBatch/components/api.js
@@ -74,7 +74,7 @@ export function submitApproval(busNo) {
return request({
url: '/inventory-manage/stocktaking/submit-approval',
method: 'put',
- data: busNo
+ data: { busNo } // 修复:发送对象而不是字符串
})
}
@@ -83,7 +83,7 @@ export function withdrawApproval(busNo) {
return request({
url: '/inventory-manage/stocktaking/withdraw-approval',
method: 'put',
- data: busNo
+ data: { busNo } // 修复:发送对象而不是字符串
})
}
diff --git a/openhis-ui-vue3/src/views/medicationmanagement/chkstock/chkstockPart/components/api.js b/openhis-ui-vue3/src/views/medicationmanagement/chkstock/chkstockPart/components/api.js
index 1868622d..1fdcb416 100644
--- a/openhis-ui-vue3/src/views/medicationmanagement/chkstock/chkstockPart/components/api.js
+++ b/openhis-ui-vue3/src/views/medicationmanagement/chkstock/chkstockPart/components/api.js
@@ -74,7 +74,7 @@ export function submitApproval(busNo) {
return request({
url: '/inventory-manage/stocktaking/submit-approval',
method: 'put',
- data: busNo
+ data: { busNo } // 修复:发送对象而不是字符串
})
}
@@ -83,7 +83,7 @@ export function withdrawApproval(busNo) {
return request({
url: '/inventory-manage/stocktaking/withdraw-approval',
method: 'put',
- data: busNo
+ data: { busNo } // 修复:发送对象而不是字符串
})
}
diff --git a/openhis-ui-vue3/src/views/medicationmanagement/chkstock/chkstockRecord/components/api.js b/openhis-ui-vue3/src/views/medicationmanagement/chkstock/chkstockRecord/components/api.js
index be8b9257..81504c91 100644
--- a/openhis-ui-vue3/src/views/medicationmanagement/chkstock/chkstockRecord/components/api.js
+++ b/openhis-ui-vue3/src/views/medicationmanagement/chkstock/chkstockRecord/components/api.js
@@ -58,7 +58,7 @@ export function submitApproval(busNo) {
return request({
url: '/inventory-manage/purchase/submit-approval',
method: 'put',
- data: busNo
+ data: { busNo } // 修复:发送对象而不是字符串
})
}
@@ -67,7 +67,7 @@ export function withdrawApproval(busNo) {
return request({
url: '/inventory-manage/purchase/withdraw-approval',
method: 'put',
- data: busNo
+ data: { busNo } // 修复:发送对象而不是字符串
})
}
diff --git a/openhis-ui-vue3/src/views/medicationmanagement/chkstock/components/api.js b/openhis-ui-vue3/src/views/medicationmanagement/chkstock/components/api.js
index f5103ba9..681078df 100644
--- a/openhis-ui-vue3/src/views/medicationmanagement/chkstock/components/api.js
+++ b/openhis-ui-vue3/src/views/medicationmanagement/chkstock/components/api.js
@@ -74,7 +74,7 @@ export function submitApproval(busNo) {
return request({
url: '/inventory-manage/stocktaking/submit-approval',
method: 'put',
- data: busNo
+ data: { busNo } // 修复:发送对象而不是字符串
})
}
@@ -83,7 +83,7 @@ export function withdrawApproval(busNo) {
return request({
url: '/inventory-manage/stocktaking/withdraw-approval',
method: 'put',
- data: busNo
+ data: { busNo } // 修复:发送对象而不是字符串
})
}
diff --git a/openhis-ui-vue3/src/views/medicationmanagement/lossReportingManagement/lossReporting.js b/openhis-ui-vue3/src/views/medicationmanagement/lossReportingManagement/lossReporting.js
index 3d140a98..421623df 100644
--- a/openhis-ui-vue3/src/views/medicationmanagement/lossReportingManagement/lossReporting.js
+++ b/openhis-ui-vue3/src/views/medicationmanagement/lossReportingManagement/lossReporting.js
@@ -56,7 +56,7 @@ export function submitApproval(busNo) {
return request({
url: '/inventory-manage/loss/submit-approval',
method: 'put',
- data: busNo
+ data: { busNo } // 修复:发送对象而不是字符串
})
}
@@ -65,7 +65,7 @@ export function withdrawApproval(busNo) {
return request({
url: '/inventory-manage/loss/withdraw-approval',
method: 'put',
- data: busNo
+ data: { busNo } // 修复:发送对象而不是字符串
})
}
diff --git a/openhis-ui-vue3/src/views/medicationmanagement/purchaseinventory/components/purchaseinventory.js b/openhis-ui-vue3/src/views/medicationmanagement/purchaseinventory/components/purchaseinventory.js
index 47a57cd5..dd4cb7c0 100644
--- a/openhis-ui-vue3/src/views/medicationmanagement/purchaseinventory/components/purchaseinventory.js
+++ b/openhis-ui-vue3/src/views/medicationmanagement/purchaseinventory/components/purchaseinventory.js
@@ -144,6 +144,6 @@ export function withdrawApprovalReturn(busNo) {
return request({
url: '/inventory-manage/return/return-withdraw-approval',
method: 'put',
- data: busNo
+ data: { busNo: busNo } // 修复:发送对象而不是字符串
})
}
\ No newline at end of file
diff --git a/openhis-ui-vue3/src/views/medicationmanagement/returnedPurchase/components/api.js b/openhis-ui-vue3/src/views/medicationmanagement/returnedPurchase/components/api.js
index 3a8e0023..c80b5244 100644
--- a/openhis-ui-vue3/src/views/medicationmanagement/returnedPurchase/components/api.js
+++ b/openhis-ui-vue3/src/views/medicationmanagement/returnedPurchase/components/api.js
@@ -89,7 +89,7 @@ export function submitApproval(busNo) {
return request({
url: '/inventory-manage/return/return-submit-approval',
method: 'put',
- data: busNo
+ data: { busNo } // 修复:发送对象而不是字符串
})
}
@@ -98,7 +98,7 @@ export function withdrawApproval(busNo) {
return request({
url: '/inventory-manage/return/return-withdraw-approval',
method: 'put',
- data: busNo
+ data: { busNo } // 修复:发送对象而不是字符串
})
}
diff --git a/openhis-ui-vue3/src/views/medicationmanagement/transferManagent/components/transferManagement.js b/openhis-ui-vue3/src/views/medicationmanagement/transferManagent/components/transferManagement.js
index dab5643a..705522b4 100644
--- a/openhis-ui-vue3/src/views/medicationmanagement/transferManagent/components/transferManagement.js
+++ b/openhis-ui-vue3/src/views/medicationmanagement/transferManagent/components/transferManagement.js
@@ -77,7 +77,7 @@ export function submitApproval(busNo) {
url: '/inventory-manage/transfer/submit-approval',
// product-transfer-approved
method: 'put',
- data: busNo
+ data: { busNo } // 修复:发送对象而不是字符串
})
}
@@ -86,7 +86,7 @@ export function withdrawApproval(busNo) {
return request({
url: '/inventory-manage/transfer/withdraw-approval',
method: 'put',
- data: busNo
+ data: { busNo } // 修复:发送对象而不是字符串
})
}