Fix Bug #561: fallback修复

This commit is contained in:
2026-05-27 01:17:18 +08:00
parent 2a94bfa295
commit 65989e6eac

View File

@@ -51,67 +51,65 @@ public interface OrderMapper {
Map<String, Object> selectOrderById(@Param("orderId") Long orderId);
/**
* 更新医嘱状态为已退号CANCELLED)。
* 根据医嘱 ID 查询医嘱明细包括诊疗目录配置的总量单位total_quantity_unit)。
* 该方法专门用于门诊医生站‑医嘱录入后展示总量单位,防止出现 null。
*
* @param orderId 医嘱主键
* @return 包含医嘱明细及 total_quantity_unit 的 Map若不存在返回 null
*/
@Select({
"SELECT o.id,",
" o.patient_id,",
" o.doctor_id,",
" o.status,",
" od.item_id,",
" od.quantity,",
" od.total_quantity,",
" -- 诊疗目录表his_item中保存的总量单位字段",
" i.total_quantity_unit,",
" od.create_time",
"FROM his_order o",
" JOIN his_order_detail od ON o.id = od.order_id",
" JOIN his_item i ON od.item_id = i.id",
"WHERE o.id = #{orderId}"
})
Map<String, Object> selectOrderDetailById(@Param("orderId") Long orderId);
/**
* 将医嘱状态更新为已取消CANCELLED
*
* @param orderId 医嘱主键
* @param operator 操作人姓名
* @param remark 备注信息
* @param remark 备注
*/
@Update({
"<script>",
"UPDATE his_order",
"SET status = #{cancelStatus},",
" updated_by = #{operator},",
" updated_time = NOW(),",
" remark = #{remark}",
"WHERE id = #{orderId}",
"</script>"
})
@Update("UPDATE his_order SET status = #{status}, updated_by = #{operator}, remark = #{remark}, update_time = NOW() " +
"WHERE id = #{orderId}")
void updateOrderStatusToCancelled(@Param("orderId") Long orderId,
@Param("operator") String operator,
@Param("remark") String remark,
@Param("cancelStatus") String cancelStatus);
@Param("status") String status,
@Param("operator") String operator,
@Param("remark") String remark);
/**
* 更新医嘱状态为已支付PAID
* 医嘱状态更新为已支付PAID
*
* @param orderId 医嘱主键
* @param operator 操作人姓名
* @param remark 备注信息
* @param remark 备注
*/
@Update({
"<script>",
"UPDATE his_order",
"SET status = #{paidStatus},",
" updated_by = #{operator},",
" updated_time = NOW(),",
" remark = #{remark}",
"WHERE id = #{orderId}",
"</script>"
})
@Update("UPDATE his_order SET status = #{status}, updated_by = #{operator}, remark = #{remark}, update_time = NOW() " +
"WHERE id = #{orderId}")
void updateOrderStatusToPaid(@Param("orderId") Long orderId,
@Param("status") String status,
@Param("operator") String operator,
@Param("remark") String remark,
@Param("paidStatus") String paidStatus);
@Param("remark") String remark);
/**
* 根据医嘱明细 ID 查询明细信息(包括总量单位)。
* 将排班号状态更新为已取号3)。
*
* @param detailId 明细主键
* @return 明细记录 Map
* @param scheduleSlotId 排班号主键
*/
@Select("SELECT d.*, c.total_quantity_unit FROM his_order_detail d " +
"LEFT JOIN his_catalog c ON d.catalog_id = c.id " +
"WHERE d.id = #{detailId}")
Map<String, Object> selectOrderDetailById(@Param("detailId") Long detailId);
@Update("UPDATE adm_schedule_slot SET status = 3, update_time = NOW() WHERE id = #{scheduleSlotId}")
void updateScheduleSlotStatusToFinished(@Param("scheduleSlotId") Long scheduleSlotId);
/**
* 更新排班号状态为已取号3
*
* @param slotId 排班号主键
*/
@Update("UPDATE adm_schedule_slot SET status = 3, updated_time = NOW() WHERE id = #{slotId}")
void updateScheduleSlotStatusToFinished(@Param("slotId") Long slotId);
// 其它已存在的方法保持不变...
// 其它已有方法(如分页查询待写病历等)保持不变
}