提交merge1.3

This commit is contained in:
2025-12-27 15:30:25 +08:00
parent 8c607c8749
commit 088861f66e
1245 changed files with 220442 additions and 77616 deletions

View File

@@ -41,7 +41,12 @@
abi.position_id,
abi.restricted_flag,
abi.restricted_scope,
<<<<<<< HEAD
abi.dosage_instruction
=======
abi.dosage_instruction,
abi.chrgitm_lv
>>>>>>> v1.3
from (
<if test="adviceTypes == null or adviceTypes.contains(1)">
(SELECT
@@ -82,7 +87,12 @@
T6.def_location_id AS position_id,
t1.restricted_flag AS restricted_flag,
t1.restricted_scope AS restricted_scope,
<<<<<<< HEAD
T1.dosage_instruction AS dosage_instruction
=======
T1.dosage_instruction AS dosage_instruction,
T1.chrgitm_lv as chrgitm_lv
>>>>>>> v1.3
FROM med_medication_definition AS t1
INNER JOIN med_medication AS T2 ON T2.medication_def_id = T1.ID
AND T2.delete_flag = '0' AND T2.status_enum = #{statusEnum}
@@ -93,7 +103,7 @@
AND T5.delete_flag = '0' AND T5.status_enum = #{statusEnum}
LEFT JOIN adm_organization_location AS T6
ON T6.distribution_category_code = T1.category_code
AND T6.delete_flag = '0' AND T6.organization_id = #{organizationId} AND
AND T6.delete_flag = '0' AND T6.item_code = '1' AND T6.organization_id = #{organizationId} AND
(CURRENT_TIME :: time (6) BETWEEN T6.start_time AND T6.end_time)
WHERE T1.delete_flag = '0'
AND T2.status_enum = #{statusEnum}
@@ -154,7 +164,12 @@
T5.def_location_id AS position_id,
0 AS restricted_flag,
'' AS restricted_scope,
<<<<<<< HEAD
'' AS dosage_instruction
=======
'' AS dosage_instruction,
T1.chrgitm_lv as chrgitm_lv
>>>>>>> v1.3
FROM adm_device_definition AS T1
LEFT JOIN adm_supplier AS T2
ON T2.ID = T1.supply_id
@@ -162,7 +177,7 @@
LEFT JOIN adm_charge_item_definition AS T4 ON T4.instance_id = T1.ID
AND T4.delete_flag = '0' AND T4.status_enum = #{statusEnum}
LEFT JOIN adm_organization_location AS T5 ON T5.distribution_category_code = T1.category_code
AND T5.delete_flag = '0' AND T5.organization_id = #{organizationId} AND
AND T5.delete_flag = '0' AND T5.item_code = '2' AND T5.organization_id = #{organizationId} AND
(CURRENT_TIME :: time (6) BETWEEN T5.start_time AND T5.end_time)
WHERE T1.delete_flag = '0'
<if test="adviceDefinitionIdParamList != null and !adviceDefinitionIdParamList.isEmpty()">
@@ -220,7 +235,12 @@
T3.organization_id AS position_id,
0 AS restricted_flag,
'' AS restricted_scope,
<<<<<<< HEAD
'' AS dosage_instruction
=======
'' AS dosage_instruction,
T1.chrgitm_lv as chrgitm_lv
>>>>>>> v1.3
FROM wor_activity_definition AS T1
LEFT JOIN adm_charge_item_definition AS T2
ON T2.instance_id = T1.ID
@@ -414,7 +434,8 @@
T1.dispense_per_duration AS dispense_per_duration,
T2.part_percent AS part_percent,
ccd.name AS condition_definition_name,
T1.sort_number AS sort_number
T1.sort_number AS sort_number,
T1.based_on_id AS based_on_id
FROM med_medication_request AS T1
LEFT JOIN med_medication_definition AS T2 ON T2.ID = T1.medication_id
AND T2.delete_flag = '0'
@@ -433,7 +454,7 @@
AND T1.patient_id = #{patientId} AND T1.encounter_id != #{encounterId}
</if>
AND T1.refund_medicine_id IS NULL
ORDER BY T1.status_enum,T1.sort_number,T1.group_id)
ORDER BY T1.status_enum,T1.sort_number)
UNION ALL
(SELECT 2 AS advice_type,
T1.id AS request_id,
@@ -464,7 +485,8 @@
null AS dispense_per_duration,
T2.part_percent AS part_percent,
'' AS condition_definition_name,
99 AS sort_number
99 AS sort_number,
T1.based_on_id AS based_on_id
FROM wor_device_request AS T1
LEFT JOIN adm_device_definition AS T2 ON T2.ID = T1.device_def_id
AND T2.delete_flag = '0'
@@ -511,7 +533,8 @@
null AS dispense_per_duration,
1 AS part_percent,
'' AS condition_definition_name,
99 AS sort_number
99 AS sort_number,
T1.based_on_id AS based_on_id
FROM wor_service_request AS T1
LEFT JOIN wor_activity_definition AS T2
ON T2.ID = T1.activity_id
@@ -520,7 +543,10 @@
T3.service_table = #{WOR_SERVICE_REQUEST}
LEFT JOIN adm_organization AS ao ON ao.ID = T1.org_id AND ao.delete_flag = '0'
WHERE T1.delete_flag = '0' AND T1.generate_source_enum = #{generateSourceEnum}
<<<<<<< HEAD
AND T1.based_on_table is null
=======
>>>>>>> v1.3
AND T1.parent_id IS NULL
AND T1.refund_service_id IS NULL
<if test="historyFlag == '0'.toString()">
@@ -594,6 +620,33 @@
AND tad.status_enum = #{status}
AND tad.type_code = #{typeCode}
AND tad.item_no = #{itemNo}
<<<<<<< HEAD
=======
</select>
<select id="getProofAndTestHistory" resultType="com.openhis.web.doctorstation.dto.ProofAndTestHistoryDto">
SELECT wsr.authored_time,
aper.NAME AS requester
FROM wor_service_request AS wsr
LEFT JOIN adm_practitioner AS aper ON aper.ID = wsr.requester_id
WHERE wsr.delete_flag = '0'
AND wsr.status_enum = #{status}
AND wsr.patient_id = #{patientId}
AND wsr.activity_id = #{adviceDefinitionId}
AND wsr.authored_time >= CURRENT_DATE - INTERVAL '30 days'
</select>
<select id="getProofAndTestResult" resultType="com.openhis.web.doctorstation.dto.ProofAndTestResultDto">
SELECT wsr.bus_no,
wad.NAME advice_name
FROM wor_service_request AS wsr
LEFT JOIN wor_activity_definition AS wad ON wad.ID = wsr.activity_id
WHERE wsr.delete_flag = '0'
AND wsr.status_enum != #{status}
AND wsr.encounter_id = #{encounterId}
AND EXISTS ( SELECT 1 FROM wor_activity_definition AS wad WHERE wad.type_enum = #{typeEnum}
AND wad.ID = wsr.activity_id )
>>>>>>> v1.3
</select>
</mapper>

View File

@@ -14,7 +14,6 @@
T10.phone,
T10.birth_date,
T10.status_enum,
T10.allergy_history_flag,
T10.account_id,
T10.type_code,
T10.contract_name,
@@ -49,11 +48,15 @@
T1.create_time AS register_time,
T1.reception_time AS reception_time,
T1.organization_id AS org_id,
<<<<<<< HEAD
T8.bus_no AS bus_no,
CASE
WHEN T9.patient_id IS NOT NULL THEN 1
ELSE 0
END AS allergy_history_flag
=======
T8.bus_no AS bus_no
>>>>>>> v1.3
FROM adm_encounter AS T1
LEFT JOIN adm_organization AS T2 ON T1.organization_id = T2.ID AND T2.delete_flag = '0'
LEFT JOIN adm_healthcare_service AS T3 ON T1.service_type_id = T3.ID AND T3.delete_flag = '0'
@@ -72,8 +75,6 @@
LEFT JOIN adm_account AS T6 ON T1.ID = T6.encounter_id AND T6.delete_flag = '0' and T6.encounter_flag = '1'
LEFT JOIN fin_contract AS T7 ON T6.contract_no = T7.bus_no AND T7.delete_flag = '0'
LEFT JOIN adm_patient AS T8 ON T1.patient_id = T8.ID AND T8.delete_flag = '0'
LEFT JOIN cli_allergy_intolerance AS T9
ON T1.patient_id = T9.patient_id AND T9.clinical_status_enum != #{ClinicalStatus} AND T9.delete_flag = '0'
WHERE
T1.delete_flag = '0'
<!-- 当前登录账号ID 和 当前登录账号所属的科室ID 用于控制数据权限 -->
@@ -115,7 +116,7 @@
ap.birth_date AS birth_date,
ap.gender_enum AS gender_enum,
ccd.NAME AS condition_definition_name,
mmr.create_time AS request_time,
mmr.req_authored_time AS request_time,
mmr.practitioner_id,
aper.NAME AS practitioner_name,
ae.organization_id,
@@ -139,6 +140,7 @@
mmr.delete_flag = '0'
AND (mmr.prescription_no LIKE 'P%'
OR mmr.prescription_no LIKE 'C%')
-- AND mmr.status_enum = 3
AND mmr.refund_medicine_id IS NULL
ORDER BY
mmr.prescription_no DESC) AS ppi
@@ -149,7 +151,7 @@
SELECT mmr.prescription_no,
mmr.ID AS request_id,
mmr.practitioner_id AS requester_id,
mmr.create_time AS request_time,
mmr.req_authored_time AS request_time,
mmr.group_id AS group_id,
mmd.NAME AS advice_name,
mm.total_volume AS volume,
@@ -190,4 +192,22 @@
</if>
</select>
<select id="getReceptionStatistics" resultType="com.openhis.web.doctorstation.dto.ReceptionStatisticsDto">
SELECT aep.practitioner_id,
aper.NAME AS practitioner_name,
COUNT(1) AS reception_nums
FROM adm_encounter_participant AS aep
LEFT JOIN adm_practitioner AS aper ON aper.ID = aep.practitioner_id
WHERE aep.delete_flag = '0'
AND aep.type_code = #{typeCode}
<if test="practitionerId != null">
AND aep.practitioner_id = #{practitionerId}
</if>
AND aep.create_time &gt;= #{startTime} ::timestamp
AND aep.create_time &lt;= #{endTime} ::timestamp
GROUP BY aep.practitioner_id,
aper.NAME
ORDER BY reception_nums DESC
</select>
</mapper>