|
|
@@ -17,22 +17,150 @@
|
|
|
|
|
|
<!--西药销售出库记录-->
|
|
|
<select id="listMedicineOutbound" resultMap="BaseResultMap" parameterType="java.lang.String">
|
|
|
-
|
|
|
+ SELECT
|
|
|
+ ccm.medicine_category as item_type,
|
|
|
+ IF
|
|
|
+ ( length( cm.med_ins_backup_id ) > 0, cm.med_ins_backup_id, cm.medicine_id ) AS store_medicine_code,
|
|
|
+ cm.medicine_c_name AS store_medicine_name,
|
|
|
+ cm.medicine_c_name AS store_medicine_trade_name,
|
|
|
+ ifnull( idm.formulation, " " ) AS dosage_id,
|
|
|
+ cm.medicine_dosage_forms AS dosage_name,
|
|
|
+ cm.medicine_specifications AS specification,
|
|
|
+ cm.medicine_manufacturer_name AS manufacturer,
|
|
|
+ cm.medicine_place AS place,
|
|
|
+ idm.medicine_package AS pack,
|
|
|
+ " " AS model,
|
|
|
+ cso.timestamp_number AS batch_no,
|
|
|
+ csd.stock_date AS manufacture_time,
|
|
|
+ csd.medicine_deadline AS medicine_deadline,
|
|
|
+ '00000000' AS bar_code,
|
|
|
+ "" AS regist_no,
|
|
|
+ cso.medicine_manufacturer_name AS delivery_company,
|
|
|
+ "999999999" AS distributor,
|
|
|
+ '' AS store_storage_code,
|
|
|
+ sum( cso.change_number ) AS return_quantity,
|
|
|
+ cso.stock_bid AS price,
|
|
|
+ cso.retail_price AS retail_price,
|
|
|
+ "" AS plat_item_code,
|
|
|
+ "" AS plat_item_name,
|
|
|
+ idm.standard_menu_code AS item_code,
|
|
|
+ idm.insurance_medicine_name AS item_name,
|
|
|
+ cso.create_name AS return_man,
|
|
|
+ cso.create_time AS return_time
|
|
|
+ FROM
|
|
|
+ clc_stock_outbound cso
|
|
|
+ LEFT JOIN clc_medicine cm ON cso.medicine_id = cm.medicine_id
|
|
|
+ AND cso.clinic_id = cm.clinic_id
|
|
|
+ LEFT JOIN clc_stock_detail csd ON csd.timestamp_number = cso.timestamp_number
|
|
|
+ LEFT JOIN ins_d_medicine idm ON idm.medicine_id = cso.medicine_id
|
|
|
+ AND idm.clinic_id = cso.clinic_id
|
|
|
+ WHERE
|
|
|
+ cso.clinic_id = #{clinicId}
|
|
|
+ AND cso.change_type IN ( 1, 2 )
|
|
|
</select>
|
|
|
|
|
|
<!--中药销售出库记录-->
|
|
|
<select id="listChinaMedicineOutbound" resultMap="BaseResultMap" parameterType="java.lang.String">
|
|
|
-
|
|
|
+ SELECT
|
|
|
+ ccm.medicine_category as item_type,
|
|
|
+ IF
|
|
|
+ ( length( ccm.med_ins_backup_id ) > 0, ccm.med_ins_backup_id, ccm.medicine_id ) AS store_medicine_code,
|
|
|
+ ccm.medicine_name AS store_medicine_name,
|
|
|
+ ccm.medicine_name AS store_medicine_trade_name,
|
|
|
+ ifnull( idm.formulation, " " ) AS dosage_id,
|
|
|
+ ccm.medicine_rate_last AS dosage_name,
|
|
|
+ ccm.medicine_specifications AS specification,
|
|
|
+ ccm.medicine_manufacturer_name AS manufacturer,
|
|
|
+ ccm.medicine_address AS place,
|
|
|
+ idm.medicine_package AS pack,
|
|
|
+ " " AS model,
|
|
|
+ ccso.timestamp_number AS batch_no,
|
|
|
+ ccsp.stock_date AS manufacture_time,
|
|
|
+ ccsp.medicine_deadline AS medicine_deadline,
|
|
|
+ '00000000' AS bar_code,
|
|
|
+ "" AS regist_no,
|
|
|
+ ccso.medicine_manufacturer_name AS delivery_company,
|
|
|
+ "999999999" AS distributor,
|
|
|
+ '' AS store_storage_code,
|
|
|
+ sum( ccso.change_number ) AS return_quantity,
|
|
|
+ ccso.stock_bid AS price,
|
|
|
+ ccso.retail_price AS retail_price,
|
|
|
+ "" AS plat_item_code,
|
|
|
+ "" AS plat_item_name,
|
|
|
+ idm.standard_menu_code AS item_code,
|
|
|
+ idm.insurance_medicine_name AS item_name,
|
|
|
+ ccso.create_name AS return_man,
|
|
|
+ ccso.create_time AS return_time
|
|
|
+ FROM
|
|
|
+ clc_china_stock_outbound ccso
|
|
|
+ LEFT JOIN clc_china_medicine ccm ON ccso.medicine_id = ccm.medicine_id
|
|
|
+ AND ccso.clinic_id = ccm.clinic_id
|
|
|
+ LEFT JOIN clc_china_stock_profit ccsp ON ccsp.timestamp_number = ccso.timestamp_number
|
|
|
+ LEFT JOIN ins_d_medicine idm ON idm.medicine_id = ccso.medicine_id
|
|
|
+ AND idm.clinic_id = ccso.clinic_id
|
|
|
+ WHERE
|
|
|
+ ccso.clinic_id = #{clinicId}
|
|
|
+ AND ccso.change_type IN ( 1, 2 )
|
|
|
</select>
|
|
|
|
|
|
<!--西药损耗/领用出库记录-->
|
|
|
<select id="listMedicineOutTreasury" resultMap="BaseResultMap" parameterType="java.lang.String">
|
|
|
-
|
|
|
+ SELECT DISTINCT
|
|
|
+ ccm.medicine_category as item_type,
|
|
|
+ IF (
|
|
|
+ length(cm.med_ins_backup_id) > 0,
|
|
|
+ cm.med_ins_backup_id,
|
|
|
+ cm.medicine_id
|
|
|
+ ) AS store_medicine_code,
|
|
|
+ cm.medicine_c_name AS store_medicine_name,
|
|
|
+ cm.medicine_c_name AS store_medicine_trade_name,
|
|
|
+ ifnull(idm.formulation, " ") AS dosage_id,
|
|
|
+ cm.medicine_dosage_forms AS dosage_name,
|
|
|
+ cm.medicine_specifications AS specification,
|
|
|
+ cm.medicine_manufacturer_name AS manufacturer,
|
|
|
+ cm.medicine_place AS place,
|
|
|
+ idm.medicine_package AS pack,
|
|
|
+ " " AS model,
|
|
|
+ cod.batch_number AS batch_no,
|
|
|
+ cod.stock_date AS manufacture_time,
|
|
|
+ cod.deadline_date AS medicine_deadline,
|
|
|
+ '00000000' AS bar_code,
|
|
|
+ "" AS regist_no,
|
|
|
+ cod.medicine_manufacture AS delivery_company,
|
|
|
+ "999999999" AS distributor,
|
|
|
+ '' AS store_storage_code,
|
|
|
+ sum(cod.out_num) AS return_quantity,
|
|
|
+ cod.stock_price AS price,
|
|
|
+ cod.sale_price AS retail_price,
|
|
|
+ "" AS plat_item_code,
|
|
|
+ "" AS plat_item_name,
|
|
|
+ idm.standard_menu_code AS item_code,
|
|
|
+ idm.insurance_medicine_name AS item_name,
|
|
|
+ co.create_userName AS return_man,
|
|
|
+ co.create_time AS return_time
|
|
|
+ FROM
|
|
|
+ clc_outtreasury_detail cod,
|
|
|
+ clc_medicine cm,
|
|
|
+ clc_outtreasury co,
|
|
|
+ ins_d_medicine idm
|
|
|
+ WHERE
|
|
|
+ cod.medicine_id = cm.medicine_id
|
|
|
+ AND cod.clinic_id = cm.clinic_id
|
|
|
+ AND cod.clinic_id = co.clinic_id
|
|
|
+ AND cod.outtreasury_id = co.id
|
|
|
+ AND cm.medicine_id = idm.medicine_id
|
|
|
+ AND cm.clinic_id = idm.clinic_id
|
|
|
+ AND cod.clinic_id = #{clinicId}
|
|
|
+ AND cod.biz_type = 1
|
|
|
+ ORDER BY
|
|
|
+ co.create_time,
|
|
|
+ cod.medicine_id
|
|
|
</select>
|
|
|
|
|
|
<!--中药损耗/领用出库记录-->
|
|
|
<select id="listChinaMedicineOutTreasury" resultMap="BaseResultMap" parameterType="java.lang.String">
|
|
|
SELECT DISTINCT
|
|
|
+ cCm.medicine_category as item_type,
|
|
|
IF (
|
|
|
length(ccm.med_ins_backup_id) > 0,
|
|
|
ccm.med_ins_backup_id,
|
|
|
@@ -63,8 +191,7 @@
|
|
|
idm.standard_menu_code AS item_code,
|
|
|
idm.insurance_medicine_name AS item_name,
|
|
|
co.create_userName AS return_man,
|
|
|
- co.create_time AS return_time,
|
|
|
- AS store_return_code
|
|
|
+ co.create_time AS return_time
|
|
|
FROM
|
|
|
clc_outtreasury_detail cod,
|
|
|
clc_china_medicine ccm,
|
|
|
@@ -84,34 +211,68 @@
|
|
|
cod.medicine_id
|
|
|
</select>
|
|
|
|
|
|
- <!--西药销售出库记录-->
|
|
|
- <select id="listChinaMedicineStore" resultMap="BaseResultMap" parameterType="java.lang.String">
|
|
|
-
|
|
|
- </select>
|
|
|
-
|
|
|
<!--西药采购退货出库记录-->
|
|
|
<select id="listMedicineBack" resultMap="BaseResultMap" parameterType="java.lang.String">
|
|
|
-
|
|
|
+ SELECT DISTINCT
|
|
|
+ cm.medicine_category as item_type,
|
|
|
+ IF
|
|
|
+ ( length( cm.med_ins_backup_id ) > 0, cm.med_ins_backup_id, cm.medicine_id ) AS store_medicine_code,
|
|
|
+ cm.medicine_c_name AS store_medicine_name,
|
|
|
+ cm.medicine_c_name AS store_medicine_trade_name,
|
|
|
+ ifnull( idm.formulation, " " ) AS dosage_id,
|
|
|
+ cm.medicine_dosage_forms AS dosage_name,
|
|
|
+ cm.medicine_specifications AS specification,
|
|
|
+ cm.medicine_manufacturer_name AS manufacturer,
|
|
|
+ cm.medicine_place AS place,
|
|
|
+ idm.medicine_package AS pack,
|
|
|
+ " " AS model,
|
|
|
+ cpbd.stock_purchase_number AS batch_no,
|
|
|
+ csd.medicine_deadline AS medicine_deadline,
|
|
|
+ csd.stock_date AS manufacture_time,
|
|
|
+ '00000000' AS bar_code,
|
|
|
+ "" AS regist_no,
|
|
|
+ cpb.supplier_name AS delivery_company,
|
|
|
+ "999999999" AS distributor,
|
|
|
+ '' AS store_storage_code,
|
|
|
+ sum( cpbd.return_count ) AS return_quantity,
|
|
|
+ cpbd.stock_price AS price,
|
|
|
+ cpbd.current_sale_price AS retail_price,
|
|
|
+ "" AS plat_item_code,
|
|
|
+ "" AS plat_item_name,
|
|
|
+ idm.standard_menu_code AS item_code,
|
|
|
+ idm.insurance_medicine_name AS item_name,
|
|
|
+ cpb.create_userName AS return_man,
|
|
|
+ cpb.create_time AS return_time
|
|
|
+ FROM
|
|
|
+ clc_purchase_back_detail cpbd,
|
|
|
+ clc_medicine cm,
|
|
|
+ clc_purchase_back cpb,
|
|
|
+ ins_d_medicine AS idm,
|
|
|
+ clc_stock_detail csd
|
|
|
+ WHERE
|
|
|
+ cpbd.medicine_id = cm.medicine_id
|
|
|
+ AND cpbd.clinic_id = cm.clinic_id
|
|
|
+ AND cpbd.clinic_id = cpb.clinic_id
|
|
|
+ AND cpb.id = cpbd.back_id
|
|
|
+ AND cm.medicine_id = idm.medicine_id
|
|
|
+ AND cm.clinic_id = idm.clinic_id
|
|
|
+ AND cpbd.stock_purchase_number = csd.stock_purchase_number
|
|
|
+ AND cpbd.clinic_id = #{clinicId}
|
|
|
+ AND cpb.biz_type in (1, 2, 3)
|
|
|
+ ORDER BY
|
|
|
+ cpb.create_time,
|
|
|
+ cpbd.medicine_id
|
|
|
</select>
|
|
|
|
|
|
<!--中药采购退货出库记录-->
|
|
|
<select id="listChinaMedicineBack" resultMap="BaseResultMap" parameterType="java.lang.String">
|
|
|
-
|
|
|
- </select>
|
|
|
-
|
|
|
- <!--西药盘点盘亏出库记录-->
|
|
|
- <select id="listMedicineInventory" resultMap="BaseResultMap" parameterType="java.lang.String">
|
|
|
-
|
|
|
- </select>
|
|
|
-
|
|
|
- <!--中药盘点盘亏出库记录-->
|
|
|
- <select id="listChinaMedicineInventory" resultMap="BaseResultMap" parameterType="java.lang.String">
|
|
|
SELECT DISTINCT
|
|
|
- IF (
|
|
|
- length(ccm.med_ins_backup_id) > 0,
|
|
|
- ccm.med_ins_backup_id,
|
|
|
- ccm.medicine_id
|
|
|
- ) AS store_medicine_cide,
|
|
|
+ ccm.medicine_category as item_type,
|
|
|
+ IF (
|
|
|
+ length(ccm.med_ins_backup_id) > 0,
|
|
|
+ ccm.med_ins_backup_id,
|
|
|
+ ccm.medicine_id
|
|
|
+ ) AS store_medicine_code,
|
|
|
ccm.medicine_name AS store_medicine_name,
|
|
|
ccm.medicine_name AS store_medicine_trade_name,
|
|
|
ifnull(idm.formulation, " ") AS dosage_id,
|
|
|
@@ -121,41 +282,150 @@
|
|
|
ccm.medicine_address AS place,
|
|
|
idm.medicine_package AS pack,
|
|
|
" " AS model,
|
|
|
- cid.batch_number AS batch_no,
|
|
|
- cid.stock_date AS medicine_deadline,
|
|
|
- cid.deadline_date AS manufacture_time,
|
|
|
- '00000000' AS bar_cide,
|
|
|
+ cpbd.stock_purchase_number AS batch_no,
|
|
|
+ ccsp.medicine_deadline AS medicine_deadline,
|
|
|
+ ccsp.stock_date AS manufacture_time,
|
|
|
+ '00000000' AS bar_code,
|
|
|
"" AS regist_no,
|
|
|
- cid.medicine_manufacture AS delivery_company,
|
|
|
+ cpb.supplier_name AS delivery_company,
|
|
|
"999999999" AS distributor,
|
|
|
- '' AS store_storage_cide,
|
|
|
- sum(cid.stock_num) AS return_quantity,
|
|
|
- cid.stock_price AS price,
|
|
|
- cid.sale_price AS retail_price,
|
|
|
- "" AS plat_item_cide,
|
|
|
+ '' AS store_storage_code,
|
|
|
+ sum(cpbd.return_count) AS return_quantity,
|
|
|
+ cpbd.stock_price AS price,
|
|
|
+ cpbd.current_sale_price AS retail_price,
|
|
|
+ "" AS plat_item_code,
|
|
|
"" AS plat_item_name,
|
|
|
- idm.standard_menu_code AS item_cide,
|
|
|
+ idm.standard_menu_code AS item_code,
|
|
|
idm.insurance_medicine_name AS item_name,
|
|
|
- ci.create_userName AS return_man,
|
|
|
- ci.create_time AS return_time
|
|
|
+ cpb.create_userName AS return_man,
|
|
|
+ cpb.create_time AS return_time
|
|
|
FROM
|
|
|
- clc_inventory_detail cid,
|
|
|
+ clc_purchase_back_detail cpbd,
|
|
|
clc_china_medicine ccm,
|
|
|
- clc_inventory ci ,
|
|
|
- ins_d_medicine as idm
|
|
|
+ clc_purchase_back cpb,
|
|
|
+ ins_d_medicine as idm,
|
|
|
+ clc_china_stock_profit ccsp
|
|
|
WHERE
|
|
|
- cid.medicine_id = ccm.medicine_id
|
|
|
- AND cid.clinic_id = ccm.clinic_id
|
|
|
- AND cid.clinic_id = ci.clinic_id
|
|
|
- AND cid.inventory_id = ci.id
|
|
|
+ cpbd.medicine_id = ccm.medicine_id
|
|
|
+ AND cpbd.clinic_id = ccm.clinic_id
|
|
|
+ AND cpbd.clinic_id = cpb.clinic_id
|
|
|
+ AND cpb.id = cpbd.back_id
|
|
|
AND ccm.medicine_id = idm.medicine_id
|
|
|
AND ccm.clinic_id = idm.clinic_id
|
|
|
- AND cid.inventory_type = 2
|
|
|
- AND cid.clinic_id = #{clinicId}
|
|
|
- AND cid.biz_type IN ( 4 )
|
|
|
+ AND cpbd.stock_purchase_number = ccsp.stock_purchase_number
|
|
|
+ AND cpbd.clinic_id = #{clinicId}
|
|
|
+ AND cpb.biz_type = 4
|
|
|
ORDER BY
|
|
|
- ci.create_time,
|
|
|
- cid.medicine_id
|
|
|
+ cpb.create_time,
|
|
|
+ cpbd.medicine_id
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <!--西药盘点盘亏出库记录-->
|
|
|
+ <select id="listMedicineInventory" resultMap="BaseResultMap" parameterType="java.lang.String">
|
|
|
+ SELECT DISTINCT
|
|
|
+ cm.medicine_category as item_type,
|
|
|
+ IF
|
|
|
+ ( length( cm.med_ins_backup_id ) > 0, cm.med_ins_backup_id, cm.medicine_id ) AS store_medicine_cide,
|
|
|
+ cm.medicine_c_name AS store_medicine_name,
|
|
|
+ cm.medicine_c_name AS store_medicine_trade_name,
|
|
|
+ ifnull( idm.formulation, " " ) AS dosage_id,
|
|
|
+ cm.medicine_dosage_forms AS dosage_name,
|
|
|
+ cm.medicine_specifications AS specification,
|
|
|
+ cm.medicine_manufacturer_name AS manufacturer,
|
|
|
+ cm.medicine_place AS place,
|
|
|
+ idm.medicine_package AS pack,
|
|
|
+ " " AS model,
|
|
|
+ cid.batch_number AS batch_no,
|
|
|
+ cid.stock_date AS manufacture_time,
|
|
|
+ cid.deadline_date AS medicine_deadline,
|
|
|
+ '00000000' AS bar_cide,
|
|
|
+ "" AS regist_no,
|
|
|
+ cid.medicine_manufacture AS delivery_company,
|
|
|
+ "999999999" AS distributor,
|
|
|
+ '' AS store_storage_cide,
|
|
|
+ sum( cid.stock_num ) AS return_quantity,
|
|
|
+ cid.stock_price AS price,
|
|
|
+ cid.sale_price AS retail_price,
|
|
|
+ "" AS plat_item_cide,
|
|
|
+ "" AS plat_item_name,
|
|
|
+ idm.standard_menu_code AS item_cide,
|
|
|
+ idm.insurance_medicine_name AS item_name,
|
|
|
+ ci.create_userName AS return_man,
|
|
|
+ ci.create_time AS return_time
|
|
|
+ FROM
|
|
|
+ clc_inventory_detail cid,
|
|
|
+ clc_medicine cm,
|
|
|
+ clc_inventory ci,
|
|
|
+ ins_d_medicine AS idm
|
|
|
+ WHERE
|
|
|
+ cid.medicine_id = cm.medicine_id
|
|
|
+ AND cid.clinic_id = cm.clinic_id
|
|
|
+ AND cid.clinic_id = ci.clinic_id
|
|
|
+ AND cid.inventory_id = ci.id
|
|
|
+ AND cm.medicine_id = idm.medicine_id
|
|
|
+ AND cm.clinic_id = idm.clinic_id
|
|
|
+ AND cid.inventory_type = 2
|
|
|
+ AND cid.clinic_id = #{clinicId}
|
|
|
+
|
|
|
+ AND cid.biz_type IN ( 1, 2, 3 )
|
|
|
+ ORDER BY
|
|
|
+ ci.create_time,
|
|
|
+ cid.medicine_id
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <!--中药盘点盘亏出库记录-->
|
|
|
+ <select id="listChinaMedicineInventory" resultMap="BaseResultMap" parameterType="java.lang.String">
|
|
|
+ SELECT DISTINCT
|
|
|
+ ccm.medicine_category as item_type,
|
|
|
+ IF (
|
|
|
+ length(ccm.med_ins_backup_id) > 0,
|
|
|
+ ccm.med_ins_backup_id,
|
|
|
+ ccm.medicine_id
|
|
|
+ ) AS store_medicine_cide,
|
|
|
+ ccm.medicine_name AS store_medicine_name,
|
|
|
+ ccm.medicine_name AS store_medicine_trade_name,
|
|
|
+ ifnull(idm.formulation, " ") AS dosage_id,
|
|
|
+ ccm.medicine_rate_last AS dosage_name,
|
|
|
+ ccm.medicine_specifications AS specification,
|
|
|
+ ccm.medicine_manufacturer_name AS manufacturer,
|
|
|
+ ccm.medicine_address AS place,
|
|
|
+ idm.medicine_package AS pack,
|
|
|
+ " " AS model,
|
|
|
+ cid.batch_number AS batch_no,
|
|
|
+ cid.stock_date AS manufacture_time,
|
|
|
+ cid.deadline_date AS medicine_deadline,
|
|
|
+ '00000000' AS bar_cide,
|
|
|
+ "" AS regist_no,
|
|
|
+ cid.medicine_manufacture AS delivery_company,
|
|
|
+ "999999999" AS distributor,
|
|
|
+ '' AS store_storage_cide,
|
|
|
+ sum(cid.stock_num) AS return_quantity,
|
|
|
+ cid.stock_price AS price,
|
|
|
+ cid.sale_price AS retail_price,
|
|
|
+ "" AS plat_item_cide,
|
|
|
+ "" AS plat_item_name,
|
|
|
+ idm.standard_menu_code AS item_cide,
|
|
|
+ idm.insurance_medicine_name AS item_name,
|
|
|
+ ci.create_userName AS return_man,
|
|
|
+ ci.create_time AS return_time
|
|
|
+ FROM
|
|
|
+ clc_inventory_detail cid,
|
|
|
+ clc_china_medicine ccm,
|
|
|
+ clc_inventory ci ,
|
|
|
+ ins_d_medicine as idm
|
|
|
+ WHERE
|
|
|
+ cid.medicine_id = ccm.medicine_id
|
|
|
+ AND cid.clinic_id = ccm.clinic_id
|
|
|
+ AND cid.clinic_id = ci.clinic_id
|
|
|
+ AND cid.inventory_id = ci.id
|
|
|
+ AND ccm.medicine_id = idm.medicine_id
|
|
|
+ AND ccm.clinic_id = idm.clinic_id
|
|
|
+ AND cid.inventory_type = 2
|
|
|
+ AND cid.clinic_id = #{clinicId}
|
|
|
+ AND cid.biz_type = 4
|
|
|
+ ORDER BY
|
|
|
+ ci.create_time,
|
|
|
+ cid.medicine_id
|
|
|
</select>
|
|
|
|
|
|
|