Files
wace_plm/WebContent/WEB-INF/classes/com/pms/mapper/material.xml
chpark da06c4684c Initial commit: WACE PLM with database initialization features
- Add Docker Compose configurations for dev, prod, and standalone environments
- Add database initialization scripts (init-db.sh, init-db-docker.sh)
- Add enhanced start-docker-linux.sh with DB init support
- Add comprehensive database initialization guide
- Support for automatic dbexport.pgsql import on first run
- Include safety checks for production environment
2025-08-29 15:46:08 +09:00

4725 lines
175 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="material">
<!-- PART 관리 목록 조회 -->
<select id="invenmgmtList" parameterType="map" resultType="map">
SELECT *
FROM
(SELECT PMS_PART_MGMT.*,ROWNUM AS RNUM
FROM
(SELECT
INVENTORY_MGMT_OBJID
,NVL((SELECT PROJECT_NO FROM ORDER_MGMT O1 WHERE O1.ORDER_MGMT_OBJID = T.PROJECT_MGMT_OBJID),'00000') AS PROJECT_NO
,PROJECT_MGMT_OBJID
,PART_NAME
,SPEC_CD
,CODE_NAME(SPEC_CD) AS SPEC_NAME
,MFA_CD
,CODE_NAME(MFA_CD) AS MFA_NAME
,T.QTY - DECODE((SELECT SUM(NVL(T1.REL_QTY, 0))
FROM MATERIAL_RELEASE T1
WHERE T.INVENTORY_MGMT_OBJID =
T1.INVENTORY_MGMT_OBJID),null,0,(SELECT SUM(NVL(T1.REL_QTY, 0))
FROM MATERIAL_RELEASE T1
WHERE T.INVENTORY_MGMT_OBJID =
T1.INVENTORY_MGMT_OBJID)) AS QTY
,UNIT_PRICE
,CASE WHEN (T.QTY - DECODE((SELECT SUM(NVL(T1.REL_QTY, 0))
FROM MATERIAL_RELEASE T1
WHERE T.INVENTORY_MGMT_OBJID =
T1.INVENTORY_MGMT_OBJID),NULL,0,(SELECT SUM(NVL(T1.REL_QTY, 0))
FROM MATERIAL_RELEASE T1
WHERE T.INVENTORY_MGMT_OBJID =
T1.INVENTORY_MGMT_OBJID))) = 0 THEN 0
ELSE (T.QTY - DECODE((SELECT SUM(NVL(T1.REL_QTY, 0))
FROM MATERIAL_RELEASE T1
WHERE T.INVENTORY_MGMT_OBJID =
T1.INVENTORY_MGMT_OBJID),NULL,0,(SELECT SUM(NVL(T1.REL_QTY, 0))
FROM MATERIAL_RELEASE T1
WHERE T.INVENTORY_MGMT_OBJID =
T1.INVENTORY_MGMT_OBJID))) * UNIT_PRICE
END AS QTY_SUM
<!-- , CASE WHEN DECODE((SELECT SUM(NVL(T1.REL_QTY, 0))
FROM MATERIAL_RELEASE T1
WHERE T.INVENTORY_MGMT_OBJID =
T1.INVENTORY_MGMT_OBJID),NULL,0,(SELECT SUM(NVL(T1.REL_QTY, 0))
FROM MATERIAL_RELEASE T1
WHERE T.INVENTORY_MGMT_OBJID =
T1.INVENTORY_MGMT_OBJID)) = 0 THEN 0
ELSE UNIT_PRICE * DECODE((SELECT SUM(NVL(T1.REL_QTY, 0))
FROM MATERIAL_RELEASE T1
WHERE T.INVENTORY_MGMT_OBJID =
T1.INVENTORY_MGMT_OBJID),NULL,0,(SELECT SUM(NVL(T1.REL_QTY, 0))
FROM MATERIAL_RELEASE T1
WHERE T.INVENTORY_MGMT_OBJID =
T1.INVENTORY_MGMT_OBJID)) END AS QTY_SUM -->
,DEPT_CD
,(SELECT DEPT_NAME FROM DEPT_INFO O WHERE O.DEPT_CODE = DEPT_CD) AS DEPT_NAME
,REG_DATE
,INV_CD
,CODE_NAME(INV_CD) AS INV_NAME
,INV_REA_CD
,CODE_NAME(INV_REA_CD) AS INV_REA_NAME
,INV_PUR_CD
,CODE_NAME(INV_PUR_CD) AS INV_PUR_NAME
,INV_LOC_CD
,CODE_NAME(INV_LOC_CD) AS INV_LOC_NAME
,REG_USER_ID
FROM INVENTORY_MGMT T
WHERE 1=1
<if test="projectno !=null and projectno != '' ">
AND PROJECT_MGMT_OBJID = #{projectno}
</if>
<if test="part_name !=null and part_name !=''">
AND UPPER(PART_NAME) LIKE UPPER('%${part_name}%')
</if>
<if test="spec_cd !=null and spec_cd !=''">
<!-- AND SPEC_CD = #{spec_cd} -->
AND UPPER(SPEC_CD) LIKE UPPER('%${spec_cd}%')
</if>
<if test="dept_cd !=null and dept_cd !=''">
AND DEPT_CD = #{dept_cd}
</if>
<if test="pur_cd !=null and pur_cd !=''">
AND INV_PUR_CD = #{pur_cd}
</if>
<if test="sort_cd !=null and sort_cd !=''">
AND INV_CD = #{sort_cd}
</if>
<if test="reason_cd !=null and reason_cd !=''">
AND INV_REA_CD = #{reason_cd}
</if>
<if test="local_cd !=null and local_cd !=''">
AND INV_LOC_CD = #{local_cd}
</if>
) PMS_PART_MGMT
WHERE 1=1
)WHERE 1=1
<if test="PAGE_END != null and PAGE_END != ''">
<![CDATA[ AND RNUM <= #{PAGE_END} ]]>
</if>
<if test="PAGE_START != null and PAGE_START != ''">
<![CDATA[ AND RNUM >= #{PAGE_START} ]]>
</if>
</select>
<!-- //발주서 파일 목록 다운 조회 -->
<select id="getPartFileList" resultType="map" parameterType="map">
SELECT
T1.OBJID
, T1.TARGET_OBJID
, T1.SAVED_FILE_NAME
, REAL_FILE_NAME
, DOC_TYPE
, DOC_TYPE_NAME
, FILE_SIZE
, FILE_EXT
, REPLACE(FILE_PATH, '\', '\\') AS FILE_PATH
, WRITER
, TO_CHAR(REGDATE, 'YYYY-MM-DD') AS REGDATE
, REGDATE AS REGDATE_ORG
, STATUS
FROM MATERIAL_DETAIL_MGMT T,ATTACH_FILE_INFO T1
WHERE T.MATERIAL_MASTER_OBJID=#{objId}
AND T.PART_MGMT_OBJID = T1.TARGET_OBJID
AND T1.STATUS = 'Active'
</select>
<!-- 부가세 삭제 -->
<update id="surtaxDelete" parameterType="map">
DELETE SURTAX
WHERE OBJID=#{objId}
</update>
<!-- 발주서 마스터삭제 -->
<update id="deleteRealmaterMa" parameterType="map">
UPDATE MATERIAL_MASTER_MGMT
SET DEL_YN='Y'
WHERE MATERIAL_MASTER_OBJID=#{objId}::integer
</update>
<!-- 발주서 마스터삭제 -->
<!-- <delete id="deleteRealmaterMa" parameterType="map">
DELETE MATERIAL_MASTER_MGMT WHERE MATERIAL_MASTER_OBJID=#{objId}
</delete> -->
<!-- 발주서 상세 삭제 -->
<delete id="deleteRealmaterDe" parameterType="map">
DELETE FROM MATERIAL_DETAIL_MGMT WHERE MATERIAL_MASTER_OBJID=#{objId}::integer
</delete>
<select id="invenmgmtListCnt" parameterType="map" resultType="map">
SELECT CEIL(TOTAL_CNT/#{COUNT_PER_PAGE}) MAX_PAGE_SIZE,
TOTAL_CNT
FROM (
SELECT COUNT(1) TOTAL_CNT
FROM(
SELECT INVENTORY_MGMT_OBJID
FROM INVENTORY_MGMT T
WHERE 1=1
<if test="projectno !=null and projectno != '' ">
AND PROJECT_MGMT_OBJID = #{projectno}
</if>
<if test="part_name !=null and part_name !=''">
AND UPPER(PART_NAME) LIKE UPPER('%${part_name}%')
</if>
<if test="spec_cd !=null and spec_cd !=''">
<!-- AND SPEC_CD = #{spec_cd} -->
AND UPPER(SPEC_CD) LIKE UPPER('%${spec_cd}%')
</if>
<if test="dept_cd !=null and dept_cd !=''">
AND DEPT_CD = #{dept_cd}
</if>
<if test="pur_cd !=null and pur_cd !=''">
AND INV_PUR_CD = #{pur_cd}
</if>
<if test="sort_cd !=null and sort_cd !=''">
AND INV_CD = #{sort_cd}
</if>
<if test="reason_cd !=null and reason_cd !=''">
AND INV_REA_CD = #{reason_cd}
</if>
<if test="local_cd !=null and local_cd !=''">
AND INV_LOC_CD = #{local_cd}
</if>
) T
)WHERE 1=1
</select>
<!-- 재고 상세 정보 -->
<select id="getmaterMgmtUpdateFormInfo" parameterType="map" resultType="map">
SELECT INVENTORY_MGMT_OBJID
,(SELECT TO_CHAR(PROJECT_NO) FROM ORDER_MGMT O1 WHERE O1.ORDER_MGMT_OBJID = (SELECT O.ORDER_MGMT_OBJID FROM PROJECT_MGMT O WHERE O.PROJECT_MGMT_OBJID = T.PROJECT_MGMT_OBJID)) AS PROJECT_NO
,TO_CHAR(PROJECT_MGMT_OBJID) AS PROJECT_MGMT_OBJID
,PART_NAME
,SPEC_CD
,CODE_NAME(SPEC_CD) AS SPEC_NAME
,MFA_CD
,CODE_NAME(MFA_CD) AS MFA_NAME
,QTY
,UNIT_PRICE
,(QTY * UNIT_PRICE) AS QTY_SUM
,DEPT_CD
,(SELECT DEPT_NAME FROM DEPT_INFO O WHERE O.DEPT_CODE = DEPT_CD) AS DEPT_NAME
,REG_DATE
,INV_CD
,CODE_NAME(INV_CD) AS INV_NAME
,INV_REA_CD
,CODE_NAME(INV_REA_CD) AS INV_REA_NAME
,INV_PUR_CD
,CODE_NAME(INV_PUR_CD) AS INV_PUR_NAME
,INV_LOC_CD
,CODE_NAME(INV_LOC_CD) AS INV_LOC_NAME
,REG_USER_ID
FROM INVENTORY_MGMT T
WHERE 1=1
AND T.INVENTORY_MGMT_OBJID = #{objId}
</select>
<!-- 재고 금액 토탈-->
<select id="qtysum" parameterType="map" resultType="map">
SELECT SUM(QTY_SUM) AS QTY_SUM FROM( SELECT
CASE WHEN (T.QTY - DECODE((SELECT SUM(NVL(T1.REL_QTY, 0))
FROM MATERIAL_RELEASE T1
WHERE T.INVENTORY_MGMT_OBJID =
T1.INVENTORY_MGMT_OBJID),NULL,0,(SELECT SUM(NVL(T1.REL_QTY, 0))
FROM MATERIAL_RELEASE T1
WHERE T.INVENTORY_MGMT_OBJID =
T1.INVENTORY_MGMT_OBJID))) = 0 THEN 0
ELSE (T.QTY - DECODE((SELECT SUM(NVL(T1.REL_QTY, 0))
FROM MATERIAL_RELEASE T1
WHERE T.INVENTORY_MGMT_OBJID =
T1.INVENTORY_MGMT_OBJID),NULL,0,(SELECT SUM(NVL(T1.REL_QTY, 0))
FROM MATERIAL_RELEASE T1
WHERE T.INVENTORY_MGMT_OBJID =
T1.INVENTORY_MGMT_OBJID))) * UNIT_PRICE
END AS QTY_SUM
FROM INVENTORY_MGMT T
WHERE 1=1
<if test="projectno !=null and projectno != '' ">
AND PROJECT_MGMT_OBJID = #{projectno}
</if>
<if test="part_name !=null and part_name !=''">
AND UPPER(PART_NAME) LIKE UPPER('%${part_name}%')
</if>
<if test="spec_cd !=null and spec_cd !=''">
<!-- AND SPEC_CD = #{spec_cd} -->
AND UPPER(SPEC_CD) LIKE UPPER('%${spec_cd}%')
</if>
<if test="dept_cd !=null and dept_cd !=''">
AND DEPT_CD = #{dept_cd}
</if>
<if test="pur_cd !=null and pur_cd !=''">
AND INV_PUR_CD = #{pur_cd}
</if>
<if test="sort_cd !=null and sort_cd !=''">
AND INV_CD = #{sort_cd}
</if>
<if test="reason_cd !=null and reason_cd !=''">
AND INV_REA_CD = #{reason_cd}
</if>
<if test="local_cd !=null and local_cd !=''">
AND INV_LOC_CD = #{local_cd}
</if>
)
</select>
<!-- 발주서 등록 상세 정보 -->
<select id="getopenmaterModify" parameterType="map" resultType="map">
SELECT
T.MATERIAL_MASTER_OBJID
,T.ORDER_NO
,T.DELIVERY_PLACE
,T.SUP_CD
,(SELECT SUPPLY_NAME FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = T.SUP_CD) AS SUPPLY_NAME
,(SELECT REG_NO FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = T.SUP_CD) AS REG_NO
,(SELECT SUPPLY_ADDRESS FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = T.SUP_CD) AS SUPPLY_ADDRESS
,(SELECT SUPPLY_STOCKNAME FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = T.SUP_CD) AS SUPPLY_STOCKNAME
,(SELECT SUPPLY_BUSNAME FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = T.SUP_CD) AS SUPPLY_BUSNAME
,(SELECT SUPPLY_TEL_NO FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = T.SUP_CD) AS SUPPLY_TEL_NO
,(SELECT SUPPLY_FAX_NO FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = T.SUP_CD) AS SUPPLY_FAX_NO
,(SELECT CHARGE_USER_NAME FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = T.SUP_CD) AS CHARGE_USER_NAME
,T.PUR_CD
,T.TITLE
,T.RECV_USERID
,T.FINAL_ORDER_AMOUNT
,T.REASON
,T.STATUS_CD
,T.REG_DATE
,T.RECV_DATE
,T.REG_USER_ID
,T.ORDER_DATE
,USER_NAME(T.REG_USER_ID) AS REG_USER_NAME
,A.STATUS AS APPR_STATUS_CD
,A.APPR_STATUS
FROM MATERIAL_MASTER_MGMT T
LEFT OUTER JOIN
(
SELECT
B.OBJID AS ROUTE_OBJID,
B.STATUS,
CASE B.STATUS
WHEN 'inProcess' THEN '결재중'
WHEN 'complete' THEN '결재완료'
WHEN 'reject' THEN '반려'
ELSE ''
END APPR_STATUS,
A.OBJID AS APPROVAL_OBJID,
A.TARGET_OBJID,
B.ROUTE_SEQ
FROM
APPROVAL A,
(
select
T1.*
from
(
select
TARGET_OBJID,
max(T.ROUTE_SEQ) as ROUTE_SEQ
from
ROUTE T
group by
T.TARGET_OBJID
) T,
ROUTE T1
where
T.TARGET_OBJID = T1.TARGET_OBJID
and T.ROUTE_SEQ = T1.ROUTE_SEQ
) B
WHERE
A.OBJID = B.APPROVAL_OBJID
AND TARGET_TYPE IN ('MATERIAL_SORTAPPLY')
) AS A
ON T.MATERIAL_MASTER_OBJID = A.TARGET_OBJID
WHERE T.MATERIAL_MASTER_OBJID = #{objId}::integer
</select>
<!-- 부가세 상세 조회 -->
<select id="getgetsurtaxInfo" parameterType="map" resultType="map">
SELECT
OBJID
,TO_CHAR(ORDER_MGMT_OBJID) AS ORDER_MGMT_OBJID
,REGION_CD
,CUSTOMER_CD
,REG_DATE
,TITLE
,QTY
,PRICE
,SUP_PRICE
,SUR_PRICE
,TOTAL_PRICE
FROM SURTAX T
WHERE T.OBJID = #{objId}
</select>
<!-- 부가세 상세 조회 -->
<select id="getregioncd" parameterType="map" resultType="map">
SELECT
REGION_CD
,CUSTOMER_CD
FROM ORDER_MGMT T
WHERE T.ORDER_MGMT_OBJID = #{codeId}
</select>
<!-- 발주금액 합 입고금액 합 상세 조회 -->
<select id="getRecInfo" parameterType="map" resultType="map">
SELECT
TO_CHAR(NVL(MAX(T.FINAL_ORDER_AMOUNT),0), '999,999,999,999,999') AS SUM
,TO_CHAR(NVL(SUM(T1.RECV_PRICE),0), '999,999,999,999,999') AS SUM1
FROM MATERIAL_MASTER_MGMT T,MATERIAL_DETAIL_MGMT T1
WHERE T.MATERIAL_MASTER_OBJID = T1.MATERIAL_MASTER_OBJID
AND T.MATERIAL_MASTER_OBJID=#{objId}
</select>
<!-- //부가세 등록 및 저장 -->
<update id="mergeSurtaxInfo" parameterType="map">
MERGE INTO SURTAX USING DUAL ON (OBJID = #{objId})
WHEN MATCHED THEN
UPDATE SET
ORDER_MGMT_OBJID=#{project_no}
,REGION_CD=#{h_region_cd}
,CUSTOMER_CD=#{h_customer_cd}
,REG_DATE=#{reg_date}
,TITLE=#{title}
,QTY=#{qty}
,PRICE=#{price}
,SUP_PRICE=#{sup_price}
,SUR_PRICE=#{sur_price}
,TOTAL_PRICE=#{total_price}
,REG_USER_ID=#{reg_user_id}
WHEN NOT MATCHED THEN
INSERT (
OBJID
,ORDER_MGMT_OBJID
,REGION_CD
,CUSTOMER_CD
,REG_DATE
,TITLE
,QTY
,PRICE
,SUP_PRICE
,SUR_PRICE
,TOTAL_PRICE
,REG_USER_ID
) VALUES (
#{objId}
,#{project_no}
,#{h_region_cd}
,#{h_customer_cd}
,#{reg_date}
,#{title}
,#{qty}
,#{price}
,#{sup_price}
,#{sur_price}
,#{total_price}
,#{userId}
)
</update>
<!-- 재고 불출 상세 정보 -->
<select id="getopenreleaseFormPopup" parameterType="map" resultType="map">
SELECT
TO_CHAR(T.INVENTORY_MGMT_OBJID) AS INVENTORY_MGMT_OBJID
,TO_CHAR(T.PROJECT_MGMT_OBJID) AS PROJECT_MGMT_OBJID
,T.QTY
FROM INVENTORY_MGMT T
WHERE T.INVENTORY_MGMT_OBJID = #{objId}
</select>
<select id="searchreleaseList" parameterType="map" resultType="map">
SELECT
T.MATERIAL_RELEASE_OBJID
,T.INVENTORY_MGMT_OBJID
,T.PROJECT_MGMT_OBJID
,T.REL_QTY
,T.REL_PUR_CD
,T.REL_DATE
,T.REL_USER_ID
,T.REG_DATE
,T.REG_USER_ID
FROM MATERIAL_RELEASE T
WHERE INVENTORY_MGMT_OBJID = #{inventory_mgmt_objid}
</select>
<!-- //재고 정보 저장 -->
<update id="mergematerMgmtInfo" parameterType="map">
MERGE INTO INVENTORY_MGMT USING DUAL ON (INVENTORY_MGMT_OBJID = #{objId})
WHEN MATCHED THEN
UPDATE SET
PROJECT_MGMT_OBJID=#{projectno}
,PART_NAME=#{part_name}
,SPEC_CD=#{spec_cd}
,MFA_CD=#{mfa_cd}
,QTY=#{qty}
,UNIT_PRICE=#{unit_price}
,DEPT_CD=#{dept_cd}
,REG_DATE=#{reg_date}
,INV_CD=#{sort_cd}
,INV_REA_CD=#{reason_cd}
,INV_PUR_CD=#{pur_cd}
,INV_LOC_CD=#{local_cd}
WHEN NOT MATCHED THEN
INSERT (
INVENTORY_MGMT_OBJID
,PROJECT_MGMT_OBJID
,PART_NAME
,SPEC_CD
,MFA_CD
,QTY
,UNIT_PRICE
,DEPT_CD
,REG_DATE
,INV_CD
,INV_REA_CD
,INV_PUR_CD
,INV_LOC_CD
,REG_USER_ID
) VALUES (
#{objId}
,#{projectno}
,#{part_name}
,#{spec_cd}
,#{mfa_cd}
,#{qty}
,#{unit_price}
,#{dept_cd}
,#{reg_date}
,#{sort_cd}
,#{reason_cd}
,#{pur_cd}
,#{local_cd}
,#{userId}
)
</update>
<delete id="deleteRelmaterMgmtInfoAll" parameterType="map">
DELETE FROM MATERIAL_RELEASE
WHERE INVENTORY_MGMT_OBJID = #{inventory_mgmt_objid}::integer
</delete>
<insert id="insertRelmaterMgmtInfo" parameterType="map">
INSERT INTO MATERIAL_RELEASE (
MATERIAL_RELEASE_OBJID
,INVENTORY_MGMT_OBJID
,PROJECT_MGMT_OBJID
,REL_QTY
,REL_PUR_CD
,REL_DATE
,REL_USER_ID
,REG_DATE
,REG_USER_ID
)
VALUES
(
#{MATERIAL_RELEASE_OBJID}
,#{INVENTORY_MGMT_OBJID}
,#{PROJECT_MGMT_OBJID}
,#{REL_QTY}
,#{REL_PUR_CD}
,#{REL_DATE}
,#{REL_USER_ID}
,sysdate
,#{USERID}
)
</insert>
<!-- 발주관리 관리 목록 조회 -->
<select id="matermgmtList" parameterType="map" resultType="map">
SELECT *
FROM (SELECT T.*,ROW_NUMBER() OVER (ORDER BY REG_DATE DESC) AS RNUM
FROM
(SELECT PMS_PART_MGMT.*
FROM
(SELECT
T.MATERIAL_MASTER_OBJID::varchar
,T.ORDER_NO
,T.TITLE
,(SELECT SUPPLY_NAME FROM SUPPLY_MNG O WHERE O.OBJID::varchar = T.SUP_CD) AS SUP_NAME
,T.SUP_CD
,T.DELIVERY_PLACE
,T.RECV_DATE
,T.FINAL_ORDER_AMOUNT
,T.REASON
,TO_CHAR(T.REG_DATE,'YYYY-MM-DD') AS REG_DATE
,TO_DATE(T.ORDER_DATE,'YYYY-MM-DD') AS ORDER_DATE
,T.REG_USER_ID
,USER_NAME(T.REG_USER_ID) AS REG_USER_NAME
,T.STATUS_CD
,CODE_NAME(T.STATUS_CD) AS STATUS_NAME
,A.ROUTE_OBJID
,A.APPROVAL_OBJID
,A.APPR_STATUS
,A.STATUS AS APPR_STATUS_CD
,(SELECT COUNT(1) AS CNT FROM MATERIAL_DETAIL_MGMT O WHERE O.MATERIAL_MASTER_OBJID = T.MATERIAL_MASTER_OBJID) AS TOTAL_CNT
,(SELECT COUNT(1) AS CNT FROM MATERIAL_DETAIL_MGMT O WHERE O.MATERIAL_MASTER_OBJID = T.MATERIAL_MASTER_OBJID AND O.QTY = O.WARE_QTY AND O.RESULT='RCR00100') AS COMP_CNT
,(SELECT COUNT(1) AS CNT FROM MATERIAL_DETAIL_MGMT O WHERE O.MATERIAL_MASTER_OBJID = T.MATERIAL_MASTER_OBJID) - (SELECT COUNT(1) AS CNT FROM MATERIAL_DETAIL_MGMT O WHERE O.MATERIAL_MASTER_OBJID = T.MATERIAL_MASTER_OBJID AND O.QTY = O.WARE_QTY AND O.RESULT='RCR00100') AS FAIL_CNT
,(SELECT COUNT(1) FROM ATTACH_FILE_INFO WHERE TARGET_OBJID = T.MATERIAL_MASTER_OBJID AND DOC_TYPE='MATERREC' AND UPPER(STATUS) = 'ACTIVE') AS FILE_CNT
FROM
MATERIAL_MASTER_MGMT AS T
LEFT OUTER JOIN
(
SELECT
B.OBJID AS ROUTE_OBJID,
B.STATUS,
CASE B.STATUS
WHEN 'inProcess' THEN '결재중'
WHEN 'complete' THEN '결재완료'
WHEN 'reject' THEN '반려'
ELSE ''
END APPR_STATUS,
A.OBJID AS APPROVAL_OBJID,
A.TARGET_OBJID,
B.ROUTE_SEQ
FROM
APPROVAL A,
(
select
T1.*
from
(
select
TARGET_OBJID,
max(T.ROUTE_SEQ) as ROUTE_SEQ
from
ROUTE T
group by
T.TARGET_OBJID
) T,
ROUTE T1
where
T.TARGET_OBJID = T1.TARGET_OBJID
and T.ROUTE_SEQ = T1.ROUTE_SEQ
) B
WHERE
A.OBJID = B.APPROVAL_OBJID
AND TARGET_TYPE IN ('MATERIAL_SORTAPPLY')
) AS A
ON T.MATERIAL_MASTER_OBJID = A.TARGET_OBJID
WHERE T.DEL_YN ='N'
<!-- AND T1.STATUS='inProcess' -->
<if test="Year !=null and Year != '' ">
AND TO_CHAR(TO_DATE(T.RECV_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
</if>
<if test="order_month !=null and order_month != '' ">
AND TO_CHAR(TO_DATE(T.ORDER_DATE,'YYYY-MM-DD'),'MM') = #{order_month}
</if>
<if test="supply_cd !=null and supply_cd !=''">
AND T.SUP_CD = #{supply_cd}
</if>
<if test="reg_user_id !=null and reg_user_id !=''">
AND T.REG_USER_ID = #{reg_user_id}
</if>
<if test="status_cd !=null and status_cd !=''">
AND T.STATUS_CD = #{status_cd}
</if>
<if test="recv_fromDate != null and !''.equals(recv_fromDate)">
AND TO_DATE(T.RECV_DATE,'YYYY-MM-DD') <![CDATA[ >= ]]> TO_DATE(#{recv_fromDate}, 'YYYY-MM-DD')
</if>
<if test="recv_toDate != null and !''.equals(recv_toDate)">
AND TO_DATE(T.RECV_DATE,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{recv_toDate}, 'YYYY-MM-DD')
</if>
<if test="order_fromDate != null and !''.equals(order_fromDate)">
AND TO_DATE(T.ORDER_DATE,'YYYY-MM-DD') <![CDATA[ >= ]]> TO_DATE(#{order_fromDate}, 'YYYY-MM-DD')
</if>
<if test="order_toDate != null and !''.equals(order_toDate)">
AND TO_DATE(T.ORDER_DATE,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{order_toDate}, 'YYYY-MM-DD')
</if>
)AS PMS_PART_MGMT
WHERE 1=1
ORDER BY ORDER_NO DESC
) AS T
) AS TT
WHERE 1=1
<if test="PAGE_END != null and PAGE_END != ''">
<![CDATA[ AND RNUM <= #{PAGE_END}::integer ]]>
</if>
<if test="PAGE_START != null and PAGE_START != ''">
<![CDATA[ AND RNUM >= #{PAGE_START}::integer ]]>
</if>
</select>
<!-- 발주상세 현황 조회 -->
<select id="materDetailList" parameterType="map" resultType="map">
SELECT *
FROM
(
SELECT T.*
,T2.TOTALCNT
,T2.BALJU
,T2.MIBALJU
,T2.GUME
,T2.GUMEBALJU
,T2.GUMEMIBAL
,T2.GAGONG
,T2.GAGONGBALJU
,T2.GAGONGMIBAL
,T2.SAGUB
,T2.SAGUBBALJU
,T2.SAGUBMIBAL
,T2.JAEBAL
,T2.IBGO
,T2.MIIBGO
,T2.FINAL_ORDER_AMOUNT
,ROW_NUMBER() OVER (ORDER BY PROJECT_NO DESC) AS RNUM
FROM
(
SELECT
TO_CHAR(T1.PROJECT_MGMT_OBJID) AS PROJECT_MGMT_OBJID
,TO_CHAR(T.ORDER_MGMT_OBJID) AS ORDER_MGMT_OBJID
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T1.REGION_CD) AS REGION_NAME
,T1.REGION_CD
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T1.CUSTOMER_CD) AS CUSTOMER_NAME
,T1.CUSTOMER_CD
,T.ORDER_TITLE
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T1.ORDER_CD) AS ORDER_NAME
,T1.ORDER_CD
,TO_CHAR(TO_DATE(T1.DEL_DATE,'YYYY-MM-DD'),'YYYY-MM-DD') AS DEL_DATE
,T1.PLANT_CD
,NVL(T.REASON,0) AS REASON
,T.PROJECT_NO
,T.ORDER_PRICE
,T.DESIGN_PM
,T.PRODUCTION_PM
,T.ELECTRO_PM
,T.SE_PM
,T1.MANAGER_PM
,T.PROJECT_DIVISION
,T.PROJECT_DERIVATION_NO
,T.PONUM
,T.PROJECT_MEAN
,CODE_NAME(T.PROJECT_DIVISION) AS PROJECT_DIVISION_NAME
,(SELECT PROJECT_NO FROM ORDER_MGMT A WHERE A.ORDER_MGMT_OBJID = T.PROJECT_DERIVATION_NO) AS PROJECT_DERIVATION_NO_NAME
,CODE_NAME(T.PROJECT_MEAN) AS PROJECT_MEAN_NAME
FROM ORDER_MGMT T,PROJECT_MGMT T1
WHERE T.ORDER_MGMT_OBJID = T1.ORDER_MGMT_OBJID
ORDER BY PROJECT_NO DESC
) T ,
(SELECT
T.CNT AS TOTALCNT
,T1.CNT AS BALJU
,T2.CNT AS MIBALJU
,T3.CNT AS GUME
,T4.CNT AS GUMEBALJU
,T5.CNT AS GUMEMIBAL
,T6.CNT AS GAGONG
,T7.CNT AS GAGONGBALJU
,T8.CNT AS GAGONGMIBAL
,T9.CNT AS SAGUB
,T10.CNT AS SAGUBBALJU
,T11.CNT AS SAGUBMIBAL
,T12.CNT AS JAEBAL
,T12.FINAL_ORDER_AMOUNT
,T13.CNT AS IBGO
,T14.CNT AS MIIBGO
,T.PROJECT_MGMT_OBJID
FROM
(SELECT COUNT(*) AS CNT,PROJECT_MGMT_OBJID FROM PART_MGMT T WHERE DEL_YN='N' AND STATUS='complete' AND T.IS_LAST='1' AND SORT_CD IS NOT NULL GROUP BY PROJECT_MGMT_OBJID) T ,
(SELECT COUNT(*) AS CNT,PROJECT_MGMT_OBJID FROM PART_MGMT T,(SELECT PART_MGMT_OBJID FROM MATERIAL_DETAIL_MGMT GROUP BY PART_MGMT_OBJID) T1 WHERE T.IS_LAST='1' AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID AND STATUS='complete' AND SORT_CD IS NOT NULL AND DEL_YN='N' AND REL_STATUS IN('PRTS00200','PRTS00300') GROUP BY PROJECT_MGMT_OBJID) T1,
(SELECT COUNT(*) AS CNT,PROJECT_MGMT_OBJID FROM PART_MGMT T WHERE DEL_YN='N' AND STATUS='complete' AND SORT_CD IS NOT NULL AND DEL_YN='N' AND NVL(REL_STATUS,'PRTS00100')='PRTS00100' AND T.IS_LAST='1' GROUP BY PROJECT_MGMT_OBJID) T2,
(SELECT COUNT(*) AS CNT,PROJECT_MGMT_OBJID FROM PART_MGMT T,MATERIAL_DETAIL_MGMT T1 WHERE DEL_YN='N' AND T.IS_LAST='1' AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID AND STATUS='complete' AND SORT_CD='SRT00010' AND DEL_YN='N' GROUP BY PROJECT_MGMT_OBJID) T3,
(SELECT COUNT(*) AS CNT,PROJECT_MGMT_OBJID FROM PART_MGMT T,MATERIAL_DETAIL_MGMT T1 WHERE DEL_YN='N' AND T.IS_LAST='1' AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID AND STATUS='complete' AND REL_STATUS='PRTS00100' AND SORT_CD='SRT00010' AND DEL_YN='N' GROUP BY PROJECT_MGMT_OBJID) T4,
(SELECT COUNT(*) AS CNT,PROJECT_MGMT_OBJID FROM PART_MGMT T,MATERIAL_DETAIL_MGMT T1 WHERE DEL_YN='N' AND T.IS_LAST='1' AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID AND STATUS='complete' AND REL_STATUS IN('PRTS00200','PRTS00300') AND DEL_YN='N' AND SORT_CD='SRT00010' GROUP BY PROJECT_MGMT_OBJID) T5,
(SELECT COUNT(*) AS CNT,PROJECT_MGMT_OBJID FROM PART_MGMT T,MATERIAL_DETAIL_MGMT T1 WHERE DEL_YN='N' AND T.IS_LAST='1' AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID AND STATUS='complete' AND SORT_CD='SRT00020' AND DEL_YN='N' GROUP BY PROJECT_MGMT_OBJID) T6,
(SELECT COUNT(*) AS CNT,PROJECT_MGMT_OBJID FROM PART_MGMT T,MATERIAL_DETAIL_MGMT T1 WHERE DEL_YN='N' AND T.IS_LAST='1' AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID AND STATUS='complete' AND REL_STATUS='PRTS00100' AND SORT_CD='SRT00020' AND DEL_YN='N' GROUP BY PROJECT_MGMT_OBJID) T7,
(SELECT COUNT(*) AS CNT,PROJECT_MGMT_OBJID FROM PART_MGMT T,MATERIAL_DETAIL_MGMT T1 WHERE DEL_YN='N' AND T.IS_LAST='1' AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID AND STATUS='complete' AND REL_STATUS IN('PRTS00200','PRTS00300') AND SORT_CD='SRT00020' AND DEL_YN='N' GROUP BY PROJECT_MGMT_OBJID) T8,
(SELECT COUNT(*) AS CNT,PROJECT_MGMT_OBJID FROM PART_MGMT T,MATERIAL_DETAIL_MGMT T1 WHERE DEL_YN='N' AND T.IS_LAST='1' AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID AND STATUS='complete' AND SORT_CD='SRT00030' AND DEL_YN='N' GROUP BY PROJECT_MGMT_OBJID) T9,
(SELECT COUNT(*) AS CNT,PROJECT_MGMT_OBJID FROM PART_MGMT T,MATERIAL_DETAIL_MGMT T1 WHERE DEL_YN='N' AND T.IS_LAST='1' AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID AND STATUS='complete' AND REL_STATUS='PRTS00100' AND SORT_CD='SRT00030' AND DEL_YN='N' GROUP BY PROJECT_MGMT_OBJID) T10,
(SELECT COUNT(*) AS CNT,PROJECT_MGMT_OBJID FROM PART_MGMT T,MATERIAL_DETAIL_MGMT T1 WHERE DEL_YN='N' AND T.IS_LAST='1' AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID AND STATUS='complete' AND REL_STATUS IN('PRTS00200','PRTS00300') AND SORT_CD='SRT00030' AND DEL_YN='N' GROUP BY PROJECT_MGMT_OBJID) T11,
(SELECT T.FINAL_ORDER_AMOUNT,T.PROJECT_MGMT_OBJID,T1.CNT FROM MATERIAL_MASTER_MGMT T, (SELECT COUNT(*) AS CNT ,MATERIAL_MASTER_OBJID FROM MATERIAL_DETAIL_MGMT GROUP BY MATERIAL_MASTER_OBJID) T1
WHERE T.MATERIAL_MASTER_OBJID = T1.MATERIAL_MASTER_OBJID(+)
AND T.RELS_CD='RELS00200') T12,
(SELECT T.PROJECT_MGMT_OBJID,SUM(T1.CNT) AS CNT FROM MATERIAL_MASTER_MGMT T,
(SELECT COUNT(*) AS CNT,MATERIAL_MASTER_OBJID FROM MATERIAL_DETAIL_MGMT T1,PART_MGMT T2 WHERE T1.QTY = T1.RECEIVE_QTY AND T1.PART_MGMT_OBJID = T2.PART_MGMT_OBJID
AND T2.REL_STATUS IN('PRTS00300')
AND T2.DEL_YN='N' AND T2.STATUS='complete' AND T2.IS_LAST='1' AND t2.SORT_CD IS NOT NULL
GROUP BY MATERIAL_MASTER_OBJID) T1
WHERE T.MATERIAL_MASTER_OBJID = T1.MATERIAL_MASTER_OBJID(+)
AND T.DEL_YN='N'
GROUP BY PROJECT_MGMT_OBJID) T13,
(SELECT T.PROJECT_MGMT_OBJID,SUM(T1.CNT) AS CNT FROM MATERIAL_MASTER_MGMT T,
(SELECT COUNT(*) AS CNT,MATERIAL_MASTER_OBJID FROM MATERIAL_DETAIL_MGMT T1,PART_MGMT T2 WHERE T1.PART_MGMT_OBJID = T2.PART_MGMT_OBJID
AND (T2.REL_STATUS IN('PRTS00200') OR T1.QTY != T1.RECEIVE_QTY)
AND T2.DEL_YN='N' AND T2.STATUS='complete' AND T2.IS_LAST='1' AND t2.SORT_CD IS NOT NULL
GROUP BY MATERIAL_MASTER_OBJID) T1
WHERE T.MATERIAL_MASTER_OBJID = T1.MATERIAL_MASTER_OBJID(+)
AND T.DEL_YN='N'
GROUP BY PROJECT_MGMT_OBJID) T14
WHERE T.PROJECT_MGMT_OBJID = T1.PROJECT_MGMT_OBJID(+)
AND T.PROJECT_MGMT_OBJID = T2.PROJECT_MGMT_OBJID(+)
AND T.PROJECT_MGMT_OBJID = T3.PROJECT_MGMT_OBJID(+)
AND T.PROJECT_MGMT_OBJID = T4.PROJECT_MGMT_OBJID(+)
AND T.PROJECT_MGMT_OBJID = T5.PROJECT_MGMT_OBJID(+)
AND T.PROJECT_MGMT_OBJID = T6.PROJECT_MGMT_OBJID(+)
AND T.PROJECT_MGMT_OBJID = T7.PROJECT_MGMT_OBJID(+)
AND T.PROJECT_MGMT_OBJID = T8.PROJECT_MGMT_OBJID(+)
AND T.PROJECT_MGMT_OBJID = T9.PROJECT_MGMT_OBJID(+)
AND T.PROJECT_MGMT_OBJID = T10.PROJECT_MGMT_OBJID(+)
AND T.PROJECT_MGMT_OBJID = T11.PROJECT_MGMT_OBJID(+)
AND T.PROJECT_MGMT_OBJID = T12.PROJECT_MGMT_OBJID(+)
AND T.PROJECT_MGMT_OBJID = T13.PROJECT_MGMT_OBJID(+)
AND T.PROJECT_MGMT_OBJID = T14.PROJECT_MGMT_OBJID(+)
) T2
WHERE T.ORDER_MGMT_OBJID = T2.PROJECT_MGMT_OBJID(+)
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
<if test="Year !=null and Year != '' ">
AND TO_CHAR(TO_DATE(T.DEL_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
</if>
)
WHERE 1=1
<if test="PAGE_END != null and PAGE_END != ''">
<![CDATA[ AND RNUM <= #{PAGE_END} ]]>
</if>
<if test="PAGE_START != null and PAGE_START != ''">
<![CDATA[ AND RNUM >= #{PAGE_START} ]]>
</if>
</select>
<select id="matermgmtListCnt" parameterType="map" resultType="map">
SELECT CEIL(CAST(TOTAL_CNT AS FLOAT)/#{COUNT_PER_PAGE})::numeric::integer as MAX_PAGE_SIZE
,TOTAL_CNT::integer
FROM (
SELECT COUNT(1)::float TOTAL_CNT
FROM(
SELECT T.MATERIAL_MASTER_OBJID
FROM
MATERIAL_MASTER_MGMT AS T
WHERE T.DEL_YN ='N'
<if test="Year !=null and Year != '' ">
AND TO_CHAR(TO_DATE(T.RECV_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
</if>
<if test="order_month !=null and order_month != '' ">
AND TO_CHAR(TO_DATE(T.ORDER_DATE,'YYYY-MM-DD'),'MM') = #{order_month}
</if>
<if test="supply_cd !=null and supply_cd !=''">
AND T.SUP_CD = #{supply_cd}
</if>
<if test="reg_user_id !=null and reg_user_id !=''">
AND T.REG_USER_ID = #{reg_user_id}
</if>
<if test="status_cd !=null and status_cd !=''">
AND T.STATUS_CD = #{status_cd}
</if>
<if test="recv_fromDate != null and !''.equals(recv_fromDate)">
AND TO_DATE(T.RECV_DATE,'YYYY-MM-DD') <![CDATA[ >= ]]> TO_DATE(#{recv_fromDate}, 'YYYY-MM-DD')
</if>
<if test="recv_toDate != null and !''.equals(recv_toDate)">
AND TO_DATE(T.RECV_DATE,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{recv_toDate}, 'YYYY-MM-DD')
</if>
<if test="order_fromDate != null and !''.equals(order_fromDate)">
AND TO_DATE(T.ORDER_DATE,'YYYY-MM-DD') <![CDATA[ >= ]]> TO_DATE(#{order_fromDate}, 'YYYY-MM-DD')
</if>
<if test="order_toDate != null and !''.equals(order_toDate)">
AND TO_DATE(T.ORDER_DATE,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{order_toDate}, 'YYYY-MM-DD')
</if>
) AS T
) AS TT
</select>
<select id="materDetailListCnt" parameterType="map" resultType="map">
SELECT CEIL(TOTAL_CNT/#{COUNT_PER_PAGE}) MAX_PAGE_SIZE,
TOTAL_CNT
FROM (
SELECT COUNT(1) TOTAL_CNT
FROM(
SELECT
*
FROM ORDER_MGMT T,PROJECT_MGMT T1
WHERE T.ORDER_MGMT_OBJID = T1.ORDER_MGMT_OBJID
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) T
)WHERE 1=1
</select>
<!-- 입고 금액 토탈-->
<select id="recsum" parameterType="map" resultType="map">
SELECT
SUM(T1.SUP_PRICE) AS SUM_SUP_PRICE
FROM PART_MGMT T ,MATERIAL_DETAIL_MGMT T1,MATERIAL_MASTER_MGMT T2
WHERE T.PART_MGMT_OBJID =T1.PART_MGMT_OBJID
AND T1.MATERIAL_MASTER_OBJID=T2.MATERIAL_MASTER_OBJID
AND T.DEL_YN='N'
AND T.STATUS='complete'
AND T2.DEL_YN='N'
AND T1.REC_DATE IS NOT NULL
<choose>
<when test="gubun != null and 'balju'.equals(gubun)">
<!-- AND T.SORT_CD IS NOT NULL
AND T2.STATUS_CD='PURSTCD00700'
AND T.REL_STATUS NOT IN('PRTS00100','PRTS00300') -->
AND T.REL_STATUS IN('PRTS00200','PRTS00300')
AND T.SORT_CD IS NOT NULL
</when>
<when test="gubun != null and 'ibgo'.equals(gubun)">
AND T.REL_STATUS='PRTS00300'
AND T.SORT_CD IS NOT NULL
</when>
<otherwise>
AND T.SORT_CD IS NOT NULL
AND T2.RELS_CD='RELS00200'
</otherwise>
</choose>
<if test="projectno !=null and projectno != '' ">
AND T.PROJECT_MGMT_OBJID = #{projectno}
</if>
<if test="sort_cd !=null and sort_cd !=''">
AND T.SORT_CD = #{sort_cd}
</if>
<if test="supply_cd !=null and supply_cd !=''">
AND T.SUP_CD = #{supply_cd}
</if>
<if test="recv_userid !=null and recv_userid !=''">
AND T2.REG_USER_ID = #{recv_userid}
</if>
<if test="search_fromDate != null and !''.equals(search_fromDate)">
AND TO_DATE(T1.REC_DATE,'YYYY-MM-DD') <![CDATA[ >= ]]> TO_DATE(#{search_fromDate}, 'YYYY-MM-DD')
</if>
<if test="search_toDate != null and !''.equals(search_toDate)">
AND TO_DATE(T1.REC_DATE,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{search_toDate}, 'YYYY-MM-DD')
</if>
</select>
<!-- 발주상세 현황 조회 -->
<select id="materDetailList2" parameterType="map" resultType="map">
SELECT *
FROM
(
SELECT T.*,ROWNUM AS RNUM FROM (SELECT
T.PART_MGMT_OBJID
,PART_MGMT_PARENT_OBJID
,T.PROJECT_MGMT_OBJID
,TRIM(PART_NAME) AS PART_NAME
,PART_NO
,PARENT_PART_NO
,T.SPEC_CD
,CODE_NAME(SPEC_CD) AS SPEC_NAME
,T.MFA_CD
,CODE_NAME(MFA_CD) AS MFA_NAME
,T.PROCESS_CD
,CODE_NAME(PROCESS_CD) AS PROCESS_NAME
,T.SORT_CD
,CODE_NAME(T.SORT_CD) AS SORT_NAME
,T.SUP_CD
,(SELECT SUPPLY_NAME FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = T.SUP_CD) AS SUP_NAME
,REV
,TO_CHAR(REL_DATE,'YYYY-MM-DD') AS REL_DATE
,TO_CHAR(T2.REG_DATE,'YYYY-MM-DD') AS REG_DATE
,T2.ORDER_DATE
,T.REG_USER_ID
,T2.MATERIAL_MASTER_OBJID
,T2.RECV_DATE
,T1.MATERIAL_DETAIL_OBJID
,T2.ORDER_NO
,T1.QTY
,T1.UNIT_PRICE
,T1.UNIT_PRICE AS UNIT_PRICE1
,T1.UNIT_PRICE * T1.QTY AS PRICE
,T1.UNIT_PRICE * T1.QTY AS PRICE1
,USER_NAME(T2.REG_USER_ID) AS REG_USER_NAME
,T1.REQ_DATE
,T1.REC_DATE
,T1.RECEIVE_QTY
,USER_NAME(T1.ACQ_USER_ID) AS ACQ_USER_NAME
,T1.ACQ_DATE
,T1.ACQ_QTY
,RECV_PRICE
,T1.SUP_PRICE
,(SELECT PROJECT_NO FROM ORDER_MGMT O1 WHERE O1.ORDER_MGMT_OBJID = T.PROJECT_MGMT_OBJID) AS PROJECT_NO
,(SELECT COUNT(1) FROM ATTACH_FILE_INFO WHERE TARGET_OBJID = T1.MATERIAL_DETAIL_OBJID AND DOC_TYPE='RECV' AND UPPER(STATUS) = 'ACTIVE') AS FILE_CNT
FROM PART_MGMT T ,MATERIAL_DETAIL_MGMT T1,MATERIAL_MASTER_MGMT T2
WHERE T.PART_MGMT_OBJID =T1.PART_MGMT_OBJID
AND T1.MATERIAL_MASTER_OBJID=T2.MATERIAL_MASTER_OBJID
AND T.DEL_YN='N'
AND T.STATUS='complete'
AND T2.DEL_YN='N'
AND T.IS_LAST='1'
<choose>
<when test="gubun != null and 'balju'.equals(gubun)">
<!-- AND T.SORT_CD IS NOT NULL
AND T2.STATUS_CD='PURSTCD00700'
AND T.REL_STATUS NOT IN('PRTS00100','PRTS00300') -->
AND T.REL_STATUS IN('PRTS00200','PRTS00300')
AND T.SORT_CD IS NOT NULL
</when>
<when test="gubun != null and 'ibgo'.equals(gubun)">
AND T.REL_STATUS='PRTS00300'
AND T.SORT_CD IS NOT NULL
AND T1.REC_DATE IS NOT NULL
</when>
<otherwise>
AND T.SORT_CD IS NOT NULL
AND T2.RELS_CD='RELS00200'
</otherwise>
</choose>
<if test="projectno !=null and projectno != '' ">
AND T.PROJECT_MGMT_OBJID = #{projectno}
</if>
<if test="sort_cd !=null and sort_cd !=''">
AND T.SORT_CD = #{sort_cd}
</if>
<if test="supply_cd !=null and supply_cd !=''">
AND T.SUP_CD = #{supply_cd}
</if>
<if test="recv_userid !=null and recv_userid !=''">
AND T2.REG_USER_ID = #{recv_userid}
</if>
<if test="search_fromDate != null and !''.equals(search_fromDate)">
AND TO_DATE(T1.REC_DATE,'YYYY-MM-DD') <![CDATA[ >= ]]> TO_DATE(#{search_fromDate}, 'YYYY-MM-DD')
</if>
<if test="search_toDate != null and !''.equals(search_toDate)">
AND TO_DATE(T1.REC_DATE,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{search_toDate}, 'YYYY-MM-DD')
</if>
ORDER BY ORDER_NO,PART_NO DESC
) T
) PMS_PART_MGMT
WHERE 1=1
<if test="actionType !='excel'">
<if test="PAGE_END != null and PAGE_END != ''">
<![CDATA[ AND RNUM <= #{PAGE_END} ]]>
</if>
<if test="PAGE_START != null and PAGE_START != ''">
<![CDATA[ AND RNUM >= #{PAGE_START} ]]>
</if>
</if>
</select>
<select id="materDetailList2Cnt" parameterType="map" resultType="map">
SELECT CEIL(TOTAL_CNT/#{COUNT_PER_PAGE}) MAX_PAGE_SIZE,
TOTAL_CNT
FROM (
SELECT COUNT(1) TOTAL_CNT
FROM(
SELECT T1.MATERIAL_MASTER_OBJID
FROM PART_MGMT T ,MATERIAL_DETAIL_MGMT T1,MATERIAL_MASTER_MGMT T2
WHERE T.PART_MGMT_OBJID =T1.PART_MGMT_OBJID
AND T1.MATERIAL_MASTER_OBJID=T2.MATERIAL_MASTER_OBJID
AND T.DEL_YN='N'
AND T.STATUS='complete'
AND T2.DEL_YN='N'
AND T.IS_LAST='1'
<choose>
<when test="gubun != null and 'balju'.equals(gubun)">
<!-- AND T.SORT_CD IS NOT NULL
AND T2.STATUS_CD='PURSTCD00700'
AND T.REL_STATUS NOT IN('PRTS00100','PRTS00300') -->
AND T.REL_STATUS IN('PRTS00200','PRTS00300')
AND T.SORT_CD IS NOT NULL
</when>
<when test="gubun != null and 'ibgo'.equals(gubun)">
AND T.REL_STATUS='PRTS00300'
AND T.SORT_CD IS NOT NULL
AND T1.REC_DATE IS NOT NULL
</when>
<otherwise>
AND T.SORT_CD IS NOT NULL
AND T2.RELS_CD='RELS00200'
</otherwise>
</choose>
<if test="projectno !=null and projectno != '' ">
AND T.PROJECT_MGMT_OBJID = #{projectno}
</if>
<if test="sort_cd !=null and sort_cd !=''">
AND T.SORT_CD = #{sort_cd}
</if>
<if test="supply_cd !=null and supply_cd !=''">
AND T.SUP_CD = #{supply_cd}
</if>
<if test="recv_userid !=null and recv_userid !=''">
AND T2.REG_USER_ID = #{recv_userid}
</if>
<if test="search_fromDate != null and !''.equals(search_fromDate)">
AND TO_DATE(T1.REC_DATE,'YYYY-MM-DD') <![CDATA[ >= ]]> TO_DATE(#{search_fromDate}, 'YYYY-MM-DD')
</if>
<if test="search_toDate != null and !''.equals(search_toDate)">
AND TO_DATE(T1.REC_DATE,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{search_toDate}, 'YYYY-MM-DD')
</if>
) T
)WHERE 1=1
</select>
<!-- 발주관리 현황 -->
<select id="matermgmtTotalList" parameterType="map" resultType="map">
SELECT
T.*
FROM (
SELECT
T.*,
ROW_NUMBER() OVER(ORDER BY T.MONTH_TOTAL) RNUM
FROM(
SELECT
MMM.SUP_CD,
(SELECT SUPPLY_NAME FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = MMM.SUP_CD) AS SUP_NAME,
<foreach collection="monthList" item="obj">
SUM(SUP_AMOUNT_${obj.MONTH}) AS ${obj.MONTH_COL_NAME},
</foreach>
SUM(SUP_AMOUNT_YEAR) AS MONTH_TOTAL
FROM(
SELECT
MMM.SUP_CD,
<foreach collection="monthList" item="obj">
CASE
WHEN ORDER_MONTH = #{obj.MONTH} THEN FINAL_ORDER_AMOUNT
ELSE 0
END SUP_AMOUNT_${obj.MONTH},
</foreach>
CASE
WHEN ORDER_MONTH IS NOT NULL THEN FINAL_ORDER_AMOUNT
ELSE 0
END SUP_AMOUNT_YEAR
FROM(
SELECT
T.MATERIAL_MASTER_OBJID::VARCHAR
,T.SUP_CD
,T.FINAL_ORDER_AMOUNT::INTEGER
,TO_CHAR(TO_DATE(T.ORDER_DATE,'YYYY-MM-DD'),'MM') AS ORDER_MONTH
,TO_CHAR(TO_DATE(T.ORDER_DATE,'YYYY-MM-DD'),'YYYY') AS ORDER_YEAR
FROM
MATERIAL_MASTER_MGMT AS T
WHERE T.DEL_YN ='N'
) MMM
WHERE 1=1
<if test="Year != null and Year != ''">
AND MMM.ORDER_YEAR = #{Year}
</if>
<if test="search_sup_cd != null and search_sup_cd != ''">
AND MMM.SUP_CD = #{search_sup_cd}
</if>
) MMM
WHERE 1=1
GROUP BY MMM.SUP_CD
) T
) T
WHERE 1=1
<if test="PAGE_END != null and PAGE_END != ''">
<![CDATA[ AND RNUM::integer <= #{PAGE_END}::integer ]]>
</if>
<if test="PAGE_START != null and PAGE_START != ''">
<![CDATA[ AND RNUM::integer >= #{PAGE_START}::integer ]]>
</if>
</select>
<select id="matermgmtTotalList_bak" parameterType="map" resultType="map">
SELECT * FROM (SELECT T.*,ROWNUM AS RNUM
FROM
(SELECT *
FROM ( WITH SUM1 AS (SELECT
PROJECT_MGMT_OBJID
,SUM(NVL(T.FINAL_ORDER_AMOUNT,0)) AS SUM1
FROM MATERIAL_MASTER_MGMT T
WHERE T.PUR_CD='IVPUR00100'
AND T.STATUS_CD IN ('PURSTCD00700','PURSTCD00800')
GROUP BY T.PROJECT_MGMT_OBJID)
,SUM2 AS (SELECT
PROJECT_MGMT_OBJID
,SUM(NVL(T.FINAL_ORDER_AMOUNT,0)) AS SUM2
FROM MATERIAL_MASTER_MGMT T
WHERE T.PUR_CD='IVPUR00200'
AND T.STATUS_CD IN ('PURSTCD00700','PURSTCD00800')
GROUP BY T.PROJECT_MGMT_OBJID)
,SUM3 AS (SELECT
PROJECT_MGMT_OBJID
,SUM(NVL(T.FINAL_ORDER_AMOUNT,0)) AS SUM3
FROM MATERIAL_MASTER_MGMT T
WHERE T.PUR_CD='IVPUR00300'
AND T.STATUS_CD IN ('PURSTCD00700','PURSTCD00800')
GROUP BY T.PROJECT_MGMT_OBJID)
,SUM4 AS (SELECT
PROJECT_MGMT_OBJID
,SUM(NVL(T.FINAL_ORDER_AMOUNT,0)) AS SUM4
FROM MATERIAL_MASTER_MGMT T
WHERE T.PUR_CD='IVPUR00400'
AND T.STATUS_CD IN ('PURSTCD00700','PURSTCD00800')
GROUP BY T.PROJECT_MGMT_OBJID)
,SUM5 AS (SELECT
PROJECT_MGMT_OBJID
,SUM(NVL(T.FINAL_ORDER_AMOUNT,0)) AS SUM5
FROM MATERIAL_MASTER_MGMT T
WHERE T.PUR_CD='IVPUR00500'
AND T.STATUS_CD IN ('PURSTCD00700','PURSTCD00800')
GROUP BY T.PROJECT_MGMT_OBJID)
SELECT
DISTINCT
NVL(SUM1.SUM1,0) AS SUM1
,NVL(SUM2.SUM2,0) AS SUM2
,NVL(SUM3.SUM3,0) AS SUM3
,NVL(SUM4.SUM4,0) AS SUM4
,NVL(SUM5.SUM5,0) AS SUM5
,(NVL(SUM1.SUM1,0) + NVL(SUM2.SUM2,0) + NVL(SUM3.SUM3,0) + NVL(SUM4.SUM4,0) + NVL(SUM5.SUM5,0)) AS TOTAL_SUM
,T1.ORDER_MGMT_OBJID
,T1.PROJECT_NO
,T1.PONUM
,T1.ORDER_TITLE
,CODE_NAME(T1.PROJECT_DIVISION) AS PROJECT_DIVISION_NAME
,T1.PROJECT_DERIVATION_NO
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T1.REGION_CD) AS REGION_NAME
,T1.REGION_CD
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T1.CUSTOMER_CD) AS CUSTOMER_NAME
,T1.CUSTOMER_CD
,NVL(T1.EX_MATERIAL_COST_W,0) AS EX_MATERIAL_COST_W
,T1.ORDER_PRICE
,TO_CHAR(TO_DATE(T1.DEL_DATE,'YYYY-MM-DD'),'YYYY-MM-DD') AS DEL_DATE
<!-- ,ROUND((NVL(SUM1.SUM1,0) + NVL(SUM2.SUM2,0) + NVL(SUM3.SUM3,0) + NVL(SUM4.SUM4,0) + NVL(SUM5.SUM5,0)) / T1.ORDER_PRICE * 100,1) AS AVR -->
,ROUND((NVL(SUM1.SUM1,0) + NVL(SUM2.SUM2,0) + NVL(SUM3.SUM3,0) + NVL(SUM4.SUM4,0) + NVL(SUM5.SUM5,0)) / T1.EX_MATERIAL_COST_W * 100,1) AS AVR
,PROJECT_MEAN
FROM SUM1,SUM2,SUM3,SUM4,SUM5,ORDER_MGMT T1,MATERIAL_MASTER_MGMT T2
WHERE SUM1.PROJECT_MGMT_OBJID(+) =T1.ORDER_MGMT_OBJID
AND SUM2.PROJECT_MGMT_OBJID(+) =T1.ORDER_MGMT_OBJID
AND SUM3.PROJECT_MGMT_OBJID(+) = T1.ORDER_MGMT_OBJID
AND SUM4.PROJECT_MGMT_OBJID(+) =T1.ORDER_MGMT_OBJID
AND SUM5.PROJECT_MGMT_OBJID(+) = T1.ORDER_MGMT_OBJID
AND T1.ORDER_MGMT_OBJID = T2.PROJECT_MGMT_OBJID
<if test="Year !=null and Year != '' ">
<!-- AND TO_CHAR(TO_DATE(T1.DEL_DATE,'YYYY-MM-DD'),'YYYY') = #{Year} -->
AND TO_CHAR(TO_DATE(SUBSTR(T1.PROJECT_NO,0,2),'YY'),'YYYY') = #{Year}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.ORDER_MGMT_OBJID = #{projectno}
</if>
) PMS_PART_MGMT
WHERE 1=1
ORDER BY PROJECT_NO desc
) T)
WHERE 1=1
<if test="PAGE_END != null and PAGE_END != ''">
<![CDATA[ AND RNUM <= #{PAGE_END} ]]>
</if>
<if test="PAGE_START != null and PAGE_START != ''">
<![CDATA[ AND RNUM >= #{PAGE_START} ]]>
</if>
</select>
<!-- 발주관리 현황 -->
<select id="matermgmtTotalListCnt" parameterType="map" resultType="map">
SELECT
CEIL(TOTAL_CNT/#{COUNT_PER_PAGE})::numeric::integer AS MAX_PAGE_SIZE,
TOTAL_CNT::integer,
SUM_MONTH_TOTAL
FROM (
SELECT
COUNT(1)::float TOTAL_CNT,
SUM(MONTH_TOTAL) SUM_MONTH_TOTAL
FROM(
SELECT
MMM.SUP_CD,
(SELECT SUPPLY_NAME FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = MMM.SUP_CD) AS SUP_NAME,
<foreach collection="monthList" item="obj">
SUM(SUP_AMOUNT_${obj.MONTH}) AS MONTH_${obj.MONTH},
</foreach>
SUM(SUP_AMOUNT_YEAR) AS MONTH_TOTAL
FROM(
SELECT
MMM.SUP_CD,
<foreach collection="monthList" item="obj">
CASE
WHEN ORDER_MONTH = #{obj.MONTH} THEN FINAL_ORDER_AMOUNT
ELSE 0
END SUP_AMOUNT_${obj.MONTH},
</foreach>
CASE
WHEN ORDER_MONTH IS NOT NULL THEN FINAL_ORDER_AMOUNT
ELSE 0
END SUP_AMOUNT_YEAR
FROM(
SELECT
T.MATERIAL_MASTER_OBJID::VARCHAR
,T.SUP_CD
,T.FINAL_ORDER_AMOUNT::INTEGER
,TO_CHAR(TO_DATE(T.ORDER_DATE,'YYYY-MM-DD'),'MM') AS ORDER_MONTH
,TO_CHAR(TO_DATE(T.ORDER_DATE,'YYYY-MM-DD'),'YYYY') AS ORDER_YEAR
FROM
MATERIAL_MASTER_MGMT AS T
WHERE T.DEL_YN ='N'
) MMM
WHERE 1=1
<if test="Year != null and Year != ''">
AND MMM.ORDER_YEAR = #{Year}
</if>
<if test="search_sup_cd != null and search_sup_cd != ''">
AND MMM.SUP_CD = #{search_sup_cd}
</if>
) MMM
WHERE 1=1
GROUP BY MMM.SUP_CD
) T
) T WHERE 1=1
</select>
<!-- 발주관리 현황 (DASHBOARD) -->
<select id="dashboardMatermgmtTotalList" parameterType="map" resultType="map">
SELECT
T.*
FROM (
SELECT
<foreach collection="monthList" item="obj">
SUM(SUP_AMOUNT_${obj.MONTH}) AS ${obj.MONTH_COL_NAME},
</foreach>
SUM(SUP_AMOUNT_YEAR) AS MONTH_TOTAL
FROM(
SELECT
MMM.SUP_CD,
<foreach collection="monthList" item="obj">
CASE
WHEN ORDER_MONTH = #{obj.MONTH} THEN FINAL_ORDER_AMOUNT
ELSE 0
END SUP_AMOUNT_${obj.MONTH},
</foreach>
CASE
WHEN ORDER_MONTH IS NOT NULL THEN FINAL_ORDER_AMOUNT
ELSE 0
END SUP_AMOUNT_YEAR
FROM(
SELECT
T.MATERIAL_MASTER_OBJID::VARCHAR
,T.SUP_CD
,T.FINAL_ORDER_AMOUNT::INTEGER
,TO_CHAR(TO_DATE(T.ORDER_DATE,'YYYY-MM-DD'),'MM') AS ORDER_MONTH
,TO_CHAR(TO_DATE(T.ORDER_DATE,'YYYY-MM-DD'),'YYYY') AS ORDER_YEAR
FROM
MATERIAL_MASTER_MGMT AS T
WHERE T.DEL_YN ='N'
) MMM
WHERE 1=1
<if test="Year != null and Year != ''">
AND MMM.ORDER_YEAR = #{Year}
</if>
<if test="search_sup_cd != null and search_sup_cd != ''">
AND MMM.SUP_CD = #{search_sup_cd}
</if>
) MMM
WHERE 1=1
) T
WHERE 1=1
</select>
<!-- 발주관리 현황 cnt(DASHBOARD) -->
<select id="dashboardMatermgmtTotalListCnt" parameterType="map" resultType="map">
SELECT
CEIL(TOTAL_CNT/#{COUNT_PER_PAGE})::numeric::integer AS MAX_PAGE_SIZE,
TOTAL_CNT::integer,
SUM_MONTH_TOTAL
FROM (
SELECT
COUNT(1)::float TOTAL_CNT,
SUM(MONTH_TOTAL) SUM_MONTH_TOTAL
FROM(
SELECT
MMM.SUP_CD,
(SELECT SUPPLY_NAME FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = MMM.SUP_CD) AS SUP_NAME,
<foreach collection="monthList" item="obj">
SUM(SUP_AMOUNT_${obj.MONTH}) AS MONTH_${obj.MONTH},
</foreach>
SUM(SUP_AMOUNT_YEAR) AS MONTH_TOTAL
FROM(
SELECT
MMM.SUP_CD,
<foreach collection="monthList" item="obj">
CASE
WHEN ORDER_MONTH = #{obj.MONTH} THEN FINAL_ORDER_AMOUNT
ELSE 0
END SUP_AMOUNT_${obj.MONTH},
</foreach>
CASE
WHEN ORDER_MONTH IS NOT NULL THEN FINAL_ORDER_AMOUNT
ELSE 0
END SUP_AMOUNT_YEAR
FROM(
SELECT
T.MATERIAL_MASTER_OBJID::VARCHAR
,T.SUP_CD
,T.FINAL_ORDER_AMOUNT::INTEGER
,TO_CHAR(TO_DATE(T.ORDER_DATE,'YYYY-MM-DD'),'MM') AS ORDER_MONTH
,TO_CHAR(TO_DATE(T.ORDER_DATE,'YYYY-MM-DD'),'YYYY') AS ORDER_YEAR
FROM
MATERIAL_MASTER_MGMT AS T
WHERE T.DEL_YN ='N'
) MMM
WHERE 1=1
<if test="Year != null and Year != ''">
AND MMM.ORDER_YEAR = #{Year}
</if>
<if test="search_sup_cd != null and search_sup_cd != ''">
AND MMM.SUP_CD = #{search_sup_cd}
</if>
) MMM
WHERE 1=1
GROUP BY MMM.SUP_CD
) T
) T WHERE 1=1
</select>
<select id="matermgmtTotalListCnt_bak" parameterType="map" resultType="map">
SELECT CEIL(TOTAL_CNT/#{COUNT_PER_PAGE}) MAX_PAGE_SIZE,
TOTAL_CNT
FROM (
SELECT COUNT(1) TOTAL_CNT
FROM(
WITH SUM1 AS (SELECT
PROJECT_MGMT_OBJID
,SUM(NVL(T.FINAL_ORDER_AMOUNT,0)) AS SUM1
FROM MATERIAL_MASTER_MGMT T
WHERE T.PUR_CD='IVPUR00100'
AND T.STATUS_CD IN ('PURSTCD00700','PURSTCD00800')
GROUP BY T.PROJECT_MGMT_OBJID)
,SUM2 AS (SELECT
PROJECT_MGMT_OBJID
,SUM(NVL(T.FINAL_ORDER_AMOUNT,0)) AS SUM2
FROM MATERIAL_MASTER_MGMT T
WHERE T.PUR_CD='IVPUR00200'
AND T.STATUS_CD IN ('PURSTCD00700','PURSTCD00800')
GROUP BY T.PROJECT_MGMT_OBJID)
,SUM3 AS (SELECT
PROJECT_MGMT_OBJID
,SUM(NVL(T.FINAL_ORDER_AMOUNT,0)) AS SUM3
FROM MATERIAL_MASTER_MGMT T
WHERE T.PUR_CD='IVPUR00300'
AND T.STATUS_CD IN ('PURSTCD00700','PURSTCD00800')
GROUP BY T.PROJECT_MGMT_OBJID)
,SUM4 AS (SELECT
PROJECT_MGMT_OBJID
,SUM(NVL(T.FINAL_ORDER_AMOUNT,0)) AS SUM4
FROM MATERIAL_MASTER_MGMT T
WHERE T.PUR_CD='IVPUR00400'
AND T.STATUS_CD IN ('PURSTCD00700','PURSTCD00800')
GROUP BY T.PROJECT_MGMT_OBJID)
,SUM5 AS (SELECT
PROJECT_MGMT_OBJID
,SUM(NVL(T.FINAL_ORDER_AMOUNT,0)) AS SUM5
FROM MATERIAL_MASTER_MGMT T
WHERE T.PUR_CD='IVPUR00500'
AND T.STATUS_CD IN ('PURSTCD00700','PURSTCD00800')
GROUP BY T.PROJECT_MGMT_OBJID)
SELECT
DISTINCT
NVL(SUM1.SUM1,0) AS SUM1
,NVL(SUM2.SUM2,0) AS SUM2
,NVL(SUM3.SUM3,0) AS SUM3
,NVL(SUM4.SUM4,0) AS SUM4
,NVL(SUM5.SUM5,0) AS SUM5
,(NVL(SUM1.SUM1,0) + NVL(SUM2.SUM2,0) + NVL(SUM3.SUM3,0) + NVL(SUM4.SUM4,0) + NVL(SUM5.SUM5,0)) AS TOTAL_SUM
,T1.ORDER_MGMT_OBJID
,T1.PROJECT_NO
,T1.ORDER_TITLE
,CODE_NAME(T1.PROJECT_DIVISION) AS PROJECT_DIVISION_NAME
,T1.PROJECT_DERIVATION_NO
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T1.REGION_CD) AS REGION_NAME
,T1.REGION_CD
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T1.CUSTOMER_CD) AS CUSTOMER_NAME
,T1.CUSTOMER_CD
,NVL(T1.EX_MATERIAL_COST_W,0) AS EX_MATERIAL_COST_W
,T1.ORDER_PRICE
,TO_CHAR(TO_DATE(T1.DEL_DATE,'YYYY-MM-DD'),'YYYY-MM-DD') AS DEL_DATE
,ROUND((NVL(SUM1.SUM1,0) + NVL(SUM2.SUM2,0) + NVL(SUM3.SUM3,0) + NVL(SUM4.SUM4,0) + NVL(SUM5.SUM5,0)) / T1.EX_MATERIAL_COST_W * 100,1) AS AVR
,PROJECT_MEAN
FROM SUM1,SUM2,SUM3,SUM4,SUM5,ORDER_MGMT T1,MATERIAL_MASTER_MGMT T2
WHERE SUM1.PROJECT_MGMT_OBJID(+) =T1.ORDER_MGMT_OBJID
AND SUM2.PROJECT_MGMT_OBJID(+) =T1.ORDER_MGMT_OBJID
AND SUM3.PROJECT_MGMT_OBJID(+) = T1.ORDER_MGMT_OBJID
AND SUM4.PROJECT_MGMT_OBJID(+) =T1.ORDER_MGMT_OBJID
AND SUM5.PROJECT_MGMT_OBJID(+) = T1.ORDER_MGMT_OBJID
AND T1.ORDER_MGMT_OBJID = T2.PROJECT_MGMT_OBJID
<if test="Year !=null and Year != '' ">
<!-- AND TO_CHAR(TO_DATE(T1.DEL_DATE,'YYYY-MM-DD'),'YYYY') = #{Year} -->
AND TO_CHAR(TO_DATE(SUBSTR(T1.PROJECT_NO,0,2),'YY'),'YYYY') = #{Year}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.ORDER_MGMT_OBJID = #{projectno}
</if>
) T
)WHERE 1=1
</select>
<update id="updatetmaterMgmtSaveMasterStatus" parameterType="map">
UPDATE MATERIAL_MASTER_MGMT
SET STATUS_CD =#{status}
WHERE MATERIAL_MASTER_OBJID =#{material_master_objid}::numeric
</update>
<update id="updatetmaterMgmtSaveMaster" parameterType="map">
UPDATE MATERIAL_MASTER_MGMT
SET FINAL_ORDER_AMOUNT = #{total}
WHERE MATERIAL_MASTER_OBJID =#{material_master_objid}
</update>
<update id="updatetmaterMgmtSaveDetail" parameterType="map">
UPDATE MATERIAL_DETAIL_MGMT
SET WARE_DATE =#{WARE_DATE}
,WARE_QTY = #{WARE_QTY}
,RESULT = #{RESULT}
,LOCATION = #{LOCATION}
,INVENTORY_OBJID = #{OBJID}::numeric
WHERE MATERIAL_DETAIL_OBJID =#{MATERIAL_DETAIL_OBJID}::numeric
</update>
<update id="updatetmaterMgmtInvenKeySave" parameterType="map">
UPDATE MATERIAL_DETAIL_MGMT
SET INVENTORY_OBJID = #{OBJID}::numeric
WHERE MATERIAL_DETAIL_OBJID =#{MATERIAL_DETAIL_OBJID}::numeric
</update>
<select id="getmaterMgmtDetail" parameterType="map" resultType="map">
SELECT SUM(UNIT_PRICE * QTY) AS TOTAL FROM MATERIAL_DETAIL_MGMT T
WHERE T.MATERIAL_MASTER_OBJID=#{material_master_objid}
</select>
<select id="getmaterMgmtDetailList" parameterType="map" resultType="map">
SELECT T.*,T1.QTY
FROM
(SELECT
T.PART_MGMT_OBJID
,TRIM(PART_NAME) AS PART_NAME
,PART_NO
FROM PART_MGMT T
) T ,(SELECT T.*,T1.RECV_DATE FROM MATERIAL_DETAIL_MGMT T ,MATERIAL_MASTER_MGMT T1
WHERE T.MATERIAL_MASTER_OBJID = T1.MATERIAL_MASTER_OBJID) T1
WHERE T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND T1.MATERIAL_MASTER_OBJID=#{material_master_objid}
ORDER BY PART_NO,PART_NAME
</select>
<insert id="insertmaterMgmtSaveDetail" parameterType="map">
INSERT INTO MATERIAL_DETAIL_MGMT (
MATERIAL_DETAIL_OBJID
,MATERIAL_MASTER_OBJID
,RESOURCE_OBJID
,QTY
,PRICE
,UNIT_PRICE
,BIGO
,PART_NAME
,DO_NO
,THICKNESS
,WIDTH
,HEIGHT
,OUT_DIAMETER
,IN_DIAMETER
,LENGTH
)
VALUES
(
#{MATERIAL_DETAIL_OBJID}::integer
,#{MATERIAL_MASTER_OBJID}::integer
,#{RESOURCE_OBJID}::integer
,#{QTY}
,#{PRICE}
,#{UNIT_PRICE}
,#{BIGO}
,#{PART_NAME }
,#{DO_NO }
,#{THICKNESS }
,#{WIDTH }
,#{HEIGHT }
,#{OUT_DIAMETER }
,#{IN_DIAMETER }
,#{LENGTH }
)
</insert>
<insert id="insertmaterMgmtSupSave" parameterType="map">
INSERT INTO MATERIAL_COMPANY_MGMT (
MATERIAL_COMPANY_OBJID
,PROJECT_MGMT_OBJID
,PART_MGMT_OBJID
,SUP_CD
,REG_DATE
,REG_USER_ID
)
VALUES
(
#{MATERIAL_COMPANY_OBJID}
,#{PROJECT_MGMT_OBJID}
,#{PART_MGMT_OBJID}
,#{SUP_CD}
,sysdate
,#{connectUserId}
)
</insert>
<update id="updatePartSupSave" parameterType="map">
UPDATE PART_MGMT
SET SUP_CD=#{SUP_CD}
WHERE PART_MGMT_OBJID =#{PART_MGMT_OBJID}
</update>
<delete id="deletematerMgmtSupAll" parameterType="map">
DELETE FROM MATERIAL_COMPANY_MGMT
WHERE PROJECT_MGMT_OBJID = #{PROJECT_MGMT_OBJID}
</delete>
<update id="mergematerMgmtSaveMaster" parameterType="map">
INSERT INTO
MATERIAL_MASTER_MGMT
(
MATERIAL_MASTER_OBJID
,ORDER_NO
,SUP_CD
,TITLE
,FINAL_ORDER_AMOUNT
,REASON
,DELIVERY_PLACE
,RECV_DATE
,REG_USER_ID
,RECV_USERID
,STATUS_CD
,REG_DATE
,DEL_YN
,ORDER_DATE
)
VALUES (
#{material_master_objid}::integer
,(SELECT 'PO'||TO_CHAR(NOW(),'yyyy')::VARCHAR ||'-'||LPAD((SELECT (COUNT(1)+1) FROM MATERIAL_MASTER_MGMT AS T)::VARCHAR ,3,'0'))
,#{sup_cd}
,#{title}
,trim(replace(#{final_order_amount},',',''))
,#{reason}
,#{delivery_place}
,#{recv_date}
,#{connectUserId}
,#{recv_userid}
,#{status_cd}
,now()
,'N'
,#{order_date}
) ON
CONFLICT (material_master_objid) DO
UPDATE
SET SUP_CD =#{sup_cd}
,TITLE =#{title}
,RECV_USERID =#{recv_userid}
,RECV_DATE =#{recv_date}
,FINAL_ORDER_AMOUNT =trim(replace(#{final_order_amount},',',''))
,REASON =#{reason}
,STATUS_CD =#{status_cd}
,ORDER_DATE =#{order_date}
</update>
<update id="updatematerMgmtSaveRegMaster" parameterType="map">
UPDATE MATERIAL_MASTER_MGMT
SET CHANGE_AMOUNT =TRIM(replace(#{change_amount},',',''))
,FINAL_ORDER_AMOUNT =TRIM(replace(#{final_order_amount},',',''))
<!-- ,REASON =#{reason} -->
<if test="status_cd !=null and status_cd != '' ">
,STATUS_CD =#{status_cd}
</if>
WHERE MATERIAL_MASTER_OBJID =#{material_master_objid}
</update>
<delete id="deletematerMgmtDetailAll" parameterType="map">
DELETE FROM MATERIAL_DETAIL_MGMT
WHERE MATERIAL_MASTER_OBJID = #{material_master_objid}::integer
</delete>
<select id="modifysearchPartMgmt" parameterType="map" resultType="map">
SELECT
T.RESOURCE_OBJID::varchar
,T.MATERIAL_DETAIL_OBJID::varchar
,T1.PRODUCT_TITLE
,(SELECT MAX(CODE_NAME) FROM COMM_CODE O WHERE O.CODE_ID = T1.PRODUCT_TITLE) AS PRODUCT_TITLE_NAME
,T.RESOURCE_OBJID AS STANDARD
,T1.STANDARD AS STANDARD_NAME
,T1.UNIT_TITLE AS UNIT
,T.QTY
,T.PRICE
,T.UNIT_PRICE
,T.BIGO
,T.WARE_DATE
,T.WARE_QTY
,T.WARE_QTY AS ORI_WARE_QTY
,T.LOCATION
,T.RESULT
FROM MATERIAL_DETAIL_MGMT T , RESOURCE_MNG T1
WHERE T.RESOURCE_OBJID = T1.OBJID
AND T.MATERIAL_MASTER_OBJID=#{material_master_objid}::integer
</select>
<select id="searchMaterPartMgmt" parameterType="map" resultType="map">
SELECT T.*
,T2.MATERIAL_MASTER_OBJID
,T2.RECV_DATE
,T1.MATERIAL_DETAIL_OBJID
,T1.QTY
,T1.UNIT_PRICE
,TO_CHAR(T1.UNIT_PRICE, '999,999,999,999,999') AS UNIT_PRICE1
,T1.UNIT_PRICE * T1.QTY AS PRICE
,TO_CHAR(T1.UNIT_PRICE * T1.QTY,'999,999,999,999,999') AS PRICE1
,T1.REQ_DATE
,T1.REC_DATE
,T1.RECEIVE_QTY
,T1.RESULT
,T1.PUR_USER_ID
,T1.DES_USER_ID
,T1.ACQ_USER_ID
,T1.ACQ_DATE
,T1.ACQ_QTY
,(SELECT COUNT(1) FROM ATTACH_FILE_INFO WHERE TARGET_OBJID = T1.MATERIAL_DETAIL_OBJID AND DOC_TYPE='RECV' AND UPPER(STATUS) = 'ACTIVE') AS FILE_CNT
FROM
(SELECT
T.PART_MGMT_OBJID
,PART_MGMT_PARENT_OBJID
,PROJECT_MGMT_OBJID
,TRIM(PART_NAME) AS PART_NAME
,PART_NO
,PARENT_PART_NO
,SPEC_CD
,CODE_NAME(SPEC_CD) AS SPEC_NAME
,MFA_CD
,CODE_NAME(MFA_CD) AS MFA_NAME
,PROCESS_CD
,CODE_NAME(PROCESS_CD) AS PROCESS_NAME
,SORT_CD
,CODE_NAME(SORT_CD) AS SORT_NAME
,SUP_CD
,(SELECT SUPPLY_NAME FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = SUP_CD) AS SUP_NAME
,REV
,TO_CHAR(REL_DATE,'YYYY-MM-DD') AS REL_DATE
,T.REG_DATE
,T.REG_USER_ID
,LEVEL AS PART_LEVEL
FROM PART_MGMT T
START WITH T.PART_NO = T.PARENT_PART_NO
CONNECT BY NOCYCLE PRIOR T.PART_NO = T.PARENT_PART_NO
ORDER SIBLINGS BY PARENT_PART_NO,REL_DATE DESC
) T ,MATERIAL_DETAIL_MGMT T1,MATERIAL_MASTER_MGMT T2
WHERE T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND T1.MATERIAL_MASTER_OBJID = T2.MATERIAL_MASTER_OBJID
<if test="sort_cd !=null and sort_cd !=''">
AND T.SORT_CD = #{sort_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T2.PROJECT_MGMT_OBJID = #{projectno}
</if>
ORDER BY RECV_DATE
</select>
<!-- 발주관리 상태를 접수상태로 변경 한다 -->
<update id="changeMaterRegStatus" parameterType="map">
UPDATE MATERIAL_MASTER_MGMT
SET STATUS_CD = 'PURSTCD00400'
WHERE MATERIAL_MASTER_OBJID = #{targetObjId}
</update>
<!-- 발주관리 상태를 발주완료상태로 변경 한다 -->
<update id="changeMaterOrdStatus" parameterType="map">
UPDATE MATERIAL_MASTER_MGMT
SET STATUS_CD = 'PURSTCD00700'
,ORDER_DATE = TO_CHAR(now(),'YYYY-MM-DD')
WHERE MATERIAL_MASTER_OBJID = #{targetObjId}::integer
</update>
<!-- 발주관리에 연결된 PART상태 발주로 상태 업데이트 -->
<update id="changePartStatus" parameterType="map">
UPDATE PART_MGMT
SET REL_STATUS = 'PRTS00200'
WHERE PART_MGMT_OBJID IN(SELECT PART_MGMT_OBJID
FROM MATERIAL_DETAIL_MGMT WHERE MATERIAL_MASTER_OBJID = #{targetObjId})
</update>
<!-- 발주관리에 연결된 PART상태 발주로 상태 업데이트 -->
<update id="changeRecPartStatus" parameterType="map">
UPDATE PART_MGMT
SET REL_STATUS = #{status}
WHERE PART_MGMT_OBJID = #{objId}
</update>
<!-- 부가세 현황 조회 -->
<select id="surtaxInfoList" parameterType="map" resultType="map">
SELECT
'매출' AS NAME
,'공급가액' AS NAME1
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'01'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON1
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'02'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON2
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'03'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON3
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'01' ,#{Year}||'02',#{Year}||'03')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS SUM1
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'04'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON4
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'05'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON5
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'06'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON6
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'04' ,#{Year}||'05',#{Year}||'06')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS SUM2
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'07'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON7
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'08'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON8
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'09'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON9
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'07' ,#{Year}||'08',#{Year}||'09')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS SUM3
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'10'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON10
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'11'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON11
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'12'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON12
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'10' ,#{Year}||'11',#{Year}||'12')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS SUM4
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
--,SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
GROUP BY TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYY')) AS TOTAL
FROM DUAL
UNION ALL
SELECT
'매출' AS NAME
,'세액' AS NAME1
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'01'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON1
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'02'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON2
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'03'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON3
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'01' ,#{Year}||'02',#{Year}||'03')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS SUM1
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'04'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON4
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'05'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON5
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
-SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'06'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON6
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'04' ,#{Year}||'05',#{Year}||'06')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS SUM2
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'07'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON7
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'08'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON8
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'09'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON9
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'07' ,#{Year}||'08',#{Year}||'09')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS SUM3
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'10'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON10
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'11'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON11
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'12'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON12
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'10' ,#{Year}||'11',#{Year}||'12')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS SUM4
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
SUM(SUR_PRICE) AS SUR_PRICE
--,SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
GROUP BY TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYY')) AS TOTAL
FROM DUAL
UNION ALL
SELECT
'매출' AS NAME
,'합계' AS NAME1
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'01'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON1
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'02'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON2
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'03'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON3
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'01' ,#{Year}||'02',#{Year}||'03')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS SUM1
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'04'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON4
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'05'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON5
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'06'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON6
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'04' ,#{Year}||'05',#{Year}||'06')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS SUM2
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'07'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON7
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'08'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON8
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'09'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON9
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'07' ,#{Year}||'08',#{Year}||'09')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS SUM3
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'10'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON10
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'11'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON11
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'12'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS MON12
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'10' ,#{Year}||'11',#{Year}||'12')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) AS SUM4
,(SELECT
--SUM(SUP_PRICE) AS SUP_PRICE
--SUM(SUR_PRICE) AS SUR_PRICE
SUM(TOTAL_PRICE) AS TOTAL_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
GROUP BY TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYY')) AS TOTAL
FROM DUAL
UNION ALL
SELECT
'매입' AS NAME
,'공급가액' AS NAME1
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'01'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
--GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON1
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'02'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
--GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON2
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'03'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON3
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'01' ,#{Year}||'02',#{Year}||'03')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS SUM1
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'04'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON4
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'05'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON5
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'06'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON6
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'04' ,#{Year}||'05',#{Year}||'06')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS SUM2
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'07'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON7
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'08'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON8
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'09'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON9
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'07' ,#{Year}||'08',#{Year}||'09')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS SUM3
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'10'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON10
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'11'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON11
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'12'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON12
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'10' ,#{Year}||'11',#{Year}||'12')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
--GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS SUM4
,(SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
--GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYY')
) AS TOTAL
FROM DUAL
UNION ALL
SELECT
'매입' AS NAME
,'세액' AS NAME1
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'01'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON1
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'02'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON2
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'03'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON3
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'01' ,#{Year}||'02',#{Year}||'03')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS SUM1
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'04'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON4
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'05'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON5
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'06'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON6
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'04' ,#{Year}||'05',#{Year}||'06')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS SUM2
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'07'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON7
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'08'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON8
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'09'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON9
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'07' ,#{Year}||'08',#{Year}||'09')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS SUM3
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'10'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON10
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'11'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON11
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'12'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON12
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'10' ,#{Year}||'11',#{Year}||'12')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS SUM4
,(SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYY')
) AS TOTAL
FROM DUAL
UNION ALL
SELECT
'매입' AS NAME
,'합계' AS NAME1
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'01'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON1
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'02'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON2
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'03'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON3
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'01' ,#{Year}||'02',#{Year}||'03')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS SUM1
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'04'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON4
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'05'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON5
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'06'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON6
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'04' ,#{Year}||'05',#{Year}||'06')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS SUM2
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'07'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON7
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'08'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON8
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'09'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON9
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'07' ,#{Year}||'08',#{Year}||'09')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS SUM3
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'10'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON10
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'11'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON11
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'12'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS MON12
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'10' ,#{Year}||'11',#{Year}||'12')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM')
) AS SUM4
,(SELECT
SUM(T.SUP_PRICE) * 0.1 + SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
-- GROUP BY TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYY')
) AS TOTAL
FROM DUAL
UNION ALL
SELECT
'부가세' AS NAME
,'세액기준(매출-매입)' AS NAME1
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'01'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'01'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS MON1
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'02'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'02'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS MON2
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'03'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'03'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS MON3
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'01' ,#{Year}||'02',#{Year}||'03')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'01' ,#{Year}||'02',#{Year}||'03')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS SUM1
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'04'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'04'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS MON4
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'05'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'05'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS MON5
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'06'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'06'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS MON6
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'04' ,#{Year}||'05',#{Year}||'06')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'04' ,#{Year}||'05',#{Year}||'06')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS SUM2
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'07'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'07'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS MON7
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'08'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'08'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS MON8
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'09'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
--AND T1.PROJECT_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'09'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS MON9
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'07' ,#{Year}||'08',#{Year}||'09')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'07' ,#{Year}||'08',#{Year}||'09')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS SUM3
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'10'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'10'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS MON10
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'11'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'11'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS MON11
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'12'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'12'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS MON12
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'10' ,#{Year}||'11',#{Year}||'12')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'10' ,#{Year}||'11',#{Year}||'12')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS SUM4
,(SELECT
SUM(SUR_PRICE) AS SUR_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
GROUP BY TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYY')) - (SELECT
SUM(T.SUP_PRICE) * 0.1
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
) AS TOTAL
FROM DUAL
UNION ALL
SELECT
'부가율' AS NAME
,'공급가액기준(매출-매입)/매출' AS NAME1
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'01'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'01'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'01'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS MON1
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'02'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'02'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'02'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS MON2
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'03'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'03'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'03'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS MON3
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'01' ,#{Year}||'02',#{Year}||'03')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'01' ,#{Year}||'02',#{Year}||'03')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'01' ,#{Year}||'02',#{Year}||'03')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS SUM1
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'04'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'04'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'04'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS MON4
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'05'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'05'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'05'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS MON5
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'06'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'06'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'06'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS MON6
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'04' ,#{Year}||'05',#{Year}||'06')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'04' ,#{Year}||'05',#{Year}||'06')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'04' ,#{Year}||'05',#{Year}||'06')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS SUM2
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'07'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'07'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'07'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS MON7
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'08'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'08'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'08'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS MON8
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'09'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'09'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'09'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS MON9
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'07' ,#{Year}||'08',#{Year}||'09')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'07' ,#{Year}||'08',#{Year}||'09')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'07' ,#{Year}||'08',#{Year}||'09')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS SUM3
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'10'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'10'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'10'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS MON10
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'11'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'11'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'11'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS MON11
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'12'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'12'
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Year}||'12'
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS MON12
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'10' ,#{Year}||'11',#{Year}||'12')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'10' ,#{Year}||'11',#{Year}||'12')
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
) - (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYYMM') IN( #{Year}||'10' ,#{Year}||'11',#{Year}||'12')
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) * 100 AS SUM4
,(SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
GROUP BY TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYY')) / ((SELECT
SUM(SUP_PRICE) AS SUP_PRICE
FROM SURTAX T
WHERE TO_CHAR(TO_DATE(REG_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
<if test="customer_cd !=null and customer_cd !=''">
AND T.CUSTOMER_CD = #{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
)
- (SELECT
SUM(T.SUP_PRICE)
FROM MATERIAL_DETAIL_MGMT t,PART_MGMT T1
WHERE T.SUP_PRICE !='0' AND T.SUP_PRICE IS NOT NULL
AND T.PART_MGMT_OBJID = T1.PART_MGMT_OBJID
AND TO_CHAR(TO_DATE(ACQ_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
<if test="customer_cd !=null and customer_cd !=''">
AND (SELECT CUSTOMER_CD FROM ORDER_MGMT O WHERE O.ORDER_MGMT_OBJID = T1.PROJECT_MGMT_OBJID)=#{customer_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND T1.PROJECT_MGMT_OBJID = #{projectno}
</if>
)) *100 AS TOTAL
FROM DUAL
WHERE 1 = 1
<!-- <if test="supply_cd !=null and supply_cd !=''">
AND SUP_CD = #{supply_cd}
</if>
<if test="projectno !=null and projectno != '' ">
AND PROJECT_MGMT_OBJID = #{projectno}
</if> -->
<if test="search_fromDate != null and !''.equals(search_fromDate)">
AND TO_DATE(REL_DATE,'YYYY-MM-DD') <![CDATA[ >= ]]> TO_DATE(#{search_fromDate}, 'YYYY-MM-DD')
</if>
<if test="search_toDate != null and !''.equals(search_toDate)">
AND TO_DATE(REL_DATE,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{search_toDate}, 'YYYY-MM-DD')
</if>
<!-- <if test="Year !=null and Year != '' ">
AND TO_CHAR(TO_DATE(B.DEL_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
AND TO_CHAR(TO_DATE(SUBSTR(PROJECT_NO,0,2),'YY'),'YYYY') = #{Year}
</if> -->
</select>
<select id="surtaxDetail" resultType="map" parameterType="map">
SELECT
T.OBJID
,CODE_NAME(T1.REGION_CD) AS REGION_CD
,T1.PROJECT_NO
,CODE_NAME(T1.CUSTOMER_CD) AS CUSTOMER_CD
,T.REG_DATE
,T.TITLE
,T.QTY
,T.PRICE
,T.SUP_PRICE
,T.SUR_PRICE
,T.TOTAL_PRICE
FROM SURTAX T,ORDER_MGMT T1
WHERE T.ORDER_MGMT_OBJID = T1.ORDER_MGMT_OBJID
AND TO_CHAR(TO_DATE(T.REG_DATE,'YYYY-MM-DD'),'YYYYMM') = #{Date}
<if test="projectno !=null and projectno != '' ">
AND T.ORDER_MGMT_OBJID = #{projectno}
</if>
</select>
<select id="partMgmtListCnt" parameterType="map" resultType="map">
SELECT CEIL(TOTAL_CNT/#{COUNT_PER_PAGE}) MAX_PAGE_SIZE,
TOTAL_CNT
FROM (
SELECT COUNT(1) AS TOTAL_CNT FROM (SELECT T.*,ROWNUM AS RNUM
FROM
(SELECT DISTINCT PMS_PART_MGMT.*
FROM
(
SELECT DISTINCT
PART_MGMT_OBJID
,PART_MGMT_PARENT_OBJID
,PROJECT_MGMT_OBJID
,PART_NAME
,PART_NO
,PARENT_PART_NO
,SPEC_CD
,CODE_NAME(SPEC_CD) AS SPEC_NAME
,MFA_CD
,CODE_NAME(MFA_CD) AS MFA_NAME
,QTY
,PROCESS_CD
,CODE_NAME(PROCESS_CD) AS PROCESS_NAME
,SORT_CD
,CODE_NAME(SORT_CD) AS SORT_NAME
,SUP_CD
,(SELECT SUPPLY_NAME FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = SUP_CD) AS SUP_NAME
,REV
,TO_CHAR(REL_DATE,'YYYY-MM-DD') AS REL_DATE
,REG_DATE
,REG_USER_ID
,IS_LAST
,REL_STATUS
FROM PART_MGMT T
WHERE 1=1
AND T.DEL_YN='N'
AND T.STATUS='complete'
AND T.IS_LAST='1'
AND PROJECT_MGMT_OBJID = #{objId}
) PMS_PART_MGMT
WHERE 1=1
START WITH PMS_PART_MGMT.PART_NO = PMS_PART_MGMT.PARENT_PART_NO
CONNECT BY NOCYCLE PRIOR PMS_PART_MGMT.PART_NO = PMS_PART_MGMT.PARENT_PART_NO
ORDER SIBLINGS BY PMS_PART_MGMT.PART_NO,PMS_PART_MGMT.PART_NAME
) T
WHERE 1=1
<choose>
<when test="gubun != null and 'balju'.equals(gubun)">
AND REL_STATUS IN('PRTS00200','PRTS00300')
AND SORT_CD IS NOT NULL
</when>
<when test="gubun != null and 'mibalju'.equals(gubun)">
AND NVL(REL_STATUS,'PRTS00100')='PRTS00100'
AND SORT_CD IS NOT NULL
</when>
<otherwise>
-- AND REL_STATUS IN('PRTS00100','PRTS00200','PRTS00300')
AND SORT_CD IS NOT NULL
</otherwise>
</choose>
)T
WHERE 1=1
) T
</select>
<!-- PART 관리 목록 조회 -->
<select id="partMgmtList" parameterType="map" resultType="map">
SELECT * FROM (SELECT T.*,LEVEL AS LEV ,
ROWNUM AS RNUM FROM (SELECT T.*
FROM
(SELECT DISTINCT PMS_PART_MGMT.*
FROM
(
SELECT DISTINCT
PART_MGMT_OBJID
,PART_MGMT_PARENT_OBJID
,PROJECT_MGMT_OBJID
,PART_NAME
,PART_NO
,PARENT_PART_NO
,SPEC_CD
,CODE_NAME(SPEC_CD) AS SPEC_NAME
,MFA_CD
,CODE_NAME(MFA_CD) AS MFA_NAME
,QTY
,PROCESS_CD
,CODE_NAME(PROCESS_CD) AS PROCESS_NAME
,SORT_CD
,CODE_NAME(SORT_CD) AS SORT_NAME
,SUP_CD
,(SELECT SUPPLY_NAME FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = SUP_CD) AS SUP_NAME
,REV
,TO_CHAR(REL_DATE,'YYYY-MM-DD') AS REL_DATE
,REG_DATE
,REG_USER_ID
,IS_LAST
,REL_STATUS
,CODE_NAME(REL_STATUS) AS REL_STATUS_NAME
FROM PART_MGMT T
WHERE 1=1
AND T.DEL_YN='N'
AND T.STATUS='complete'
AND T.IS_LAST='1'
AND PROJECT_MGMT_OBJID = #{objId}
) PMS_PART_MGMT
WHERE 1=1
) T )T
WHERE 1=1
<choose>
<when test="gubun != null and 'balju'.equals(gubun)">
AND REL_STATUS IN('PRTS00200','PRTS00300')
AND SORT_CD IS NOT NULL
</when>
<when test="gubun != null and 'mibalju'.equals(gubun)">
AND NVL(REL_STATUS,'PRTS00100')='PRTS00100'
AND SORT_CD IS NOT NULL
</when>
<otherwise>
--AND REL_STATUS IN('PRTS00100','PRTS00200','PRTS00300')
AND SORT_CD IS NOT NULL
</otherwise>
</choose>
START WITH PART_NO = PARENT_PART_NO CONNECT BY NOCYCLE PRIOR PART_NO = PARENT_PART_NO
ORDER SIBLINGS BY PART_NO,PART_NAME )
WHERE 1=1
<if test="PAGE_END != null and PAGE_END != ''">
<![CDATA[ AND RNUM <= #{PAGE_END} ]]>
</if>
<if test="PAGE_START != null and PAGE_START != ''">
<![CDATA[ AND RNUM >= #{PAGE_START} ]]>
</if>
</select>
<select id="materialListCnt" parameterType="map" resultType="map">
SELECT CEIL(TOTAL_CNT/#{COUNT_PER_PAGE}) MAX_PAGE_SIZE,
TOTAL_CNT
FROM (
SELECT COUNT(1) AS TOTAL_CNT FROM (SELECT T.*,ROWNUM AS RNUM
FROM
(SELECT DISTINCT PMS_PART_MGMT.*
FROM
(
SELECT DISTINCT
PART_MGMT_OBJID
,PART_MGMT_PARENT_OBJID
,PROJECT_MGMT_OBJID
,PART_NAME
,PART_NO
,PARENT_PART_NO
,SPEC_CD
,CODE_NAME(SPEC_CD) AS SPEC_NAME
,MFA_CD
,CODE_NAME(MFA_CD) AS MFA_NAME
,QTY
,PROCESS_CD
,CODE_NAME(PROCESS_CD) AS PROCESS_NAME
,SORT_CD
,CODE_NAME(SORT_CD) AS SORT_NAME
,SUP_CD
,(SELECT SUPPLY_NAME FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = SUP_CD) AS SUP_NAME
,REV
,TO_CHAR(REL_DATE,'YYYY-MM-DD') AS REL_DATE
,REG_DATE
,REG_USER_ID
,IS_LAST
,REL_STATUS
FROM PART_MGMT T
WHERE 1=1
<if test="objId !=null and objId != '' ">
AND PROJECT_MGMT_OBJID = #{objId}
</if>
AND T.DEL_YN='N'
AND T.STATUS='complete'
) PMS_PART_MGMT
WHERE 1=1
START WITH PMS_PART_MGMT.PART_NO = PMS_PART_MGMT.PARENT_PART_NO
CONNECT BY NOCYCLE PRIOR PMS_PART_MGMT.PART_NO = PMS_PART_MGMT.PARENT_PART_NO
ORDER SIBLINGS BY PMS_PART_MGMT.PART_NO,PMS_PART_MGMT.PART_NAME
) T
WHERE 1=1
AND PART_MGMT_OBJID
IN(
SELECT T1.PART_MGMT_OBJID FROM MATERIAL_MASTER_MGMT T,
(SELECT MATERIAL_MASTER_OBJID,PART_MGMT_OBJID FROM MATERIAL_DETAIL_MGMT T1
<choose>
<when test="gubun != null and 'ibgo'.equals(gubun)">
WHERE T1.QTY = T1.RECEIVE_QTY
</when>
<when test="gubun != null and 'miibgo'.equals(gubun)">
<!-- WHERE T1.QTY != T1.RECEIVE_QTY -->
WHERE T1.RESULT='RCR00200' OR T1.QTY != T1.RECEIVE_QTY
</when>
<otherwise>
WHERE T.RELS_CD='RELS00200'
</otherwise>
</choose>
) T1
WHERE T.MATERIAL_MASTER_OBJID = T1.MATERIAL_MASTER_OBJID(+)
AND T.DEL_YN='N'
)
)T
WHERE 1=1
) T
</select>
<!-- PART 관리 목록 조회 -->
<select id="materialList" parameterType="map" resultType="map">
SELECT * FROM (SELECT T.*,LEVEL AS LEV ,
ROWNUM AS RNUM FROM (SELECT T.*
FROM
(SELECT DISTINCT PMS_PART_MGMT.*
FROM
(
SELECT DISTINCT
PART_MGMT_OBJID
,PART_MGMT_PARENT_OBJID
,PROJECT_MGMT_OBJID
,PART_NAME
,PART_NO
,PARENT_PART_NO
,SPEC_CD
,CODE_NAME(SPEC_CD) AS SPEC_NAME
,MFA_CD
,CODE_NAME(MFA_CD) AS MFA_NAME
,QTY
,PROCESS_CD
,CODE_NAME(PROCESS_CD) AS PROCESS_NAME
,SORT_CD
,CODE_NAME(SORT_CD) AS SORT_NAME
,SUP_CD
,(SELECT SUPPLY_NAME FROM SUPPLY_MNG O WHERE O.SUPPLY_CODE = SUP_CD) AS SUP_NAME
,REV
,TO_CHAR(REL_DATE,'YYYY-MM-DD') AS REL_DATE
,REG_DATE
,REG_USER_ID
,IS_LAST
,REL_STATUS
,CODE_NAME(REL_STATUS) AS REL_STATUS_NAME
FROM PART_MGMT T
WHERE 1=1
<if test="objId !=null and objId != '' ">
AND PROJECT_MGMT_OBJID = #{objId}
</if>
AND T.DEL_YN='N'
AND T.STATUS='complete'
) PMS_PART_MGMT
WHERE 1=1
) T )T
WHERE 1=1
AND PART_MGMT_OBJID
IN(
SELECT T1.PART_MGMT_OBJID FROM MATERIAL_MASTER_MGMT T,
(SELECT MATERIAL_MASTER_OBJID,PART_MGMT_OBJID FROM MATERIAL_DETAIL_MGMT T1
<choose>
<when test="gubun != null and 'ibgo'.equals(gubun)">
WHERE T1.QTY = T1.RECEIVE_QTY
</when>
<when test="gubun != null and 'miibgo'.equals(gubun)">
<!-- WHERE T1.QTY != T1.RECEIVE_QTY -->
WHERE T1.RESULT='RCR00200' OR T1.QTY != T1.RECEIVE_QTY
</when>
<otherwise>
WHERE T.RELS_CD='RELS00200'
</otherwise>
</choose>
) T1
WHERE T.MATERIAL_MASTER_OBJID = T1.MATERIAL_MASTER_OBJID(+)
AND T.DEL_YN='N'
)
START WITH PART_NO = PARENT_PART_NO CONNECT BY NOCYCLE PRIOR PART_NO = PARENT_PART_NO
ORDER SIBLINGS BY PART_NO,PART_NAME )
WHERE 1=1
<if test="PAGE_END != null and PAGE_END != ''">
<![CDATA[ AND RNUM <= #{PAGE_END} ]]>
</if>
<if test="PAGE_START != null and PAGE_START != ''">
<![CDATA[ AND RNUM >= #{PAGE_START} ]]>
</if>
</select>
<insert id="mergematerRecInventory" parameterType="map">
INSERT INTO
INVENTORY_MNG
(
OBJID
,PARENT_OBJID
,DIVISION
,QTY
,LOCATION
,REMARK
,REGDATE
,EDITDATE
,WRITER
,IS_LAST
)
VALUES (
#{OBJID}::numeric
,#{RESOURCE_OBJID}::numeric
,null
,#{WARE_QTY}
,#{LOCATION}
,'자재발주 입고 자동등록'
,now()
,null
,#{WRITER}
,'Y'
)
</insert>
<select id="inventoryMng" parameterType="map" resultType="map">
SELECT DIVISION
,QTY
FROM INVENTORY_MNG T
WHERE T.PARENT_OBJID = #{RESOURCE_OBJID}::numeric
AND T.LOCATION = #{LOCATION}
ORDER BY REGDATE DESC
LIMIT 1
</select>
<update id="InventoryAllupdate" parameterType="map">
UPDATE INVENTORY_MNG
SET IS_LAST='N'
WHERE PARENT_OBJID = #{RESOURCE_OBJID}::numeric
AND LOCATION = #{LOCATION}
</update>
<select id="getMATERIAL_DETAIL_MGMT" parameterType="map" resultType="map">
SELECT T.*
FROM MATERIAL_DETAIL_MGMT T
WHERE T.MATERIAL_MASTER_OBJID = #{objId}::integer
</select>
</mapper>