217 lines
11 KiB
XML
217 lines
11 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<!DOCTYPE mapper
|
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
<mapper namespace="com.openhis.workflow.mapper.SupplyRequestMapper">
|
|
<!-- 根据 调价单号 查询 supplyrequest 和 价格主表 -->
|
|
<select id="searchDataForBusNo" resultType="com.openhis.workflow.dto.ChangePriceDto">
|
|
SELECT acid.id as chargeId,
|
|
wsr.item_id as itemId,
|
|
wsr.price as newPrice,
|
|
wsr.retail_price as retailPrice,
|
|
wsr.reason as reason,
|
|
wsr.item_quantity as quantity,
|
|
wsr.id as supplyRequestId
|
|
FROM wor_supply_request wsr
|
|
INNER JOIN adm_charge_item_definition acid ON wsr.item_id = acid.instance_id
|
|
WHERE wsr.bus_no = #{busNo}
|
|
</select>
|
|
<select id="searchGroupDataForBusNo" resultType="com.openhis.workflow.dto.ChangePriceDto">
|
|
SELECT wsr.item_id as itemId, wsr.item_table as itemTable, wsr.retail_price as newPrice
|
|
FROM wor_supply_request wsr
|
|
WHERE wsr.bus_no = #{busNo}
|
|
GROUP BY wsr.item_id, wsr.item_table, wsr.retail_price
|
|
</select>
|
|
<!-- 根据调价单号 查询未审核的详情-->
|
|
<select id="searchMedInfoDataForBusNo" resultType="com.openhis.medication.dto.AdjustPriceMedListDto">
|
|
SELECT sr.item_id as targetId,
|
|
med_def.name as name,
|
|
med.total_volume as volume,
|
|
sr.price as newBuyingPrice,
|
|
sr.retail_price as newRetailPrice,
|
|
details.amount as originRetailPrice,
|
|
sr.reason as reason,
|
|
def_details.amount as originBuyingPrice,
|
|
sr.unit_code as unitCode,
|
|
sum(sr.item_quantity) as totalQuantity
|
|
FROM wor_supply_request sr
|
|
LEFT JOIN med_medication_definition med_def ON sr.item_id = med_def.id
|
|
LEFT JOIN med_medication med ON sr.item_id = med.id
|
|
LEFT JOIN adm_charge_item_definition actd ON actd.instance_id = med_def.id
|
|
LEFT JOIN adm_charge_item_def_detail details ON actd.id = details.definition_id
|
|
AND details.id = (SELECT cidd.id
|
|
FROM adm_charge_item_def_detail cidd
|
|
WHERE actd.id = cidd.definition_id
|
|
AND cidd.condition_code = '5'
|
|
AND cidd.delete_flag = '0'
|
|
ORDER BY create_time DESC
|
|
LIMIT 1)
|
|
LEFT JOIN adm_charge_item_def_detail def_details
|
|
ON actd.id = def_details.definition_id
|
|
AND def_details.id = (SELECT cidd.id
|
|
FROM adm_charge_item_def_detail cidd
|
|
WHERE actd.id = cidd.definition_id
|
|
AND cidd.condition_code = '1'
|
|
AND cidd.delete_flag = '0'
|
|
ORDER BY create_time DESC
|
|
LIMIT 1)
|
|
WHERE sr.bus_no = #{busNo}
|
|
GROUP BY sr.item_id, med_def.name, med.total_volume, sr.price, details.amount, sr.reason, sr.retail_price, def_details.amount, sr.unit_code
|
|
</select>
|
|
|
|
<!-- 根据调价单号 查询已经审核过的详情-->
|
|
<select id="searchHistoryMedInfoData" resultType="com.openhis.medication.dto.AdjustPriceMedListDto">
|
|
SELECT sr.item_id as targetId,
|
|
med_def.name as name,
|
|
med.total_volume as volume,
|
|
sr.price as newBuyingPrice,
|
|
sr.retail_price as newRetailPrice,
|
|
details.amount as originRetailPrice,
|
|
def_details.amount as originBuyingPrice,
|
|
sr.reason as reason,
|
|
sr.unit_code as unitCode,
|
|
sum(item_quantity) as totalQuantity
|
|
FROM wor_supply_request sr
|
|
LEFT JOIN med_medication_definition med_def ON sr.item_id = med_def.id
|
|
LEFT JOIN med_medication med ON sr.item_id = med.id
|
|
LEFT JOIN adm_charge_item_definition actd ON actd.instance_id = med_def.id
|
|
LEFT JOIN adm_charge_item_def_detail details ON actd.id = details.definition_id
|
|
AND details.id = (SELECT cidd.id
|
|
FROM adm_charge_item_def_detail cidd
|
|
WHERE actd.id = cidd.definition_id
|
|
AND cidd.condition_code = '5'
|
|
AND cidd.create_time <![CDATA[ < ]]> #{createTime} LIMIT 1)
|
|
LEFT JOIN adm_charge_item_def_detail def_details
|
|
ON actd.id = def_details.definition_id
|
|
AND def_details.id = (SELECT acidd.id
|
|
FROM adm_charge_item_def_detail acidd
|
|
WHERE actd.id = acidd.definition_id
|
|
AND acidd.condition_code = '1'
|
|
AND acidd.create_time <![CDATA[ < ]]> #{createTime} LIMIT 1)
|
|
WHERE sr.bus_no = #{busNo}
|
|
GROUP BY sr.item_id, med_def.name, med.total_volume, sr.price, details.amount, sr.reason, sr.retail_price, def_details.amount, sr.unit_code
|
|
</select>
|
|
|
|
<!-- 查询device -->
|
|
<select id="searchDeviceInfoDataForBusNo" resultType="com.openhis.medication.dto.AdjustPriceMedListDto">
|
|
SELECT sr.item_id as targetId,
|
|
ad.name as name,
|
|
ad.size as volume,
|
|
sr.price as newBuyingPrice,
|
|
sr.retail_price as newRetailPrice,
|
|
details.amount as originRetailPrice,
|
|
sr.reason as reason,
|
|
def_details.amount as originBuyingPrice
|
|
FROM wor_supply_request sr
|
|
LEFT JOIN adm_device_definition ad on sr.item_id = ad.id
|
|
LEFT JOIN adm_charge_item_definition actd ON actd.instance_id = ad.id
|
|
LEFT JOIN adm_charge_item_def_detail details ON actd.id = details.definition_id
|
|
AND details.id = (SELECT cidd.id
|
|
FROM adm_charge_item_def_detail cidd
|
|
WHERE actd.id = cidd.definition_id
|
|
AND cidd.condition_code = '5'
|
|
AND cidd.delete_flag = '0'
|
|
ORDER BY create_time DESC
|
|
LIMIT 1)
|
|
LEFT JOIN adm_charge_item_def_detail def_details
|
|
ON actd.id = def_details.definition_id
|
|
AND def_details.id = (SELECT cidd.id
|
|
FROM adm_charge_item_def_detail cidd
|
|
WHERE actd.id = cidd.definition_id
|
|
AND cidd.condition_code = '1'
|
|
AND cidd.delete_flag = '0'
|
|
ORDER BY create_time DESC
|
|
LIMIT 1)
|
|
WHERE sr.bus_no = #{busNo}
|
|
GROUP BY sr.item_id, ad.name, ad.size, sr.price, details.amount, sr.reason, sr.retail_price, def_details.amount
|
|
</select>
|
|
<!-- 查询device 历史记录-->
|
|
<select id="searchHistoryDeviceInfoDataForBusNo" resultType="com.openhis.medication.dto.AdjustPriceMedListDto">
|
|
SELECT sr.item_id as targetId,
|
|
ad.name as name,
|
|
ad.size as volume,
|
|
sr.price as newBuyingPrice,
|
|
sr.retail_price as newRetailPrice,
|
|
details.amount as originRetailPrice,
|
|
def_details.amount as originBuyingPrice,
|
|
sr.reason as reason,
|
|
sr.unit_code as unitCode,
|
|
sum(item_quantity) as totalQuantity
|
|
FROM wor_supply_request sr
|
|
LEFT JOIN adm_device_definition ad on sr.item_id = ad.id
|
|
LEFT JOIN adm_charge_item_definition actd ON actd.instance_id = ad.id
|
|
LEFT JOIN adm_charge_item_def_detail details ON actd.id = details.definition_id
|
|
AND details.id = (SELECT cidd.id
|
|
FROM adm_charge_item_def_detail cidd
|
|
WHERE actd.id = cidd.definition_id
|
|
AND cidd.condition_code = '5'
|
|
AND cidd.delete_flag = '0'
|
|
AND cidd.create_time <![CDATA[ < ]]> #{createTime} LIMIT 1)
|
|
LEFT JOIN adm_charge_item_def_detail def_details
|
|
ON actd.id = def_details.definition_id
|
|
AND def_details.id = (SELECT acidd.id
|
|
FROM adm_charge_item_def_detail acidd
|
|
WHERE actd.id = acidd.definition_id
|
|
AND acidd.condition_code = '1'
|
|
AND acidd.delete_flag = '0'
|
|
AND acidd.create_time <![CDATA[ < ]]> #{createTime} LIMIT 1)
|
|
WHERE sr.bus_no = #{busNo}
|
|
GROUP BY sr.item_id, ad.name, ad.size, sr.price, details.amount, sr.reason, def_details.amount, sr.unit_code, sr.retail_price
|
|
</select>
|
|
|
|
<select id="searchActivityInfoDataForBusNo" resultType="com.openhis.medication.dto.AdjustPriceMedListDto">
|
|
SELECT sr.id as targetId,
|
|
ad.name as name,
|
|
sr.retal_price as newRetailPrice,
|
|
cid.price as originBuyingPrice,
|
|
sr.reason as reason
|
|
FROM wor_supply_request sr
|
|
LEFT JOIN wor_activity_definition ad ON sr.item_id = ad.id
|
|
LEFT JOIN adm_charge_item_definition cid on ad.id = cid.instance_id
|
|
WHERE ad.delete_flag = '0'
|
|
AND sr.bus_no = #{busNo}
|
|
</select>
|
|
|
|
<select id="searchHistoryActivityInfoDataForBusNo" resultType="com.openhis.medication.dto.AdjustPriceMedListDto">
|
|
SELECT sr.id as targetId,
|
|
ad.name as name,
|
|
sr.price as originBuyingPrice,
|
|
sr.retal_price as newRetailPrice,
|
|
sr.reason as reason
|
|
FROM wor_supply_request sr
|
|
LEFT JOIN wor_activity_definition ad ON sr.item_id = ad.id
|
|
LEFT JOIN adm_charge_item_definition cid on ad.id = cid.instance_id
|
|
WHERE ad.delete_flag = '0'
|
|
AND sr.bus_no = #{busNo}
|
|
</select>
|
|
|
|
<select id="searchHealthInfoDataForBusNo" resultType="com.openhis.medication.dto.AdjustPriceMedListDto">
|
|
SELECT sr.id as targetId,
|
|
heal.name as name,
|
|
sr.retail_price as newRetailPrice,
|
|
cid.price as originBuyingPrice,
|
|
sr.reason as reason,
|
|
org.name as orgName
|
|
FROM wor_supply_request sr
|
|
LEFT JOIN adm_healthcare_service heal ON sr.item_id = heal.id
|
|
LEFT JOIN adm_organization org ON heal.offered_org_id = org.id
|
|
LEFT JOIN adm_charge_item_definition cid on heal.id = cid.instance_id
|
|
WHERE heal.delete_flag = '0'
|
|
AND sr.bus_no = #{busNo}
|
|
</select>
|
|
<select id="searchHistoryHealthInfoDataForBusNo" resultType="com.openhis.medication.dto.AdjustPriceMedListDto">
|
|
SELECT sr.id as targetId,
|
|
heal.name as name,
|
|
sr.price as originBuyingPrice,
|
|
sr.retail_price as newRetailPrice,
|
|
sr.reason as reason,
|
|
org.name as orgName
|
|
FROM wor_supply_request sr
|
|
LEFT JOIN adm_healthcare_service heal ON sr.item_id = heal.id
|
|
LEFT JOIN adm_organization org ON heal.offered_org_id = org.id
|
|
LEFT JOIN adm_charge_item_definition cid on heal.id = cid.instance_id
|
|
WHERE heal.delete_flag = '0'
|
|
AND sr.bus_no = #{busNo}
|
|
</select>
|
|
|
|
</mapper> |