242 检验项目设置-》检验项目:费用套餐/下级医技类型字段两列无数据

This commit is contained in:
2026-03-19 15:54:53 +08:00
parent dc1366890f
commit 68c0c098c8
5 changed files with 72 additions and 14 deletions

View File

@@ -139,4 +139,18 @@ public class DiagnosisTreatmentDto {
/** 检验类型名称(用于前端 testType 字段) */
private String testType;
/** 费用套餐ID关联 inspection_basic_information */
@JsonSerialize(using = ToStringSerializer.class)
private Long feePackageId;
/** 费用套餐名称JOIN inspection_basic_information.package_name */
private String packageName;
/** 下级医技类型ID关联 inspection_type 子类) */
@JsonSerialize(using = ToStringSerializer.class)
private Long subItemId;
/** 下级医技类型名称JOIN inspection_type.name */
private String subItemName;
}

View File

@@ -129,7 +129,15 @@ public class DiagnosisTreatmentUpDto {
/** 服务范围 */
private String serviceRange;
/** 检验类型ID */
/** 检验类型ID(关联 inspection_type 大类parent_id 为空) */
@JsonSerialize(using = ToStringSerializer.class)
private Long inspectionTypeId;
/** 费用套餐ID关联 inspection_basic_information */
@JsonSerialize(using = ToStringSerializer.class)
private Long feePackageId;
/** 下级医技类型ID关联 inspection_type 子类parent_id 不为空) */
@JsonSerialize(using = ToStringSerializer.class)
private Long subItemId;
}

View File

@@ -31,12 +31,16 @@
T1.sort_order,
T1.service_range,
T1.inspection_type_id,
T1.fee_package_id,
T1.sub_item_id,
T2.type_code as item_type_code,
T2.yb_type,
T2.price_code,
T2.price as retail_price,
T4.amount as maximum_retail_price,
T3.name as test_type
T3.name as test_type,
T5.package_name,
T6.name as sub_item_name
FROM wor_activity_definition T1
/* 只JOIN必要的价格表使用INNER JOIN避免笛卡尔积 */
INNER JOIN adm_charge_item_definition T2
@@ -50,6 +54,14 @@
LEFT JOIN adm_charge_item_def_detail T4
ON T4.definition_id = T2.id
AND T4.condition_code = '4'
/* 费用套餐关联 */
LEFT JOIN inspection_basic_information T5
ON T1.fee_package_id = T5.basic_information_id
AND T5.del_flag = false
/* 下级医技类型关联inspection_type 子类) */
LEFT JOIN inspection_type T6
ON T1.sub_item_id = T6.id
AND T6.valid_flag = 1
<where>
T1.delete_flag = '0'
<if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
@@ -105,11 +117,23 @@
T1.sort_order,
T1.service_range,
T1.inspection_type_id,
T3.name as test_type
T1.fee_package_id,
T1.sub_item_id,
T3.name as test_type,
T6.package_name,
T7.name as sub_item_name
FROM wor_activity_definition T1
LEFT JOIN adm_charge_item_definition T2 ON T1.id = T2.instance_id
/* 检验类型关联 */
LEFT JOIN inspection_type T3 ON T1.inspection_type_id = T3.id AND T3.valid_flag = 1
/* 费用套餐关联 */
LEFT JOIN inspection_basic_information T6
ON T1.fee_package_id = T6.basic_information_id
AND T6.del_flag = false
/* 下级医技类型关联inspection_type 子类) */
LEFT JOIN inspection_type T7
ON T1.sub_item_id = T7.id
AND T7.valid_flag = 1
<where>
T1.delete_flag = '0'
AND T2.instance_table = 'wor_activity_definition'