From ba09a208cfcd0eee9ff1a97edb9f812a431b960d Mon Sep 17 00:00:00 2001 From: hjjeong Date: Mon, 29 Dec 2025 18:14:04 +0900 Subject: [PATCH] =?UTF-8?q?ebom=20=EB=93=B1=EB=A1=9D=20=EC=8B=9C=20?= =?UTF-8?q?=ED=92=88=EB=B2=88,=20=ED=92=88=EB=AA=85=20=EC=9E=85=EB=A0=A5?= =?UTF-8?q?=20->=201=EB=A0=88=EB=B2=A8=20=EC=9E=90=EB=8F=99=20=EC=9E=85?= =?UTF-8?q?=EB=A0=A5=EC=9C=BC=EB=A1=9C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../partMng/openBomReportExcelImportPopUp.jsp | 47 ++++++++++++------- 1 file changed, 29 insertions(+), 18 deletions(-) diff --git a/WebContent/WEB-INF/view/partMng/openBomReportExcelImportPopUp.jsp b/WebContent/WEB-INF/view/partMng/openBomReportExcelImportPopUp.jsp index c714553..4f9fa2c 100644 --- a/WebContent/WEB-INF/view/partMng/openBomReportExcelImportPopUp.jsp +++ b/WebContent/WEB-INF/view/partMng/openBomReportExcelImportPopUp.jsp @@ -433,30 +433,41 @@ var gridFn = { url: "/partMng/parsingExcelFile.do" ,datatype : "json" ,postData:{"targetObjId":"${objid}","docType":"PART_EXCEL_IMPORT","OBJID":"${CONTRACT_OBJID}"} - ,loadComplete : function(data) { - // CSV 파일에서만 LEVEL 값을 PARENT_PART_NO 컬럼에 표시 - if(data && data.rows) { - for(var i = 0; i < data.rows.length; i++) { - var row = data.rows[i]; - // CSV 파일이고 LEVEL 값이 있는 경우 - if(row.IS_CSV === 'Y' && row.LEVEL && row.LEVEL !== '') { - // LEVEL 값을 PARENT_PART_NO 컬럼에 표시 (화면용) - grid.jqGrid('setCell', row.id, 'PARENT_PART_NO', row.LEVEL); - } + ,loadComplete : function(data) { + gridFn.footerSummary(); } - } - gridFn.footerSummary(); - } ,gridComplete : function() { - //gridFn.opennEdit(); //수정가능 var valid = true; gridFn.closeEdit(); - //var tempGrid = $('#expenseDetailGrid'); + + // 1번 레벨(PARENT_PART_NO가 비어있는 행)의 품번/품명을 헤더에 자동 설정 + var isFirstLevelSet = false; + $.each(grid.getRowData(), function(i, d){ - console.log(d); + console.log("Row data:", d); + + // NOTE 검증 if(!fnc_isEmpty(d["NOTE"])){ valid = false; } + + // PARENT_PART_NO가 비어있으면 1번 레벨 (최상위) + var parentPartNo = d["PARENT_PART_NO"] || ''; + if(!isFirstLevelSet && parentPartNo === '') { + var partNo = d["PART_NO"] || ''; + var partName = d["PART_NAME"] || ''; + + console.log("Level 1 found - PART_NO:", partNo, ", PART_NAME:", partName); + + // 새로 CSV 업로드 시 항상 덮어쓰기 + if(partNo !== '') { + $('#bom_part_no').val(partNo); + } + if(partName !== '') { + $('#bom_part_name').val(partName); + } + isFirstLevelSet = true; + } }); gridFn.opennEdit(); @@ -967,11 +978,11 @@ function fn_save(){ - + - +