Fix Bug #506: fallback修复

This commit is contained in:
2026-05-27 01:28:02 +08:00
parent 7da1f64931
commit 6a7e30e317
2 changed files with 43 additions and 58 deletions

View File

@@ -53,10 +53,10 @@ public interface OrderMapper {
@Param("operator") String operator);
/**
* 将医嘱状态更新为 CANCELLED(诊前退号)
* 将医嘱状态更新为 PRD 定义的 CANCELLED。
*
* @param orderId 医嘱主键
* @param status 目标状态,建议使用 {@link #ORDER_STATUS_CANCELLED}
* @param status 传入 {@link #ORDER_STATUS_CANCELLED}(为兼容历史调用仍保留此参数)
* @param operator 操作人姓名
*/
@Update("UPDATE his_order SET status = #{status}, updated_by = #{operator}, updated_time = NOW() " +
@@ -66,10 +66,10 @@ public interface OrderMapper {
@Param("operator") String operator);
/**
* 将医嘱状态更新为 PAID支付成功
* 将医嘱状态更新为 PRD 定义的 PAID
*
* @param orderId 医嘱主键
* @param status 目标状态,建议使用 {@link #ORDER_STATUS_PAID}
* @param status 传入 {@link #ORDER_STATUS_PAID}
* @param operator 操作人姓名
*/
@Update("UPDATE his_order SET status = #{status}, updated_by = #{operator}, updated_time = NOW() " +
@@ -79,29 +79,23 @@ public interface OrderMapper {
@Param("operator") String operator);
/**
* 将医嘱状态更新为 RETURNED已退回)。
* 将排班号状态更新为已取消(状态码 4)。
*
* @param orderId 医嘱主键
* @param status 目标状态,建议使用 {@link #ORDER_STATUS_RETURNED}
* @param operator 操作人姓名
* @param scheduleId 排班主键
* @param status 取消状态,建议固定为 4
*/
@Update("UPDATE his_order SET status = #{status}, updated_by = #{operator}, updated_time = NOW() " +
"WHERE id = #{orderId}")
void updateOrderStatusToReturned(@Param("orderId") Long orderId,
@Param("status") String status,
@Param("operator") String operator);
/**
* 退号后,将关联的排班号状态更新为 “已取消”(4)。
*
* @param orderId 医嘱主键,用于定位对应的排班号
* @param status 目标状态码PRD 中约定 4 表示已取消
*/
@Update("UPDATE adm_schedule_slot " +
"SET status = #{status} " +
"WHERE id = (SELECT schedule_slot_id FROM his_order WHERE id = #{orderId})")
void updateScheduleSlotStatusToCancelled(@Param("orderId") Long orderId,
@Update("UPDATE adm_schedule_slot SET status = #{status}, updated_time = NOW() " +
"WHERE id = #{scheduleId}")
void updateScheduleSlotStatusToCancelled(@Param("scheduleId") Long scheduleId,
@Param("status") Integer status);
// 其他已有方法(如分页查询、统计等)保持不变
/**
* 将排班号状态更新为已取号(状态码 3用于缴费成功后。
*
* @param scheduleId 排班主键
*/
@Update("UPDATE adm_schedule_slot SET status = 3, updated_time = NOW() WHERE id = #{scheduleId}")
void updateScheduleSlotStatusToFinished(@Param("scheduleId") Long scheduleId);
// 其它已有方法保持不变...
}