fix(#613): 医嘱退回流程完整修复(护士端弹窗 + 医生端展示 + 全链路 6 环)
新 Harness 方法论全链路分析: 📤 发起方(护士端-医嘱校对): - ① 前端/页面 ❌ handleCancel 直接调 API → ✅ 改为弹窗要求必填退回原因 - ② Controller ✅ 不涉及(纯转发) - ③ Service ✅ adviceReject 提取 backReason 传入 - ④ Mapper/DB ✅ backReason 参数已就绪 - ⑤ DB ✅ back_reason 迁移脚本已执行 - ⑥ 关联模块 ✅ ServiceRequest 写入 reasonText 📥 接收方(医生端-临床医嘱): - ① 前端/页面 ❌ 无退回原因列 → ✅ 在诊断列前新增橙色退回原因列 - ② Controller ✅ 不涉及 - ③ Service ✅ DTO 新增 reasonText 字段 - ④ Mapper/XML ✅ 5 个 UNION ALL 分支均选取 reason_text - ⑤ DB ✅ med_medication_request.back_reason 已存在 - ⑥ 展示 ✅ 医生端可看到退回原因 变更:6 文件,+101/-13 行
This commit is contained in:
@@ -197,9 +197,15 @@ public class ServiceRequestServiceImpl extends ServiceImpl<ServiceRequestMapper,
|
||||
* @param checkDate 校对时间
|
||||
*/
|
||||
@Override
|
||||
public void updateDraftStatus(List<Long> serviceRequestIdList, Long practitionerId, Date checkDate) {
|
||||
baseMapper.update(new ServiceRequest().setStatusEnum(RequestStatus.DRAFT.getValue())
|
||||
.setPerformerCheckId(SecurityUtils.getLoginUser().getPractitionerId()).setCheckTime(DateUtils.getNowDate()),
|
||||
public void updateDraftStatus(List<Long> serviceRequestIdList, Long practitionerId, Date checkDate, String backReason) {
|
||||
ServiceRequest updateEntity = new ServiceRequest()
|
||||
.setStatusEnum(RequestStatus.DRAFT.getValue())
|
||||
.setPerformerCheckId(SecurityUtils.getLoginUser().getPractitionerId())
|
||||
.setCheckTime(DateUtils.getNowDate());
|
||||
if (backReason != null && !backReason.isEmpty()) {
|
||||
updateEntity.setReasonText(backReason);
|
||||
}
|
||||
baseMapper.update(updateEntity,
|
||||
new LambdaUpdateWrapper<ServiceRequest>().in(ServiceRequest::getId, serviceRequestIdList)
|
||||
.eq(ServiceRequest::getDeleteFlag, DelFlag.NO.getCode()));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user