Pārlūkot izejas kodu

Merge branch 'master' of http://106.246.249.162:13000/orderqueen/oqpo-view

juney 2 gadi atpakaļ
vecāks
revīzija
a7e22e02aa

+ 7 - 7
src/main/webapp/js/app/inoutmng/ITP_INOUTMNG02010.js

@@ -59,7 +59,7 @@ const gridColModel = {
59 59
 			index: 'SHMT_REQ_ST_CD', name: 'shmtReqStCd',
60 60
 			label: ITP_MSG_LOCALE.label.shmtReqStCd,			// 출하상태코드
61 61
 			minwidth: 120,
62
-			width: '10', fixed: false, align: 'center',
62
+			width: '9', fixed: false, align: 'center',
63 63
 			sortable: false, hidden: false, formatter: 'select', edittype: 'select',
64 64
 			editoptions: {value: ITP_PODR_DTL_ST_CD}
65 65
 		},
@@ -87,14 +87,14 @@ const gridColModel = {
87 87
 		{
88 88
 			index: 'SHMT_QTY', name: 'shmtQty',
89 89
 			label: ITP_MSG_LOCALE.label.shmtQty,				// 출하수량
90
-			width: '8', fixed: false, align: 'right',
90
+			width: '12', fixed: false, align: 'right',
91 91
 			sortable: false, hidden: false,
92 92
 			formatter:'integer',formatoptions: { defaultValue: '', thousandsSeparator: ',' }
93 93
 		},
94 94
 		{
95 95
 			index: 'SHMT_AMT', name: 'shmtAmt',
96 96
 			label: ITP_MSG_LOCALE.label.shmtAmt,				// 출하금액
97
-			width: '8', fixed: false, align: 'right',
97
+			width: '12', fixed: false, align: 'right',
98 98
 			minwidth: 80,
99 99
 			sortable: false, hidden: false,
100 100
 			formatter:'integer',formatoptions: { defaultValue: '', thousandsSeparator: ',' }
@@ -102,28 +102,28 @@ const gridColModel = {
102 102
 		{
103 103
 			index: 'WHS_QTY', name: 'whsQty',
104 104
 			label: ITP_MSG_LOCALE.label.whsQty,					// 입고수량
105
-			width: '8', fixed: false, align: 'right',
105
+			width: '12', fixed: false, align: 'right',
106 106
 			sortable: false, hidden: false,
107 107
 			formatter:'integer',formatoptions: { defaultValue: '', thousandsSeparator: ',' }
108 108
 		},
109 109
 		{
110 110
 			index: 'WHS_AMT', name: 'whsAmt',
111 111
 			label: ITP_MSG_LOCALE.label.whsAmt,					// 입고금액
112
-			width: '8', fixed: false, align: 'right',
112
+			width: '12', fixed: false, align: 'right',
113 113
 			sortable: false, hidden: false,
114 114
 			formatter:'integer',formatoptions: { defaultValue: '', thousandsSeparator: ',' }
115 115
 		},
116 116
 		{
117 117
 			index: 'WHS_CNFM_NM', name: 'whsCnfmNm',
118 118
 			label: ITP_MSG_LOCALE.label.whsCnfmNm,				// 입고확인자
119
-			width: '10', fixed: false, align: 'center',
119
+			width: '13', fixed: false, align: 'center',
120 120
 			minwidth: 100,
121 121
 			sortable: false, hidden: false
122 122
 		},
123 123
 		{
124 124
 			index: 'WHS_DT', name: 'whsDt',
125 125
 			label: ITP_MSG_LOCALE.label.whsDt,					// 입고일
126
-			width: '10', fixed: false, align: 'center',
126
+			width: '9', fixed: false, align: 'center',
127 127
 			minwidth: 100,
128 128
 			sortable: false, hidden: false
129 129
 		},

+ 4 - 4
src/main/webapp/js/app/inoutmng/ITP_INOUTMNG04010.js

@@ -72,7 +72,7 @@ const gridColModel = {
72 72
 		{
73 73
 			index: 'SHMT_REQ_ST_CD', name: 'colCmdDtlStCd',
74 74
 			label: ITP_MSG_LOCALE.label.colCmdDtlStCd,			// 수거지시상태
75
-			width: '7', fixed: false, align: 'center',
75
+			width: '8', fixed: false, align: 'center',
76 76
 			sortable: false, hidden: false, formatter: 'select', edittype: 'select',
77 77
 			editoptions: {value: ITP_COL_CMD_DTL_ST_CD}
78 78
 		},
@@ -100,21 +100,21 @@ const gridColModel = {
100 100
 		{
101 101
 			index: 'SHMT_QTY', name: 'rtnQty',
102 102
 			label: ITP_MSG_LOCALE.label.rtnQty,				// 반품발주수량
103
-			width: '7', fixed: false, align: 'right',
103
+			width: '14', fixed: false, align: 'right',
104 104
 			sortable: false, hidden: false,
105 105
 			formatter: 'integer', formatoptions: { defaultValue: '', thousandsSeparator: ',' }
106 106
 		},
107 107
 		{
108 108
 			index: 'WHS_QTY', name: 'colQty',
109 109
 			label: ITP_MSG_LOCALE.label.colQty,				// 수거수량
110
-			width: '7', fixed: false, align: 'right',
110
+			width: '14', fixed: false, align: 'right',
111 111
 			sortable: false, hidden: false,
112 112
 			formatter: 'integer', formatoptions: { defaultValue: '', thousandsSeparator: ',' }
113 113
 		},
114 114
 		{
115 115
 			index: 'SHMT_AMT', name: 'colAmt',
116 116
 			label: ITP_MSG_LOCALE.label.colAmt,				// 수거금액
117
-			width: '8', fixed: false, align: 'right',
117
+			width: '14', fixed: false, align: 'right',
118 118
 			minwidth: 80,
119 119
 			sortable: false, hidden: false,
120 120
 			formatter: 'integer', formatoptions: { defaultValue: '', thousandsSeparator: ',' }

+ 18 - 2
src/main/webapp/js/app/main.js

@@ -14,13 +14,20 @@ let MAIN_CHART_SFT_STCK_CHART = '/api/main/chart/sft-stck-chart';
14 14
 let MAIN_CHART_DELI_CHART = '/api/main/chart/deli-chart';
15 15
 
16 16
 var chartCnt=0;
17
+function loadJS(url, implementationCode ) {
18
+	var scriptTag = document.createElement('script');
19
+	scriptTag.src = url;
20
+	scriptTag.onload = implementationCode;
21
+	scriptTag.onreadystatechange = implementationCode;
22
+	document.head.appendChild(scriptTag);
23
+};
17 24
 
18 25
 require(['config'], function() {
19 26
 	require([
20 27
 		'jquery', 
21 28
 		'jquery.bootstrap.fileUpload' //파일 업로드가 있는 페이지에서 로딩
22 29
 	], function($) {
23
-		
30
+		 
24 31
 		setTimeout(function() {
25 32
 			// 시간지정
26 33
 			// $('#ITP_FORM_MAIN_NOTICE_SEARCH_SCH_DT').val(itp_fn_date_format(new Date(), 2));
@@ -134,7 +141,16 @@ require(['config'], function() {
134 141
 				$('#ITP_MAIN_GRAPH_AREA').css('grid-template-columns','1fr 1fr 1fr');
135 142
 			}	
136 143
 
137
-		}, 300);		
144
+		}, 300);
145
+		
146
+		loadJS('./js/cpexcel.js', function() {
147
+			loadJS('./js/xlsx.js', function() {
148
+				if(XLSX.version!=='0.18.5') {
149
+					make_xlsx_lib(XLSX);
150
+				}
151
+				console.log("xxxxxx xlsx xxxxxx", XLSX);
152
+			});
153
+		});
138 154
 	});
139 155
 });
140 156
 

+ 39 - 32
src/main/webapp/js/app/ordmng/ITP_ORDMNG02010.js

@@ -360,43 +360,50 @@ let modifyObj = {
360 360
 			listObj.grid.search();
361 361
 		},
362 362
 		save: function() {
363
-			const formId = '#ITP_FORM_ORDMNG02010_DETAIL';
364
-			itp_fn_form_clear_validate(null, formId);
365
-			itp_fn_grid_save_rows(ORDMNG02010_DETAIL_GRID_ID);
366
-			let gridInsertData = [];
367
-			for(var i=0; i<$(ORDMNG02010_DETAIL_GRID_ID).getGridParam('reccount'); i++) {
368
-				$(ORDMNG02010_DETAIL_GRID_ID).jqGrid('saveCell', i+1, 2)
369
-			}
370
-			let param = $(formId).serializeObject();
371
-			const rowData = $(ORDMNG02010_DETAIL_GRID_ID).getRowData();
372
-			for (var i = 0; i < rowData.length; i++) {
373
-				rowData[i].podrQty = Number(rowData[i].podrQty);
374
-				rowData[i].shmtQty = Number(rowData[i].shmtQty);
375
-			}
376 363
 			
377
-			var now = new Date();
378
-			var today = now.getFullYear() +
379
-							"." + (now.getMonth()+1 > 9 ? (now.getMonth()+1).toString() : "0" + (now.getMonth()+1).toString()) +
380
-							"." + (now.getDate() > 9 ? now.getDate().toString() : "0" + now.getDate().toString());
364
+			$('body').trigger('click');
381 365
 			
366
+			const formId = '#ITP_FORM_ORDMNG02010_DETAIL';
367
+			itp_fn_form_clear_validate(null, formId);
382 368
 			
383
-			var dlvReqDt = $('#ITP_FORM_ORDMNG02010_DETAIL_DLV_SCH_DT').val();
384
-			if (today > dlvReqDt) {
385
-				alert("납품요청일은 오늘 이후이어야 합니다.");
386
-				return;
387
-			}	
369
+			if (itp_fn_form_event.isValid(formId)) {
388 370
 			
389
-			var modalFn = {
390
-				callBack: (args) => {
391
-					param.gridInsertData = rowData;
392
-					var searhFn = function () {
393
-						ITP_FORM_OPER03010_DETAIL_IS_WRITING = false;
394
-						listObj.grid.search();
395
-					}
396
-					fn_ajax_call(API_POMNG_INOUTMNG_SAVE_SPPLY_INV, JSON.stringify(param), searhFn, 'POST');
371
+				itp_fn_grid_save_rows(ORDMNG02010_DETAIL_GRID_ID);
372
+				let gridInsertData = [];
373
+				for(var i=0; i<$(ORDMNG02010_DETAIL_GRID_ID).getGridParam('reccount'); i++) {
374
+					$(ORDMNG02010_DETAIL_GRID_ID).jqGrid('saveCell', i+1, 2)
397 375
 				}
398
-			};
399
-			itp_fn_modal_confirm('저장 하시겠습니까?', modalFn);
376
+				let param = $(formId).serializeObject();
377
+				const rowData = $(ORDMNG02010_DETAIL_GRID_ID).getRowData();
378
+				for (var i = 0; i < rowData.length; i++) {
379
+					rowData[i].podrQty = Number(rowData[i].podrQty);
380
+					rowData[i].shmtQty = Number(rowData[i].shmtQty);
381
+				}
382
+				
383
+				var now = new Date();
384
+				var today = now.getFullYear() +
385
+								"." + (now.getMonth()+1 > 9 ? (now.getMonth()+1).toString() : "0" + (now.getMonth()+1).toString()) +
386
+								"." + (now.getDate() > 9 ? now.getDate().toString() : "0" + now.getDate().toString());
387
+				
388
+				
389
+				var dlvReqDt = $('#ITP_FORM_ORDMNG02010_DETAIL_DLV_SCH_DT').val();
390
+				if (today > dlvReqDt) {
391
+					alert("납품예정일은 오늘 이후이어야 합니다.");
392
+					return;
393
+				}	
394
+				
395
+				var modalFn = {
396
+					callBack: (args) => {
397
+						param.gridInsertData = rowData;
398
+						var searhFn = function () {
399
+							ITP_FORM_OPER03010_DETAIL_IS_WRITING = false;
400
+							listObj.grid.search();
401
+						}
402
+						fn_ajax_call(API_POMNG_INOUTMNG_SAVE_SPPLY_INV, JSON.stringify(param), searhFn, 'POST');
403
+					}
404
+				};
405
+				itp_fn_modal_confirm('납품서 생성 하시겠습니까?', modalFn);
406
+			}
400 407
 		},
401 408
 		recal: function() {
402 409
 			var ids = $(ORDMNG02010_DETAIL_GRID_ID).getDataIDs();

+ 4 - 5
src/main/webapp/js/app/rtnmng/ITP_RTNMNG01010.js

@@ -62,8 +62,8 @@ const gridColModel = {
62 62
 			index: 'ITEM_NM', name: 'itemNm',
63 63
 			label: ITP_MSG_LOCALE.label.itemNm,
64 64
 			width: '8', fixed: false, align: 'left',
65
-			sortable: true, editable: false, edittype: 'text',
66
-			editrules: { required: true }
65
+			sortable: false, editable: false, edittype: 'text',
66
+			editrules: { required: true }, classes: 'ui-ellipsis'
67 67
 		},
68 68
 		{
69 69
 			index: 'UNIT', name: 'unit',
@@ -83,9 +83,8 @@ const gridColModel = {
83 83
 			label: '반품수량', classes: 'input_color',
84 84
 			width: '8', fixed: false, align: 'right',
85 85
 			sortable: false, editable: true, edittype: 'text',
86
-			editoptions: {"onKeyup": "this.value=this.value.replace(/[^0-9]/g,'');"}, 
87
-			formatter:'integer',formatoptions: { defaultValue: '', thousandsSeparator: ',' },
88
-			editoptions: {maxlength: 10}
86
+			editoptions: {"onKeyup": "this.value=this.value.replace(/[^0-9]/g,'');", maxlength: 10}, 
87
+			formatter:'integer', formatoptions: { defaultValue: '', thousandsSeparator: ',' },
89 88
 		},
90 89
 		{
91 90
 			index: 'RTN_AMT', name: 'rtnAmt',

+ 13 - 18
src/main/webapp/js/app/rtnmng/ITP_RTNMNG06010.js

@@ -26,8 +26,8 @@ const gridColModel = {
26 26
 		{
27 27
 			index: 'BRAND_NM', name: 'brandNm',
28 28
 			label: '브랜드', 
29
-			width: '10', fixed: false, align: 'left',
30
-			sortable: false, hidden: false
29
+			width: '13', fixed: false, align: 'left',
30
+			sortable: false, hidden: false, classes: 'ui-ellipsis'
31 31
 		},
32 32
 		{
33 33
 			index: 'RTN_PODR_UNQ_NO', name: 'rtnPodrUnqNo',
@@ -44,64 +44,59 @@ const gridColModel = {
44 44
 		{
45 45
 			index: 'ITEM_ID', name: 'itemId',
46 46
 			label: ITP_MSG_LOCALE.label.itemId, 			// 품목번호
47
-			minwidth:140,
48
-			width: '8', fixed: false, align: 'center',
47
+			width: '16', fixed: false, align: 'center',
49 48
 			sortable: false, hidden: false
50 49
 		},
51 50
 		{
52 51
 			index: 'ITEM_NM', name: 'itemNm',
53 52
 			label: ITP_MSG_LOCALE.label.itemNm, 			// 품목명
54
-			minwidth:120,
55
-			width: '8', fixed: false, align: 'left',
56
-			sortable: false, hidden: false
53
+			width: '12', fixed: false, align: 'left',
54
+			sortable: false, hidden: false, classes: 'ui-ellipsis'
57 55
 		},
58 56
 		{
59 57
 			index: 'RODR_QTY', name: 'rodrQty',
60 58
 			label: '반품발주수량', 
61
-			minwidth:140,
62
-			width: '5', fixed: false, align: 'right',
59
+			width: '12', fixed: false, align: 'right',
63 60
 			sortable: false, hidden: false, 
64 61
 			formatter: 'integer', formatoptions: {thousandsSeparator: ','}
65 62
 		},
66 63
 		{
67 64
 			index: 'COL_REQ_QTY', name: 'colReqQty',
68 65
 			label: '수거요청수량', 
69
-			minwidth:140,
70
-			width: '5', fixed: false, align: 'right',
66
+			width: '12', fixed: false, align: 'right',
71 67
 			sortable: false, hidden: false, 
72 68
 			formatter: 'integer', formatoptions: {thousandsSeparator: ','}
73 69
 		},
74 70
 		{
75 71
 			index: 'COL_QTY', name: 'colQty',
76 72
 			label: '수거수량', 
77
-			minwidth:100,
78
-			width: '5', fixed: false, align: 'right',
73
+			width: '12', fixed: false, align: 'right',
79 74
 			sortable: false, hidden: false, 
80 75
 			formatter: 'integer', formatoptions: {thousandsSeparator: ','}
81 76
 		},
82 77
 		{
83 78
 			index: 'COL_AMT', name: 'colAmt',
84 79
 			label: '수거금액', 
85
-			width: '8', fixed: false, align: 'right',
80
+			width: '12', fixed: false, align: 'right',
86 81
 			sortable: false, hidden: false,
87 82
 			formatter: 'integer', formatoptions: {thousandsSeparator: ','}
88 83
 		}, 
89 84
 		{
90 85
 			index: 'RTN_WHS_NM', name: 'rtnWhsNm',
91 86
 			label: '수거창고', 
92
-			width: '10', fixed: false, align: 'center',
93
-			sortable: false, hidden: false
87
+			width: '14', fixed: false, align: 'left',
88
+			sortable: false, hidden: false, classes: 'ui-ellipsis'
94 89
 		},
95 90
 		{
96 91
 			index: 'COL_SCH_DT', name: 'colSchDt',
97 92
 			label: '수거예정일', 
98
-			width: '8', fixed: false, align: 'center',
93
+			width: '10', fixed: false, align: 'center',
99 94
 			sortable: false, hidden: false
100 95
 		},
101 96
 		{
102 97
 			index: 'PICK_MGR_NM', name: 'pickMgrNm',
103 98
 			label: '수거담당자명', 
104
-			width: '8', fixed: false, align: 'left',
99
+			width: '11', fixed: false, align: 'left',
105 100
 			sortable: false, hidden: false
106 101
 		},
107 102
 		{

+ 3 - 3
src/main/webapp/js/app/salesmng/ITP_SALESMNG02010.js

@@ -41,13 +41,13 @@ const gridColModel = {
41 41
 		{
42 42
 			index: 'ITEM_ID', name: 'itemId',
43 43
 			label: "품목번호",
44
-			width: '10', fixed: false, align: 'center',
45
-			sortable: false, hidden: false, classes: 'ui-ellipsis'
44
+			width: '13', fixed: false, align: 'center',
45
+			sortable: false, hidden: false
46 46
 		},		
47 47
 		{
48 48
 			index: 'ITEM_NM', name: 'itemNm',
49 49
 			label: "품목명",
50
-			width: '15', fixed: false, align: 'left',
50
+			width: '12', fixed: false, align: 'left',
51 51
 			sortable: false, hidden: false, classes: 'ui-ellipsis'
52 52
 		},		
53 53
 		{

+ 8 - 10
src/main/webapp/js/app/settmng/ITP_SETTMNG01010.js

@@ -121,14 +121,14 @@ const gridColModel = {
121 121
 		{
122 122
 			index: 'UNIT_AMT', name: 'unitAmt',
123 123
 			label: "단가",
124
-			width: '7', fixed: false, align: 'right',
124
+			width: '12', fixed: false, align: 'right',
125 125
 			sortable: false, editable: false, edittype: 'text', 
126 126
 			formatter:'integer',formatoptions: { defaultValue: '', thousandsSeparator: ',' }
127 127
 		},
128 128
 		{
129 129
 			index: 'PODR_QTY', name: 'podrQty',
130 130
 			label: "발주수량",
131
-			width: '7', fixed: false, align: 'right',
131
+			width: '13', fixed: false, align: 'right',
132 132
 			minwidth: 80,
133 133
 			sortable: false, editable: false, edittype: 'text', 
134 134
 			formatter:'integer',formatoptions: { defaultValue: '', thousandsSeparator: ',' }
@@ -136,7 +136,7 @@ const gridColModel = {
136 136
 		{
137 137
 			index: 'DLV_QTY', name: 'dlvQty',
138 138
 			label: "납품수량",
139
-			width: '7', fixed: false, align: 'right',
139
+			width: '13', fixed: false, align: 'right',
140 140
 			minwidth: 80,
141 141
 			sortable: false, editable: false, edittype: 'text', 
142 142
 			formatter:'integer',formatoptions: { defaultValue: '', thousandsSeparator: ',' }
@@ -144,7 +144,7 @@ const gridColModel = {
144 144
 		{
145 145
 			index: 'WHS_COL_QTY', name: 'whsColQty',
146 146
 			label: "입고/수거수량",
147
-			width: '10', fixed: false, align: 'right',
147
+			width: '13', fixed: false, align: 'right',
148 148
 			minwidth: 100,
149 149
 			sortable: false, editable: false, edittype: 'text', 
150 150
 			formatter:'integer',formatoptions: { defaultValue: '', thousandsSeparator: ',' }
@@ -159,8 +159,7 @@ const gridColModel = {
159 159
 		{
160 160
 			index: 'WHS_COL_AMT', name: 'whsColAmt',
161 161
 			label: "입고/수거금액",
162
-			width: '10', fixed: false, align: 'right',
163
-			minwidth: 100,
162
+			width: '13', fixed: false, align: 'right',
164 163
 			sortable: false, editable: false, edittype: 'text', 
165 164
 			formatter:'integer',formatoptions: { defaultValue: '', thousandsSeparator: ',' }
166 165
 		},
@@ -173,20 +172,19 @@ const gridColModel = {
173 172
 		{
174 173
 			index: 'STTL_DVSN_NM', name: 'sttlDvsnNm',
175 174
 			label: "정산구분",
176
-			width: '8', fixed: false, align: 'center',
175
+			width: '9', fixed: false, align: 'center',
177 176
 			sortable: false, editable: false, edittype: 'text'
178 177
 		},
179 178
 		{
180 179
 			index: 'PODR_UNQ_NO', name: 'podrUnqNo',
181 180
 			label: "발주번호",
182
-			width: '8', fixed: false, align: 'center',
183
-			minwidth: 140,
181
+			width: '16', fixed: false, align: 'center',
184 182
 			sortable: false, editable: false, edittype: 'text'
185 183
 		},
186 184
 		{
187 185
 			index: 'PODR_DTL_NO', name: 'podrDtlNo',
188 186
 			label: "발주항번",
189
-			width: '7', fixed: false, align: 'center',
187
+			width: '9', fixed: false, align: 'center',
190 188
 			sortable: false, editable: false, edittype: 'text'
191 189
 		}	
192 190
 	],

+ 36 - 1
src/main/webapp/js/app/stinfo/ITP_STINFO06010.js

@@ -709,6 +709,37 @@ let modifyObj = {
709 709
 };
710 710
 
711 711
 /*신규화면 Object*/
712
+function fn_grid_new(option) {
713
+	var options = $.extend({
714
+		mtype: 'POST',
715
+		multiselect: false,
716
+		rownumbers: true,
717
+		ondblClickRow: null,
718
+		loadBeforeSend: function(jqXHR) {
719
+			jqXHR.setRequestHeader('X-AUTH-TOKEN', CONN_KEY);
720
+		},
721
+		loadError: function(jqXHR, textStatus, errorThrown) {
722
+			itp_fn_grid_load_error(jqXHR, textStatus, errorThrown);
723
+		}
724
+	}, option); 
725
+	$(options.gridId).jqGrid({
726
+		colModel: options.colModel,
727
+		postData: JSON.stringify(options.param),
728
+		mtype: options.mtype,
729
+		url: options.url, 
730
+		rowNum: 10000,
731
+		multiselect: options.multiselect, 
732
+		loadBeforeSend: options.loadBeforeSend,
733
+		onCellSelect: options.onCellSelect,
734
+		ondblClickRow: options.ondblClickRow,
735
+		loadComplete: options.loadComplete,
736
+		loadError: options.loadError,
737
+		gridComplete: function () {
738
+			$(STINFO06010_DETAIL_GRID_ID+'View').html("전체: "+$(options.gridId).getGridParam('records')+'건')
739
+		}
740
+	});
741
+}
742
+
712 743
 let createObj = {
713 744
 	init: function (param) {
714 745
 		pageObj.switchScreen('ADD');
@@ -825,7 +856,7 @@ let createObj = {
825 856
 					itp_fn_grid_paging(STINFO06010_GRID_ID, action, param);
826 857
 				}
827 858
 			};
828
-			itp_fn_grid_make_remote(option);
859
+			fn_grid_new(option);
829 860
 		},
830 861
 		clearData : function() {
831 862
 			$(STINFO06010_DETAIL_GRID_ID).jqGrid('clearGridData', true);
@@ -846,6 +877,10 @@ let createObj = {
846 877
 				$('#ITP_FORM_STINFO06010_DETAIL_STORE_ID').val(rowDataPop[0].storeId);
847 878
 				$('#ITP_FORM_STINFO06010_DETAIL_STORE_NM').val(rowDataPop[0].storeNm);
848 879
 			}
880
+			// 강제로 팝업 창닫기 실행
881
+			setTimeout(function() {
882
+				$('#ITP_BIZPOP_BRAND_STORE').modal('hide');
883
+			}, 500);
849 884
 		};
850 885
 		fn_call_popup('biz', 'BIZPOP_BRAND_STORE', '#ITP_ASIDE', popFn, null, 'S');
851 886
 	},

+ 8 - 11
src/main/webapp/js/app/stockmng/ITP_STOCKMNG01010.js

@@ -45,14 +45,14 @@ const gridColModel = {
45 45
 			label: ITP_MSG_LOCALE.label.brandNm, //브랜드
46 46
 			width: '10', fixed: false, align: 'center',
47 47
 			minwidth: 120,
48
-			sortable: false, hidden: false
48
+			sortable: false, hidden: false, classes: 'ui-ellipsis'
49 49
 		},
50 50
 		{
51 51
 			index: 'STORE_NM', name: 'storeNm',
52 52
 			label: "매장명", 
53 53
 			width: '10', fixed: false, align: 'left',
54 54
 			minwidth: 100,
55
-			sortable: false, hidden: false
55
+			sortable: false, hidden: false, classes: 'ui-ellipsis'
56 56
 		},
57 57
 		{
58 58
 			index: 'WHS_ID', name: 'whsId',
@@ -66,20 +66,19 @@ const gridColModel = {
66 66
 			label: "창고명", 
67 67
 			width: '13', fixed: false, align: 'left',
68 68
 			minwidth: 120,
69
-			sortable: false, hidden: false
69
+			sortable: false, hidden: false, classes: 'ui-ellipsis'
70 70
 		},
71 71
 		{
72 72
 			index: 'LOCATION_NM', name: 'locationNm',
73 73
 			label: "Location명", 
74 74
 			width: '10', fixed: false, align: 'left',
75 75
 			minwidth: 140,
76
-			sortable: false, hidden: false
76
+			sortable: false, hidden: false, classes: 'ui-ellipsis'
77 77
 		},
78 78
 		{
79 79
 			index: 'ITEM_ID', name: 'itemId',
80 80
 			label: "품목번호", 
81
-			width: '11', fixed: false, align: 'center',
82
-			minwidth: 180,
81
+			width: '15', fixed: false, align: 'center',
83 82
 			sortable: false, hidden: false
84 83
 		},
85 84
 		{
@@ -98,23 +97,21 @@ const gridColModel = {
98 97
 		{
99 98
 			index: 'STCK_QTY', name: 'stckQty',
100 99
 			label: "현재고수량", 
101
-			width: '8', fixed: false, align: 'right',
102
-			minwidth: 100,
100
+			width: '12', fixed: false, align: 'right',
103 101
 			sortable: false, hidden: false,
104 102
 			formatter: 'integer', formatoptions: {thousandsSeparator: ','}
105 103
 		},
106 104
 		{
107 105
 			index: 'PRP_STCK_QTY', name: 'prpStckQty',
108 106
 			label: "적정재고수량", 
109
-			width: '9', fixed: false, align: 'right',
110
-			minwidth: 100,
107
+			width: '12', fixed: false, align: 'right',
111 108
 			sortable: false, hidden: false,
112 109
 			formatter: 'integer', formatoptions: {thousandsSeparator: ','}
113 110
 		},
114 111
 		{
115 112
 			index: 'SFT_STCK_RT', name: 'sftStckRt',
116 113
 			label: "안전재고비율(%)", 
117
-			width: '11', fixed: false, align: 'right',
114
+			width: '10', fixed: false, align: 'right',
118 115
 			minwidth: 120,
119 116
 			sortable: false, hidden: false
120 117
 		},

+ 29 - 25
src/main/webapp/js/app/stockmng/ITP_STOCKMNG02010.js

@@ -72,7 +72,7 @@ const gridColModel = {
72 72
 			index: 'BRAND_NM', name: 'brandNm',
73 73
 			label: ITP_MSG_LOCALE.label.brandNm, //브랜드
74 74
 			width: '10', fixed: false, align: 'center',
75
-			sortable: false, hidden: false
75
+			sortable: false, hidden: false, classes: 'ui-ellipsis'
76 76
 		},
77 77
 		{
78 78
 			index: 'STORE_NM', name: 'storeNm',
@@ -90,13 +90,13 @@ const gridColModel = {
90 90
 			index: 'WHS_NM', name: 'whsNm',
91 91
 			label: "창고명", 
92 92
 			width: '10', fixed: false, align: 'center',
93
-			sortable: false, hidden: false
93
+			sortable: false, hidden: false, classes: 'ui-ellipsis'
94 94
 		},
95 95
 		{
96 96
 			index: 'LOCATION_NM', name: 'locationNm',
97 97
 			label: "Location", 
98 98
 			width: '10', fixed: false, align: 'center',
99
-			sortable: false, hidden: false
99
+			sortable: false, hidden: false, classes: 'ui-ellipsis'
100 100
 		},		
101 101
 		{
102 102
 			index: 'CDD_MGR_NM', name: 'cddMgrNm',
@@ -135,7 +135,7 @@ const gridColModel = {
135 135
 			label: "브랜드",
136 136
 			width: '10', fixed: false, align: 'center',
137 137
 			sortable: false, editable: false, edittype: 'text',
138
-			editrules: {required: false}
138
+			editrules: {required: false}, classes: 'ui-ellipsis'
139 139
 		},
140 140
 		{
141 141
 			index: 'WHS_ID', name: 'whsId',
@@ -149,14 +149,14 @@ const gridColModel = {
149 149
 			label: "창고명",
150 150
 			width: '10', fixed: false, align: 'center',
151 151
 			sortable: false, editable: false, edittype: 'text',
152
-			editrules: {required: false}
152
+			editrules: {required: false}, classes: 'ui-ellipsis'
153 153
 		},
154 154
 		{
155 155
 			index: 'LOCATION_NM', name: 'locationNm',
156 156
 			label: "Location",
157 157
 			width: '10', fixed: false, align: 'center',
158 158
 			sortable: false, editable: false, edittype: 'text',
159
-			editrules: {required: false}
159
+			editrules: {required: false}, classes: 'ui-ellipsis'
160 160
 		},
161 161
 		{
162 162
 			index: 'ITEM_ID', name: 'itemId',
@@ -170,28 +170,30 @@ const gridColModel = {
170 170
 			label: "품목명",
171 171
 			width: '10', fixed: false, align: 'center',
172 172
 			sortable: false, editable: false, edittype: 'text',
173
-			editrules: {required: false}
173
+			editrules: {required: false}, classes: 'ui-ellipsis'
174 174
 		},
175 175
 		{
176 176
 			index: 'UNIT', name: 'unit',
177 177
 			label: "단위",
178
-			width: '8', fixed: false, align: 'center',
178
+			width: '5', fixed: false, align: 'center',
179 179
 			sortable: false, editable: false, edittype: 'text',
180 180
 			editrules: {required: false}
181 181
 		},
182 182
 		{
183 183
 			index: 'COM_EXST_QTY', name: 'comExstQty',
184 184
 			label: "현재고수량",
185
-			width: '8', fixed: false, align: 'center',
185
+			width: '8', fixed: false, align: 'right',
186 186
 			sortable: false, editable: false, edittype: 'text',
187
-			editrules: {required: false}
187
+			editrules: {required: false},
188
+			formatter: 'integer', formatoptions: {thousandsSeparator: ','}
188 189
 		},
189 190
 		{
190 191
 			index: 'CDD_QTY', name: 'cddQty',
191 192
 			label: "실사수량",
192
-			width: '10', fixed: false, align: 'center',
193
+			width: '10', fixed: false, align: 'right',
193 194
 			sortable: false, editable: false, edittype: 'text',
194
-			editrules: {required: false}
195
+			editrules: {required: false},
196
+			formatter: 'integer', formatoptions: {thousandsSeparator: ','}
195 197
 		}
196 198
 	],
197 199
 	detail: [
@@ -204,7 +206,7 @@ const gridColModel = {
204 206
 		{
205 207
 			index: 'NORMAL_YN', name: 'normalYn',
206 208
 			label: "정상여부",
207
-			width: '5', fixed: false, align: 'center',
209
+			width: '6', fixed: false, align: 'center',
208 210
 			sortable: false, editable: false, edittype: 'text',
209 211
 			minwidth: 100,
210 212
 			editrules: {required: false}
@@ -214,28 +216,28 @@ const gridColModel = {
214 216
 			label: "에러메시지",
215 217
 			width: '10', fixed: false, align: 'center',
216 218
 			sortable: false, editable: false, edittype: 'text',
217
-			editrules: {required: false}
219
+			editrules: {required: false}, classes: 'ui-ellipsis'
218 220
 		},
219 221
 		{
220 222
 			index: 'BRAND_NM', name: 'brandNm',
221 223
 			label: "브랜드",
222 224
 			width: '10', fixed: false, align: 'left',
223 225
 			sortable: false, editable: false, edittype: 'text',
224
-			editrules: {required: false}
226
+			editrules: {required: false}, classes: 'ui-ellipsis'
225 227
 		},
226 228
 		{
227 229
 			index: 'WHS_ID', name: 'whsId',
228 230
 			label: "창고번호",
229
-			width: '10', fixed: false, align: 'center',
231
+			width: '8', fixed: false, align: 'center',
230 232
 			sortable: false, editable: false, edittype: 'text',
231 233
 			editrules: {required: false}
232 234
 		},
233 235
 		{
234 236
 			index: 'WHS_NM', name: 'whsNm',
235 237
 			label: "창고명",
236
-			width: '10', fixed: false, align: 'left',
238
+			width: '11', fixed: false, align: 'left',
237 239
 			sortable: false, editable: false, edittype: 'text',
238
-			editrules: {required: false}
240
+			editrules: {required: false}, classes: 'ui-ellipsis'
239 241
 		},
240 242
 		{
241 243
 			index: 'LOCATION_NM', name: 'locationNm',
@@ -243,7 +245,7 @@ const gridColModel = {
243 245
 			width: '10', fixed: false, align: 'left',
244 246
 			sortable: false, editable: false, edittype: 'text',
245 247
 			minwidth: 100,
246
-			editrules: {required: false}
248
+			editrules: {required: false}, classes: 'ui-ellipsis'
247 249
 		},
248 250
 		{
249 251
 			index: 'ITEM_ID', name: 'itemId',
@@ -257,30 +259,32 @@ const gridColModel = {
257 259
 			label: "품목명",
258 260
 			width: '10', fixed: false, align: 'center',
259 261
 			sortable: false, editable: false, edittype: 'text',
260
-			editrules: {required: false}
262
+			editrules: {required: false}, classes: 'ui-ellipsis'
261 263
 		},
262 264
 		{
263 265
 			index: 'UNIT', name: 'unit',
264 266
 			label: "단위",
265
-			width: '8', fixed: false, align: 'center',
267
+			width: '5', fixed: false, align: 'center',
266 268
 			sortable: false, editable: false, edittype: 'text',
267 269
 			editrules: {required: false}
268 270
 		},
269 271
 		{
270 272
 			index: 'STCK_QTY', name: 'stckQty',
271 273
 			label: "현재고수량",
272
-			width: '8', fixed: false, align: 'center',
274
+			width: '9', fixed: false, align: 'right',
273 275
 			sortable: false, editable: false, edittype: 'text',
274
-			editrules: {required: false}
276
+			editrules: {required: false},
277
+			formatter: 'integer', formatoptions: {thousandsSeparator: ','}
275 278
 		},
276 279
 		{
277 280
 			index: 'CDD_QTY', name: 'cddQty',
278 281
 			label: "실사수량",
279
-			width: '10', fixed: false, align: 'center',
282
+			width: '10', fixed: false, align: 'right',
280 283
 			classes: 'input_color',
281 284
 			sortable: false, editable: true, edittype: 'text',
282 285
 			editrules: {required: false},
283
-			editoptions: {"onKeyup": "this.value=this.value.replace(/[^0-9]/g,'');"}
286
+			editoptions: {"onKeyup": "this.value=this.value.replace(/[^0-9]/g,'');", maxlength: 10},
287
+			formatter:'integer', formatoptions: { defaultValue: '', thousandsSeparator: ',' },
284 288
 		}
285 289
 	]
286 290
 };

+ 5 - 5
src/main/webapp/js/app/stockmng/ITP_STOCKMNG03010.js

@@ -51,7 +51,7 @@ const gridColModel = {
51 51
 			index: 'BRAND_NM', name: 'brandNm',
52 52
 			label: ITP_MSG_LOCALE.label.brandNm, //브랜드
53 53
 			width: '10', fixed: false, align: 'left',
54
-			sortable: false, hidden: false
54
+			sortable: false, hidden: false, classes: 'ui-ellipsis'
55 55
 		},
56 56
 		{
57 57
 			index: 'STORE_NM', name: 'storeNm',
@@ -69,13 +69,13 @@ const gridColModel = {
69 69
 			index: 'WHS_NM', name: 'whsNm',
70 70
 			label: "창고명", 
71 71
 			width: '13', fixed: false, align: 'left',
72
-			sortable: false, hidden: false
72
+			sortable: false, hidden: false, classes: 'ui-ellipsis'
73 73
 		},
74 74
 		{
75 75
 			index: 'LOCATION_NM', name: 'locationNm',
76 76
 			label: "Location명", 
77 77
 			width: '10', fixed: false, align: 'left',
78
-			sortable: false, hidden: false
78
+			sortable: false, hidden: false, classes: 'ui-ellipsis'
79 79
 		},
80 80
 		{
81 81
 			index: 'ITEM_ID', name: 'itemId',
@@ -99,7 +99,7 @@ const gridColModel = {
99 99
 			index: 'PRP_STCK_QTY', name: 'prpStckQty',
100 100
 			label: "적정재고수량", 
101 101
 			classes: 'input_color',
102
-			width: '8', fixed: false, align: 'right',
102
+			width: '10', fixed: false, align: 'right',
103 103
 			sortable: false, editable: true, edittype: 'text',
104 104
 			editrules: {required: false},
105 105
 			editoptions: {"onKeyup": "this.value=this.value.replace(/[^0-9]/g,'');"},
@@ -109,7 +109,7 @@ const gridColModel = {
109 109
 			index: 'SFT_STCK_RT', name: 'sftStckRt',
110 110
 			label: "안전재고비율(%)", 
111 111
 			classes: 'input_color',
112
-			width: '10', fixed: false, align: 'right',
112
+			width: '9', fixed: false, align: 'right',
113 113
 			sortable: false, editable: true, edittype: 'text',
114 114
 			editrules: {required: false},
115 115
 			editoptions: {"onKeyup": "this.value=this.value.replace(/[^0-9]/g,'');"}

+ 1 - 4
src/main/webapp/main.html

@@ -39,7 +39,6 @@
39 39
 	</script>
40 40
 
41 41
 	<script src="./js/app/properties.js"></script>
42
-	<script src="./js/cpexcel.js"></script>
43 42
 	<script src="./js/require.min.js" data-main="./js/app/config.js"></script>
44 43
 
45 44
 	<style>
@@ -844,8 +843,6 @@
844 843
 		</footer>
845 844
 		
846 845
 		<aside id="ITP_ASIDE"></aside>	 
847
-	</div> 
848
-	
849
-	<script src="./js/xlsx.js"></script>
846
+	</div>  
850 847
 </body>
851 848
 </html>

+ 38 - 12
src/main/webapp/mobile/app/main.html

@@ -110,22 +110,48 @@
110 110
 				<div class="itp_note_header">
111 111
 					<h1>> 공지사항</h1>
112 112
 				</div>
113
+				<div id="ITP_MODAL_NOTE_INFO" class="itp_note_popup modal itp_modal" style="display:block">
114
+					<div class="popup_note">
115
+						<div class="header">
116
+							<div class="header_left">
117
+								<label>매장</label>
118
+							</div>
119
+							<div class="header_right">
120
+								<button type="button" id="ITP_BTN_MAIN_POP_NOTE_CLOSE"><img src="../img/close.png"></button>
121
+							</div>
122
+						</div>
123
+						<div class="itp_pop_note_area">
124
+							<div class="itp_note_title">
125
+								<label>공지제목</label>
126
+								<span>:</span>
127
+								<div class="fnNoteNm">fasdddddddddddddddddddddddddddddddddddd</div>
128
+							</div>
129
+							<div class="itp_pop_note_content">
130
+								<div class="fnNote">fasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasd</div>
131
+							</div>
132
+						</div>
133
+					</div>
134
+				</div>
113 135
 				<div class="itp_note_bar" style="display: none;">
114 136
 					<h1>등록된 게시물이 없습니다.</h1>
115 137
 				</div>
116
-				<div class="itp_note_bar" style="display: block;">
117
-					<li>
118
-						<div class="itp_note_info">
119
-							<label>공지제목</label>
120
-							<span>:</span>
121
-							<div class="under fnNoteTitle">공지제목 테스트 ㅁㄴㅇㄻㄴㅇㄻ</div>
122
-						</div>
123
-						<div class="itp_note_info">
124
-							<label>공지일</label>
125
-							<span>:</span>
126
-							<div class="fnNoteDt">2020.20.20</div>
138
+				<div class="itp_note_bar">
139
+					<ul id="ITP_NOTE_ROW" class="mb_0 panel-group itp_nav">
140
+						<div id="ITP_NOTE_ROWCOPY" style="display: block;">
141
+							<li>
142
+								<div class="itp_note_info">
143
+									<label>공지제목</label>
144
+									<span>:</span>
145
+									<div class="under fnNoteTitle">공지제목 테스트 ㅁㄴㅇㄻㄴㅇㄻ</div>
146
+								</div>
147
+								<div class="itp_note_info">
148
+									<label>공지일</label>
149
+									<span>:</span>
150
+									<div class="fnNoteDt">2020.20.20</div>
151
+								</div>
152
+							</li>
127 153
 						</div>
128
-					</li>
154
+					</ul>
129 155
 				</div>
130 156
 				<div class="itp_note_header">
131 157
 					<h1>> 운영정보</h1>

+ 20 - 1
src/main/webapp/mobile/css/style.css

@@ -672,7 +672,26 @@ button.close {-webkit-appearance: none; padding: 0; cursor: pointer; background:
672 672
 #ITP_MAIN_CONTAINER .itp_oper_info_area .itp_oper_info div{text-overflow:ellipsis; overflow:hidden; white-space:nowrap; text-align: right; width:calc(100% - 114px);}
673 673
 #ITP_MAIN_CONTAINER .itp_graph_area {width:98%; height:300px; border:1px solid #aaa; margin:5px 1%;}
674 674
 #ITP_MAIN_CONTAINER .itp_graph_area .itp_graph_header {width:220px; margin:5px;}
675
-#ITP_MAIN_CONTAINER .itp_graph_area .itp_graph_header label {width:80px; font-size:14pt;}
675
+#ITP_MAIN_CONTAINER .itp_graph_area .itp_graph_header label {width:80px; font-size:14pt; text-align:left;}
676 676
 #ITP_MAIN_CONTAINER .itp_graph_area .itp_graph_header select {}
677 677
 #ITP_MAIN_CONTAINER #ITP_GRAPH_INFO {height:265px;}
678
+/* 공지사항 팝업추가 */
679
+.itp_note_popup {position: absolute; top:46px; width: 100%; height: calc(100vh - 49px); background: rgba(200, 200,200, 0.8); z-index: 11;}
680
+.itp_note_popup .popup_note {position:relative; top:20px; width:96%; margin:0 2%;}
681
+.itp_note_popup .popup_note .header {position: relative; height: 40px; background: #f0831e; color:#eee; border: 1px solid #000; border-top-right-radius: 10px; border-top-left-radius: 10px;}
682
+.itp_note_popup .popup_note .header .header_left {padding-top: 12px;}
683
+.itp_note_popup .popup_note .header .header_left label {font-size: 16px; font-weight:100;} 
684
+.itp_note_popup .popup_note .header .header_right {float: right; padding-right: 10px; position:relative; top:-44px;}
685
+.itp_note_popup .popup_note .header .header_right button {border: none; background: transparent; margin:3px -5px;}
686
+.itp_note_popup .popup_note .header .header_right button img {width:22px;}
687
+.itp_note_popup .popup_note .itp_pop_note_area {background:#fff; height:70vh; border:1px solid #000; border-top:none;}
688
+.itp_note_popup .popup_note .itp_pop_note_area .itp_note_title { display:flex; padding:10px; width:85%; height:45px;}
689
+.itp_note_popup .popup_note .itp_pop_note_area .itp_note_title label {width:60px; font-size:12pt;}
690
+.itp_note_popup .popup_note .itp_pop_note_area .itp_note_title span {width:10px;}
691
+.itp_note_popup .popup_note .itp_pop_note_area .itp_note_title div {text-overflow:ellipsis; overflow:hidden; white-space:nowrap; text-align:left; width:calc(100% - 70px);}
692
+.itp_note_popup .popup_note .itp_pop_note_area .itp_pop_note_content {border:1px solid #aaa; width:98%; height:calc(100% - 60px); margin:0 1%; padding:8px;}
693
+.itp_note_popup .popup_note .itp_pop_note_area .itp_pop_note_content div {height:100%; word-break:break-all;}
694
+
695
+
696
+
678 697