From 5e3e9f81f52e80264f6d7f485a84189ab2c31e07 Mon Sep 17 00:00:00 2001 From: hjjeong Date: Wed, 28 Jan 2026 17:10:38 +0900 Subject: [PATCH] =?UTF-8?q?=EC=83=9D=EC=82=B0=EA=B3=84=ED=9A=8D&=EC=83=9D?= =?UTF-8?q?=EC=82=B0=EC=8B=A4=EC=A0=81=20=EB=93=B1=EB=A1=9D=EC=9D=BC,=20?= =?UTF-8?q?=EB=93=B1=EB=A1=9D=EC=9E=90=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productionplanning/prodPlanFormPopup.jsp | 30 ++++++++++++++- .../prodPlanResultMgmtList.jsp | 37 +++++++++++++++++-- .../ProductionPlanningController.java | 3 ++ src/com/pms/mapper/productionplanning.xml | 28 ++++++++++++-- 4 files changed, 89 insertions(+), 9 deletions(-) diff --git a/WebContent/WEB-INF/view/productionplanning/prodPlanFormPopup.jsp b/WebContent/WEB-INF/view/productionplanning/prodPlanFormPopup.jsp index 264cc5f..bcef2e7 100644 --- a/WebContent/WEB-INF/view/productionplanning/prodPlanFormPopup.jsp +++ b/WebContent/WEB-INF/view/productionplanning/prodPlanFormPopup.jsp @@ -8,6 +8,21 @@ Map info = (HashMap)(request.getAttribute("resultMap")); String actionType = (String)request.getAttribute("actionType"); boolean isNew = "regist".equals(actionType); + + // 등록일: 새 등록이면 오늘 날짜, 수정이면 저장된 값 + String regDate = ""; + String writerName = ""; + String writerId = ""; + if(isNew) { + java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd"); + regDate = sdf.format(new java.util.Date()); + writerName = connectUserName; + writerId = connectUserId; + } else if(info != null) { + regDate = CommonUtils.nullToEmpty((String)info.get("regdate")); + writerName = CommonUtils.nullToEmpty((String)info.get("writer_name")); + writerId = CommonUtils.nullToEmpty((String)info.get("writer")); + } %> @@ -749,7 +764,20 @@ function fn_closeSeqPopup() { - + + + + + + + + + + + + + + diff --git a/WebContent/WEB-INF/view/productionplanning/prodPlanResultMgmtList.jsp b/WebContent/WEB-INF/view/productionplanning/prodPlanResultMgmtList.jsp index 9dc374a..0cea69c 100644 --- a/WebContent/WEB-INF/view/productionplanning/prodPlanResultMgmtList.jsp +++ b/WebContent/WEB-INF/view/productionplanning/prodPlanResultMgmtList.jsp @@ -299,7 +299,25 @@ var columns = [ var objid = fnc_checkNull(cell.getData().OBJID); fn_WBSRegist(objid); } - } + }, + + // 19. 등록자 + { + headerHozAlign: 'center', + hozAlign: 'center', + width: 80, + title: '등록자', + field: 'WRITER_NAME' + }, + + // 11. 등록일 + { + headerHozAlign: 'center', + hozAlign: 'center', + width: 80, + title: '등록일', + field: 'REGDATE_TITLE' + }, ]; // 검색 함수 @@ -337,7 +355,7 @@ function fn_createProdPlan() { var checkedRows = getCheckedRows(); var popup_width = 900; - var popup_height = 400; + var popup_height = 440; var url = "/productionplanning/prodPlanFormPopup.do"; if(checkedRows.length === 1) { @@ -516,8 +534,19 @@ function getCheckedRows() { - - + + + + + + + + ~ + + diff --git a/src/com/pms/controller/ProductionPlanningController.java b/src/com/pms/controller/ProductionPlanningController.java index 5cfe571..906a8cd 100644 --- a/src/com/pms/controller/ProductionPlanningController.java +++ b/src/com/pms/controller/ProductionPlanningController.java @@ -1779,6 +1779,9 @@ public class ProductionPlanningController extends BaseService { // 고객사 (SUPPLY_MNG + CLIENT_MNG 통합) code_map.put("customer_cd", commonService.bizMakeOptionList("", CommonUtils.nullToEmpty((String)paramMap.get("customer_objid")), "common.getsupplyselect")); + // 등록자 + code_map.put("writer", commonService.bizMakeOptionList("", "", "common.getUserselect")); + request.setAttribute("code_map", code_map); }catch(Exception e){ e.printStackTrace(); diff --git a/src/com/pms/mapper/productionplanning.xml b/src/com/pms/mapper/productionplanning.xml index f79103a..68481ed 100644 --- a/src/com/pms/mapper/productionplanning.xml +++ b/src/com/pms/mapper/productionplanning.xml @@ -4525,7 +4525,11 @@ COALESCE((SELECT SUM(RESULT_QTY) FROM PRODUCTION_RESULT PR WHERE PR.PROJECT_OBJID = PM.OBJID::VARCHAR AND PR.RESULT_TYPE = 'SHIP_WAIT' AND PR.STATUS = 'active'), 0) AS SHIP_WAIT_QTY, '' AS EQUIPMENT_WBS, PP.OBJID AS PROD_PLAN_OBJID, - PM.REGDATE AS SORT_DATE + PM.REGDATE AS SORT_DATE, + PP.WRITER, + USER_NAME(PP.WRITER) AS WRITER_NAME, + TO_CHAR(PP.REGDATE, 'YYYY-MM-DD') AS REGDATE_TITLE, + PP.REGDATE FROM PROJECT_MGMT PM LEFT JOIN CONTRACT_MGMT CM ON PM.CONTRACT_OBJID = CM.OBJID @@ -4575,7 +4579,11 @@ COALESCE((SELECT SUM(RESULT_QTY) FROM PRODUCTION_RESULT PR WHERE PR.PROJECT_OBJID = PP.OBJID::VARCHAR AND PR.RESULT_TYPE = 'SHIP_WAIT' AND PR.STATUS = 'active'), 0) AS SHIP_WAIT_QTY, '' AS EQUIPMENT_WBS, PP.OBJID AS PROD_PLAN_OBJID, - PP.REGDATE AS SORT_DATE + PP.REGDATE AS SORT_DATE, + PP.WRITER, + USER_NAME(PP.WRITER) AS WRITER_NAME, + TO_CHAR(PP.REGDATE, 'YYYY-MM-DD') AS REGDATE_TITLE, + PP.REGDATE FROM PRODUCTION_PLAN PP WHERE PP.STATUS = 'active' AND (PP.PROJECT_OBJID IS NULL OR PP.PROJECT_OBJID = '') @@ -4627,6 +4635,17 @@ AND UPPER(T.SERIAL_NO) LIKE '%' || UPPER(#{search_serial_no}) || '%' + + + AND T.WRITER = #{search_writer} + + + + AND T.REGDATE >= TO_DATE(#{search_regdate_from}, 'YYYY-MM-DD') + + + AND T.REGDATE <= TO_DATE(#{search_regdate_to}, 'YYYY-MM-DD') + ORDER BY T.SORT_DATE DESC, T.PROJECT_NO DESC @@ -4699,8 +4718,9 @@ PP.TOTAL_PROD_QTY, PP.CUSTOMER_REQUEST, PP.STATUS, - PP.REGDATE, - PP.WRITER + TO_CHAR(PP.REGDATE, 'YYYY-MM-DD') AS REGDATE, + PP.WRITER, + (SELECT USER_NAME FROM USER_INFO WHERE USER_ID = PP.WRITER) AS WRITER_NAME FROM PRODUCTION_PLAN PP WHERE PP.OBJID = #{objid} -- 2.49.1