구매요청서

This commit is contained in:
leeheejin
2025-11-25 12:02:52 +09:00
parent 8c1287dd04
commit f22119fbbe
6 changed files with 713 additions and 397 deletions

View File

@@ -585,55 +585,73 @@
</select>
<update id="mergeSalesRequestMasterInfo" parameterType="map">
INSERT INTO SALES_REQUEST_MASTER
(
OBJID,
REQUEST_MNG_NO,
REQUEST_CD,
PROJECT_NO,
RELEASE_DATE,
REQUEST_REASONS,
REQUEST_USER_ID,
DELIVERY_REQUEST_DATE,
UNIT_NAME,
STATUS,
RECEIPT_USER_ID,
RECEIPT_DATE,
WRITER,
REMARK,
REGDATE
)
VALUES
(
#{SALES_REQUEST_MASTER_OBJID },
(SELECT 'R'||TO_CHAR(NOW(),'YYYYMMDD')||'-'||LPAD((COALESCE(MAX(SUBSTR(REQUEST_MNG_NO,11,13)),'0')::INTEGER+1)::TEXT,3,'0') FROM SALES_REQUEST_MASTER),
#{REQUEST_CD },
#{PROJECT_NO },
#{RELEASE },
#{REQUEST_REASONS },
#{REQUEST_USER_ID },
#{DELIVERY_REQUEST_DATE },
#{UNIT_NAME },
#{STATUS },
#{RECEIPT_USER_ID },
#{RECEIPT_DATE },
#{WRITER },
#{REMARK },
NOW()
) ON CONFLICT (OBJID) DO
UPDATE
SET
REQUEST_CD = #{REQUEST_CD },
PROJECT_NO = #{PROJECT_NO },
RELEASE_DATE = #{RELEASE },
REQUEST_REASONS = #{REQUEST_REASONS },
REQUEST_USER_ID = #{REQUEST_USER_ID },
DELIVERY_REQUEST_DATE = #{DELIVERY_REQUEST_DATE },
UNIT_NAME = #{UNIT_NAME },
STATUS = #{STATUS },
RECEIPT_USER_ID = #{RECEIPT_USER_ID },
RECEIPT_DATE = #{RECEIPT_DATE },
REMARK = #{REMARK }
INSERT INTO SALES_REQUEST_MASTER
(
OBJID,
REQUEST_MNG_NO,
REQUEST_CD,
PROJECT_NO,
RELEASE_DATE,
REQUEST_REASONS,
REQUEST_USER_ID,
DELIVERY_REQUEST_DATE,
UNIT_NAME,
STATUS,
RECEIPT_USER_ID,
RECEIPT_DATE,
WRITER,
REMARK,
REGDATE,
PURCHASE_TYPE,
ORDER_TYPE,
PRODUCT_NAME,
AREA_CD,
CUSTOMER_OBJID,
PAID_TYPE
)
VALUES
(
#{SALES_REQUEST_MASTER_OBJID },
(SELECT 'R'||TO_CHAR(NOW(),'YYYYMMDD')||'-'||LPAD((COALESCE(MAX(SUBSTR(REQUEST_MNG_NO,11,13)),'0')::INTEGER+1)::TEXT,3,'0') FROM SALES_REQUEST_MASTER),
#{REQUEST_CD },
#{PROJECT_NO },
#{RELEASE },
#{REQUEST_REASONS },
#{REQUEST_USER_ID },
#{DELIVERY_REQUEST_DATE },
#{UNIT_NAME },
#{STATUS },
#{RECEIPT_USER_ID },
#{RECEIPT_DATE },
#{WRITER },
#{REMARK },
NOW(),
#{PURCHASE_TYPE },
#{ORDER_TYPE },
#{PRODUCT_NAME },
#{AREA_CD },
#{CUSTOMER_OBJID },
#{PAID_TYPE }
) ON CONFLICT (OBJID) DO
UPDATE
SET
REQUEST_CD = #{REQUEST_CD },
PROJECT_NO = #{PROJECT_NO },
RELEASE_DATE = #{RELEASE },
REQUEST_REASONS = #{REQUEST_REASONS },
REQUEST_USER_ID = #{REQUEST_USER_ID },
DELIVERY_REQUEST_DATE = #{DELIVERY_REQUEST_DATE },
UNIT_NAME = #{UNIT_NAME },
STATUS = #{STATUS },
RECEIPT_USER_ID = #{RECEIPT_USER_ID },
RECEIPT_DATE = #{RECEIPT_DATE },
REMARK = #{REMARK },
PURCHASE_TYPE = #{PURCHASE_TYPE },
ORDER_TYPE = #{ORDER_TYPE },
PRODUCT_NAME = #{PRODUCT_NAME },
AREA_CD = #{AREA_CD },
CUSTOMER_OBJID = #{CUSTOMER_OBJID },
PAID_TYPE = #{PAID_TYPE }
</update>
<select id="getSalesRequestMasterInfo" parameterType="map" resultType="map">
@@ -643,12 +661,12 @@
SRM.REQUEST_CD,
(SELECT CODE_NAME FROM COMM_CODE CC WHERE CC.CODE_ID = SRM.REQUEST_CD) AS REQUEST_CD_NAME,
SRM.PROJECT_NO,
(SELECT PROJECT_NO FROM PROJECT_MGMT PM WHERE PM.OBJID = SRM.PROJECT_NO) AS PROJECT_NUMBER,
(SELECT PROJECT_NAME FROM PROJECT_MGMT PM WHERE PM.OBJID = SRM.PROJECT_NO) AS PROJECT_NAME,
(SELECT SETUP FROM PROJECT_MGMT PM WHERE PM.OBJID = SRM.PROJECT_NO) AS SETUP,
(SELECT SUPPLY_NAME FROM SUPPLY_MNG AS O WHERE O.OBJID = (SELECT CUSTOMER_OBJID FROM PROJECT_MGMT PM WHERE PM.OBJID = SRM.PROJECT_NO)::NUMERIC) AS CUSTOMER_NAME,
(SELECT CODE_NAME(PM.PRODUCT) FROM PROJECT_MGMT PM WHERE PM.OBJID = SRM.PROJECT_NO) AS PRODUCT_NAME,
(SELECT MECHANICAL_TYPE FROM PROJECT_MGMT PM WHERE PM.OBJID = SRM.PROJECT_NO) AS MECHANICAL_TYPE,
PM.PROJECT_NO AS PROJECT_NUMBER,
PM.PROJECT_NAME,
PM.SETUP,
SM.SUPPLY_NAME AS CUSTOMER_NAME,
SM.OBJID::VARCHAR AS CUSTOMER_OBJID, -- 고객사 OBJID (드롭다운 선택용)
PM.MECHANICAL_TYPE,
SRM.RELEASE_DATE,
SRM.REQUEST_REASONS,
(SELECT CODE_NAME FROM COMM_CODE CC WHERE CC.CODE_ID = SRM.REQUEST_REASONS) AS REQUEST_REASONS_NAME,
@@ -669,16 +687,30 @@
END STATUS_TITLE,
SRM.RECEIPT_USER_ID,
(SELECT DEPT_NAME||' '||USER_NAME FROM USER_INFO WHERE USER_ID = SRM.RECEIPT_USER_ID) AS RECEIPT_USER_NAME,
RECEIPT_DATE,
SRM.RECEIPT_DATE,
SRM.WRITER,
(SELECT DEPT_NAME||' '||USER_NAME FROM USER_INFO WHERE USER_ID = SRM.WRITER) AS WRITER_NAME,
SRM.REGDATE,
TO_CHAR(SRM.REGDATE,'YYYY-MM-DD') AS REGDATE_TITLE,
REMARK
FROM
SALES_REQUEST_MASTER SRM
SRM.REGDATE,
TO_CHAR(SRM.REGDATE,'YYYY-MM-DD') AS REGDATE_TITLE,
SRM.REMARK,
-- 저장된 값 우선, 없으면 조인으로 가져오기
COALESCE(NULLIF(SRM.PURCHASE_TYPE, ''), POM.TYPE) AS PURCHASE_TYPE, -- 구매유형
COALESCE(NULLIF(SRM.ORDER_TYPE, ''), POM.ORDER_TYPE_CD) AS ORDER_TYPE, -- 주문유형
COALESCE(NULLIF(SRM.PRODUCT_NAME, ''), PM.PRODUCT) AS PRODUCT_NAME, -- 제품구분
COALESCE(NULLIF(SRM.AREA_CD, ''), SM.AREA_CD) AS AREA_CD, -- 국내/해외
COALESCE(NULLIF(SRM.CUSTOMER_OBJID, ''), SM.OBJID::VARCHAR) AS CUSTOMER_OBJID, -- 고객사
COALESCE(NULLIF(SRM.PAID_TYPE, ''), CM.PAID_TYPE) AS PAID_TYPE, -- 유/무상
CM.CATEGORY_CD AS CATEGORY_CD -- 제품유형 코드 ID (드롭다운 선택용)
FROM
SALES_REQUEST_MASTER SRM
LEFT JOIN PROJECT_MGMT PM ON SRM.PROJECT_NO = PM.OBJID::VARCHAR
LEFT JOIN CONTRACT_MGMT CM ON PM.CONTRACT_OBJID = CM.OBJID::VARCHAR
LEFT JOIN SUPPLY_MNG SM ON CM.CUSTOMER_OBJID::VARCHAR = SM.OBJID::VARCHAR
LEFT JOIN PURCHASE_ORDER_MASTER POM ON SRM.OBJID = POM.SALES_REQUEST_OBJID
WHERE 1=1
AND OBJID = #{SALES_REQUEST_MASTER_OBJID}
AND SRM.OBJID = #{SALES_REQUEST_MASTER_OBJID}
</select>
<!-- 구매의뢰 저장 시 저장된 파트 정보를 초기화 -->
@@ -911,23 +943,62 @@
</select>
<select id="getSalesRequestMasterGridList" parameterType="map" resultType="map">
SELECT
SRM.OBJID,
SRM.REQUEST_MNG_NO,
SRM.REQUEST_CD,
(SELECT CODE_NAME FROM COMM_CODE CC WHERE CC.CODE_ID = SRM.REQUEST_CD) AS REQUEST_CD_NAME,
SRM.PROJECT_NO,
(SELECT PROJECT_NO FROM PROJECT_MGMT PM WHERE PM.OBJID = SRM.PROJECT_NO) AS PROJECT_NUMBER,
(SELECT PROJECT_NAME FROM PROJECT_MGMT PM WHERE PM.OBJID = SRM.PROJECT_NO) AS PROJECT_NAME,
SRM.RELEASE_DATE,
SRM.REQUEST_REASONS,
(SELECT CODE_NAME FROM COMM_CODE CC WHERE CC.CODE_ID = SRM.REQUEST_REASONS) AS REQUEST_REASONS_NAME,
SRM.REQUEST_USER_ID,
(SELECT DEPT_NAME||' '||USER_NAME FROM USER_INFO WHERE USER_ID = SRM.REQUEST_USER_ID) AS REQUEST_USER_NAME,
SRM.DELIVERY_REQUEST_DATE,
SRM.UNIT_NAME,
(SELECT O.UNIT_NO || '-' || O.TASK_NAME FROM PMS_WBS_TASK AS O WHERE O.OBJID = SRM.UNIT_NAME) AS UNIT_CODE_NAME,
SRM.STATUS,
SELECT
SRM.OBJID,
SRM.REQUEST_MNG_NO,
SRM.REQUEST_CD,
(SELECT CODE_NAME FROM COMM_CODE CC WHERE CC.CODE_ID = SRM.REQUEST_CD) AS REQUEST_CD_NAME,
-- 추가된 컬럼들
SRM.PURCHASE_TYPE,
(SELECT CODE_NAME FROM COMM_CODE CC WHERE CC.CODE_ID = SRM.PURCHASE_TYPE) AS PURCHASE_TYPE_NAME,
SRM.ORDER_TYPE,
(SELECT CODE_NAME FROM COMM_CODE CC WHERE CC.CODE_ID = SRM.ORDER_TYPE) AS ORDER_TYPE_NAME,
SRM.PRODUCT_NAME,
(SELECT CODE_NAME FROM COMM_CODE CC WHERE CC.CODE_ID = SRM.PRODUCT_NAME) AS PRODUCT_NAME_FULL,
SRM.AREA_CD,
(SELECT CODE_NAME FROM COMM_CODE CC WHERE CC.CODE_ID = SRM.AREA_CD) AS AREA_CD_NAME,
SRM.CUSTOMER_OBJID,
(SELECT SUPPLY_NAME FROM SUPPLY_MNG WHERE OBJID::VARCHAR = SRM.CUSTOMER_OBJID) AS CUSTOMER_NAME,
SRM.PAID_TYPE,
(CASE WHEN SRM.PAID_TYPE = 'paid' THEN '유상' WHEN SRM.PAID_TYPE = 'free' THEN '무상' ELSE SRM.PAID_TYPE END) AS PAID_TYPE_NAME,
-- 품번/품명 ("외 N건" 형태로 표시)
(
SELECT
CASE
WHEN COUNT(*) > 1 THEN
(SELECT PM.PART_NO FROM PART_MNG PM WHERE PM.OBJID::VARCHAR = (SELECT PART_OBJID FROM SALES_REQUEST_PART WHERE SALES_REQUEST_MASTER_OBJID = SRM.OBJID ORDER BY REGDATE LIMIT 1)) || ' 외 ' || (COUNT(*) - 1) || '건'
ELSE
(SELECT PM.PART_NO FROM PART_MNG PM WHERE PM.OBJID::VARCHAR = (SELECT PART_OBJID FROM SALES_REQUEST_PART WHERE SALES_REQUEST_MASTER_OBJID = SRM.OBJID ORDER BY REGDATE LIMIT 1))
END
FROM SALES_REQUEST_PART
WHERE SALES_REQUEST_MASTER_OBJID = SRM.OBJID
) AS PART_NO,
(
SELECT
CASE
WHEN COUNT(*) > 1 THEN
(SELECT PM.PART_NAME FROM PART_MNG PM WHERE PM.OBJID::VARCHAR = (SELECT PART_OBJID FROM SALES_REQUEST_PART WHERE SALES_REQUEST_MASTER_OBJID = SRM.OBJID ORDER BY REGDATE LIMIT 1)) || ' 외 ' || (COUNT(*) - 1) || '건'
ELSE
(SELECT PM.PART_NAME FROM PART_MNG PM WHERE PM.OBJID::VARCHAR = (SELECT PART_OBJID FROM SALES_REQUEST_PART WHERE SALES_REQUEST_MASTER_OBJID = SRM.OBJID ORDER BY REGDATE LIMIT 1))
END
FROM SALES_REQUEST_PART
WHERE SALES_REQUEST_MASTER_OBJID = SRM.OBJID
) AS PART_NAME,
SRM.PROJECT_NO,
(SELECT PROJECT_NO FROM PROJECT_MGMT PM WHERE PM.OBJID = SRM.PROJECT_NO) AS PROJECT_NUMBER,
(SELECT PROJECT_NAME FROM PROJECT_MGMT PM WHERE PM.OBJID = SRM.PROJECT_NO) AS PROJECT_NAME,
SRM.RELEASE_DATE,
SRM.REQUEST_REASONS,
(SELECT CODE_NAME FROM COMM_CODE CC WHERE CC.CODE_ID = SRM.REQUEST_REASONS) AS REQUEST_REASONS_NAME,
COALESCE(SRM.REQUEST_USER_ID, SRM.WRITER) AS REQUEST_USER_ID,
(SELECT DEPT_NAME||' '||USER_NAME FROM USER_INFO WHERE USER_ID = COALESCE(SRM.REQUEST_USER_ID, SRM.WRITER)) AS REQUEST_USER_NAME,
SRM.DELIVERY_REQUEST_DATE,
SRM.UNIT_NAME,
(SELECT O.UNIT_NO || '-' || O.TASK_NAME FROM PMS_WBS_TASK AS O WHERE O.OBJID = SRM.UNIT_NAME) AS UNIT_CODE_NAME,
SRM.STATUS,
CASE
WHEN ((SELECT COUNT(1) FROM PURCHASE_ORDER_MASTER AS O WHERE O.SALES_REQUEST_OBJID IN (SRM.OBJID)) >= (SELECT COUNT(1) FROM SALES_REQUEST_PART AS SRP WHERE srp.SALES_REQUEST_master_OBJID = SRM.OBJID )) and ((SELECT COUNT(1) FROM PURCHASE_ORDER_MASTER AS O WHERE O.SALES_REQUEST_OBJID IN (SRM.OBJID)) > 0) THEN '발주완료'
WHEN ((SELECT COUNT(1) FROM PURCHASE_ORDER_MASTER AS O WHERE O.SALES_REQUEST_OBJID IN (SRM.OBJID)) &lt; (SELECT COUNT(1) FROM SALES_REQUEST_PART AS SRP WHERE srp.SALES_REQUEST_master_OBJID = SRM.OBJID )) and ((SELECT COUNT(1) FROM PURCHASE_ORDER_MASTER AS O WHERE O.SALES_REQUEST_OBJID IN (SRM.OBJID)) > 0) THEN '발주부분완료'
@@ -1102,52 +1173,100 @@
<select id="purchaseOrderAdminSupplyInfo" parameterType="map" resultType="map">
SELECT
PM.OBJID
,CODE_NAME(PM.PRODUCT) AS PRODUCT_NAME
,PM.MECHANICAL_TYPE
,PM.CATEGORY_CD
,CODE_NAME(PM.CATEGORY_CD) AS CATEGORY_NAME
,PM.CUSTOMER_OBJID
,(SELECT SUPPLY_NAME FROM SUPPLY_MNG AS O WHERE O.OBJID = PM.CUSTOMER_OBJID::NUMERIC) AS CUSTOMER_NAME
,PM.PROJECT_NAME
,PM.PRODUCT
,CODE_NAME(PM.PRODUCT) AS PRODUCT_NAME
,PM.STATUS_CD
,CODE_NAME(PM.STATUS_CD) AS STATUS_NAME
,PM.DUE_DATE
,PM.LOCATION
,PM.SETUP
,PM.FACILITY
,CODE_NAME(PM.FACILITY) AS FACILITY_NAME
,PM.FACILITY_QTY
,PM.FACILITY_TYPE
,PM.FACILITY_DEPTH
,PM.PRODUCTION_NO
,PM.BUS_CAL_CD
,CODE_NAME(PM.BUS_CAL_CD) AS BUS_CAL_NAME
,PM.CATEGORY1_CD
,CODE_NAME(PM.CATEGORY1_CD) AS CATEGORY1_NAME
,PM.CHG_USER_ID
,(SELECT USER_NAME FROM USER_INFO AS O WHERE O.USER_ID = PM.CHG_USER_ID ) AS CHG_USER_NAME
,PM.PLAN_DATE
,PM.COMPLETE_DATE
,PM.RESULT_CD
,CODE_NAME(PM.RESULT_CD) AS RESULT_NAME
,PM.PROJECT_NO
,PM.PM_USER_ID
,PM.CONTRACT_PRICE
,PM.CONTRACT_PRICE_CURRENCY
,PM.CONTRACT_CURRENCY
,CODE_NAME(PM.CONTRACT_CURRENCY) AS CONTRACT_CURRENCY_NAME
,TO_CHAR(PM.REGDATE,'YYYY-MM-DD') AS REG_DATE
,PM.WRITER
,(SELECT USER_NAME FROM USER_INFO AS O WHERE O.USER_ID = PM.WRITER ) AS WRITER_NAME
,PM.CONTRACT_NO
,PM.CUSTOMER_EQUIP_NAME
,PM.REQ_DEL_DATE
,PM.CONTRACT_DEL_DATE
,PM.CONTRACT_COMPANY
,CODE_NAME(PM.CONTRACT_COMPANY) AS CONTRACT_COMPANY_NAME
,PM.CONTRACT_DATE
,PM.PO_NO
,PM.MANUFACTURE_PLANT
,CODE_NAME(PM.MANUFACTURE_PLANT) AS MANUFACTURE_PLANT_NAME
,PM.CONTRACT_RESULT
,CODE_NAME(PM.CONTRACT_RESULT) AS CONTRACT_RESULT_NAME
,PM.AREA_CD
,CODE_NAME(PM.AREA_CD) AS AREA_NAME
,PM.PROJECT_NAME
,PM.MECHANICAL_TYPE
,PM.OVERHAUL_ORDER
,RM.RELEASE_DATE
,CM.PAID_TYPE
,CM.OBJID AS CONTRACT_OBJID
FROM
PROJECT_MGMT AS PM
LEFT OUTER JOIN
RELEASE_MGMT RM
ON PM.OBJID::VARCHAR = RM.PARENT_OBJID
AND PM.PRODUCT = RM.PRODUCT
<!-- LEFT OUTER JOIN
(SELECT * FROM (SELECT DENSE_RANK() OVER(PARTITION BY T.SUPPLY_OBJID ORDER BY T.CHARGER_NAME ASC) AS TOP, T.*
FROM SUPPLY_CHARGER_MNG T WHERE CHARGER_TYPE = '0000330' /*발주서공급처담당*/
) AS T WHERE TOP = 1
) AS T2
ON T1.OBJID = T2.SUPPLY_OBJID::NUMERIC -->
LEFT OUTER JOIN
CONTRACT_MGMT CM
ON PM.CONTRACT_OBJID = CM.OBJID
WHERE 1=1
AND PM.OBJID = #{PROJECT_NO}
</select>
<select id="SalesBomPartListByProjectUnit" parameterType="map" resultType="map">
SELECT T1.PARENT_OBJID AS BOM_REPORT_OBJID
,T1.PART_OBJID
,T1.OBJID SALES_BOM_REPORT_PART_OBJID
,T1.SUPPLY_OBJID
,PM.PART_NAME
,PM.PART_NO
,PM.SPEC
,PM.MAKER
,PM.REMARK
,PM.UNIT
,BPQ.QTY AS ORDER_QTY
,T1.WRITER
FROM SALES_BOM_REPORT_PART AS T1
,PART_BOM_REPORT AS PBR
,BOM_PART_QTY AS BPQ
,PART_MNG AS PM
WHERE PBR.OBJID = BPQ.BOM_REPORT_OBJID
AND T1.PART_OBJID = BPQ.PART_NO
AND T1.PART_OBJID = PM.OBJID::VARCHAR
AND PBR.CONTRACT_OBJID = #{PROJECT_OBJID}
AND PBR.UNIT_CODE = #{UNIT_CODE}
AND PBR.OBJID = T1.PARENT_OBJID
ORDER BY BPQ.SEQ
<!-- M-BOM 데이터 조회: PROJECT_MGMT.BOM_REPORT_OBJID -> BOM_PART_QTY -> PART_MNG -->
SELECT
BPQ.BOM_REPORT_OBJID
,BPQ.PART_NO AS PART_OBJID
,PM.PART_NAME
,PM.PART_NO
,PM.SPEC
,PM.MAKER
,PM.REMARK
,PM.UNIT
,BPQ.QTY AS ORDER_QTY
,NULL AS SUPPLY_OBJID
,NULL AS WRITER
FROM
PROJECT_MGMT AS PJT
INNER JOIN BOM_PART_QTY AS BPQ
ON PJT.BOM_REPORT_OBJID = BPQ.BOM_REPORT_OBJID::VARCHAR
LEFT JOIN PART_MNG AS PM
ON COALESCE(NULLIF(BPQ.LAST_PART_OBJID, ''), BPQ.PART_NO) = PM.OBJID::VARCHAR
WHERE 1=1
AND PJT.OBJID = #{PROJECT_OBJID}
AND PJT.BOM_REPORT_OBJID IS NOT NULL
AND PJT.BOM_REPORT_OBJID != ''
ORDER BY BPQ.SEQ, PM.PART_NO
</select>
<update id="mergeReceiptSalesRequestInfo" parameterType="map">

View File

@@ -274,6 +274,18 @@ public class SalesMngController {
if(!"".equals(salesRequestMasterObjId)){
resultMap = salesMngService.getSalesRequestMasterInfo(request, paramMap);
// 디버깅: 조인으로 가져온 값 확인
System.out.println("========== 디버깅: resultMap 값 확인 ==========");
System.out.println("PURCHASE_TYPE: " + resultMap.get("PURCHASE_TYPE"));
System.out.println("ORDER_TYPE: " + resultMap.get("ORDER_TYPE"));
System.out.println("PRODUCT_NAME: " + resultMap.get("PRODUCT_NAME"));
System.out.println("PRODUCT_NAME_FULL: " + resultMap.get("PRODUCT_NAME_FULL"));
System.out.println("AREA_CD: " + resultMap.get("AREA_CD"));
System.out.println("CUSTOMER_OBJID: " + resultMap.get("CUSTOMER_OBJID"));
System.out.println("PAID_TYPE: " + resultMap.get("PAID_TYPE"));
System.out.println("CATEGORY_CD: " + resultMap.get("CATEGORY_CD"));
System.out.println("==========================================");
}else{
resultMap.put("OBJID", CommonUtils.createObjId());
resultMap.put("STATUS", "create");
@@ -286,6 +298,32 @@ public class SalesMngController {
code_map.put("request_reasons",commonService.bizMakeOptionList("0001603", (String)resultMap.get("REQUEST_REASONS"),"common.getCodeselect"));
//요청인
code_map.put("request_user_id", commonService.bizMakeOptionList("", (String)resultMap.get("REQUEST_USER_ID"),"common.getUserselect"));
//국내/해외 - 0001219 사용
code_map.put("area_cd",commonService.bizMakeOptionList("0001219", (String)resultMap.get("AREA_CD"),"common.getCodeselect"));
//고객사
code_map.put("customer_objid",commonService.bizMakeOptionList("", (String)resultMap.get("CUSTOMER_OBJID"),"common.getsupplyselect"));
//구매유형 (PURCHASE_TYPE) - 0001068 사용
code_map.put("purchase_type",commonService.bizMakeOptionList("0001068", (String)resultMap.get("PURCHASE_TYPE"),"common.getCodeselect"));
//주문유형 (ORDER_TYPE) - 0001406 사용
code_map.put("order_type",commonService.bizMakeOptionList("0001406", (String)resultMap.get("ORDER_TYPE"),"common.getCodeselect"));
//제품구분 (PRODUCT_NAME) - 0000001 사용
code_map.put("product_name",commonService.bizMakeOptionList("0000001", (String)resultMap.get("PRODUCT_NAME"),"common.getCodeselect"));
//제품유형 (CATEGORY_CD) - 0000167 사용
code_map.put("category_cd",commonService.bizMakeOptionList("0000167", (String)resultMap.get("CATEGORY_CD"),"common.getCodeselect"));
//유/무상 (PAID_TYPE) - COMM_CODE에서 조회 시도, 없으면 하드코딩
String paidTypeOptions = "";
try {
paidTypeOptions = commonService.bizMakeOptionList("PAID_TYPE", (String)resultMap.get("PAID_TYPE"),"common.getCodeselect");
} catch (Exception e) {
// COMM_CODE에 없으면 하드코딩
}
if (paidTypeOptions == null || paidTypeOptions.trim().isEmpty()) {
String paidType = (String)resultMap.get("PAID_TYPE");
paidTypeOptions = "";
paidTypeOptions += "<option value='paid'" + ("paid".equals(paidType) ? " selected" : "") + ">유상</option>";
paidTypeOptions += "<option value='free'" + ("free".equals(paidType) ? " selected" : "") + ">무상</option>";
}
code_map.put("paid_type", paidTypeOptions);
}catch(Exception e){
e.printStackTrace();
}