발주서관리 총발주금액

This commit is contained in:
2025-12-01 15:35:26 +09:00
parent 56860187d4
commit f97399d45b
2 changed files with 101 additions and 6 deletions

View File

@@ -2863,8 +2863,102 @@ WHERE OBJID = (SELECT PURCHASE_ORDER_MASTER_OBJID FROM PURCHASE_ORDER_PART POP W
WHERE OBJID = #{PURCHASE_ORDER_MASTER_OBJID}
</select>
<select id="purchaseOrderMasterListSum" parameterType="map" resultType="map">
SELECT
SUM(NVL(POM.TOTAL_PRICE_ALL, '0')::NUMERIC) AS TOTAL_PRICE_ALL
,SUM(NVL(POM.TOTAL_SUPPLY_PRICE, '0')::NUMERIC) AS TOTAL_SUPPLY_PRICE
,SUM(NVL(POM.TOTAL_REAL_SUPPLY_PRICE, '0')::NUMERIC) AS TOTAL_REAL_SUPPLY_PRICE
,SUM(NVL(POM.TOTAL_SUPPLY_UNIT_PRICE, '0')::NUMERIC) AS TOTAL_SUPPLY_UNIT_PRICE
FROM
PURCHASE_ORDER_MASTER AS POM
WHERE 1=1
<if test="Year !=null and Year != '' ">
AND TO_CHAR(POM.REGDATE,'YYYY') = #{Year}
</if>
<if test="customer_cd !=null and customer_cd != '' ">
AND EXISTS (
SELECT 'E' FROM PROJECT_MGMT AS S_P
WHERE POM.CONTRACT_MGMT_OBJID = S_P.OBJID
AND S_P.CUSTOMER_OBJID = #{customer_cd}
)
</if>
<if test="customer_project_name !=null and customer_project_name != '' ">
AND CM.CUSTOMER_PROJECT_NAME = #{customer_project_name}
</if>
<if test="project_no !=null and project_no != '' ">
AND POM.CONTRACT_MGMT_OBJID = #{project_no}
</if>
<if test="unit_code !=null and unit_code != '' ">
AND POM.UNIT_CODE LIKE '%'||#{unit_code}||'%'
</if>
<if test="purchase_order_no !=null and purchase_order_no != '' ">
AND POM.PURCHASE_ORDER_NO LIKE '%'||#{purchase_order_no}||'%'
</if>
<if test="type !=null and type != '' ">
AND POM.TYPE = #{type}
</if>
<if test="order_type_cd !=null and order_type_cd != '' ">
AND POM.ORDER_TYPE_CD = #{order_type_cd}
</if>
<if test="delivery_start_date !=null and delivery_start_date != '' ">
AND TO_DATE(POM.DELIVERY_DATE ,'YYYY-MM-DD') <![CDATA[ >= ]]> TO_DATE(#{delivery_start_date}, 'YYYY-MM-DD')
</if>
<if test="delivery_end_date !=null and delivery_end_date != '' ">
AND TO_DATE(POM.DELIVERY_DATE ,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{delivery_end_date}, 'YYYY-MM-DD')
</if>
<if test="partner_objid !=null and partner_objid != '' ">
AND POM.PARTNER_OBJID = #{partner_objid}
</if>
<if test="sales_mng_user_id !=null and sales_mng_user_id != '' ">
AND POM.SALES_MNG_USER_ID = #{sales_mng_user_id}
</if>
<if test="reg_start_date !=null and reg_start_date != '' ">
AND TO_DATE(TO_CHAR(POM.REGDATE,'YYYY-MM-DD') ,'YYYY-MM-DD') <![CDATA[ >= ]]> TO_DATE(#{reg_start_date}, 'YYYY-MM-DD')
</if>
<if test="reg_end_date !=null and reg_end_date != '' ">
AND TO_DATE(TO_CHAR(POM.REGDATE,'YYYY-MM-DD') ,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{reg_end_date}, 'YYYY-MM-DD')
</if>
<if test="appr_status !=null and appr_status != '' ">
<choose>
<when test="'cancel'.equals(appr_status)">
AND POM.STATUS = #{appr_status}
</when>
<when test="'complete'.equals(appr_status)">
AND POM.STATUS = 'approvalComplete'
</when>
<when test="'create'.equals(appr_status)">
AND ( POM.STATUS = #{appr_status}
AND NOT EXISTS (SELECT 1 FROM APPROVAL AT
WHERE AT.TARGET_OBJID::VARCHAR = POM.OBJID::VARCHAR
)
AND NOT EXISTS (SELECT 1 FROM APPROVAL_TARGET AT
WHERE AT.TARGET_OBJID::VARCHAR = POM.OBJID::VARCHAR
OR AT.MASTER_TARGET_OBJID::VARCHAR = POM.OBJID::VARCHAR
)
)
</when>
<otherwise>
AND A.APPR_STATUS = #{appr_status}
</otherwise>
</choose>
</if>
<if test="SEARCH_PART_NO !=null and SEARCH_PART_NO != '' ">
AND EXISTS (SELECT 1
FROM PURCHASE_ORDER_PART POP
WHERE POP.PURCHASE_ORDER_MASTER_OBJID = POM.OBJID
AND TRIM(UPPER(POP.PART_NO)) LIKE '%'||TRIM(UPPER(#{SEARCH_PART_NO}))||'%'
)
</if>
<if test="SEARCH_PART_NAME !=null and SEARCH_PART_NAME != '' ">
AND EXISTS (SELECT 1
FROM PURCHASE_ORDER_PART POP
WHERE POP.PURCHASE_ORDER_MASTER_OBJID = POM.OBJID
AND TRIM(UPPER(POP.PART_NAME)) LIKE '%'||TRIM(UPPER(#{SEARCH_PART_NAME}))||'%'
)
</if>
</select>
<select id="purchaseOrderMasterListSum_old" parameterType="map" resultType="map">
SELECT
<!--
SUM(CASE WHEN (SUPPLY_UNIT_VAT_SUM_PRICE IS NULL OR SUPPLY_UNIT_VAT_SUM_PRICE='')