fix(#613): 医生端医嘱列表增加退回原因展示列
根因(全链路6环分析): - ① 前端/页面 ❌ 医生端医嘱列表无退回原因列 → 无法展示护士填写的退回原因 - ② Controller ❌ 不涉及 — 纯转发层 - ③ Service ❌ getRequestBaseInfo() 未填充 reasonText 字段 - ④ Mapper/XML ❌ UNION ALL 查询未选取 back_reason/reason_text 字段 - ⑤ DB ✅ med_medication_request.back_reason 列已存在(上一次修复已迁移) - ⑥ 关联模块 ⚠️ wor_service_request.reason_text 已存在但未在查询中暴露 修复: 1. RequestBaseDto.java: 新增 reasonText 字段(映射退回原因) 2. DoctorStationAdviceAppMapper.xml: 5 个 UNION ALL 分支各自选取 reason_text - med_medication_request → T1.back_reason - charge item 回补 → T2.back_reason - device_request(2 处)→ NULL(无退回原因字段) - wor_service_request → T1.reason_text 3. prescriptionlist.vue: 在诊断列前新增退回原因列 全链路状态流转: 护士端弹窗→输入原因→API传backReason→DB保存→医生端列表展示 ↑ 本次修复打通最后一环 ↑
This commit is contained in:
@@ -127,6 +127,11 @@ public class RequestBaseDto {
|
||||
* 请求状态
|
||||
*/
|
||||
private Integer statusEnum;
|
||||
|
||||
/**
|
||||
* 退回原因
|
||||
*/
|
||||
private String reasonText;
|
||||
private String statusEnum_enumText;
|
||||
|
||||
/**
|
||||
|
||||
@@ -517,6 +517,7 @@
|
||||
'med_medication_definition' AS advice_table_name,
|
||||
T1.medication_id AS advice_definition_id
|
||||
, T1.content_json::jsonb ->> 'remark' AS remark
|
||||
, T1.back_reason AS reason_text
|
||||
FROM med_medication_request AS T1
|
||||
LEFT JOIN med_medication_definition AS T2 ON T2.ID = T1.medication_id
|
||||
AND T2.delete_flag = '0'
|
||||
@@ -579,6 +580,7 @@
|
||||
'med_medication_definition' AS advice_table_name,
|
||||
T3.ID AS advice_definition_id
|
||||
, T2.content_json::jsonb ->> 'remark' AS remark
|
||||
, T2.back_reason AS reason_text
|
||||
FROM adm_charge_item AS T1
|
||||
INNER JOIN med_medication_request AS T2 ON T2.ID = T1.service_id AND T2.delete_flag = '0'
|
||||
LEFT JOIN med_medication_definition AS T3 ON T3.ID = T2.medication_id AND T3.delete_flag = '0'
|
||||
@@ -643,6 +645,7 @@
|
||||
'adm_device_definition' AS advice_table_name,
|
||||
CI.product_id AS advice_definition_id
|
||||
, NULL AS remark
|
||||
, NULL AS reason_text
|
||||
FROM adm_charge_item AS CI
|
||||
LEFT JOIN adm_charge_item_definition CID ON CID.id = CI.definition_id AND CID.delete_flag = '0'
|
||||
LEFT JOIN wor_device_request DR ON DR.id = CI.service_id AND DR.delete_flag = '0'
|
||||
@@ -698,6 +701,7 @@
|
||||
'adm_device_definition' AS advice_table_name,
|
||||
T1.device_def_id AS advice_definition_id
|
||||
, T1.content_json::jsonb ->> 'remark' AS remark
|
||||
, NULL AS reason_text
|
||||
FROM wor_device_request AS T1
|
||||
LEFT JOIN adm_device_definition AS T2 ON T2.ID = T1.device_def_id
|
||||
AND T2.delete_flag = '0'
|
||||
@@ -755,6 +759,7 @@
|
||||
'wor_activity_definition' AS advice_table_name,
|
||||
T1.activity_id AS advice_definition_id,
|
||||
T1.remark AS remark
|
||||
, T1.reason_text AS reason_text
|
||||
FROM wor_service_request AS T1
|
||||
LEFT JOIN wor_activity_definition AS T2
|
||||
ON T2.ID = T1.activity_id
|
||||
|
||||
Reference in New Issue
Block a user