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

Reviewed-on: #256
This commit is contained in:
ysCha 2025-12-10 09:36:24 +09:00
commit f612c8dba6
4 changed files with 23 additions and 13 deletions

View File

@ -254,15 +254,22 @@ public class PwrGnrSimService {
dKoubai[i] = (2 * Math.PI) * (Double.parseDouble(data.getSlopeAngle()) / 360); dKoubai[i] = (2 * Math.PI) * (Double.parseDouble(data.getSlopeAngle()) / 360);
} }
dHoui[i] = Math.abs((2 * Math.PI) * (Double.parseDouble(data.getAzimuth()) / 360)); // dHoui[i] = Math.abs((2 * Math.PI) * (Double.parseDouble(data.getAzimuth()) / 360));
dHoui[i] = (2 * Math.PI) * (Double.parseDouble(data.getAzimuth()) / 360);
// 지붕별 모듈정보 셋팅 // 지붕별 모듈정보 셋팅
int j = 0; int j = 0;
for (PwrGnrSimRoofResponse m : moduleGroupList) { for (PwrGnrSimRoofResponse m : moduleGroupList) {
if (data.getRoofSurfaceId().equals(m.getRoofSurfaceId())) { if (data.getRoofSurfaceId().equals(m.getRoofSurfaceId())) {
dSpecification += m.getTotSpecification(); dSpecification += m.getTotSpecification();
if (j == 0) { if (j == 0) {
dModuleInput1[i] = Integer.parseInt(m.getAmount()); if(pwrGnrSimReq.getModule1().equals(m.getItemId())){
dModuleInput1[i] = Integer.parseInt(m.getAmount());
}else if(pwrGnrSimReq.getModule2().equals(m.getItemId())){
dModuleInput2[i] = Integer.parseInt(m.getAmount());
}else if(pwrGnrSimReq.getModule3().equals(m.getItemId())){
dModuleInput3[i] = Integer.parseInt(m.getAmount());
}
} else if (j == 1) { } else if (j == 1) {
dModuleInput2[i] = Integer.parseInt(m.getAmount()); dModuleInput2[i] = Integer.parseInt(m.getAmount());
} else { } else {
@ -409,7 +416,7 @@ public class PwrGnrSimService {
// PCS1, pcs2, pcs3 선택 정보 // PCS1, pcs2, pcs3 선택 정보
double pcs1_henkankouritsu = pwrGnrSimReq.getPcsCnvEff1() / 100; // 변환 효율 double pcs1_henkankouritsu = pwrGnrSimReq.getPcsCnvEff1() / 100; // 변환 효율
double pcs1_youryou = pwrGnrSimReq.getPcsSpecification1(); // 용량 (예시 4.4) double pcs1_youryou = pwrGnrSimReq.getPcsSpecification1(); // 용량 (예시 4.4)
double pcs2_henkankouritsu = pwrGnrSimReq.getPcsCnvEff2() / 100; double pcs2_henkankouritsu = (pwrGnrSimReq.getPcsCnvEff2() / 100);
double pcs2_youryou = pwrGnrSimReq.getPcsSpecification2(); double pcs2_youryou = pwrGnrSimReq.getPcsSpecification2();
double pcs3_henkankouritsu = pwrGnrSimReq.getPcsCnvEff3() / 100; double pcs3_henkankouritsu = pwrGnrSimReq.getPcsCnvEff3() / 100;
double pcs3_youryou = pwrGnrSimReq.getPcsSpecification3(); double pcs3_youryou = pwrGnrSimReq.getPcsSpecification3();
@ -425,12 +432,12 @@ public class PwrGnrSimService {
// pcs1과 pcs2, pcs3의 실효 변환 효율 낮은 값을 사용 // pcs1과 pcs2, pcs3의 실효 변환 효율 낮은 값을 사용
double[] values = {pcs1_henkankouritsu, pcs2_henkankouritsu, pcs3_henkankouritsu}; double[] values = {pcs1_henkankouritsu, pcs2_henkankouritsu, pcs3_henkankouritsu};
double pcs_henkankouritsu = // double pcs_henkankouritsu =
Arrays.stream(values) // Arrays.stream(values)
.filter(value -> value > 0.0) // 0.0 제외 // .filter(value -> value > 0.0) // 0.0 제외
.min() // .min()
.orElse(0.0); // 모두 0.0인 경우 기본값 반환 // .orElse(0.0); // 모두 0.0인 경우 기본값 반환
double pcs_henkankouritsu = Math.min(pcs1_henkankouritsu,pcs2_henkankouritsu);
// pcs 용량 계산 // pcs 용량 계산
double pcs_youryou_total = (pcs1_youryou * pcs1_number) double pcs_youryou_total = (pcs1_youryou * pcs1_number)
+ (pcs2_youryou * pcs2_number) + (pcs2_youryou * pcs2_number)

View File

@ -133,6 +133,7 @@
LEFT OUTER JOIN T_SIMULATION_AREA MPA WITH (NOLOCK) LEFT OUTER JOIN T_SIMULATION_AREA MPA WITH (NOLOCK)
ON O.PREF_ID = MPA.PREF_ID ON O.PREF_ID = MPA.PREF_ID
AND OI.AREA_ID = MPA.AREA_ID AND OI.AREA_ID = MPA.AREA_ID
AND MPA.DEL_FLG = 0
LEFT OUTER JOIN M_COMM_L C1 WITH (NOLOCK) LEFT OUTER JOIN M_COMM_L C1 WITH (NOLOCK)
ON C1.HEAD_CD = '202000' ON C1.HEAD_CD = '202000'
AND P.STANDARD_WIND_SPEED_ID = C1.CODE AND P.STANDARD_WIND_SPEED_ID = C1.CODE

View File

@ -18,7 +18,7 @@
, A.PREF_ID , A.PREF_ID
, A.AREA_NAME AS PREF_NAME , A.AREA_NAME AS PREF_NAME
FROM T_SIMULATION_AREA A WITH (NOLOCK) FROM T_SIMULATION_AREA A WITH (NOLOCK)
WHERE A.PREF_ID = #{prefId} WHERE A.PREF_ID = #{prefId} AND A.DEL_FLG = 0
ORDER BY A.AREA_ID ASC ORDER BY A.AREA_ID ASC
</select> </select>
@ -394,9 +394,11 @@
ON O.PREF_ID = P.PREF_ID ON O.PREF_ID = P.PREF_ID
LEFT OUTER JOIN T_SIMULATION_AREA PA LEFT OUTER JOIN T_SIMULATION_AREA PA
ON OI.AREA_ID = PA.AREA_ID ON OI.AREA_ID = PA.AREA_ID
AND PA.DEL_FLG = 0
WHERE O.OBJECT_NO = #{objectNo} WHERE O.OBJECT_NO = #{objectNo}
AND OI.SOURCE_ORIGIN = 'QCAST_III' AND OI.SOURCE_ORIGIN = 'QCAST_III'
AND (OI.ORG_DEL_FLG = '0' OR (OI.TEMP_FLG = '1' AND OI.TEMP_DEL_FLG = '0')) AND (OI.ORG_DEL_FLG = '0' OR (OI.TEMP_FLG = '1' AND OI.TEMP_DEL_FLG = '0'))
</select> </select>
<select id="selectObjectNo" parameterType="com.interplug.qcast.biz.object.dto.ObjectRequest" resultType="String"> <select id="selectObjectNo" parameterType="com.interplug.qcast.biz.object.dto.ObjectRequest" resultType="String">

View File

@ -16,10 +16,10 @@
, B.PREF_ID /* 도도부현 */ , B.PREF_ID /* 도도부현 */
, (SELECT PREF_NAME FROM T_SIMULATION_PREFECTURE WHERE PREF_ID = B.PREF_ID ) AS PREF_NAME , (SELECT PREF_NAME FROM T_SIMULATION_PREFECTURE WHERE PREF_ID = B.PREF_ID ) AS PREF_NAME
, B1.AREA_ID /* 일사량 관측지점 */ , B1.AREA_ID /* 일사량 관측지점 */
, (SELECT AREA_NAME FROM T_SIMULATION_AREA WHERE AREA_ID = B1.AREA_ID ) AS AREA_NAME , (SELECT AREA_NAME FROM T_SIMULATION_AREA WHERE AREA_ID = B1.AREA_ID AND DEL_FLG = 0) AS AREA_NAME
, B.OBJECT_NAME /* 물건명 */ , B.OBJECT_NAME /* 물건명 */
, B.OBJECT_NAME_OMIT /* 물건명(영문) */ , B.OBJECT_NAME_OMIT /* 물건명(영문) */
, (SELECT SIMULATION_CODE FROM T_SIMULATION_AREA WHERE AREA_ID = B1.AREA_ID) AS SIMULATION_CODE , (SELECT SIMULATION_CODE FROM T_SIMULATION_AREA WHERE AREA_ID = B1.AREA_ID AND DEL_FLG = 0) AS SIMULATION_CODE
FROM T_PLAN A WITH (NOLOCK) FROM T_PLAN A WITH (NOLOCK)
INNER JOIN T_PLAN_INFO A1 WITH (NOLOCK) INNER JOIN T_PLAN_INFO A1 WITH (NOLOCK)
ON A.OBJECT_NO = A1.OBJECT_NO ON A.OBJECT_NO = A1.OBJECT_NO