fix(#613): 补充 DB 迁移 + ServiceRequest 实际写入退回原因
问题: - med_medication_request 表无 back_reason 列 → Entity 和 Service 写了但 DB 报错 - ServiceRequestServiceImpl.updateDraftStatus 接收 backReason 参数但不使用 修复: - 新增迁移脚本 sql/迁移记录-DB变更记录/20260529_fix_BUG#613_add_column_back_reason.sql - 4 个 schema (histest1/histest/hisdev/hisprd) 已执行 ALTER TABLE ADD COLUMN - ServiceRequestServiceImpl.updateDraftStatus: 新增 setReasonText(backReason)
This commit is contained in:
@@ -198,8 +198,14 @@ public class ServiceRequestServiceImpl extends ServiceImpl<ServiceRequestMapper,
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void updateDraftStatus(List<Long> serviceRequestIdList, Long practitionerId, Date checkDate, String backReason) {
|
public void updateDraftStatus(List<Long> serviceRequestIdList, Long practitionerId, Date checkDate, String backReason) {
|
||||||
baseMapper.update(new ServiceRequest().setStatusEnum(RequestStatus.DRAFT.getValue())
|
ServiceRequest updateEntity = new ServiceRequest()
|
||||||
.setPerformerCheckId(SecurityUtils.getLoginUser().getPractitionerId()).setCheckTime(DateUtils.getNowDate()),
|
.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)
|
new LambdaUpdateWrapper<ServiceRequest>().in(ServiceRequest::getId, serviceRequestIdList)
|
||||||
.eq(ServiceRequest::getDeleteFlag, DelFlag.NO.getCode()));
|
.eq(ServiceRequest::getDeleteFlag, DelFlag.NO.getCode()));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
-- Bug #613: 医嘱退回流程 — med_medication_request 表缺少退回原因字段
|
||||||
|
-- 执行前检查:如果列已存在则跳过
|
||||||
|
DO $$
|
||||||
|
BEGIN
|
||||||
|
IF NOT EXISTS (
|
||||||
|
SELECT 1 FROM information_schema.columns
|
||||||
|
WHERE table_name = 'med_medication_request' AND column_name = 'back_reason'
|
||||||
|
) THEN
|
||||||
|
ALTER TABLE med_medication_request ADD COLUMN back_reason VARCHAR(500) DEFAULT NULL;
|
||||||
|
COMMENT ON COLUMN med_medication_request.back_reason IS '退回原因';
|
||||||
|
END IF;
|
||||||
|
END
|
||||||
|
$$;
|
||||||
Reference in New Issue
Block a user