Merge pull request 'dev' (#332) from dev into prd-deploy

Reviewed-on: #332
This commit is contained in:
ysCha 2026-01-20 13:53:52 +09:00
commit e7b30c2058

View File

@ -367,12 +367,14 @@
<select id="selectEstimateRoofCertVolKw" parameterType="com.interplug.qcast.biz.estimate.dto.EstimateRequest" resultType="String">
/* sqlid : com.interplug.qcast.biz.estimate.selectEstimateRoofCertVolKw */
SELECT
/* FORMAT(ISNULL(SUM(CASE WHEN T.MODULE_VOL_KW <![CDATA[ <= ]]> T.PC_VOL_KW THEN T.MODULE_VOL_KW ELSE T.PC_VOL_KW END), 0), '#,##0.000') AS CERT_VOL_KW */
REPLACE(CONVERT(VARCHAR, SUM(CAST(ISNULL(
REPLACE(
CAST(
ISNULL(
CASE
WHEN T.MODULE_VOL_KW <![CDATA[ <= ]]> T.PC_VOL_KW THEN T.MODULE_VOL_KW
ELSE T.PC_VOL_KW
END, 0) AS NUMERIC(18, 3))), 1), ',', '') AS CERT_VOL_KW
WHEN 0 <![CDATA[ < ]]> SUM(T.CUST_VOL_KW) AND SUM(T.CUST_VOL_KW) <![CDATA[ < ]]> SUM(T.MODULE_VOL_KW) THEN SUM(T.CUST_VOL_KW)
WHEN 0 <![CDATA[ < ]]> SUM(T.PCS_VOL_KW) AND SUM(T.PCS_VOL_KW) <![CDATA[ < ]]> SUM(T.MODULE_VOL_KW) THEN SUM(T.PCS_VOL_KW)
ELSE SUM(T.MODULE_VOL_KW)
END, 0 ) AS NUMERIC(18, 3)), ',', '') AS CERT_VOL_KW
FROM
(
SELECT
@ -384,19 +386,28 @@
, I.ITEM_NAME
, ROUND((PE.AMOUNT * CAST(ISNULL(PE.SPECIFICATION, 0) AS FLOAT) / 1000), 4) AS PC_VOL_KW
, ISNULL((
SELECT
SUM((AMOUNT * CAST(ISNULL(SPECIFICATION, 0) AS FLOAT) / 1000))
FROM T_PART_ROOF_ITEM_ESTIMATE (NOLOCK)
WHERE OBJECT_NO = PE.OBJECT_NO
AND PLAN_NO = PE.PLAN_NO
/*AND ISNULL(NULLIF(QCAST_CUST_PRD_ID, ''), PC_ITEM_ID) = PE.ITEM_ID*/
AND (
(QCAST_CUST_PRD_ID IS NOT NULL AND QCAST_CUST_PRD_ID = PC_ITEM_ID AND ISNULL(QCAST_CUST_PRD_ID, '') = PE.ITEM_ID)
OR
(QCAST_CUST_PRD_ID IS NULL AND PC_ITEM_ID = PE.ITEM_ID)
OR
(QCAST_CUST_PRD_ID IS NOT NULL AND QCAST_CUST_PRD_ID != PC_ITEM_ID AND QCAST_CUST_PRD_ID = PE.ITEM_ID))), 0) AS MODULE_VOL_KW
FROM T_PLAN P WITH (NOLOCK)
SELECT
SUM((AMOUNT * CAST(ISNULL(SPECIFICATION, 0) AS FLOAT) / 1000))
FROM T_PART_ROOF_ITEM_ESTIMATE (NOLOCK)
WHERE OBJECT_NO = PE.OBJECT_NO
AND PLAN_NO = PE.PLAN_NO
AND QCAST_CUST_PRD_ID = PE.ITEM_ID), 0) AS CUST_VOL_KW
, ISNULL((
SELECT
SUM((AMOUNT * CAST(ISNULL(SPECIFICATION, 0) AS FLOAT) / 1000))
FROM T_PART_ROOF_ITEM_ESTIMATE (NOLOCK)
WHERE OBJECT_NO = PE.OBJECT_NO
AND PLAN_NO = PE.PLAN_NO
AND PC_ITEM_ID = PE.ITEM_ID), 0) AS PCS_VOL_KW
, ISNULL((
SELECT
SUM((AMOUNT * CAST(ISNULL(SPECIFICATION, 0) AS FLOAT) / 1000))
FROM T_PART_ROOF_ITEM_ESTIMATE (NOLOCK)
WHERE OBJECT_NO = PE.OBJECT_NO
AND PLAN_NO = PE.PLAN_NO
AND ITEM_ID = PE.ITEM_ID), 0) AS MODULE_VOL_KW
FROM T_PLAN P WITH (NOLOCK)
INNER JOIN T_PART_ESTIMATE PE WITH (NOLOCK)
ON P.OBJECT_NO = PE.OBJECT_NO
AND P.PLAN_NO = PE.PLAN_NO
@ -404,11 +415,10 @@
ON PE.ITEM_ID = I.ITEM_ID
WHERE P.OBJECT_NO = #{objectNo}
AND P.PLAN_NO = #{planNo}
-- AND I.POWER_COM_FLG = '1' /* PCS 아이템만 */
AND (
CASE
WHEN I.POWER_COM_FLG = '1' THEN 1
WHEN I.POWER_COM_FLG != '1' AND I.ITEM_GROUP = 'STORAGE_BATTERY' AND ISNULL(I.PNOW_W, 0) > 0 THEN 1
WHEN I.POWER_COM_FLG != '1' AND ISNULL(I.PNOW_W, 0) > 0 THEN 1
ELSE 0
END
) = 1