From 425ca5d02e314a9059e370da073c9f59bb2a882c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9C=A0=EC=A7=80=EC=9D=B8?= Date: Mon, 6 Apr 2026 09:28:22 +0900 Subject: [PATCH 01/10] =?UTF-8?q?=EA=B8=B0=EC=97=85=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=EC=9E=90=20=EC=9E=85=EB=A0=A5=EC=8B=9C=EC=8A=A4=ED=85=9C-?= =?UTF-8?q?=EA=B8=B0=EB=B3=B8=EB=AC=BC=EC=84=B1=EC=8B=9C=ED=97=98=20-999?= =?UTF-8?q?=EC=9E=85=EB=A0=A5=20=EC=B2=98=EB=A6=AC=20'-'=EC=9E=85=EB=A0=A5?= =?UTF-8?q?=20=EC=B2=98=EB=A6=AC=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 --- .../ManageExcelUploadProc03Controller.java | 14 ++-- .../WEB-INF/views/web/input/sampleInfo.jsp | 72 ++++++++++--------- src/main/webapp/kendo-ui/js/common.js | 55 ++++++++++++++ src/main/webapp/web/js/common.js | 25 +++++++ 4 files changed, 125 insertions(+), 41 deletions(-) diff --git a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java index 261b276a..a6380f24 100644 --- a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java +++ b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java @@ -6477,25 +6477,25 @@ public class ManageExcelUploadProc03Controller { List> list = new ArrayList>(); int excelWpLength = excelWp.getLength(); for(int i=1; i < excelWpLength; i++) { - if(!StringUtil.containsCharOnly(excelWp.get("col0",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col0",i).trim(),"0123456789.-")){ resultMsg = String.format(fmtMsg, i + "번째 심도(from)는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col1",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col1",i).trim(),"0123456789.-")){ resultMsg += String.format(fmtMsg, i + "번째 심도(to)는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col4",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col4",i).trim(),"0123456789.-")){ resultMsg = String.format(fmtMsg, i + "번째 함수비(%)는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col5",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col5",i).trim(),"0123456789.-")){ resultMsg += String.format(fmtMsg, i + "번째 비중은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col6",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col6",i).trim(),"0123456789.-")){ resultMsg = String.format(fmtMsg, i + "번째 액성한계(%)는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col7",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col7",i).trim(),"0123456789.-")){ resultMsg += String.format(fmtMsg, i + "번째 소성지수는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col9",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col9",i).trim(),"0123456789.-")){ resultMsg += String.format(fmtMsg, i + "번째 단위중량(KN/㎥)은 실수만 입력이 가능합니다."); } diff --git a/src/main/webapp/WEB-INF/views/web/input/sampleInfo.jsp b/src/main/webapp/WEB-INF/views/web/input/sampleInfo.jsp index dba75a13..e59bf943 100644 --- a/src/main/webapp/WEB-INF/views/web/input/sampleInfo.jsp +++ b/src/main/webapp/WEB-INF/views/web/input/sampleInfo.jsp @@ -164,17 +164,17 @@ function fn_save(rUrl){ }else if(keys[k] == "sampleDepthTo"){ change_data += "<" + keys[k] + ">" + row.sampleDepthTo + "\r\n"; }else if(keys[k] == "sampleLl"){ - change_data += "<" + keys[k] + ">" + row.sampleLl + "\r\n"; + change_data += "<" + keys[k] + ">" + getNoDataValue(row.sampleLl) + "\r\n"; }else if(keys[k] == "sampleDesc"){ change_data += "<" + keys[k] + ">" + row.sampleDesc + "\r\n"; }else if(keys[k] == "sampleWc"){ - change_data += "<" + keys[k] + ">" + row.sampleWc + "\r\n"; + change_data += "<" + keys[k] + ">" + getNoDataValue(row.sampleWc) + "\r\n"; }else if(keys[k] == "datetime"){ change_data += "<" + keys[k] + ">" + row.datetime + "\r\n"; }else if(keys[k] == "sampleGs"){ - change_data += "<" + keys[k] + ">" + row.sampleGs + "\r\n"; + change_data += "<" + keys[k] + ">" + getNoDataValue(row.sampleGs) + "\r\n"; }else if(keys[k] == "samplePi"){ - change_data += "<" + keys[k] + ">" + row.samplePi + "\r\n"; + change_data += "<" + keys[k] + ">" + getNoDataValue(row.samplePi) + "\r\n"; }else if(keys[k] == "sampleNumber"){ change_data += "<" + keys[k] + ">" + row.sampleNumber + "\r\n"; }else if(keys[k] == "sampleShape"){ @@ -184,7 +184,7 @@ function fn_save(rUrl){ }else if(keys[k] == "projectCode"){ change_data += "<" + keys[k] + ">" + row.projectCode + "\r\n"; }else if(keys[k] == "sampleRd"){ - change_data += "<" + keys[k] + ">" + row.sampleRd + "\r\n"; + change_data += "<" + keys[k] + ">" + getNoDataValue(row.sampleRd) + "\r\n"; }else if(keys[k] == "sampleDepthFrom"){ change_data += "<" + keys[k] + ">" + row.sampleDepthFrom + "\r\n"; } @@ -373,12 +373,12 @@ function fn_add(){ "sampleDepthTo" : "0", "sampleSamplingMethod" : "", "sampleShape" : "", - "sampleWc" : "0", - "sampleGs" : "0", - "sampleLl" : "0", - "samplePi" : "0", + "sampleWc" : "-", + "sampleGs" : "-", + "sampleLl" : "-", + "samplePi" : "-", "sampleDesc" : "-", - "sampleRd" : "0", + "sampleRd" : "-", "sampleUscs" : "", "sampleCode" : "", }; @@ -759,7 +759,8 @@ function fn_grid_refresh(){ var nullTypeString = 'test'; if( gridData.length == 1 && gridData[0].sampleNumber == '-999' ) { - gridData = undefined; + // gridData = undefined; + gridData = '-'; // table-top-control 클래스를 가진 첫 번째 요소 찾기 var tableTopControlElement = document.getElementsByClassName('table-top-control')[0]; @@ -800,12 +801,12 @@ function fn_grid_refresh(){ sampleDepthTo: { type: "number" }, sampleSamplingMethod: { type: "string" }, sampleShape: { type: "string" }, - sampleWc: { type: "number",}, - sampleGs: { type: "number" }, - sampleLl: { type: "number" }, - samplePi: { type: "number" }, + sampleWc: { type: "number", defaultValue: "-"}, + sampleGs: { type: "number", defaultValue: "-"}, + sampleLl: { type: "number", defaultValue: "-" }, + samplePi: { type: "number", defaultValue: "-" }, sampleDesc: { type: "string" }, - sampleRd: { type: "number" }, + sampleRd: { type: "number", defaultValue: "-" }, sampleUscs: { type: "string" }, sampleCode: { type: "string", editable: false }, } @@ -857,44 +858,46 @@ function fn_grid_refresh(){ editor: comboEditor2, template: "#=getTeacherName2((sampleShape == null) ? ' ' : sampleShape)#", }, - { field: "sampleGs", title: "함수비(%)
값 없을 시
-999 입력
", editor: chooseEditor, width:100, attributes: { style:"text-align: right" }, + { field: "sampleGs", + title: "함수비(%)
값 없을 시
- 입력
", + editor: chooseEditor, + width:100, + attributes: { style:"text-align: right" }, format:"{0:n2}", template: function (dataItem) { - if (dataItem.sampleGs == null) - dataItem._set("sampleGs", "0"); - else - return dataItem.sampleGs; + if (dataItem.sampleGs == null || dataItem.sampleGs == -999) return "-"; + return kendo.toString(dataItem.sampleGs, "n2"); } }, - { field: "sampleWc", title: "비중
값 없을 시
-999 입력
", editor: chooseEditor, width:100, attributes: { style:"text-align: right" }, + { field: "sampleWc", title: "비중
값 없을 시
- 입력
", editor: chooseEditor, width:100, attributes: { style:"text-align: right" }, template: function (dataItem) { - if (dataItem.sampleWc == null) - dataItem._set("sampleWc", "0"); + if (dataItem.sampleWc == null || dataItem.sampleWc == -999) + return "-"; else return dataItem.sampleWc; } }, - { field: "sampleLl", title: "액성한계(%)
값 없을 시
-999 입력
", editor: chooseEditor, width:100, attributes: { style:"text-align: right" }, + { field: "sampleLl", title: "액성한계(%)
값 없을 시
- 입력
", editor: chooseEditor, width:100, attributes: { style:"text-align: right" }, template: function (dataItem) { - if (dataItem.sampleLl == null) - dataItem._set("sampleLl", "0"); + if (dataItem.sampleLl == null || dataItem.sampleLl == -999) + return "-"; else return dataItem.sampleLl; } }, - { field: "samplePi", title: "소성지수
값 없을 시
-999 입력
", editor: chooseEditor, width:100, attributes: { style:"text-align: right" }, + { field: "samplePi", title: "소성지수
값 없을 시
- 입력
", editor: chooseEditor, width:100, attributes: { style:"text-align: right" }, template: function (dataItem) { - if (dataItem.samplePi == null) - dataItem._set("samplePi", "0"); + if (dataItem.samplePi == null || dataItem.samplePi == -999) + return "-"; else return dataItem.samplePi; } }, { field: "sampleDesc", title: "비고", width:100, attributes: { style:"text-align: left" }, template: "
#= (sampleDesc == null) ? '0' : sampleDesc #
" }, - { field: "sampleRd", title: "단위중량(${sampleUnit})
값 없을 시
-999 입력
", editor: chooseEditor, width:140, attributes: { style:"text-align: right" }, + { field: "sampleRd", title: "단위중량(${sampleUnit})
값 없을 시
- 입력
", editor: chooseEditor, width:140, attributes: { style:"text-align: right" }, template: function (dataItem) { - if (dataItem.sampleRd == null) - dataItem._set("sampleRd", "0"); + if (dataItem.sampleRd == null || dataItem.sampleRd == -999) + return "-"; else return dataItem.sampleRd; } @@ -1060,7 +1063,8 @@ function fn_grid_refresh(){ switch (options.model.COLUMN) { default: - numericEditor(container, options); +// numericEditor(container, options); + numericEditor2(container, options); break; } } diff --git a/src/main/webapp/kendo-ui/js/common.js b/src/main/webapp/kendo-ui/js/common.js index 973e4891..243295c6 100644 --- a/src/main/webapp/kendo-ui/js/common.js +++ b/src/main/webapp/kendo-ui/js/common.js @@ -46,6 +46,61 @@ function numericEditor(container, options, isHyphenAllowed = false) { } +function numericEditor2(container, options, isHyphenAllowed = false) { + var input = kendoJQuery(''); + + input.appendTo(container) + .val(options.model[options.field]) + + // 1. 입력 제한 (숫자 + 하이픈) + .on("input", function () { + let val = this.value; + + // 허용: "-", "-숫자", "숫자", "소수" + if (!/^[-]?\d*\.?\d*$/.test(val)) { + this.value = val.slice(0, -1); + } + }) + + // 2. ↑ ↓ 키로 값 증가/감소 + .on("keydown", function (e) { + if (e.key === "ArrowUp" || e.key === "ArrowDown") { + e.preventDefault(); + + let val = this.value.trim(); + + // "-" 단독이면 0 기준 시작 + if (val === "-" || val === "") { + val = 0; + } + + let num = parseFloat(val); + if (isNaN(num)) num = 0; + + if (e.key === "ArrowUp") { + num += 1; + } else { + num -= 1; + } + + this.value = num; + } + }) + + // 3. blur 시 모델 반영 + .on("blur", function () { + let val = this.value.trim(); + + if (val === "-") { + options.model.set(options.field, null); + } else { + let num = parseFloat(val); + options.model.set(options.field, isNaN(num) ? null : num); + } + }); +} + + //입력 type number로 변경 그러나 hyphen 입력 허용 function numericEditorAllowHyphen(container, options, isHyphenAllowed = false) { kendoJQuery('') diff --git a/src/main/webapp/web/js/common.js b/src/main/webapp/web/js/common.js index b083e879..0b2b7dd1 100644 --- a/src/main/webapp/web/js/common.js +++ b/src/main/webapp/web/js/common.js @@ -2077,4 +2077,29 @@ function projNmDuplChkResult( projectNameInput, projectCode) { } }); return result; +} + +/** + * 기업사용자 입력시스템 > 기본물성시험정보 -999값 처리 + * 값 없음 처리는 '-' 입력으로 한다. + * @caller /views/web/input/sampleInfo.jsp + * @param val + * @returns + */ +function getNoDataValue(val) { + return (val === null || val === undefined || val === "" || val === "-") ? -999 : val; +} + + +/** + * 기업사용자 입력시스템 > 기본물성시험정보 -999값 처리 + * 값 없음 처리는 '-' 입력으로 한다. + * @param val + * @returns + */ +function setNoDataValue(val) { + if (val == -999) { + return '-'; + } + return val; } \ No newline at end of file From 76c268797cf8c640e3b9e1f33010933d3e9684a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9C=A0=EC=A7=80=EC=9D=B8?= Date: Mon, 6 Apr 2026 15:36:19 +0900 Subject: [PATCH 02/10] =?UTF-8?q?=EC=A7=80=EC=B8=B5=EC=83=89=20=EA=B0=92?= =?UTF-8?q?=EC=97=86=EC=9D=8C=20=EC=84=A0=ED=83=9D=20=EB=A7=89=EA=B8=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WEB-INF/views/web/input/layerInfo/popup/layerColor.jsp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/webapp/WEB-INF/views/web/input/layerInfo/popup/layerColor.jsp b/src/main/webapp/WEB-INF/views/web/input/layerInfo/popup/layerColor.jsp index 1cea9e27..f12fecf8 100644 --- a/src/main/webapp/WEB-INF/views/web/input/layerInfo/popup/layerColor.jsp +++ b/src/main/webapp/WEB-INF/views/web/input/layerInfo/popup/layerColor.jsp @@ -128,11 +128,12 @@





백 + <%-- (2026.04.06/YJI) 값없음 체크 막기 - + --%>
지층색 : From 1b8de5cd9bd1eff77adc8973e2aa84ec92e11415 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9C=A0=EC=A7=80=EC=9D=B8?= Date: Tue, 7 Apr 2026 09:05:45 +0900 Subject: [PATCH 03/10] =?UTF-8?q?=EA=B8=B0=EC=97=85=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=EC=9E=90=20=EC=9E=85=EB=A0=A5=EC=8B=9C=EC=8A=A4=ED=85=9C=20?= =?UTF-8?q?=EC=97=91=EC=85=80=20=EC=97=85=EB=A1=9C=EB=93=9C=EB=A1=9C=20?= =?UTF-8?q?=EA=B8=B0=EB=B3=B8=EB=AC=BC=EC=84=B1=EC=8B=9C=ED=97=98=EC=A0=95?= =?UTF-8?q?=EB=B3=B4=20=EC=9E=90=EB=A3=8C=20=EC=9E=85=EB=A0=A5=EC=8B=9C=20?= =?UTF-8?q?'-'=20=EC=9E=85=EB=A0=A5=20=ED=97=88=EC=9A=A9=20=EC=B2=98?= =?UTF-8?q?=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ManageExcelUploadProc03Controller.java | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java index a6380f24..81cc8ef0 100644 --- a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java +++ b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java @@ -572,6 +572,37 @@ public class ManageExcelUploadProc03Controller { List> listMap = ("".equals(saveMap.get("sm4List")))?null:(List>) saveMap.get("sm4List"); if(null != listMap){ for(HashMap map : listMap){ + // 엑셀 업로드로 자료입력 시 - 입력 허용 + String SAMPLE_DEPTH_FROM = (String)map.get("SAMPLE_DEPTH_FROM"); + String SAMPLE_DEPTH_TO = (String)map.get("SAMPLE_DEPTH_TO"); + String SAMPLE_GS = (String)map.get("SAMPLE_GS"); + String SAMPLE_WC = (String)map.get("SAMPLE_WC"); + String SAMPLE_LL = (String)map.get("SAMPLE_LL"); + String SAMPLE_PI = (String)map.get("SAMPLE_PI"); + String SAMPLE_RD = (String)map.get("SAMPLE_RD"); + + if ("-".equals(SAMPLE_DEPTH_FROM)) { // 심도(From) + map.put("SAMPLE_DEPTH_FROM", "-999"); + } + if ("-".equals(SAMPLE_DEPTH_TO)) { // 심도(To) + map.put("SAMPLE_DEPTH_TO", "-999"); + } + if ("-".equals(SAMPLE_GS)) { // 함수비 + map.put("SAMPLE_GS", "-999"); + } + if ("-".equals(SAMPLE_WC)) { // 비중 + map.put("SAMPLE_WC", "-999"); + } + if ("-".equals(SAMPLE_LL)) { // 액성한계 + map.put("SAMPLE_LL", "-999"); + } + if ("-".equals(SAMPLE_PI)) { // 소성지수 + map.put("SAMPLE_PI", "-999"); + } + if ("-".equals(SAMPLE_RD)) { // 단위중량 + map.put("SAMPLE_RD", "-999"); + } + logger.debug("=====>sm4List:" + map.toString()); sampleInfoService.insertSampleInfo(map); } From 7b963c5f6dbbba0d4e329388c7a11ec68cd5e8e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9C=A0=EC=A7=80=EC=9D=B8?= Date: Wed, 8 Apr 2026 17:38:34 +0900 Subject: [PATCH 04/10] =?UTF-8?q?=EA=B8=B0=EC=97=85=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=EC=9E=90=20=EC=9E=85=EB=A0=A5=EC=8B=9C=EC=8A=A4=ED=85=9C:=20?= =?UTF-8?q?=EC=8B=9C=EC=B6=94=EA=B3=B5=EC=A0=95=EB=B3=B4=20>=20=EC=8B=9C?= =?UTF-8?q?=EC=B6=94=EB=B0=A9=ED=96=A5=EC=9D=98=20=EA=B0=81=EB=8F=84?= =?UTF-8?q?=EC=97=90=20'-'=EC=9E=85=EB=A0=A5=20=EC=A7=80=EC=9B=90(?= =?UTF-8?q?=EC=9B=B9,=20=EC=97=91=EC=85=80=EC=97=85=EB=A1=9C=EB=93=9C)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../geoinfo/regi/header/HeaderController.java | 6 ++- .../ManageExcelUploadProc03Controller.java | 6 ++- .../webapp/WEB-INF/views/web/input/header.jsp | 38 +++++++++++++++++-- 3 files changed, 45 insertions(+), 5 deletions(-) diff --git a/src/main/java/geoinfo/regi/header/HeaderController.java b/src/main/java/geoinfo/regi/header/HeaderController.java index 1d5e05d7..d0077456 100644 --- a/src/main/java/geoinfo/regi/header/HeaderController.java +++ b/src/main/java/geoinfo/regi/header/HeaderController.java @@ -639,7 +639,11 @@ public class HeaderController { String oHOLE_BORING_METHOD = sUtil.checkNull(String.valueOf(params.get("HOLE_BORING_METHOD"))); //시추방법 String oHOLE_BORING_MACHINE = sUtil.checkNull(String.valueOf(request.getParameter("HOLE_BORING_MACHINE"))); //시추장비 String oHOLE_LAYER_NUM = sUtil.checkNull(String.valueOf(params.get("HOLE_LAYER_NUM"))); //지층수 - String oBORING_DIRECTION = sUtil.checkNull(String.valueOf(params.get("BORING_DIRECTION_SEL")))+"|"+sUtil.checkNull(String.valueOf(request.getParameter("BORING_DIRECTION_INPUT"))); //시추방향 + String BORING_DIRECTIOIN_DEGREE = sUtil.checkNull(String.valueOf(request.getParameter("BORING_DIRECTION_INPUT"))); // 시추방향 각도(oBORING_DIRECTION 에 사용한다.) + if ("-".equals(BORING_DIRECTIOIN_DEGREE)) { + BORING_DIRECTIOIN_DEGREE = "-999"; + } + String oBORING_DIRECTION = sUtil.checkNull(String.valueOf(params.get("BORING_DIRECTION_SEL")))+"|"+BORING_DIRECTIOIN_DEGREE; //시추방향 String oHOLE_TYPE = "Boring"; //Boring String oHOLE_DB_INPUTCOMP = sUtil.checkNull(String.valueOf(params.get("HOLE_DB_INPUTCOMP"))); //입력기업 String oHOLE_DESC = sUtil.checkNull(String.valueOf(request.getParameter("HOLE_DESC"))); //기타 diff --git a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java index 81cc8ef0..fd30706d 100644 --- a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java +++ b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java @@ -6880,7 +6880,11 @@ public class ManageExcelUploadProc03Controller { String _holeBoringMachine = excel1Wp.get("col2",17).trim(); //시추장비 String _holeLayerNum = excel1Wp.get("col2",15).trim(); //지층수 - String _boringDirection = excel1Wp.get("col2",19).trim()+"|"+excel1Wp.get("col7",19).trim(); //시추방향 + String boringDirectionDegree = excel1Wp.get("col7",19).trim(); //시추방향 각도(_boringDirection 에 사용한다.) + if ("-".equals(boringDirectionDegree)) { + boringDirectionDegree = "-999"; + } + String _boringDirection = excel1Wp.get("col2",19).trim()+"|"+boringDirectionDegree; //시추방향 System.out.println("시추방향 : " + excel1Wp.get("col2",19).trim()); String _holeType = "Boring"; //Boring diff --git a/src/main/webapp/WEB-INF/views/web/input/header.jsp b/src/main/webapp/WEB-INF/views/web/input/header.jsp index 22e18314..a8128ed0 100644 --- a/src/main/webapp/WEB-INF/views/web/input/header.jsp +++ b/src/main/webapp/WEB-INF/views/web/input/header.jsp @@ -623,12 +623,12 @@ window.onload = function() { //시추방향 if('${mapHeader.boringDirection}' != null && '${mapHeader.boringDirection}' != ''){ var boring = "${mapHeader.boringDirection}".split("|"); - + var boringDegree = boring[1] === '-999' ? '-' : boring[1]; var consFrmSel = document.getElementById("BORING_DIRECTION_SEL"); var consFrmInput = document.getElementById("BORING_DIRECTION_INPUT"); fn_SelectedData(consFrmSel,boring[0]); - consFrmInput.value = boring[1]; + consFrmInput.value = boringDegree; if (boring[0] === "-") { consFrmInput.disabled = true; @@ -637,7 +637,39 @@ window.onload = function() { consFrmInput.disabled = false; } } + + var input = document.getElementById('BORING_DIRECTION_INPUT'); + + // 1. 입력 제한 + input.addEventListener("input", function () { + let val = this.value; + if (!/^[-]?\d*\.?\d*$/.test(val)) { + this.value = val.slice(0, -1); + } + }); + + // 2. ↑ ↓ 키 + input.addEventListener("keydown", function (e) { + if (e.key === "ArrowUp" || e.key === "ArrowDown") { + e.preventDefault(); + + let val = this.value.trim(); + + if (val === "-" || val === "") { + val = 0; + } + + let num = parseFloat(val); + if (isNaN(num)) num = 0; + + if (e.key === "ArrowUp") num += 1; + else num -= 1; + + this.value = num; + } + }); + consFrmSel.addEventListener("change", function() { if (this.value === "-") { consFrmInput.disabled = true; @@ -1758,7 +1790,7 @@ function fn_HoleLoad(){ - ˚ + ˚ From 50446e1bac269f03ee88bc8933700c7b916eaec2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9C=A0=EC=A7=80=EC=9D=B8?= Date: Thu, 9 Apr 2026 11:53:19 +0900 Subject: [PATCH 05/10] =?UTF-8?q?=EA=B8=B0=EC=97=85=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=EC=9E=90=20=EC=9E=85=EB=A0=A5=EC=8B=9C=EC=8A=A4=ED=85=9C:=20?= =?UTF-8?q?=EA=B8=B0=EB=B3=B8=ED=98=84=EC=9E=A5=EC=8B=9C=ED=97=98=EC=A0=95?= =?UTF-8?q?=EB=B3=B4=20>=20=ED=8F=89=EA=B7=9C=ED=88=AC=EC=88=98=EA=B3=84?= =?UTF-8?q?=EC=88=98,=20(=EB=B6=80=EC=A0=95=EB=B3=B4=EC=97=90)=EC=B4=9D?= =?UTF-8?q?=EC=88=98=EB=91=90=20'-'=EC=9E=85=EB=A0=A5=20=EC=A7=80=EC=9B=90?= =?UTF-8?q?(=EC=97=91=EC=85=80=EC=97=85=EB=A1=9C=EB=93=9C)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ManageExcelUploadProc03Controller.java | 27 ++++++++++++++++--- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java index fd30706d..a256199d 100644 --- a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java +++ b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java @@ -512,6 +512,15 @@ public class ManageExcelUploadProc03Controller { listMap = ("".equals(saveMap.get("pe3List")))?null:(List>) saveMap.get("pe3List"); if(null != listMap){ for(HashMap map : listMap){ + + + // 엑셀 업로드로 자료입력 시 - 입력 허용 + String SAMPLE_RD = (String)map.get("SAMPLE_RD"); + + if ("-".equals(SAMPLE_RD)) { // 단위중량 + map.put("SAMPLE_RD", "-999"); + } + logger.debug("=====>pe3List:" + map.toString()); basicService.insertTempFieldPermeability(map); } @@ -5336,7 +5345,7 @@ public class ManageExcelUploadProc03Controller { if(!StringUtil.containsCharOnly(excelWp.get("col4",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, i+"번째 케이싱길이(m)는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col5",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col5",i).trim(),"0123456789.-")){ resultMsg += String.format(fmtMsg, i+"번째 평균투수계수(cm/sec)는 실수만 입력이 가능합니다."); } testNoCheck[i-1] = (String)(excelWp.get("col0",i).trim()); @@ -5372,6 +5381,10 @@ public class ManageExcelUploadProc03Controller { for(int i=1; i < excelWp.getLength(); i++){ HashMap map = new HashMap<>(); + String fieldperAvgPermeability = excelWp.get("col5", i).trim(); + if("-".equals(fieldperAvgPermeability)) { + fieldperAvgPermeability = "-999"; + } map.put("projectCode", _projectCode); map.put("holeCode", _holeCode); map.put("seq", i); @@ -5381,7 +5394,8 @@ public class ManageExcelUploadProc03Controller { map.put("fieldperDepthTo", excelWp.get("col2", i).trim()); map.put("fieldperCasingDia", excelWp.get("col3", i).trim()); map.put("fieldperCasingHeight", excelWp.get("col4", i).trim()); - map.put("fieldperAvgPermeability", excelWp.get("col5", i).trim()); +// map.put("fieldperAvgPermeability", excelWp.get("col5", i).trim()); // [YJI / 26.04.09] 엑셀 업로드 '-' 입력 지원. 입력값이 '-' 이면 DB에 저장은 -999로 한다. + map.put("fieldperAvgPermeability", fieldperAvgPermeability); map.put("fieldperInspectedBy", excelWp.get("col6", i).trim()); map.put("fieldperCheckedBy", excelWp.get("col7", i).trim()); map.put("fieldperRemark", excelWp.get("col8", i).trim()); @@ -5440,7 +5454,7 @@ public class ManageExcelUploadProc03Controller { if(!StringUtil.containsCharOnly(excelWp.get("col2",k).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, k+"번째 시간간격(sec)은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col3",k).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col3",k).trim(),"0123456789.-")){ resultMsg += String.format(fmtMsg, k+"번째 총수두(cm)는 실수만 입력이 가능합니다."); } if(!StringUtil.containsCharOnly(excelWp.get("col4",k).trim(),"0123456789.")){ @@ -5489,6 +5503,10 @@ public class ManageExcelUploadProc03Controller { } HashMap map = new HashMap<>(); + String fieldperSubFallingHead = excelWp.get("col3", k).trim(); + if("-".equals(fieldperSubFallingHead)) { + fieldperSubFallingHead = "-999"; + } map.put("projectCode", _projectCode); map.put("holeCode", _holeCode); map.put("seq", mSeq); @@ -5496,7 +5514,8 @@ public class ManageExcelUploadProc03Controller { map.put("fieldperOrder", tNo); map.put("fieldperSubTime", excelWp.get("col1", k).trim()); map.put("fieldperSubTotalHead", excelWp.get("col2", k).trim()); - map.put("fieldperSubFallingHead", excelWp.get("col3", k).trim()); +// map.put("fieldperSubFallingHead", excelWp.get("col3", k).trim()); // [YJI / 26.04.09] 엑셀 업로드 '-' 입력 지원. 입력값이 '-' 이면 DB에 저장은 -999로 한다. + map.put("fieldperSubFallingHead", fieldperSubFallingHead); map.put("fieldperSubWaterLoose", excelWp.get("col4", k).trim()); map.put("fieldperSubQuantity", excelWp.get("col5", k).trim()); map.put("fieldperSubPermeability", excelWp.get("col6", k).trim()); From f122616c5f419f654650400c5b91ff489646f25d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9C=A0=EC=A7=80=EC=9D=B8?= Date: Thu, 9 Apr 2026 11:53:19 +0900 Subject: [PATCH 06/10] =?UTF-8?q?=EA=B8=B0=EC=97=85=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=EC=9E=90=20=EC=9E=85=EB=A0=A5=EC=8B=9C=EC=8A=A4=ED=85=9C:=20?= =?UTF-8?q?=EA=B8=B0=EB=B3=B8=ED=98=84=EC=9E=A5=EC=8B=9C=ED=97=98=EC=A0=95?= =?UTF-8?q?=EB=B3=B4=20>=20=ED=8F=89=EA=B7=9C=ED=88=AC=EC=88=98=EA=B3=84?= =?UTF-8?q?=EC=88=98,=20(=EB=B6=80=EC=A0=95=EB=B3=B4=EC=97=90)=EC=B4=9D?= =?UTF-8?q?=EC=88=98=EB=91=90=20'-'=EC=9E=85=EB=A0=A5=20=EC=A7=80=EC=9B=90?= =?UTF-8?q?(=EC=97=91=EC=85=80=EC=97=85=EB=A1=9C=EB=93=9C)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ManageExcelUploadProc03Controller.java | 27 ++++++++++++++++--- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java index fd30706d..a256199d 100644 --- a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java +++ b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java @@ -512,6 +512,15 @@ public class ManageExcelUploadProc03Controller { listMap = ("".equals(saveMap.get("pe3List")))?null:(List>) saveMap.get("pe3List"); if(null != listMap){ for(HashMap map : listMap){ + + + // 엑셀 업로드로 자료입력 시 - 입력 허용 + String SAMPLE_RD = (String)map.get("SAMPLE_RD"); + + if ("-".equals(SAMPLE_RD)) { // 단위중량 + map.put("SAMPLE_RD", "-999"); + } + logger.debug("=====>pe3List:" + map.toString()); basicService.insertTempFieldPermeability(map); } @@ -5336,7 +5345,7 @@ public class ManageExcelUploadProc03Controller { if(!StringUtil.containsCharOnly(excelWp.get("col4",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, i+"번째 케이싱길이(m)는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col5",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col5",i).trim(),"0123456789.-")){ resultMsg += String.format(fmtMsg, i+"번째 평균투수계수(cm/sec)는 실수만 입력이 가능합니다."); } testNoCheck[i-1] = (String)(excelWp.get("col0",i).trim()); @@ -5372,6 +5381,10 @@ public class ManageExcelUploadProc03Controller { for(int i=1; i < excelWp.getLength(); i++){ HashMap map = new HashMap<>(); + String fieldperAvgPermeability = excelWp.get("col5", i).trim(); + if("-".equals(fieldperAvgPermeability)) { + fieldperAvgPermeability = "-999"; + } map.put("projectCode", _projectCode); map.put("holeCode", _holeCode); map.put("seq", i); @@ -5381,7 +5394,8 @@ public class ManageExcelUploadProc03Controller { map.put("fieldperDepthTo", excelWp.get("col2", i).trim()); map.put("fieldperCasingDia", excelWp.get("col3", i).trim()); map.put("fieldperCasingHeight", excelWp.get("col4", i).trim()); - map.put("fieldperAvgPermeability", excelWp.get("col5", i).trim()); +// map.put("fieldperAvgPermeability", excelWp.get("col5", i).trim()); // [YJI / 26.04.09] 엑셀 업로드 '-' 입력 지원. 입력값이 '-' 이면 DB에 저장은 -999로 한다. + map.put("fieldperAvgPermeability", fieldperAvgPermeability); map.put("fieldperInspectedBy", excelWp.get("col6", i).trim()); map.put("fieldperCheckedBy", excelWp.get("col7", i).trim()); map.put("fieldperRemark", excelWp.get("col8", i).trim()); @@ -5440,7 +5454,7 @@ public class ManageExcelUploadProc03Controller { if(!StringUtil.containsCharOnly(excelWp.get("col2",k).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, k+"번째 시간간격(sec)은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col3",k).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col3",k).trim(),"0123456789.-")){ resultMsg += String.format(fmtMsg, k+"번째 총수두(cm)는 실수만 입력이 가능합니다."); } if(!StringUtil.containsCharOnly(excelWp.get("col4",k).trim(),"0123456789.")){ @@ -5489,6 +5503,10 @@ public class ManageExcelUploadProc03Controller { } HashMap map = new HashMap<>(); + String fieldperSubFallingHead = excelWp.get("col3", k).trim(); + if("-".equals(fieldperSubFallingHead)) { + fieldperSubFallingHead = "-999"; + } map.put("projectCode", _projectCode); map.put("holeCode", _holeCode); map.put("seq", mSeq); @@ -5496,7 +5514,8 @@ public class ManageExcelUploadProc03Controller { map.put("fieldperOrder", tNo); map.put("fieldperSubTime", excelWp.get("col1", k).trim()); map.put("fieldperSubTotalHead", excelWp.get("col2", k).trim()); - map.put("fieldperSubFallingHead", excelWp.get("col3", k).trim()); +// map.put("fieldperSubFallingHead", excelWp.get("col3", k).trim()); // [YJI / 26.04.09] 엑셀 업로드 '-' 입력 지원. 입력값이 '-' 이면 DB에 저장은 -999로 한다. + map.put("fieldperSubFallingHead", fieldperSubFallingHead); map.put("fieldperSubWaterLoose", excelWp.get("col4", k).trim()); map.put("fieldperSubQuantity", excelWp.get("col5", k).trim()); map.put("fieldperSubPermeability", excelWp.get("col6", k).trim()); From e2a40e0209c4a1f9b27a7ad67e2dbd2755c27e8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9C=A0=EC=A7=80=EC=9D=B8?= Date: Fri, 10 Apr 2026 10:31:36 +0900 Subject: [PATCH 07/10] =?UTF-8?q?=EA=B8=B0=EC=97=85=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=EC=9E=90=20=EC=9E=85=EB=A0=A5=EC=8B=9C=EC=8A=A4=ED=85=9C:=20?= =?UTF-8?q?=ED=86=A0=EC=82=AC=EC=8B=9C=ED=97=98-=EC=9D=BC=EC=B6=95?= =?UTF-8?q?=EC=95=95=EC=B6=95=EC=8B=9C=ED=97=98(=EC=96=91=EC=8B=9D?= =?UTF-8?q?=EC=97=90=20=EC=B6=94=EA=B0=80=EB=90=9C=20=ED=85=8C=EC=8A=A4?= =?UTF-8?q?=ED=8A=B8=EB=B2=88=ED=98=B8=20=EC=B2=98=EB=A6=AC=20=EB=B0=98?= =?UTF-8?q?=EC=98=81;=EA=B8=B0=EB=B3=B8=EB=AC=BC=EC=84=B1=EC=8B=9C?= =?UTF-8?q?=ED=97=98=EC=9D=98=20=EC=8B=9C=EB=A3=8C=EB=B2=88=ED=98=B8?= =?UTF-8?q?=EB=A5=BC=20=EA=B0=80=EC=A0=B8=EC=99=80=20=EC=B2=98=EB=A6=AC?= =?UTF-8?q?=ED=95=9C=EB=8B=A4)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ManageExcelUploadProc03Controller.java | 92 ++++++++++++------- 1 file changed, 58 insertions(+), 34 deletions(-) diff --git a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java index a256199d..99e52e73 100644 --- a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java +++ b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java @@ -4489,52 +4489,55 @@ public class ManageExcelUploadProc03Controller { List> list = new ArrayList>(); resultMsg = imageUpload(params,"일축압축정보 그래프", savePath, strFile, resultMsg, "[토사시험정보 - 일축압축시험 그래프] %s|", "일축압축시험결과 그래프",excelWp.getLength()); for(int i=0; i < excelWp.getLength(); i++){ - if(!StringUtil.containsCharOnly(excelWp.get("col0",i).trim(),"0123456789.")){ +// if(!StringUtil.containsCharOnly(excelWp.get("col0",i).trim(),"0123456789.")){ +// resultMsg += String.format(fmtMsg, "링계수는 실수만 입력이 가능합니다."); +// } + if(!StringUtil.containsCharOnly(excelWp.get("col1",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "링계수는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col1",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col2",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "하중값는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col2",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col3",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "자연시료 높이는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col3",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col4",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "자연시료 직경은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col4",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col5",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "자연시료 함수비는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col5",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col6",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "자연시료 단위중량은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col6",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col7",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "자연시료 공극비는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col7",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col8",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "자연시료 포화도는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col8",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col9",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "자연시료 일축압축강도는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col9",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col10",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "제성형시료 높이 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col10",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col11",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "제성형시료 직경은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col11",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col12",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "제성형시료 함수비는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col12",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col13",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "제성형시료 단위중량은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col13",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col14",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "제성형시료 공극비는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col14",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col15",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "제성형시료 포화도는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col15",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col16",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "제성형시료 일축압축강도는 실수만 입력이 가능합니다."); } @@ -4543,28 +4546,49 @@ public class ManageExcelUploadProc03Controller { return params; } int testNo3 = Integer.valueOf(excelWp.get("col0",i).trim()) -1; + int testNo = testNo3 + 1; // 사용자가 입력한 순번(물성시험 샘플을 순번으로 찾을때 사용) + + String targetSampleCode = null; + + // private List> _sampleInfoList + for (Map sample : _sampleInfoList) { + String sampleCode = (String) sample.get("SAMPLE_CODE"); + + // SAMPLE_CODE 끝 숫자 추출 + String numberPart = sampleCode.replaceAll(".*?(\\d+)$", "$1"); + int number = Integer.parseInt(numberPart); + + if (number == testNo) { + targetSampleCode = sampleCode; + break; + } + } + + HashMap map = new HashMap<>(); map.put("PROJECT_CODE", _projectCode); map.put("HOLE_CODE", _holeCode); - map.put("SAMPLE_CODE" , (String) _sampleInfoList.get(i).get("SAMPLE_CODE")); +// map.put("SAMPLE_CODE" , (String) _sampleInfoList.get(i).get("SAMPLE_CODE")); + map.put("SAMPLE_CODE", targetSampleCode); map.put("UNCONF_RINGFACTOR" , excelWp.get("col0", i)); - map.put("UNCONF_LOAD_SCALE" , excelWp.get("col1", i)); - map.put("UNCONF_UNDISTURB_HEIGHT" , excelWp.get("col2", i)); - map.put("UNCONF_UNDISTURB_DIA" , excelWp.get("col3", i)); - map.put("UNCONF_UNDISTURB_W" , excelWp.get("col4", i)); - map.put("UNCONF_UNDISTURB_RT" , excelWp.get("col5", i)); - map.put("UNCONF_UNDISTURB_E" , excelWp.get("col6", i)); - map.put("UNCONF_UNDISTURB_S" , excelWp.get("col7", i)); - map.put("UNCONF_UNDISTURB_COMPSTRENGTH" , excelWp.get("col8", i)); - map.put("UNCONF_REMOULD_HEIGHT" , excelWp.get("col9", i)); - map.put("UNCONF_REMOULD_DIA" , excelWp.get("col10", i)); - map.put("UNCONF_REMOULD_W" , excelWp.get("col11", i)); - map.put("UNCONF_REMOULD_RT" , excelWp.get("col12", i)); - map.put("UNCONF_REMOULD_E" , excelWp.get("col13", i)); - map.put("UNCONF_REMOULD_S" , excelWp.get("col14", i)); - map.put("UNCONF_REMOULD_COMPSTRENGTH" , excelWp.get("col15", i)); - map.put("UNCONF_SAMPLE_SHAPE" , excelWp.get("col16", i)); - map.put("UNCONF_REMARK" , excelWp.get("col17", i)); + map.put("UNCONF_RINGFACTOR" , excelWp.get("col1", i)); + map.put("UNCONF_LOAD_SCALE" , excelWp.get("col2", i)); + map.put("UNCONF_UNDISTURB_HEIGHT" , excelWp.get("col3", i)); + map.put("UNCONF_UNDISTURB_DIA" , excelWp.get("col4", i)); + map.put("UNCONF_UNDISTURB_W" , excelWp.get("col5", i)); + map.put("UNCONF_UNDISTURB_RT" , excelWp.get("col6", i)); + map.put("UNCONF_UNDISTURB_E" , excelWp.get("col7", i)); + map.put("UNCONF_UNDISTURB_S" , excelWp.get("col8", i)); + map.put("UNCONF_UNDISTURB_COMPSTRENGTH" , excelWp.get("col9", i)); + map.put("UNCONF_REMOULD_HEIGHT" , excelWp.get("col10", i)); + map.put("UNCONF_REMOULD_DIA" , excelWp.get("col11", i)); + map.put("UNCONF_REMOULD_W" , excelWp.get("col12", i)); + map.put("UNCONF_REMOULD_RT" , excelWp.get("col13", i)); + map.put("UNCONF_REMOULD_E" , excelWp.get("col14", i)); + map.put("UNCONF_REMOULD_S" , excelWp.get("col15", i)); + map.put("UNCONF_REMOULD_COMPSTRENGTH" , excelWp.get("col16", i)); + map.put("UNCONF_SAMPLE_SHAPE" , excelWp.get("col17", i)); + map.put("UNCONF_REMARK" , excelWp.get("col18", i)); map.put("USERID" , request.getSession().getAttribute("USERID")); map.put("graphImage" , params.get("GRAPH_IMAGE"+testNo3) ); From d023b43d3694a5bc74ffc33d503468043b1f79a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9C=A0=EC=A7=80=EC=9D=B8?= Date: Fri, 10 Apr 2026 11:21:22 +0900 Subject: [PATCH 08/10] =?UTF-8?q?(=EC=A3=BC=EC=84=9D=EC=A0=95=EB=A6=AC)?= =?UTF-8?q?=EA=B8=B0=EC=97=85=EC=82=AC=EC=9A=A9=EC=9E=90=20=EC=9E=85?= =?UTF-8?q?=EB=A0=A5=EC=8B=9C=EC=8A=A4=ED=85=9C:=20=ED=86=A0=EC=82=AC?= =?UTF-8?q?=EC=8B=9C=ED=97=98-=EC=9D=BC=EC=B6=95=EC=95=95=EC=B6=95?= =?UTF-8?q?=EC=8B=9C=ED=97=98(=EC=96=91=EC=8B=9D=EC=97=90=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80=EB=90=9C=20=ED=85=8C=EC=8A=A4=ED=8A=B8=EB=B2=88?= =?UTF-8?q?=ED=98=B8=20=EC=B2=98=EB=A6=AC=20=EB=B0=98=EC=98=81;=EA=B8=B0?= =?UTF-8?q?=EB=B3=B8=EB=AC=BC=EC=84=B1=EC=8B=9C=ED=97=98=EC=9D=98=20?= =?UTF-8?q?=EC=8B=9C=EB=A3=8C=EB=B2=88=ED=98=B8=EB=A5=BC=20=EA=B0=80?= =?UTF-8?q?=EC=A0=B8=EC=99=80=20=EC=B2=98=EB=A6=AC=ED=95=9C=EB=8B=A4)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../regi/manageList/ManageExcelUploadProc03Controller.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java index 99e52e73..e0774ca4 100644 --- a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java +++ b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java @@ -4563,14 +4563,12 @@ public class ManageExcelUploadProc03Controller { break; } } - HashMap map = new HashMap<>(); map.put("PROJECT_CODE", _projectCode); map.put("HOLE_CODE", _holeCode); // map.put("SAMPLE_CODE" , (String) _sampleInfoList.get(i).get("SAMPLE_CODE")); - map.put("SAMPLE_CODE", targetSampleCode); - map.put("UNCONF_RINGFACTOR" , excelWp.get("col0", i)); + map.put("SAMPLE_CODE" , targetSampleCode); map.put("UNCONF_RINGFACTOR" , excelWp.get("col1", i)); map.put("UNCONF_LOAD_SCALE" , excelWp.get("col2", i)); map.put("UNCONF_UNDISTURB_HEIGHT" , excelWp.get("col3", i)); From 83f394b58f2ed1074953b385d96aaf0d6f505e81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9C=A0=EC=A7=80=EC=9D=B8?= Date: Fri, 10 Apr 2026 17:29:41 +0900 Subject: [PATCH 09/10] =?UTF-8?q?=EA=B8=B0=EC=97=85=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=EC=9E=90=20=EC=9E=85=EB=A0=A5=EC=8B=9C=EC=8A=A4=ED=85=9C:=20?= =?UTF-8?q?=EC=97=91=EC=85=80=EC=96=91=EC=8B=9D=EB=B3=80=EA=B2=BD=20?= =?UTF-8?q?=ED=86=A0=EC=82=AC=EC=8B=9C=ED=97=98(=EC=9E=85=EB=8F=84?= =?UTF-8?q?=EB=B6=84=EC=84=9D,=20=EC=9D=BC=EC=B6=95=EC=95=95),=20=EC=95=94?= =?UTF-8?q?=EC=84=9D=EC=8B=9C=ED=97=98(=EC=A0=90=ED=95=98=EC=A4=91,=20?= =?UTF-8?q?=EC=A0=88=EB=A6=AC=EB=A9=B4=EC=A0=88=EB=8B=A8)=20=ED=85=8C?= =?UTF-8?q?=EC=8A=A4=ED=8A=B8=EB=B2=88=ED=98=B8=20=EC=B6=94=EA=B0=80?= =?UTF-8?q?=EB=90=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manageList/ManageExcelUploadProc03Controller.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java index e0774ca4..54830a45 100644 --- a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java +++ b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java @@ -1608,7 +1608,7 @@ public class ManageExcelUploadProc03Controller { RsWrapper excelWp = new RsWrapper(); if("Y".equals(classInfoMap.get("sandClassification"))){ if("".equals((String)resultMap.get("resultMsg"))){ - excelWp = ExcelUtil.getRsWp(strFile, "입도분석정보", 0, 1, 22); + excelWp = ExcelUtil.getRsWp(strFile, "입도분석정보", 0, 1, 23); resultMap = checkStep03_500_class(request, params, excelWp, savePath, strFile,_projectCode,_holeCode); jaCl5 = (null == resultMap.get("list") || "".equals(resultMap.get("list")))?null:JSONArray.fromObject(resultMap.get("list")); } @@ -1635,7 +1635,7 @@ public class ManageExcelUploadProc03Controller { } if("Y".equals(classInfoMap.get("sandUnconfinedUsual"))){ if("".equals((String)resultMap.get("resultMsg"))){ - excelWp = ExcelUtil.getRsWp(strFile, "일축압축정보", 0, 2, 18); + excelWp = ExcelUtil.getRsWp(strFile, "일축압축정보", 0, 2, 19); resultMap = checkStep03_500_unconfined(request, params, excelWp, savePath, strFile,_projectCode,_holeCode); jaUn5 = (null == resultMap.get("list") || "".equals(resultMap.get("list")))?null:JSONArray.fromObject(resultMap.get("list")); } @@ -1709,14 +1709,14 @@ public class ManageExcelUploadProc03Controller { } if("Y".equals(classInfoMap.get("rockPointload"))){ if("".equals((String)resultMap.get("resultMsg"))){ - excelWp = ExcelUtil.getRsWp(strFile, "점하중정보", 0, 1, 8); + excelWp = ExcelUtil.getRsWp(strFile, "점하중정보", 0, 1, 9); resultMap = checkStep03_600_rockPointload(request, params, excelWp, savePath, strFile,_projectCode,_holeCode); jaRpo6 = (null == resultMap.get("list") || "".equals(resultMap.get("list")))?null:JSONArray.fromObject(resultMap.get("list")); } } if("Y".equals(classInfoMap.get("rockJointshear"))){ if("".equals((String)resultMap.get("resultMsg"))){ - excelWp = ExcelUtil.getRsWp(strFile, "절리면전단정보", 0, 1, 8); + excelWp = ExcelUtil.getRsWp(strFile, "절리면전단정보", 0, 1, 9); resultMap = checkStep03_600_rockJointshear(request, params, excelWp, savePath, strFile,_projectCode,_holeCode); jaRjo6 = (null == resultMap.get("list") || "".equals(resultMap.get("list")))?null:JSONArray.fromObject(resultMap.get("list")); } From 9ca6ad130a1f95caa45fc75fa72e7f95d9aa0dbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9C=A0=EC=A7=80=EC=9D=B8?= Date: Fri, 10 Apr 2026 18:00:08 +0900 Subject: [PATCH 10/10] =?UTF-8?q?=EA=B8=B0=EC=97=85=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=EC=9E=90=20=EC=9E=85=EB=A0=A5=EC=8B=9C=EC=8A=A4=ED=85=9C:=20?= =?UTF-8?q?=ED=86=A0=EC=82=AC=EC=8B=9C=ED=97=98-=EC=9E=85=EB=8F=84?= =?UTF-8?q?=EB=B6=84=EC=84=9D(=EC=96=91=EC=8B=9D=EC=97=90=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80=EB=90=9C=20=ED=85=8C=EC=8A=A4=ED=8A=B8=EB=B2=88?= =?UTF-8?q?=ED=98=B8=20=EC=B2=98=EB=A6=AC=20=EB=B0=98=EC=98=81;=EA=B8=B0?= =?UTF-8?q?=EB=B3=B8=EB=AC=BC=EC=84=B1=EC=8B=9C=ED=97=98=EC=9D=98=20?= =?UTF-8?q?=EC=8B=9C=EB=A3=8C=EB=B2=88=ED=98=B8=EB=A5=BC=20=EA=B0=80?= =?UTF-8?q?=EC=A0=B8=EC=99=80=20=EC=B2=98=EB=A6=AC=ED=95=9C=EB=8B=A4)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ManageExcelUploadProc03Controller.java | 114 ++++++++++-------- 1 file changed, 64 insertions(+), 50 deletions(-) diff --git a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java index 54830a45..4698401e 100644 --- a/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java +++ b/src/main/java/geoinfo/regi/manageList/ManageExcelUploadProc03Controller.java @@ -5030,76 +5030,78 @@ public class ManageExcelUploadProc03Controller { strUtil sUtil = new strUtil(); String resultMsg = ""; String fmtMsg = "[토사시험정보 - 입도분석정보] %s|"; - if(excelWp.getLength() != _sampleInfoList.size()){ - params.put("resultMsg", String.format(fmtMsg, "기본물성시험정보의 시료 갯수와 같지 않습니다.")); - return params; - }; + // [YJI / 26.04.10] 입도시험 개수는 물성시험정보 갯수와 일치하지 않아도 됨(같거나 작으면 됨) +// if(excelWp.getLength() != _sampleInfoList.size()){ +// params.put("resultMsg", String.format(fmtMsg, "기본물성시험정보의 시료 갯수와 같지 않습니다.")); +// return params; +// }; try{ List> list = new ArrayList>(); String saveName=""; - resultMsg = imageUpload(params,"입도분석정보 그래프", savePath, strFile, resultMsg, "[토사시험정보 - 입도시험 그래프] %s|", "입도시험결과 그래프",_sampleInfoList.size()); - for(int i=0; i < _sampleInfoList.size(); i++) { - if(!StringUtil.containsCharOnly(excelWp.get("col0",i).trim(),"0123456789.")){ + // [YJI / 26.04.10] 입도시험 개수는 물성시험정보 갯수와 일치하지 않아도 됨(같거나 작으면 됨) - 그래프이미지 + resultMsg = imageUpload(params,"입도분석정보 그래프", savePath, strFile, resultMsg, "[토사시험정보 - 입도시험 그래프] %s|", "입도시험결과 그래프",excelWp.getLength()); + for(int i=0; i < excelWp.getLength(); i++) { // [YJI / 26.04.10] 입도시험 개수는 물성시험정보 갯수와 일치하지 않아도 됨(같거나 작으면 됨) + if(!StringUtil.containsCharOnly(excelWp.get("col1",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "D10은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col1",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col2",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "D30은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col2",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col3",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "D60은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col3",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col4",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "균등계수는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col4",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col5",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "곡률계수는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col5",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col6",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#4는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col6",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col7",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#6은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col7",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col8",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#8은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col8",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col9",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#10은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col9",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col10",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#12는 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col10",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col11",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#16은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col11",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col12",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#20은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col12",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col13",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#30은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col13",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col14",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#40은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col14",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col15",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#50은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col15",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col16",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#60은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col16",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col17",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#70은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col17",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col18",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#100은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col18",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col19",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#140은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col19",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col20",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#200은 실수만 입력이 가능합니다."); } - if(!StringUtil.containsCharOnly(excelWp.get("col20",i).trim(),"0123456789.")){ + if(!StringUtil.containsCharOnly(excelWp.get("col21",i).trim(),"0123456789.")){ resultMsg += String.format(fmtMsg, "#0.005는 실수만 입력이 가능합니다."); } @@ -5110,33 +5112,45 @@ public class ManageExcelUploadProc03Controller { //EgovMap m = items.get(i); logger.debug("_sampleInfoList SAMPLE_CODE : " + (String) _sampleInfoList.get(i).get("SAMPLE_CODE")); + int testNo = Integer.valueOf(excelWp.get("col0",i).trim()); // 사용자가 입력한 순번(물성시험 샘플을 순번으로 찾을때 사용) + String targetSampleCode = null; + for (Map sample : _sampleInfoList) { + String sampleCode = (String) sample.get("SAMPLE_CODE"); + // SAMPLE_CODE 끝 숫자 추출 + String numberPart = sampleCode.replaceAll(".*?(\\d+)$", "$1"); + int number = Integer.parseInt(numberPart); + if (number == testNo) { + targetSampleCode = sampleCode; + break; + } + } HashMap map = new HashMap<>(); map.put("PROJECT_CODE" , _projectCode); map.put("HOLE_CODE" , _holeCode); - map.put("sampleCode" , (String) _sampleInfoList.get(i).get("SAMPLE_CODE")); - map.put("classiD10" , excelWp.get("col0", i)); - map.put("classiD30" , excelWp.get("col1", i)); - map.put("classiD60" , excelWp.get("col2", i)); - map.put("classiCu" , excelWp.get("col3", i)); - map.put("classiCg" , excelWp.get("col4", i)); - map.put("classiNo4" , excelWp.get("col5", i)); - map.put("classiNo6" , excelWp.get("col6", i)); - map.put("classiNo8" , excelWp.get("col7", i)); - map.put("classiNo10" , excelWp.get("col8", i)); - map.put("classiNo12" , excelWp.get("col9", i)); - map.put("classiNo16" , excelWp.get("col10", i)); - map.put("classiNo20" , excelWp.get("col11", i)); - map.put("classiNo30" , excelWp.get("col12", i)); - map.put("classiNo40" , excelWp.get("col13", i)); - map.put("classiNo50" , excelWp.get("col14", i)); - map.put("classiNo60" , excelWp.get("col15", i)); - map.put("classiNo70" , excelWp.get("col16", i)); - map.put("classiNo100" , excelWp.get("col17", i)); - map.put("classiNo140" , excelWp.get("col18", i)); - map.put("classiNo200" , excelWp.get("col19", i)); - map.put("classiNo005" , excelWp.get("col20", i)); - map.put("classiRemark" , excelWp.get("col21", i)); + map.put("sampleCode" , targetSampleCode); + map.put("classiD10" , excelWp.get("col1", i)); + map.put("classiD30" , excelWp.get("col2", i)); + map.put("classiD60" , excelWp.get("col3", i)); + map.put("classiCu" , excelWp.get("col4", i)); + map.put("classiCg" , excelWp.get("col5", i)); + map.put("classiNo4" , excelWp.get("col6", i)); + map.put("classiNo6" , excelWp.get("col7", i)); + map.put("classiNo8" , excelWp.get("col8", i)); + map.put("classiNo10" , excelWp.get("col9", i)); + map.put("classiNo12" , excelWp.get("col10", i)); + map.put("classiNo16" , excelWp.get("col11", i)); + map.put("classiNo20" , excelWp.get("col12", i)); + map.put("classiNo30" , excelWp.get("col13", i)); + map.put("classiNo40" , excelWp.get("col14", i)); + map.put("classiNo50" , excelWp.get("col15", i)); + map.put("classiNo60" , excelWp.get("col16", i)); + map.put("classiNo70" , excelWp.get("col17", i)); + map.put("classiNo100" , excelWp.get("col18", i)); + map.put("classiNo140" , excelWp.get("col19", i)); + map.put("classiNo200" , excelWp.get("col20", i)); + map.put("classiNo005" , excelWp.get("col21", i)); + map.put("classiRemark" , excelWp.get("col22", i)); map.put("USERID" , request.getSession().getAttribute("USERID")); map.put("graphImage" , params.get("GRAPH_IMAGE"+i) ); map.put("graphLocal" , params.get("GRAPH_LOCAL"+i) );