Bladeren bron

기준정보관리 수정

juney 2 jaren geleden
bovenliggende
commit
df89067b04

+ 14 - 14
src/main/webapp/app/oper/OPER06010.html

@@ -170,23 +170,23 @@
170 170
 											</div>
171 171
 										</div>
172 172
 									</div>
173
-										<div class="itp_form_in">	
174
-											<div class="form-group border">
175
-												<label class="col-xs-2 itp_lb">입금계좌정보</label>
176
-												<div class="col-xs-12 itp_ip">
177
-													<div class="col-xs-1 itp_in">
178
-														<select id="ITP_FORM_OPER06010_DETAIL_DPST_BNK_CD" data-select-code="BNK_CD" data-check-required="empty" class="form-control itp_input" name="bnkCd">
179
-														</select>
180
-													</div>
181
-													<div class="col-xs-4 itp_in">
182
-														<input type="text" id="ITP_FORM_OPER06010_DETAIL_RCV_ACCT_NO" data-check-required="empty" class="form-control itp_input" name="acctNo" value="" placeholder="계좌번호">
183
-													</div>
184
-													<div class="col-xs-2 itp_in">
185
-														<input type="text" id="ITP_FORM_OPER06010_DETAIL_OWAC_NM" data-check-required="empty" class="form-control itp_input" name="owacNm" value="" placeholder="예금주명">
186
-													</div>										
173
+									<div class="itp_form_in">
174
+										<div class="form-group border">
175
+											<label class="col-xs-2 itp_lb">입금계좌정보</label>
176
+											<div class="col-xs-12 itp_ip">
177
+												<div class="col-xs-1 itp_in">
178
+													<select id="ITP_FORM_OPER06010_DETAIL_DPST_BNK_CD" data-select-code="BNK_CD" data-check-required="empty" class="form-control itp_input" name="bnkCd">
179
+													</select>
180
+												</div>
181
+												<div class="col-xs-4 itp_in">
182
+													<input type="text" id="ITP_FORM_OPER06010_DETAIL_RCV_ACCT_NO" data-check-required="empty" class="form-control itp_input" name="acctNo" value="" placeholder="계좌번호">
183
+												</div>
184
+												<div class="col-xs-2 itp_in">
185
+													<input type="text" id="ITP_FORM_OPER06010_DETAIL_OWAC_NM" data-check-required="empty" class="form-control itp_input" name="owacNm" value="" placeholder="예금주명">
187 186
 												</div>
188 187
 											</div>
189 188
 										</div>
189
+									</div>
190 190
 									<div class="itp_form_in">
191 191
 										<div class="form-group border">
192 192
 											<label class="col-xs-2 itp_lb">주소</label>

+ 100 - 44
src/main/webapp/app/stinfo/STINFO02010.html

@@ -9,7 +9,7 @@
9 9
 					<button type="button" id="ITP_BTN_STINFO02010_NEWREG" class="btn btn-primary btn-sm NEB" style="display: inline-block;"><i class="glyphicon"></i>&nbsp;&nbsp;신규등록&nbsp;&nbsp;</button>
10 10
 					<button type="button" id="ITP_BTN_STINFO02010_SAVE" class="btn btn-success btn-sm SAB"><i class="glyphicon"></i>&nbsp;&nbsp;저장&nbsp;&nbsp;</button>
11 11
 					<button type="button" id="ITP_BTN_STINFO02010_CANCELLIST" class="btn btn-warning btn-sm PRB"><i class="glyphicon"></i>&nbsp;&nbsp;취소/목록&nbsp;&nbsp;</button>
12
-				</div>		
12
+				</div>
13 13
 			</div>
14 14
 			<div class="itp_det_in">
15 15
 				<div id="ITP_AJAX_STINFO02010_LIST_CONTAINER">
@@ -20,19 +20,20 @@
20 20
 									<div class="form-group">
21 21
 										<div class="col-xs-2 itp_ip itp_noMar">
22 22
 											<select id="ITP_FORM_STINFO02010_SERVICE_ST_DT" class="form-control itp_input" name="searchDateType">
23
+												<option value="">선택</option>
23 24
 												<option value="20">등록일</option>
24 25
 												<option value="10">오픈일</option>
25 26
 											</select>
26 27
 										</div>
27 28
 										<div class="col-xs-10 itp_ip itp_noMar">
28
-										<div class="col-xs-4 itp_ip">
29
-											<div class="input-daterange input-group date">
30
-												<input type="text" id="ITP_FORM_STINFO02010_SEARCH_REG_DT" class="form-control itp_input" name="fromDt" readonly>
31
-												<span class="input-group-addon itp_date_to">~</span>
32
-												<input type="text" id="ITP_FORM_STINFO02010_SEARCH_OPEN_DT" class="form-control itp_input" name="toDt" readonly>
29
+											<div class="col-xs-4 itp_ip">
30
+												<div class="input-daterange input-group date">
31
+													<input type="text" id="ITP_FORM_STINFO02010_SEARCH_REG_DT" class="form-control itp_input" name="fromDt" readonly>
32
+													<span class="input-group-addon itp_date_to">~</span>
33
+													<input type="text" id="ITP_FORM_STINFO02010_SEARCH_OPEN_DT" class="form-control itp_input" name="toDt" readonly>
34
+												</div>
33 35
 											</div>
34 36
 										</div>
35
-										</div>
36 37
 									</div>
37 38
 									<div class="form-group" style="padding-top: 10px; border-top: 1px dotted #ccc;">
38 39
 										<div class="col-xs-2 itp_ip itp_noMar">
@@ -72,7 +73,7 @@
72 73
 						<div class="col-xs-12">
73 74
 							<form id="ITP_FORM_STINFO02010_DETAIL" class="form-horizontal">
74 75
 								<input type="hidden" id="ITP_FORM_STINFO02010_DETAIL_VIEW_CD" name="viewCd" value="R">
75
- 								<input type="hidden" id="ITP_FORM_STINFO02010_DETAIL_BRAND_ID" name="brandId" value="">
76
+								<input type="hidden" id="ITP_FORM_STINFO02010_DETAIL_BRAND_ID" name="brandId" value="">
76 77
 								<input type="hidden" id="ITP_FORM_STINFO02010_DETAIL_STORE_ID" name="storeId" value="">
77 78
 								<section class="itp_form_sec">
78 79
 									<h4 class="itp_form_tit">매장정보-신규</h4>
@@ -85,7 +86,7 @@
85 86
 											<label class="col-xs-2 itp_lb">상태 *</label>
86 87
 											<div class="col-xs-4 itp_ip">
87 88
 												<div class="col-xs-7 itp_in">
88
-								                	<select id="ITP_FORM_STINFO02010_DETAIL_STORE_ST_CD" data-select-code="ST_CD" data-check-required="empty" class="form-control itp_input" name="stCd"></select>
89
+													<select id="ITP_FORM_STINFO02010_DETAIL_STORE_ST_CD" data-select-code="STORE_ST_CD" data-check-required="empty" class="form-control itp_input" name="stCd"></select>
89 90
 												</div>
90 91
 											</div>
91 92
 										</div>
@@ -99,7 +100,7 @@
99 100
 											<label class="col-xs-2 itp_lb">매장구분 *</label>
100 101
 											<div class="col-xs-4 itp_ip">
101 102
 												<div class="col-xs-7 itp_in">
102
-								                <select id="ITP_FORM_STINFO02010_DETAIL_STORE_DVSN" data-select-code="STORE_DVSN" data-check-required="empty" class="form-control itp_input" name="storeDvsn"></select>
103
+													<select id="ITP_FORM_STINFO02010_DETAIL_STORE_DVSN" data-select-code="STORE_DVSN" data-check-required="empty" class="form-control itp_input" name="storeDvsn"></select>
103 104
 												</div>
104 105
 											</div>
105 106
 										</div>
@@ -115,7 +116,7 @@
115 116
 											<label class="col-xs-2 itp_lb">업태</label>
116 117
 											<div class="col-xs-4 itp_ip">
117 118
 												<div class="col-xs-7 itp_in">
118
-								                	<input type="text" id="ITP_FORM_STINFO02010_DETAIL_BSNS_CNDT" class="form-control itp_input" name="bsnsCndt" value="">
119
+													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_BSNS_CNDT" class="form-control itp_input" name="bsnsCndt" value="">
119 120
 												</div>
120 121
 											</div>
121 122
 										</div>
@@ -131,7 +132,7 @@
131 132
 											<label class="col-xs-2 itp_lb">업종</label>
132 133
 											<div class="col-xs-4 itp_ip">
133 134
 												<div class="col-xs-7 itp_in">
134
-								                	<input type="text" id="ITP_FORM_STINFO02010_DETAIL_CTGR_BSNS" class="form-control itp_input" name="ctgrBsns" value="">
135
+													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_CTGR_BSNS" class="form-control itp_input" name="ctgrBsns" value="">
135 136
 												</div>
136 137
 											</div>
137 138
 										</div>
@@ -147,7 +148,7 @@
147 148
 											<label class="col-xs-2 itp_lb">전화번호 *</label>
148 149
 											<div class="col-xs-4 itp_ip">
149 150
 												<div class="col-xs-7 itp_in">
150
-								                	<input type="text" id="ITP_FORM_STINFO02010_DETAIL_TEL_NO" data-check-required="empty" class="form-control itp_input" name="telNo" value="">
151
+													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_TEL_NO" data-check-required="empty" class="form-control itp_input" name="telNo" value="">
151 152
 												</div>
152 153
 											</div>
153 154
 										</div>
@@ -157,13 +158,13 @@
157 158
 											<label class="col-xs-2 itp_lb">점주/대표자명*</label>
158 159
 											<div class="col-xs-4 itp_ip">
159 160
 												<div class="col-xs-6 itp_in">
160
-													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_OWNER_NM" class="form-control itp_input" name="ownerNm" value="">
161
+													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_OWNER_NM" data-check-required="empty" class="form-control itp_input" name="ownerNm" value="">
161 162
 												</div>
162 163
 											</div>
163 164
 											<label class="col-xs-2 itp_lb">FAX</label>
164 165
 											<div class="col-xs-4 itp_ip">
165 166
 												<div class="col-xs-7 itp_in">
166
-								                	<input type="text" id="ITP_FORM_STINFO02010_DETAIL_FAX_NO" class="form-control itp_input" name="faxNo" value="">
167
+													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_FAX_NO" class="form-control itp_input" name="faxNo" value="">
167 168
 												</div>
168 169
 											</div>
169 170
 										</div>
@@ -179,7 +180,7 @@
179 180
 											<label class="col-xs-2 itp_lb">이메일</label>
180 181
 											<div class="col-xs-4 itp_ip">
181 182
 												<div class="col-xs-7 itp_in">
182
-								                	<input type="text" id="ITP_FORM_STINFO02010_DETAIL_EMAL_ADDR" class="form-control itp_input" name="emalAddr" value="">
183
+													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_EMAL_ADDR" class="form-control itp_input" name="emalAddr" value="">
183 184
 												</div>
184 185
 											</div>
185 186
 										</div>
@@ -189,15 +190,15 @@
189 190
 											<label class="col-xs-2 itp_lb">지역 *</label>
190 191
 											<div class="col-xs-4 itp_ip">
191 192
 												<div class="col-xs-6 itp_in">
192
-												<select id="ITP_FORM_STINFO02010_DETAIL_AREA_CD" data-select-code="AREA_CD" data-check-required="empty" class="form-control itp_input" name="areaCd">
193
-												</select>												
193
+													<select id="ITP_FORM_STINFO02010_DETAIL_AREA_CD" data-select-code="AREA_CD" data-check-required="empty" class="form-control itp_input" name="areaCd">
194
+													</select>
194 195
 												</div>
195 196
 											</div>
196 197
 											<label class="col-xs-2 itp_lb">오픈일</label>
197 198
 											<div class="col-xs-5 itp_ip">
198 199
 												<div class="col-xs-7 itp_in">
199
-									                <div class="input-daterange input-group date itp_in">
200
-														<input type="text" id="ITP_FORM_STINFO02010_DETAIL_FROM_DT" class="form-control itp_input" name="regDt" value="2022.08.10">
200
+													<div class="input-daterange input-group date itp_in">
201
+														<input type="text" id="ITP_FORM_STINFO02010_DETAIL_FROM_DT" class="form-control itp_input" name="openDt" value="2022.08.10">
201 202
 													</div>
202 203
 												</div>
203 204
 											</div>
@@ -205,37 +206,83 @@
205 206
 									</div>
206 207
 									<div class="itp_form_in">
207 208
 										<div class="form-group">
208
-											<label class="col-xs-2 itp_lb">브랜드 계좌정보</label>
209
-											<div class="col-xs-4 itp_ip">
210
-												<div class="col-xs-12 itp_in fbBrandAcctInfo"></div>
209
+											<label class="col-xs-2 itp_lb">매장계좌정보</label>
210
+											<div class="col-xs-12 itp_ip">
211
+												<div class="col-xs-1 itp_in">
212
+													<select id="ITP_FORM_STINFO02010_DETAIL_BNK_CD" data-select-code="BNK_CD" data-check-required="empty" class="form-control itp_input" name="bnkCd">
213
+													</select>
214
+												</div>
215
+												<div class="col-xs-4 itp_in">
216
+													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_ACCT_NO" data-check-required="empty" class="form-control itp_input" name="acctNo" value="" placeholder="계좌번호">
217
+												</div>
218
+												<div class="col-xs-2 itp_in">
219
+													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_OWAC_NM" data-check-required="empty" class="form-control itp_input" name="owacNm" value="" placeholder="예금주명">
220
+												</div>
211 221
 											</div>
222
+										</div>
223
+									</div>
224
+									<div class="itp_form_in">
225
+										<div class="form-group">
212 226
 											<label class="col-xs-2 itp_lb">정산타입*</label>
213 227
 											<div class="col-xs-4 itp_ip">
214 228
 												<div class="col-xs-7 itp_in">
215
-													<select id="ITP_FORM_STINFO02010_DETAIL_LOAN_DVSN" data-select-code="LOAN_DVSN" class="form-control itp_input" name="loanDvsn">
229
+													<select id="ITP_FORM_STINFO02010_DETAIL_LOAN_DVSN" data-select-code="LOAN_DVSN" data-check-required="empty" class="form-control itp_input" name="loanDvsn">
216 230
 													</select>
217 231
 												</div>
218 232
 												<div class="col-xs-4 itp_in">
219
-													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_CREDT_LIMIT_AMT" class="form-control itp_input" name="credtLimitAmt" value="후불한도금액">
233
+													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_LIMIT_AMT" class="form-control itp_input" name="limitAmt" placeholder="후불한도금액">
234
+												</div>
235
+											</div>
236
+											<label class="col-xs-2 itp_lb">창고사용여부</label>
237
+											<div class="col-xs-4 itp_ip">
238
+												<div class="col-xs-7 itp_in">
239
+													<select id="ITP_FORM_STINFO02010_DETAIL_WHS_USE_YN" data-select-code="WHS_USE_YN" class="form-control itp_input" name="whsUseYn">
240
+													</select>
220 241
 												</div>
221 242
 											</div>
222 243
 										</div>
223 244
 									</div>
224
-									<div class="itp_form_in">	
245
+									<div class="itp_form_info">
246
+										<div class="itp_form_in">
247
+											<div class="form-group">
248
+												<label class="col-xs-2 itp_lb">입금계좌정보</label>
249
+												<div class="col-xs-4 itp_ip">
250
+													<div class="col-xs-12 itp_in fnBrandAcctInfo"></div>
251
+												</div>
252
+												<label class="col-xs-2 itp_lb">가수금액</label>
253
+												<div class="col-xs-4 itp_ip">
254
+													<div class="col-xs-12 itp_in fnAcctBal"></div>
255
+												</div>
256
+											</div>
257
+										</div>
258
+										<div class="itp_form_in">
259
+											<div class="form-group">
260
+												<label class="col-xs-2 itp_lb">현 잔여한도</label>
261
+												<div class="col-xs-4 itp_ip">
262
+													<div class="col-xs-12 itp_in fnTmpRcvAcctTotal"></div>
263
+												</div>
264
+												<label class="col-xs-2 itp_lb">수정일</label>
265
+												<div class="col-xs-4 itp_ip">
266
+													<div class="col-xs-12 itp_in fnSysChgDttm"></div>
267
+												</div>
268
+											</div>
269
+										</div>
270
+									</div>
271
+									<div class="itp_form_in">
225 272
 										<div class="form-group">
226 273
 											<label class="col-xs-2 itp_lb">주소 *</label>
227 274
 											<div class="col-xs-10 itp_ip">
228 275
 												<div class="col-xs-1 itp_in">
229
-													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_ZIPNO" class="form-control itp_input" name="zipNo" value="" maxlength="6" placeholder="우편번호">
276
+													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_ZIPNO" data-check-required="empty" class="form-control itp_input" name="zipNo" value="" maxlength="6" placeholder="우편번호">
230 277
 												</div>
231 278
 												<div class="col-xs-2 itp_in" style="width:10%;">
232 279
 													<button type="button" id="ITP_FORM_STINFO02010_DETAIL_ADRES_SCH" class="btn btn-primary btn-sm SHOW" style="margin: -1px 0px 0px 3px;">&nbsp;&nbsp;주소검색&nbsp;&nbsp;</button>
233 280
 												</div>
234 281
 												<div class="col-xs-4 itp_in" style="margin:0 5px;">
235
-													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_ADRES" class="form-control itp_input" name="loadAddr" value="" placeholder="기본주소">
282
+													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_ADRES" data-check-required="empty" class="form-control itp_input" name="addr1" value="" placeholder="기본주소">
236 283
 												</div>
237 284
 												<div class="col-xs-4 itp_in">
238
-													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_ADRES_DTL" class="form-control itp_input" name="dtlAddr" value="" placeholder="상세주소">
285
+													<input type="text" id="ITP_FORM_STINFO02010_DETAIL_ADRES_DTL" data-check-required="empty" class="form-control itp_input" name="addr2" value="" placeholder="상세주소">
239 286
 												</div>
240 287
 											</div>
241 288
 										</div>
@@ -246,11 +293,11 @@
246 293
 											<div class="col-xs-10 itp_ip">
247 294
 												<input type="hidden" id="ITP_FORM_STINFO02010_DETAIL_LOTS_ADDRESS" value="" />
248 295
 												<input type="hidden" id="ITP_FORM_STINFO02010_DETAIL_STREET_ADDRESS" value="" />
249
-												<input type="hidden" name="cmpyLat" id="ITP_FORM_STINFO02010_DETAIL_LAT" value="" />
250
-												<input type="hidden" name="cmpyLng" id="ITP_FORM_STINFO02010_DETAIL_LNG" value="" />
296
+												<input type="hidden" name="latX" id="ITP_FORM_STINFO02010_DETAIL_LAT" value="" />
297
+												<input type="hidden" name="longY" id="ITP_FORM_STINFO02010_DETAIL_LNG" value="" />
251 298
 												<input type="hidden" id="ITP_FORM_STINFO02010_DETAIL_HJ_DONG" value="" />
252 299
 												<input type="hidden" id="ITP_FORM_STINFO02010_DETAIL_BJ_DONG" value="" />
253
-												<div id="ITP_FORM_STINFO02010_DETAIL_MAP" style="width:700px; height:400px;"></div>											
300
+												<div id="ITP_FORM_STINFO02010_DETAIL_MAP" style="width:700px; height:400px;"></div>
254 301
 											</div>
255 302
 										</div>
256 303
 									</div>
@@ -264,7 +311,7 @@
264 311
 						<div class="col-xs-12">
265 312
 							<form id="ITP_FORM_STINFO02010_VIEW" class="form-horizontal">
266 313
 								<input type="hidden" id="ITP_FORM_STINFO02010_VIEW_VIEW_CD" name="viewCd" value="R">
267
-								 <input type="hidden" id="ITP_FORM_STINFO02010_VIEW_STORE_ID" name="storeId" value="">
314
+								<input type="hidden" id="ITP_FORM_STINFO02010_VIEW_STORE_ID" name="storeId" value="">
268 315
 								<section class="itp_form_sec">
269 316
 									<h4 class="itp_form_tit">매장정보-상세</h4>
270 317
 									<div class="itp_form_in">
@@ -377,7 +424,7 @@
377 424
 											</div>
378 425
 										</div>
379 426
 									</div>
380
-									<div class="itp_form_in">	
427
+									<div class="itp_form_in">
381 428
 										<div class="form-group">
382 429
 											<label class="col-xs-2 itp_lb">주소 *</label>
383 430
 											<div class="col-xs-10 itp_ip">
@@ -397,7 +444,19 @@
397 444
 												<input type="hidden" name="cmpyLng" id="ITP_FORM_STINFO02010_VIEW_LNG" value="" />
398 445
 												<input type="hidden" id="ITP_FORM_STINFO02010_VIEW_HJ_DONG" value="" />
399 446
 												<input type="hidden" id="ITP_FORM_STINFO02010_VIEW_BJ_DONG" value="" />
400
-												<div id="ITP_FORM_STINFO02010_VIEW_MAP" style="width:700px; height:400px;"></div>	
447
+												<div id="ITP_FORM_STINFO02010_VIEW_MAP" style="width:700px; height:400px;"></div>
448
+											</div>
449
+										</div>
450
+									</div>
451
+									<div class="itp_form_in">
452
+										<div class="form-group">
453
+											<label class="col-xs-2 itp_lb">매장계좌정보</label>
454
+											<div class="col-xs-4 itp_ip">
455
+												<div class="col-xs-12 itp_in fnStoreAcctInfo"></div>
456
+											</div>
457
+											<label class="col-xs-2 itp_lb">정산타입</label>
458
+											<div class="col-xs-4 itp_ip">
459
+												<div class="col-xs-12 itp_in fnLoanDvsn"></div>
401 460
 											</div>
402 461
 										</div>
403 462
 									</div>
@@ -407,24 +466,21 @@
407 466
 											<div class="col-xs-4 itp_ip">
408 467
 												<div class="col-xs-12 itp_in fnBrandAcctInfo"></div>
409 468
 											</div>
410
-											<label class="col-xs-2 itp_lb">정산타입*</label>
469
+											<label class="col-xs-2 itp_lb">가수금액</label>
411 470
 											<div class="col-xs-4 itp_ip">
412
-												<div class="col-xs-7 itp_in fnLoanDvsn">
413
-												</div>
414
-												<div class="col-xs-4 itp_in fnCredtLimitAmt">
415
-												</div>
471
+												<div class="col-xs-12 itp_in fnAcctBal">(선입금일때 존재)</div>
416 472
 											</div>
417 473
 										</div>
418 474
 									</div>
419 475
 									<div class="itp_form_in">
420 476
 										<div class="form-group">
421
-											<label class="col-xs-2 itp_lb">가수금액</label>
477
+											<label class="col-xs-2 itp_lb">창고사용여부</label>
422 478
 											<div class="col-xs-4 itp_ip">
423
-												<div class="col-xs-12 itp_in fnTmpRcvAcct">(선입금일때 존재)</div>
479
+												<div class="col-xs-12 itp_in fnWhsUseYn"></div>
424 480
 											</div>
425 481
 											<label class="col-xs-2 itp_lb">현 잔여한도</label>
426 482
 											<div class="col-xs-4 itp_ip">
427
-												<div class="col-xs-7 itp_in fnRemainLimitAmt"></div>
483
+												<div class="col-xs-7 itp_in fnLimitAmt"></div>
428 484
 											</div>
429 485
 										</div>
430 486
 									</div>
@@ -432,7 +488,7 @@
432 488
 										<div class="form-group border">
433 489
 											<label class="col-xs-2 itp_lb">등록일</label>
434 490
 											<div class="col-xs-4 itp_ip">
435
-												<div class="col-xs-12 itp_in fnRegDt"></div>
491
+												<div class="col-xs-12 itp_in fnSysRegDttm"></div>
436 492
 											</div>
437 493
 											<label class="col-xs-2 itp_lb">폐점일</label>
438 494
 											<div class="col-xs-4 itp_ip">

+ 43 - 22
src/main/webapp/app/stinfo/STINFO03010.html

@@ -65,7 +65,7 @@
65 65
 											<label class="col-xs-2 itp_lb">상태 *</label>
66 66
 											<div class="4 itp_ip">
67 67
 												<div class="col-xs-8 itp_in">
68
-								                	<select id="ITP_FORM_STINFO03010_DETAIL_ST_CD" data-select-code="ST_CD" class="form-control itp_input" name="stCd">
68
+								                	<select id="ITP_FORM_STINFO03010_DETAIL_ST_CD" data-select-code="ST_CD" data-check-required="empty" class="form-control itp_input" name="stCd">
69 69
 													</select>
70 70
 												</div>
71 71
 											</div>
@@ -81,7 +81,7 @@
81 81
 											<label class="col-xs-2 itp_lb">기업형태 *</label>
82 82
 											<div class="col-xs-4 itp_ip">
83 83
 												<div class="col-xs-8 itp_in">
84
-								                <select id="ITP_FORM_STINFO03010_DETAIL_CORP_TYPE" data-select-code="CORP_TYPE" class="form-control itp_input" name="corpType">
84
+								                <select id="ITP_FORM_STINFO03010_DETAIL_CORP_TYPE" data-select-code="CORP_TYPE" data-check-required="empty" class="form-control itp_input" name="corpType">
85 85
 												</select>
86 86
 												</div>
87 87
 											</div>
@@ -92,7 +92,7 @@
92 92
 											<label class="col-xs-2 itp_lb">공급업체명 *</label>
93 93
 											<div class="col-xs-4 itp_ip">
94 94
 												<div class="col-xs-9 itp_in">
95
-													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_SPPLY_NM" class="form-control itp_input" name="spplyNm" value="">
95
+													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_SPPLY_NM" data-check-required="empty" class="form-control itp_input" name="spplyNm" value="">
96 96
 												</div>
97 97
 											</div>
98 98
 											<label class="col-xs-2 itp_lb">업태</label>
@@ -108,7 +108,7 @@
108 108
 											<label class="col-xs-2 itp_lb">사업자번호 *</label>
109 109
 											<div class="col-xs-4 itp_ip">
110 110
 												<div class="col-xs-6 itp_in">
111
-													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_BSNS_REG_NO" class="form-control itp_input" name="bsnsRegNo" value="">
111
+													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_BSNS_REG_NO" data-check-required="empty" class="form-control itp_input" name="bsnsRegNo" value="">
112 112
 												</div>
113 113
 											</div>
114 114
 											<label class="col-xs-2 itp_lb">업종</label>
@@ -130,7 +130,7 @@
130 130
 											<label class="col-xs-2 itp_lb">전화번호 *</label>
131 131
 											<div class="col-xs-4 itp_ip">
132 132
 												<div class="col-xs-8 itp_in">
133
-								                	<input type="text" id="ITP_FORM_STINFO03010_DETAIL_TEL_NO" class="form-control itp_input" name="telNo" value="">
133
+								                	<input type="text" id="ITP_FORM_STINFO03010_DETAIL_TEL_NO" data-check-required="empty" class="form-control itp_input" name="mgrTelNo" value="">
134 134
 												</div>
135 135
 											</div>
136 136
 										</div>
@@ -140,7 +140,7 @@
140 140
 											<label class="col-xs-2 itp_lb">대표자명*</label>
141 141
 											<div class="col-xs-4 itp_ip">
142 142
 												<div class="col-xs-6 itp_in">
143
-													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_OWNER_NM" class="form-control itp_input" name="ownerNm" value="">
143
+													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_OWNER_NM" data-check-required="empty" class="form-control itp_input" name="ownerNm" value="">
144 144
 												</div>
145 145
 											</div>
146 146
 											<label class="col-xs-2 itp_lb">FAX</label>
@@ -156,13 +156,13 @@
156 156
 											<label class="col-xs-2 itp_lb">핸드폰</label>
157 157
 											<div class="col-xs-4 itp_ip">
158 158
 												<div class="col-xs-6 itp_in">
159
-													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_MBL_NO" class="form-control itp_input" name="mblNo" value="">
159
+													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_MBL_NO" class="form-control itp_input" name="mgrMblNo" value="">
160 160
 												</div>
161 161
 											</div>
162 162
 											<label class="col-xs-2 itp_lb">이메일</label>
163 163
 											<div class="col-xs-4 itp_ip">
164 164
 												<div class="col-xs-8 itp_in">
165
-								                	<input type="text" id="ITP_FORM_STINFO03010_DETAIL_EMAL_ADDR" class="form-control itp_input" name="emalAddr" value="">
165
+								                	<input type="text" id="ITP_FORM_STINFO03010_DETAIL_EMAL_ADDR" class="form-control itp_input" name="mgrEmal" value="">
166 166
 												</div>
167 167
 											</div>
168 168
 										</div>
@@ -172,7 +172,7 @@
172 172
 											<label class="col-xs-2 itp_lb">지역 *</label>
173 173
 											<div class="col-xs-4 itp_ip">
174 174
 												<div class="col-xs-6 itp_in">
175
-              										<select id="ITP_FORM_STINFO03010_DETAIL_AREA_CD" data-select-code="AREA_CD" class="form-control itp_input" name="areaCd">
175
+              										<select id="ITP_FORM_STINFO03010_DETAIL_AREA_CD" data-select-code="AREA_CD" data-check-required="empty" class="form-control itp_input" name="areaCd">
176 176
 													</select>												
177 177
 												</div>
178 178
 											</div>
@@ -205,47 +205,68 @@
205 205
 										<div class="form-group">
206 206
 											<label class="col-xs-2 itp_lb">통장사본</label>
207 207
 											<div class="col-xs-4 itp_ip">
208
-												<div class="col-xs-6 itp_in">
208
+												<div class="col-xs-6 itp_in" style="padding-right:5px;">
209
+													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_ACCT_FILE_PATH" class="form-control itp_input" name="FilePath" value="">
209 210
 												</div>
210
-												<div class="col-xs-6 itp_in" >
211
+												<div class="col-xs-6 itp_in">
211 212
 													<div class="fileupload-wrapper">
212 213
 														<!-- data-show-yn: 파일업로드를 할 수 있는 권한이 있는지 없는지.. -->
213
-														<div id="ITP_STINFO03010_DETAIL_BTN_ACCT_FILE" data-show-yn="Y"></div>
214
+														<div id="ITP_STINFO03010_DETAIL_ACCT_FILE_UPLOAD" data-show-yn="Y"></div>
214 215
 													</div>
215 216
 												</div>
216 217
 											</div>
217
-											<label class="col-xs-2 itp_lb">사업자등록파일</label>
218
+											<label class="col-xs-2 itp_lb">통장사본</label>
218 219
 											<div class="col-xs-4 itp_ip">
219
-												<div class="col-xs-8 itp_in">
220
+												<div class="col-xs-6 itp_in" style="padding-right:5px;">
221
+													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_CORP_FILE_PATH" class="form-control itp_input" name="FilePath" value="">
220 222
 												</div>
221
-												<div class="col-xs-4 itp_in">
223
+												<div class="col-xs-6 itp_in">
222 224
 													<div class="fileupload-wrapper">
223 225
 														<!-- data-show-yn: 파일업로드를 할 수 있는 권한이 있는지 없는지.. -->
224
-														<div id="ITP_STINFO03010_DETAIL_BTN_CORP_FILE" data-show-yn="Y"></div>
226
+														<div id="ITP_STINFO03010_DETAIL_CORP_FILE_UPLOAD" data-show-yn="Y"></div>
225 227
 													</div>
226 228
 												</div>
227 229
 											</div>
228 230
 										</div>
229 231
 									</div>
230
-									<div class="itp_form_in">	
232
+									<div class="itp_form_in">
231 233
 										<div class="form-group">
232
-											<label class="col-xs-2 itp_lb">주소</label>
234
+											<label class="col-xs-2 itp_lb">주소 *</label>
233 235
 											<div class="col-xs-10 itp_ip">
234 236
 												<div class="col-xs-1 itp_in">
235
-													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_ZIP_NO" class="form-control itp_input" name="zipNo" value="" maxlength="6" placeholder="우편번호">													
237
+													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_ZIPNO" data-check-required="empty" class="form-control itp_input" name="zipNo" value="" maxlength="6" placeholder="우편번호">
236 238
 												</div>
237 239
 												<div class="col-xs-2 itp_in" style="width:10%;">
238
-													<button type="button" id="ITP_FORM_STINFO03010_DETAIL_ADDR_SEARCH" class="btn btn-primary btn-sm FILE_SEARCH" style="margin:0 3px;">&nbsp;&nbsp;주소찾기&nbsp;&nbsp;</button>
240
+													<button type="button" id="ITP_FORM_STINFO03010_DETAIL_ADRES_SCH" class="btn btn-primary btn-sm SHOW" style="margin: -1px 0px 0px 3px;">&nbsp;&nbsp;주소검색&nbsp;&nbsp;</button>
239 241
 												</div>
240 242
 												<div class="col-xs-4 itp_in" style="margin:0 5px;">
241
-													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_LOAD_ADDR" class="form-control itp_input" name="loadAddr" value="" placeholder="기본주소">													
243
+													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_ADRES" data-check-required="empty" class="form-control itp_input" name="addr1" value="" placeholder="기본주소">
242 244
 												</div>
243 245
 												<div class="col-xs-4 itp_in">
244
-													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_DTL_ADDR" class="form-control itp_input" name="dtlAddr" value="" placeholder="상세주소">													
246
+													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_ADRES_DTL" data-check-required="empty" class="form-control itp_input" name="addr2" value="" placeholder="상세주소">
245 247
 												</div>
246 248
 											</div>
247 249
 										</div>
248 250
 									</div>
251
+									<!--<div class="itp_form_in">
252
+										<div class="form-group">
253
+											<label class="col-xs-2 itp_lb">주소</label>
254
+											<div class="col-xs-10 itp_ip">
255
+												<div class="col-xs-1 itp_in">
256
+													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_ZIPNO" class="form-control itp_input" name="zipNo" value="" maxlength="6" placeholder="우편번호">
257
+												</div>
258
+												<div class="col-xs-2 itp_in" style="width:10%;">
259
+													<button type="button" id="ITP_FORM_STINFO03010_DETAIL_ADRES_SCH" class="btn btn-primary btn-sm FILE_SEARCH" style="margin:0 3px;">&nbsp;&nbsp;주소찾기&nbsp;&nbsp;</button>
260
+												</div>
261
+												<div class="col-xs-4 itp_in" style="margin:0 5px;">
262
+													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_ADRES" class="form-control itp_input" name="addr1" value="" placeholder="기본주소">
263
+												</div>
264
+												<div class="col-xs-4 itp_in">
265
+													<input type="text" id="ITP_FORM_STINFO03010_DETAIL_ADRES_DTL" class="form-control itp_input" name="addr2" value="" placeholder="상세주소">
266
+												</div>
267
+											</div>
268
+										</div>
269
+									</div>-->
249 270
 								</section>				
250 271
 							</form>
251 272
 							<div class="itp_form_in">

+ 29 - 22
src/main/webapp/app/stinfo/STINFO04010.html

@@ -99,7 +99,7 @@
99 99
 											<label class="col-xs-2 itp_lb">상태 *</label>
100 100
 											<div class="col-xs-3 itp_ip">
101 101
 												<div class="col-xs-9 itp_in">
102
-								               		<select id="ITP_FORM_STINFO04010_DETAIL_ST_CD" data-select-code="ST_CD" class="form-control itp_input default_st_cd" name="stCd"></select>
102
+								               		<select id="ITP_FORM_STINFO04010_DETAIL_ST_CD" data-select-code="ST_CD" data-check-required="empty" class="form-control itp_input default_st_cd" name="stCd"></select>
103 103
 												</div>
104 104
 											</div>
105 105
 										</div>
@@ -109,7 +109,7 @@
109 109
 											<label class="col-xs-2 itp_lb">품목분류 *</label>
110 110
 											<div class="col-xs-10 itp_ip">
111 111
 												<div class="col-xs-2 itp_in itp_noMar">
112
-													<select id="ITP_FORM_STINFO04010_DETAIL_ITEM_CLASS1" class="form-control itp_input" name="itemClass1">
112
+													<select id="ITP_FORM_STINFO04010_DETAIL_ITEM_CLASS1" data-check-required="empty" class="form-control itp_input" name="itemClass1">
113 113
 														<option value="">품목분류Level1</option>											
114 114
 													</select>										
115 115
 												</div>
@@ -138,7 +138,7 @@
138 138
 											<label class="col-xs-2 itp_lb">품목유형 *</label>
139 139
 											<div class="col-xs-5 itp_ip">
140 140
 												<div class="col-xs-9 itp_in">
141
-								                <select id="ITP_FORM_STINFO04010_DETAIL_ITEM_TYPE" data-select-code="ITEM_TYPE" class="form-control itp_input" name="itemType">
141
+								                <select id="ITP_FORM_STINFO04010_DETAIL_ITEM_TYPE" data-select-code="ITEM_TYPE" data-check-required="empty" class="form-control itp_input" name="itemType">
142 142
 													<option value="">소모품</option>
143 143
 													<option value="">자산용</option>
144 144
 												</select>
@@ -151,7 +151,7 @@
151 151
 											<label class="col-xs-2 itp_lb">품목명 *</label>
152 152
 											<div class="col-xs-5 itp_ip">
153 153
 												<div class="col-xs-9 itp_in">
154
-													<input type="text" id="ITP_FORM_STINFO04010_DETAIL_ITEM_NM" class="form-control itp_input" name="itemNm" value="품목A">
154
+													<input type="text" id="ITP_FORM_STINFO04010_DETAIL_ITEM_NM" data-check-required="empty" class="form-control itp_input" name="itemNm" value="품목A">
155 155
 												</div>
156 156
 											</div>
157 157
 											<label class="col-xs-2 itp_lb">내외자구분</label>
@@ -170,7 +170,7 @@
170 170
 											<label class="col-xs-2 itp_lb">발주여부 *</label>
171 171
 											<div class="col-xs-5 itp_ip">
172 172
 												<div class="col-xs-6 itp_in">
173
-													<select id="ITP_FORM_STINFO04010_DETAIL_PODR_PSSBL_DVSN" data-select-code="PODR_PSSBL_DVSN" class="form-control itp_input" name="podrPssblDvsn">
173
+													<select id="ITP_FORM_STINFO04010_DETAIL_PODR_PSSBL_DVSN" data-select-code="PODR_PSSBL_DVSN" data-check-required="empty" class="form-control itp_input" name="podrPssblDvsn">
174 174
 														<option value="">발주가능</option>
175 175
 														<option value="">발주불가</option>
176 176
 													</select>
@@ -179,7 +179,7 @@
179 179
 											<label class="col-xs-2 itp_lb">기본단위 *</label>
180 180
 											<div class="col-xs-5 itp_ip">
181 181
 												<div class="col-xs-9 itp_in">
182
-									                <select id="ITP_FORM_STINFO04010_DETAIL_UNIT" data-select-code="UNIT" class="form-control itp_input detail_item_unit" name="unit"></select>
182
+									                <select id="ITP_FORM_STINFO04010_DETAIL_UNIT" data-select-code="DSTRBT_COST_UNIT" data-check-required="empty" class="form-control itp_input detail_item_unit" name="unit"></select>
183 183
 												</div>
184 184
 											</div>
185 185
 										</div>
@@ -189,14 +189,17 @@
189 189
 											<label class="col-xs-2 itp_lb">구매품목여부 *</label>
190 190
 											<div class="col-xs-5 itp_ip">
191 191
 												<div class="col-xs-6 itp_in">
192
-													<select id="ITP_FORM_STINFO04010_DETAIL_PCH_ITEM_YN" data-select-code="PCH_ITEM_YN" class="form-control itp_input" name="pchItemYn">
192
+													<select id="ITP_FORM_STINFO04010_DETAIL_PCH_ITEM_YN" data-check-required="" class="form-control itp_input" name="pchItemYn">
193
+														<option value="">구매품목여부</option>
194
+														<option value="Y">Y</option>
195
+														<option value="N">N</option>
193 196
 													</select>
194 197
 												</div>
195 198
 											</div>
196 199
 											<label class="col-xs-2 itp_lb">구매단위</label>
197 200
 											<div class="col-xs-5 itp_ip">
198 201
 												<div class="col-xs-9 itp_in">
199
-									                <select id="ITP_FORM_STINFO04010_DETAIL_PCH_UNIT" data-select-code="UNIT" class="form-control itp_input detail_item_unit" name="pchUnit"></select>
202
+									                <select id="ITP_FORM_STINFO04010_DETAIL_PCH_UNIT" data-select-code="DSTRBT_COST_UNIT" class="form-control itp_input detail_item_unit" name="pchUnit"></select>
200 203
 												</div>
201 204
 											</div>
202 205
 										</div>
@@ -206,14 +209,17 @@
206 209
 											<label class="col-xs-2 itp_lb">판매품목여부 *</label>
207 210
 											<div class="col-xs-5 itp_ip">
208 211
 												<div class="col-xs-6 itp_in">
209
-													<select id="ITP_FORM_STINFO04010_DETAIL_SALE_ITEM_YN" data-select-code="SALE_ITEM_YN" class="form-control itp_input" name="saleItemYn">
212
+													<select id="ITP_FORM_STINFO04010_DETAIL_SALE_ITEM_YN" data-check-required="" class="form-control itp_input" name="saleItemYn">
213
+														<option value="">판매품목여부</option>
214
+														<option value="Y">Y</option>
215
+														<option value="N">N</option>
210 216
 													</select>
211 217
 												</div>
212 218
 											</div>
213 219
 											<label class="col-xs-2 itp_lb">판매단위</label>
214 220
 											<div class="col-xs-5 itp_ip">
215 221
 												<div class="col-xs-9 itp_in">
216
-								      	          	<select id="ITP_FORM_STINFO04010_DETAIL_SALE_UNIT" data-select-code="UNIT" class="form-control itp_input detail_item_unit" name="saleUnit"></select>
222
+								      	          	<select id="ITP_FORM_STINFO04010_DETAIL_SALE_UNIT" data-select-code="DSTRBT_COST_UNIT" class="form-control itp_input detail_item_unit" name="saleUnit"></select>
217 223
 												</div>
218 224
 											</div>
219 225
 										</div>
@@ -229,7 +235,7 @@
229 235
 											<label class="col-xs-2 itp_lb">재고단위</label>
230 236
 											<div class="col-xs-5 itp_ip">
231 237
 												<div class="col-xs-9 itp_in">
232
-								      	          	<select id="ITP_FORM_STINFO04010_DETAIL_STCK_UNIT" data-select-code="UNIT" class="form-control itp_input detail_item_unit" name="stckUnit"></select>
238
+								      	          	<select id="ITP_FORM_STINFO04010_DETAIL_STCK_UNIT" data-select-code="DSTRBT_COST_UNIT" class="form-control itp_input detail_item_unit" name="stckUnit"></select>
233 239
 												</div>
234 240
 											</div>
235 241
 										</div>
@@ -239,7 +245,7 @@
239 245
 											<label class="col-xs-2 itp_lb">중량</label>
240 246
 											<div class="col-xs-5 itp_ip">
241 247
 												<div class="col-xs-3 itp_in">
242
-													<input type="text" id="ITP_FORM_STINFO04010_DETAIL_WEIGHT" class="form-control itp_input" name="weight" value="">
248
+													<input type="text" id="ITP_FORM_STINFO04010_DETAIL_WEIGHT" data-check-required="number" class="form-control itp_input" name="weight" value="">
243 249
 												</div>
244 250
 												<div class="col-xs-4 itp_in">
245 251
 	              									<select id="ITP_FORM_STINFO04010_DETAIL_WEIGHT_UNIT" data-select-code="UNIT" class="form-control itp_input detail_item_unit" name="weight_unit"></select>
@@ -302,7 +308,8 @@
302 308
 											<label class="col-xs-2 itp_lb">유통기한여부 *</label>
303 309
 											<div class="col-xs-5 itp_ip">
304 310
 												<div class="col-xs-6 itp_in">
305
-													<select id="ITP_FORM_STINFO04010_DETAIL_EXPRY_YN" class="form-control itp_input" name="expryYn">
311
+													<select id="ITP_FORM_STINFO04010_DETAIL_EXPRY_YN" data-check-required="empty" class="form-control itp_input" name="expryYn">
312
+														<option value="">유통기한여부</option>
306 313
 														<option value="Y">Y</option>
307 314
 														<option value="N">N</option>
308 315
 													</select>
@@ -325,6 +332,7 @@
325 332
 											<div class="col-xs-5 itp_ip">
326 333
 												<div class="col-xs-6 itp_in">
327 334
 													<select id="ITP_FORM_STINFO04010_DETAIL_RTN_PSSBL_YN" class="form-control itp_input" name="rtnPssblYn">
335
+														<option value="">반품기능여부</option>
328 336
 														<option value="Y">Y</option>
329 337
 														<option value="N">N</option>
330 338
 													</select>
@@ -341,19 +349,17 @@
341 349
 											</div>
342 350
 										</div>
343 351
 									</div>
344
-									<div class="itp_form_in">	
352
+									<div class="itp_form_in">
345 353
 										<div class="form-group border">
346 354
 											<label class="col-xs-2 itp_lb">품목이미지</label>
347 355
 											<div class="col-xs-10 itp_ip">
348
-												<div class="col-xs-6 itp_in ITEM_IMAGE">
349
-													<img src="/oqpo-view/images/item-list.jpg" alt="품목이미지 샘플" name="itemImage" style="width:400px; height:220px; border:1px solid #ddd;">
356
+												<div class="col-xs-4 itp_in" style="padding-right:5px;">
357
+													<input type="text" id="ITP_FORM_STINFO04010_DETAIL_FILE_PATH" class="form-control itp_input" name="FilePath" value="">
350 358
 												</div>
351
-												<div class="col-xs-6 itp_in" style="margin-top:75px;">
352
-													<div class="col-xs-8 itp_in">
353
-														<input type="text" id="ITP_FORM_STINFO04010_DETAIL_ITEM_IMAGE_FILE_PATH" class="form-control itp_input" name="itemImageFilePath" value="" placeholder="">													
354
-													</div>
355
-													<div class="col-xs-2 itp_in">
356
-														<button type="button" id="ITP_FORM_STINFO04010_DETAIL_FILE_SEARCH" class="btn btn-primary btn-sm FFB" style="margin-left:3px;">&nbsp;&nbsp;파일찾기&nbsp;&nbsp;</button>
359
+												<div class="col-xs-6 itp_in">
360
+													<div class="fileupload-wrapper">
361
+														<!-- data-show-yn: 파일업로드를 할 수 있는 권한이 있는지 없는지.. -->
362
+														<div id="ITP_STINFO04010_DETAIL_UPLOAD" data-show-yn="Y"></div>
357 363
 													</div>
358 364
 												</div>
359 365
 											</div>
@@ -369,6 +375,7 @@
369 375
 						<div class="col-xs-12">
370 376
 							<form id="ITP_FORM_STINFO04010_VIEW" class="form-horizontal">
371 377
 								<input type="hidden" id="ITP_FORM_STINFO04010_VIEW_VIEW_CD" name="viewCd" value="R">
378
+								<input type="hidden" id="ITP_FORM_STINFO04010_VIEW_BRAND_ID" name="brandId" value="">
372 379
 								<input type="hidden" id="ITP_FORM_STINFO04010_VIEW_ITEM_ID" name="itemId" value="">
373 380
 								<input type="hidden" id="ITP_FORM_STINFO04010_VIEW_FILE_NO" name="fileNo" value="">
374 381
 								<section class="itp_form_sec">

+ 10 - 0
src/main/webapp/js/app/kakao.map.js

@@ -116,5 +116,15 @@ let kakaoMap = {
116 116
                 document.getElementById(kakaoMap.formId + '_ADRES_DTL').focus();
117 117
             }
118 118
         }).open();
119
+    },
120
+    simpleAddress: function (formId) {
121
+        new daum.Postcode({
122
+            oncomplete: function(data) {
123
+                // 전체주소 리턴
124
+                document.getElementById(formId + '_ZIPNO').value = data.zonecode;
125
+                document.getElementById(formId + '_ADRES').value = data.roadAddress;
126
+                document.getElementById(formId + '_ADRES_DTL').focus();
127
+            }
128
+        }).open();
119 129
     }
120 130
 };

+ 35 - 52
src/main/webapp/js/app/stinfo/ITP_STINFO02010.js

@@ -188,8 +188,6 @@ let pageObj = {
188 188
 						case 'ITP_BTN_STINFO02010_DELETE'				: 								break;	// 삭제 버튼
189 189
 						case 'ITP_BTN_STINFO02010_SAVE'					: createObj.button.save(); 		break;	// 저장 버튼
190 190
 						case 'ITP_FORM_STINFO02010_DETAIL_ADRES_SCH'	: createObj.button.address();	break;	// 신규등록 주소 찾기
191
-						case 'ITP_FORM_STINFO02010_DETAIL_DUP'			: createObj.button.duplicate();	break;	// 중복체크
192
-						case 'ITP_BTN_STINFO02010_RESET_PW'				: createObj.button.resetPass();	break;	// 상세:비밀번호 초기화
193 191
 					}
194 192
 				});
195 193
 			});
@@ -222,7 +220,7 @@ let pageObj = {
222 220
 
223 221
 			$('#ITP_FORM_STINFO02010_DETAIL .fnStoreNm').text('(자동부여)');
224 222
 			$('#ITP_FORM_STINFO02010_DETAIL_STORE_ID').removeAttr('readonly');
225
-			$('#ITP_FORM_STINFO02010_DETAIL_DUP').removeAttr('disabled');
223
+			$('#ITP_FORM_STINFO02010_DETAIL .itp_form_info').hide();
226 224
 		} else if(mode == 'MODIFY') { // 수정
227 225
 			$('#ITP_AJAX_STINFO02010_DETAIL_CONTAINER').show();
228 226
 			fn_show_btn_auth_array(['#ITP_BTN_STINFO02010_CANCELLIST', '#ITP_BTN_STINFO02010_SAVE', '#ITP_BTN_STINFO02010_RESET_PW']);
@@ -231,11 +229,7 @@ let pageObj = {
231 229
 			$('#ITP_FORM_STINFO02010_DETAIL .fnBrandNm').text(fn_make_user_info.get('brandNm'));
232 230
 
233 231
 			$('#ITP_FORM_STINFO02010_DETAIL_STORE_ID').attr('readonly', true);
234
-			$('#ITP_FORM_STINFO02010_DETAIL_DUP').attr('disabled', true);
235
-			$('#ITP_FORM_STINFO02010_DETAIL_SEARCH_AFFL_SHOP_NM').attr('readonly', true);
236
-
237
-			$('#ITP_FORM_STINFO02010_DETAIL_SEARCH_AFFL_SHOP').hide();
238
-			$('#ITP_FORM_STINFO02010_DETAIL_DELETE_AFFL_SHOP').hide();
232
+			$('#ITP_FORM_STINFO02010_DETAIL .itp_form_info').show();
239 233
 		} else if(mode == 'VIEW') { // 보기
240 234
 			$('#ITP_AJAX_STINFO02010_VIEW_CONTAINER').show();
241 235
 			fn_show_btn_auth_array(['#ITP_BTN_STINFO02010_MODIFY', '#ITP_BTN_STINFO02010_CANCELLIST']);
@@ -357,7 +351,7 @@ let viewObj = {
357 351
 		fn_ajax_call(API_DETAIL_INFO, param, this.callback, 'GET');
358 352
 	},
359 353
 	callback: function (result) {
360
-		// console.log(result);
354
+		console.log(result);
361 355
 		pageObj.switchScreen('VIEW');
362 356
 		$('#ITP_FORM_STINFO02010_VIEW #ITP_FORM_STINFO02010_VIEW_STORE_ID').val(result.storeId);
363 357
 		$('#ITP_FORM_STINFO02010_VIEW .fnBrandNm').text(result.brandNm);
@@ -383,12 +377,13 @@ let viewObj = {
383 377
 		var cmpyAdres = result.addr1/* + ' ' + result.addr*/;
384 378
 		kakaoMap.init('ITP_FORM_STINFO02010_VIEW', cmpyAdres);
385 379
 
386
-		$('#ITP_FORM_STINFO02010_VIEW .fnBrandAcctInfo').text(result.brandAcctNo);
380
+		$('#ITP_FORM_STINFO02010_VIEW .fnStoreAcctInfo').text(result.storeBnkNm + ' ' + result.storeAcctNo + ' ' + result.storeOwacNm);
387 381
 		$('#ITP_FORM_STINFO02010_VIEW .fnLoanDvsn').text(result.loanDvsnNm);
388
-		$('#ITP_FORM_STINFO02010_VIEW .fnCredtLimitAmt').text(result.limitAmt);
389
-		$('#ITP_FORM_STINFO02010_VIEW .fnTmpRcvAcct').text(result.storeAcctNo);
390
-		$('#ITP_FORM_STINFO02010_VIEW .fnRemainLimitAmt').text(result.limitAmt);
391
-		$('#ITP_FORM_STINFO02010_VIEW .fnRegDt').text(result.sysRegDttm);
382
+		$('#ITP_FORM_STINFO02010_VIEW .fnBrandAcctInfo').text(result.brandBnkNm + ' ' + result.brandAcctNo + ' ' + result.brandOwacNm);
383
+		$('#ITP_FORM_STINFO02010_VIEW .fnAcctBal').text(result.acctBal);
384
+		$('#ITP_FORM_STINFO02010_VIEW .fnWhsUseYn').text(result.whsUseYn);
385
+		$('#ITP_FORM_STINFO02010_VIEW .fnLimitAmt').text(result.limitAmt);
386
+		$('#ITP_FORM_STINFO02010_VIEW .fnSysRegDttm').text(result.sysRegDttm);
392 387
 		$('#ITP_FORM_STINFO02010_VIEW .fnCloseDt').text(result.closeDt);
393 388
 	}
394 389
 };
@@ -413,11 +408,6 @@ let modifyObj = {
413 408
 		console.log(result);
414 409
 		pageObj.switchScreen('MODIFY');
415 410
 
416
-		fn_make_select(CODE_LIST, 'STORE_ST_CD', 'ITP_FORM_STINFO02010_DETAIL_STORE_ST_CD');
417
-		fn_make_select(CODE_LIST, 'AREA_CD', 'ITP_FORM_STINFO02010_DETAIL_AREA_CD');
418
-		fn_make_select(CODE_LIST, 'STORE_DVSN', 'ITP_FORM_STINFO02010_DETAIL_STORE_DVSN');
419
-		fn_make_select(CODE_LIST, 'LOAN_DVSN', 'ITP_FORM_STINFO02010_DETAIL_LOAN_DVSN');
420
-
421 411
 		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_VIEW_CD').val('U');
422 412
 		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_STORE_ID').val(result.storeId);
423 413
 		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_BRAND_ID').val(fn_make_user_info.get('brandId'));
@@ -437,15 +427,23 @@ let modifyObj = {
437 427
 		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_EMAL_ADDR').val(result.emalAddr);
438 428
 		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_AREA_CD').val(result.areaCd);
439 429
 		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_FROM_DT').val(result.openDt);
440
-		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_ZIP_NO').val(result.zipNo);
441
-		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_LOAD_ADDR').val(result.addr1);
442
-		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_DTL_ADDR').val(result.addr2);
443
-		$('#ITP_FORM_STINFO02010_DETAIL .fbBrandAcctInfo').text(result.brandAcctNo);
444
-		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_LOAN_DVSN').val(result.loanDvsn);
445
-		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_CREDT_LIMIT_AMT').val(result.limitAmt);
430
+		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_ZIPNO').val(result.zipNo);
431
+		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_ADRES').val(result.addr1);
432
+		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_ADRES_DTL').val(result.addr2);
446 433
 
447 434
 		var cmpyAdres = result.addr1/* + ' ' + result.addr*/;
448 435
 		kakaoMap.init('ITP_FORM_STINFO02010_DETAIL', cmpyAdres);
436
+
437
+		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_DPST_BNK_CD').text(result.storeBnkCd);
438
+		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_ACCT_NO').text(result.storeAcctNo);
439
+		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_OWAC_NM').text(result.storeOwacNm);
440
+		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_LOAN_DVSN').val(result.loanDvsn);
441
+		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_LIMIT_AMT').val(result.limitAmt);
442
+		$('#ITP_FORM_STINFO02010_DETAIL #ITP_FORM_STINFO02010_DETAIL_WHS_USE_YN').val(result.whsUseYn);
443
+		$('#ITP_FORM_STINFO02010_DETAIL .fnBrandAcctInfo').text(result.brandBnkNm + ' ' + result.brandAcctNo + ' ' + result.brandOwacNm);
444
+		$('#ITP_FORM_STINFO02010_DETAIL .fnAcctBal').text(result.acctBal);
445
+		$('#ITP_FORM_STINFO02010_DETAIL .fnTmpRcvAcctTotal').text(result.tmpRcvAcctTotal);
446
+		$('#ITP_FORM_STINFO02010_DETAIL .fnSysChgDttm').text(result.sysChgDttm);
449 447
 	}
450 448
 };
451 449
 
@@ -465,24 +463,8 @@ let createObj = {
465 463
 		save: function() {
466 464
 			const formId = '#ITP_FORM_STINFO02010_DETAIL';
467 465
 			itp_fn_form_clear_validate(null, formId);
468
-			// var vali_userId = itp_fn_form_validate(formId, formId + '_USER_ID', ['empty'], undefined);
469
-			// var vali_userStatCd = itp_fn_form_validate(formId, formId + '_USER_STAT_CD', ['empty'], undefined);
470
-			// var vali_userNm = itp_fn_form_validate(formId, formId + '_USER_NM', ['empty'], undefined);
471
-			// var vali_telNo = itp_fn_form_validate(formId, formId + '_TEL_NO', ['empty'], undefined);
472
-			// var vali_email = itp_fn_form_validate(formId, formId + '_EMAIL', ['empty'], undefined);
473
-			// var vali_userPw = true;
474
-			// var vali_userPwConfirm = true;
475 466
 
476
-			var isValid = false;
477
-			$(formId).find('input, select, checkbox, textarea').each(function(k) {
478
-				if($(this).data('check-required')) {
479
-					var arry = $(this).data('check-required').split(',');
480
-					isValid = itp_fn_form_validate(formId, '#' + $(this).attr('id'), arry, undefined);
481
-					if(!isValid) return false;
482
-				}
483
-			});
484
-
485
-			if (isValid) {
467
+			if (createObj.isValid(formId)) {
486 468
 				let param = $(formId).serializeObject();
487 469
 				console.log(JSON.stringify(param));
488 470
 				var searhFn = function() {
@@ -491,16 +473,17 @@ let createObj = {
491 473
 				};
492 474
 				fn_ajax_call(API_DETAIL_SAVE, JSON.stringify(param), searhFn, 'POST');
493 475
 			}
494
-		},
495
-		resetPass: function() {
496
-			var resetPwFn = {
497
-				callBack: function(args) {
498
-					const key = {'storeId':  $('#ITP_FORM_STINFO02010_DETAIL_STORE_ID').val()};
499
-					const param = $.param(key);
500
-					fn_ajax_call(API_INTI_PW, param, undefined, 'GET');
501
-				}
502
-			};
503
-			itp_fn_modal_confirm(ITP_MSG_LOCALE.message.ajax.askResetUserPw, resetPwFn, null);
504 476
 		}
477
+	},
478
+	isValid: function(formId) {
479
+		var isValid = false;
480
+		$(formId).find('input, select, checkbox, textarea').each(function(k) {
481
+			if($(this).data('check-required')) {
482
+				var arry = $(this).data('check-required').split(',');
483
+				isValid = itp_fn_form_validate(formId, '#' + $(this).attr('id'), arry, undefined);
484
+				if(!isValid) return false;
485
+			}
486
+		});
487
+		return isValid;
505 488
 	}
506 489
 };

+ 72 - 75
src/main/webapp/js/app/stinfo/ITP_STINFO03010.js

@@ -1,6 +1,6 @@
1 1
 require(['config'], function() {
2 2
 	require([
3
-		'kakao.postcode',
3
+		'kakao.map.util',
4 4
 		'jquery.bootstrap.fileUpload' //파일 업로드가 있는 페이지에서 로딩
5 5
 	], function($) {
6 6
 		pageObj.init();
@@ -196,16 +196,15 @@ let pageObj = {
196 196
 				var id = $(this).attr('id');
197 197
 				$(this).on('click', function() {
198 198
 					switch (id) {
199
-						case 'ITP_BTN_STINFO03010_SRH'				: listObj.button.search();		break;	// 조회 버튼 클릭
200
-						case 'ITP_BTN_STINFO03010_NEWREG'			: listObj.button.create(); 		break;	// 신규등록 버튼
201
-						case 'ITP_BTN_STINFO03010_MODIFY'			: modifyObj.button.modify();	break;	// 수정 버튼
202
-						case 'ITP_BTN_STINFO03010_CANCELLIST'		: createObj.button.cancel(); 	break;	// 취소/목록 버튼
203
-						case 'ITP_BTN_STINFO03010_DELETE'			: 								break;	// 삭제 버튼
204
-						case 'ITP_BTN_STINFO03010_SAVE'				: createObj.button.save(); 		break;	// 저장 버튼
205
-						case 'ITP_FORM_STINFO03010_DETAIL_DUP'		: createObj.button.duplicate();	break;	// 중복체크
206
-						case 'ITP_BTN_STINFO03010_RESET_PW'			: createObj.button.resetPass();	break;	// 상세:비밀번호 초기화
207
-						case 'ITP_BTN_STINFO03010_DETAIL_ADDROW'	: createObj.button.addRow();	break;	// 행추가
208
-						case 'ITP_BTN_STINFO03010_DETAIL_DELROW'	: createObj.button.delRow();	break;	// 행삭제
199
+						case 'ITP_BTN_STINFO03010_SRH'					: listObj.button.search();		break;	// 조회 버튼 클릭
200
+						case 'ITP_BTN_STINFO03010_NEWREG'				: listObj.button.create(); 		break;	// 신규등록 버튼
201
+						case 'ITP_BTN_STINFO03010_MODIFY'				: modifyObj.button.modify();	break;	// 수정 버튼
202
+						case 'ITP_BTN_STINFO03010_CANCELLIST'			: createObj.button.cancel(); 	break;	// 취소/목록 버튼
203
+						case 'ITP_BTN_STINFO03010_DELETE'				: 								break;	// 삭제 버튼
204
+						case 'ITP_BTN_STINFO03010_SAVE'					: createObj.button.save(); 		break;	// 저장 버튼
205
+						case 'ITP_BTN_STINFO03010_DETAIL_ADDROW'		: createObj.button.addRow();	break;	// 행추가
206
+						case 'ITP_BTN_STINFO03010_DETAIL_DELROW'		: createObj.button.delRow();	break;	// 행삭제
207
+						case 'ITP_FORM_STINFO03010_DETAIL_ADRES_SCH'	: createObj.button.address();	break;	// 신규등록 주소 찾기
209 208
 					}
210 209
 				});
211 210
 			});
@@ -220,25 +219,25 @@ let pageObj = {
220 219
 		}
221 220
 	},
222 221
 	fileUpload: function() {
223
-		//파일업로드(수정화면)
222
+		//파일업로드(등록/수정화면)
224 223
 		var id = 'STINFO03010';
225
-		// 통장사본
226
-		$('#ITP_' + id + '_DETAIL_BTN_ACCT_FILE').empty();
224
+		$('#ITP_' + id + '_DETAIL_ACCT_FILE_UPLOAD').empty();
227 225
 		const acctFileArgs = {
228 226
 			'fileNo': $('#ITP_FORM_' + id + '_DETAIL_ACCT_FILE_NO').val(),
229 227
 			'viewCd': $('#ITP_FORM_' + id + '_DETAIL_VIEW_CD').val(),
230
-			'showYn': $('#ITP' + id + '_DETAIL_BTN_ACCT_FILE').attr('data-show-yn'),
228
+			'showYn': $('#ITP_' + id + '_DETAIL_ACCT_FILE_UPLOAD').attr('data-show-yn'),
231 229
 			'fileId': '#ITP_FORM_' + id + '_DETAIL_ACCT_FILE_NO' //파일번호를 서버에서 받아서 넣을 파일번호 인풋박스 아이디
232 230
 		};
233
-		itp_fn_set_file_upload('ITP_' + id + '_DETAIL_BTN_ACCT_FILE', 'notice', true, false, id, acctFileArgs);
234
-		// 사업자등록파일
235
-		// $('#ITP_' + id + '_DETAIL_BTN_CORP_FILE').empty();
236
-		// const corpFileArgs = {
237
-		// 	'fileNo': $('#ITP_FORM_' + id + '_DETAIL_CORP_FILE_NO').val(),
238
-		// 	'showYn': $('#ITP' + id + '_DETAIL_BTN_CORP_FILE').attr('data-show-yn'),
239
-		// 	'fileId': '#ITP_FORM_' + id + '_DETAIL_CORP_FILE_NO' //파일번호를 서버에서 받아서 넣을 파일번호 인풋박스 아이디
240
-		// };
241
-		// itp_fn_set_file_upload('ITP_' + id + '_DETAIL_BTN_CORP_FILE', 'notice', true, false, id, corpFileArgs);
231
+		itp_fn_set_file_upload('ITP_' + id + '_DETAIL_ACCT_FILE_UPLOAD', 'notice', true, false, id, acctFileArgs);
232
+
233
+		$('#ITP_' + id + '_DETAIL_CORP_FILE_UPLOAD').empty();
234
+		const corpFileArgs = {
235
+			'fileNo': $('#ITP_FORM_' + id + '_DETAIL_CORP_FILE_NO').val(),
236
+			'viewCd': $('#ITP_FORM_' + id + '_DETAIL_VIEW_CD').val(),
237
+			'showYn': $('#ITP_' + id + '_DETAIL_CORP_FILE_UPLOAD').attr('data-show-yn'),
238
+			'fileId': '#ITP_FORM_' + id + '_DETAIL_CORP_FILE_NO' //파일번호를 서버에서 받아서 넣을 파일번호 인풋박스 아이디
239
+		};
240
+		itp_fn_set_file_upload('ITP_' + id + '_DETAIL_CORP_FILE_UPLOAD', 'notice', true, false, id, corpFileArgs);
242 241
 	},
243 242
 	switchScreen: function(mode) {
244 243
 		$('.itp_det_head').find('button[id^="ITP_BTN_STINFO03010_"]').each(function(i) {
@@ -278,19 +277,24 @@ let pageObj = {
278 277
 	grid: {
279 278
 		init: function(mode, gridData) {
280 279
 			this.gridId = (mode === 'VIEW') ? STINFO03010_VIEW_GRID_ID : STINFO03010_DETAIL_GRID_ID;
280
+			this.gridList = (mode === 'VIEW') ? STINFO03010_VIEW_GRID_LIST : STINFO03010_DETAIL_GRID_LIST;
281
+			this.gridEmpty = (mode === 'VIEW') ? STINFO03010_VIEW_GRID_EMPTY : STINFO03010_DETAIL_GRID_EMPTY;
281 282
 			this.unload();
282 283
 			this.load(mode, gridData);
283 284
 		},
284 285
 		gridId: '',
286
+		gridList: '',
287
+		gridEmpty: '',
285 288
 		load: function(mode, gridData) {
289
+			var _this = this;
286 290
 			var option = {
287
-				gridId: this.gridId,
291
+				gridId: _this.gridId,
288 292
 				colModel: gridColModel.detail,
289 293
 				data: gridData,
290 294
 				multiselect: (mode !== 'VIEW'),
291 295
 				loadComplete: function(data) {
292
-					let gridList = (mode === 'VIEW') ? STINFO03010_VIEW_GRID_LIST : STINFO03010_DETAIL_GRID_LIST;
293
-					$(gridList).find('.ui-jqgrid .ui-jqgrid-bdiv').css('overflow-x', 'hidden');
296
+					$(_this.gridList).find('.ui-jqgrid .ui-jqgrid-bdiv').css('overflow-x', 'hidden');
297
+					(Array.isArray(data.rows) && data.rows.length === 0) ? $(_this.gridEmpty).show() : $(_this.gridEmpty).hide();
294 298
 				}
295 299
 			};
296 300
 			itp_fn_grid_make_local(option);
@@ -511,6 +515,9 @@ let createObj = {
511 515
 		cancel: function() {
512 516
 			listObj.grid.search();
513 517
 		},
518
+		address: function() {
519
+			kakaoMap.simpleAddress('ITP_FORM_STINFO03010_DETAIL');
520
+		},
514 521
 		addRow: function() {
515 522
 			itp_fn_grid_add_row(STINFO03010_DETAIL_GRID_ID, undefined, ['spplyId'], 'STINFO03010_DETAIL');
516 523
 		},
@@ -520,56 +527,46 @@ let createObj = {
520 527
 		save: function() {
521 528
 			const formId = '#ITP_FORM_STINFO03010_DETAIL';
522 529
 			itp_fn_form_clear_validate(null, formId);
523
-			var vali_userId = itp_fn_form_validate(formId, formId + '_USER_ID', ['empty'], undefined);
524
-			var vali_userStatCd = itp_fn_form_validate(formId, formId + '_USER_STAT_CD', ['empty'], undefined);
525
-			var vali_userNm = itp_fn_form_validate(formId, formId + '_USER_NM', ['empty'], undefined);
526
-			var vali_telNo = itp_fn_form_validate(formId, formId + '_TEL_NO', ['empty'], undefined);
527
-			var vali_email = itp_fn_form_validate(formId, formId + '_EMAIL', ['empty'], undefined);
528
-			var vali_userPw = true;
529
-			var vali_userPwConfirm = true;
530
-			if (vali_userId && vali_userStatCd && vali_userNm && vali_userPw && vali_userPwConfirm && vali_telNo && vali_email) {
531
-				if (ITP_FORM_STINFO03010_DETAIL_IS_DUPLICATE) {
532
-					itp_fn_modal_duplicate(ITP_MSG_LOCALE.label.userId, formId + '_USER_ID');
533
-				} else {
534
-					let gridInsertData = [];
535
-					let gridUpdateData = [];
536
-					let gridDeleteData = [];
537
-					const rowData = $(STINFO03010_DETAIL_GRID_ID).getRowData();
538
-					const keyValue = $(formId + '_USER_ID').val();
539
-					$.each(rowData, function(key, value) {
540
-						if (value.viewCd != 'R') {
541
-							value.userId = keyValue;
542
-							if (value.viewCd == 'C') {
543
-								gridInsertData.push(value);
544
-							} else if (value.viewCd == 'U') {
545
-								gridUpdateData.push(value);
546
-							} else if (value.viewCd == 'D') {
547
-								gridDeleteData.push(value);
548
-							}
530
+			if (createObj.isValid(formId)) {
531
+				let gridInsertData = [];
532
+				let gridUpdateData = [];
533
+				let gridDeleteData = [];
534
+				const rowData = $(STINFO03010_DETAIL_GRID_ID).getRowData();
535
+				const keyValue = $(formId + '_BRAND_ID').val();
536
+				$.each(rowData, function(key, value) {
537
+					if (value.viewCd != 'R') {
538
+						value.userId = keyValue;
539
+						if (value.viewCd == 'C') {
540
+							gridInsertData.push(value);
541
+						} else if (value.viewCd == 'U') {
542
+							gridUpdateData.push(value);
543
+						} else if (value.viewCd == 'D') {
544
+							gridDeleteData.push(value);
549 545
 						}
550
-					});
551
-					let param = $(formId).serializeObject();
552
-					param.gridInsertData = gridInsertData;
553
-					param.gridUpdateData = gridUpdateData;
554
-					param.gridDeleteData = gridDeleteData;
555
-					//console.log(JSON.stringify(param));
556
-					var searhFn = function() {
557
-						ITP_FORM_STINFO03010_DETAIL_IS_WRITING = false;
558
-						listObj.grid.search();
559
-					};
560
-					fn_ajax_call(API_DETAIL_SAVE, JSON.stringify(param), searhFn, 'POST');
561
-				}
546
+					}
547
+				});
548
+				let param = $(formId).serializeObject();
549
+				param.gridInsertData = gridInsertData;
550
+				param.gridUpdateData = gridUpdateData;
551
+				param.gridDeleteData = gridDeleteData;
552
+				console.log(JSON.stringify(param));
553
+				var searhFn = function() {
554
+					ITP_FORM_STINFO03010_DETAIL_IS_WRITING = false;
555
+					listObj.grid.search();
556
+				};
557
+				fn_ajax_call(API_DETAIL_SAVE, JSON.stringify(param), searhFn, 'POST');
562 558
 			}
563
-		},
564
-		resetPass: function() {
565
-			var resetPwFn = {
566
-				callBack: function(args) {
567
-					const key = {'storeId':  $('#ITP_FORM_STINFO03010_DETAIL_STORE_ID').val()};
568
-					const param = $.param(key);
569
-					fn_ajax_call(API_INTI_PW, param, undefined, 'GET');
570
-				}
571
-			};
572
-			itp_fn_modal_confirm(ITP_MSG_LOCALE.message.ajax.askResetUserPw, resetPwFn, null);
573 559
 		}
560
+	},
561
+	isValid: function(formId) {
562
+		var isValid = false;
563
+		$(formId).find('input, select, checkbox, textarea').each(function(k) {
564
+			if($(this).data('check-required')) {
565
+				var arry = $(this).data('check-required').split(',');
566
+				isValid = itp_fn_form_validate(formId, '#' + $(this).attr('id'), arry, undefined);
567
+				if(!isValid) return false;
568
+			}
569
+		});
570
+		return isValid;
574 571
 	}
575 572
 };

+ 66 - 60
src/main/webapp/js/app/stinfo/ITP_STINFO04010.js

@@ -154,6 +154,7 @@ let pageObj = {
154 154
     init: function () {
155 155
         this.ui.init();
156 156
         this.event.init();
157
+        this.fileUpload();
157 158
     },
158 159
     ui: {
159 160
         init: function () {
@@ -172,11 +173,6 @@ let pageObj = {
172 173
                 }
173 174
             });
174 175
 
175
-            $('.detail_item_unit').each(function() {
176
-                var id = $(this).attr('id');
177
-                fn_make_select(CODE_LIST, 'DSTRBT_COST_UNIT', $(this).attr('id'));
178
-            });
179
-
180 176
             itemClassLevel.list(1, true);
181 177
         },
182 178
         grid: function() {
@@ -219,6 +215,18 @@ let pageObj = {
219 215
 
220 216
         }
221 217
     },
218
+    fileUpload: function() {
219
+        //파일업로드(등록/수정화면)
220
+        var id = 'STINFO04010';
221
+        $('#ITP_' + id + '_DETAIL_UPLOAD').empty();
222
+        const fileArgs = {
223
+            'fileNo': $('#ITP_FORM_' + id + '_DETAIL_FILE_NO').val(),
224
+            'viewCd': $('#ITP_FORM_' + id + '_DETAIL_VIEW_CD').val(),
225
+            'showYn': $('#ITP_' + id + '_DETAIL_UPLOAD').attr('data-show-yn'),
226
+            'fileId': '#ITP_FORM_' + id + '_DETAIL_FILE_NO' //파일번호를 서버에서 받아서 넣을 파일번호 인풋박스 아이디
227
+        };
228
+        itp_fn_set_file_upload('ITP_' + id + '_DETAIL_UPLOAD', 'notice', true, false, id, fileArgs);
229
+    },
222 230
     switchScreen: function(mode) {
223 231
         $('.itp_det_head').find('button[id^="ITP_BTN_STINFO04010_"]').each(function(i) {
224 232
             $(this).hide();
@@ -260,6 +268,7 @@ let pageObj = {
260 268
             $('#ITP_FORM_STINFO04010_DETAIL_DELETE_AFFL_SHOP').hide();
261 269
         } else if(mode == 'VIEW') { // 보기
262 270
             $('#ITP_AJAX_STINFO04010_VIEW_CONTAINER').show();
271
+            $('#ITP_FORM_STINFO04010_VIEW .fnBrandNm').text(fn_make_user_info.get('brandNm'));
263 272
             fn_show_btn_auth_array(['#ITP_BTN_STINFO04010_MODIFY', '#ITP_BTN_STINFO04010_CANCELLIST']);
264 273
         }
265 274
     }
@@ -396,7 +405,6 @@ let viewObj = {
396 405
         console.log(result);
397 406
         pageObj.switchScreen('VIEW');
398 407
         $('#ITP_FORM_STINFO04010_VIEW #ITP_FORM_STINFO04010_VIEW_ITEM_ID').val(result.itemId);
399
-        $('#ITP_FORM_STINFO04010_VIEW .fnBrandNm').text(result.brandNm);
400 408
         $('#ITP_FORM_STINFO04010_VIEW .fnStCd').text(result.itemStNm);
401 409
         $('#ITP_FORM_STINFO04010_VIEW .fnItemClass1').text(result.itemClass1);
402 410
         $('#ITP_FORM_STINFO04010_VIEW .fnItemClass2').text(result.itemClass2);
@@ -494,57 +502,48 @@ let createObj = {
494 502
     init: function () {
495 503
         pageObj.switchScreen('ADD');
496 504
         itp_fn_form_clear_validate(null, '#ITP_FORM_STINFO04010_DETAIL');
497
-        $('#ITP_FORM_STINFO04010_DETAIL_BRAND_ID').val(fn_make_user_info.get('brandId'));
505
+        this.button.init();
498 506
         itemClassLevel.list(1, false);
499 507
     },
500 508
     button: {
509
+        init: function() {
510
+            $('#ITP_FORM_STINFO04010_DETAIL_ITEM_CLASS1').off('change').on('change', function() {
511
+                ($(this).val() === '') ? itemClassLevel.clear(2, false): itemClassLevel.list(2, false);
512
+            });
513
+            $('#ITP_FORM_STINFO04010_DETAIL_ITEM_CLASS2').off('change').on('change', function() {
514
+                ($(this).val() === '') ? itemClassLevel.clear(3, false): itemClassLevel.list(3, false);
515
+            });
516
+            $('#ITP_FORM_STINFO04010_DETAIL_ITEM_CLASS3').off('change').on('change', function() {
517
+                ($(this).val() === '') ? itemClassLevel.clear(4, false): itemClassLevel.list(4, false);
518
+            });
519
+        },
501 520
         cancel: function() {
502 521
             listObj.grid.search();
503 522
         },
504 523
         save: function() {
505 524
             const formId = '#ITP_FORM_STINFO04010_DETAIL';
506 525
             itp_fn_form_clear_validate(null, formId);
507
-            var vali_userId = itp_fn_form_validate(formId, formId + '_USER_ID', ['empty'], undefined);
508
-            var vali_userStatCd = itp_fn_form_validate(formId, formId + '_USER_STAT_CD', ['empty'], undefined);
509
-            var vali_userNm = itp_fn_form_validate(formId, formId + '_USER_NM', ['empty'], undefined);
510
-            var vali_telNo = itp_fn_form_validate(formId, formId + '_TEL_NO', ['empty'], undefined);
511
-            var vali_email = itp_fn_form_validate(formId, formId + '_EMAIL', ['empty'], undefined);
512
-            var vali_userPw = true;
513
-            var vali_userPwConfirm = true;
514
-            if (vali_userId && vali_userStatCd && vali_userNm && vali_userPw && vali_userPwConfirm && vali_telNo && vali_email) {
515
-                if (ITP_FORM_STINFO04010_DETAIL_IS_DUPLICATE) {
516
-                    itp_fn_modal_duplicate(ITP_MSG_LOCALE.label.userId, formId + '_USER_ID');
517
-                } else {
518
-                    let gridInsertData = [];
519
-                    let gridUpdateData = [];
520
-                    let gridDeleteData = [];
521
-                    const rowData = $(STINFO04010_DETAIL_GRID_ID).getRowData();
522
-                    const keyValue = $(formId + '_USER_ID').val();
523
-                    $.each(rowData, function(key, value) {
524
-                        if (value.viewCd != 'R') {
525
-                            value.userId = keyValue;
526
-                            if (value.viewCd == 'C') {
527
-                                gridInsertData.push(value);
528
-                            } else if (value.viewCd == 'U') {
529
-                                gridUpdateData.push(value);
530
-                            } else if (value.viewCd == 'D') {
531
-                                gridDeleteData.push(value);
532
-                            }
533
-                        }
534
-                    });
535
-                    let param = $(formId).serializeObject();
536
-                    param.gridInsertData = gridInsertData;
537
-                    param.gridUpdateData = gridUpdateData;
538
-                    param.gridDeleteData = gridDeleteData;
539
-                    //console.log(JSON.stringify(param));
540
-                    var searhFn = function() {
541
-                        ITP_FORM_STINFO04010_DETAIL_IS_WRITING = false;
542
-                        listObj.grid.search();
543
-                    };
544
-                    fn_ajax_call(API_DETAIL_SAVE, JSON.stringify(param), searhFn, 'POST');
545
-                }
526
+            if (createObj.isValid(formId)) {
527
+                let param = $(formId).serializeObject();
528
+                console.log(JSON.stringify(param));
529
+                var searhFn = function() {
530
+                    ITP_FORM_STINFO04010_DETAIL_IS_WRITING = false;
531
+                    listObj.grid.search();
532
+                };
533
+                fn_ajax_call(API_DETAIL_SAVE, JSON.stringify(param), searhFn, 'POST');
546 534
             }
547 535
         }
536
+    },
537
+    isValid: function(formId) {
538
+        var isValid = false;
539
+        $(formId).find('input, select, checkbox, textarea').each(function(k) {
540
+            if($(this).data('check-required')) {
541
+                var arry = $(this).data('check-required').split(',');
542
+                isValid = itp_fn_form_validate(formId, '#' + $(this).attr('id'), arry, undefined);
543
+                if(!isValid) return false;
544
+            }
545
+        });
546
+        return isValid;
548 547
     }
549 548
 };
550 549
 
@@ -563,7 +562,7 @@ var itemClassLevel = {
563 562
     list: function(level, isList) {
564 563
         this.level = level;
565 564
         this.isList = isList;
566
-        this.clear(level, isList);
565
+        this.reset();
567 566
         this.call( $.param(this.keys()));
568 567
     },
569 568
     detail: {
@@ -574,21 +573,28 @@ var itemClassLevel = {
574 573
         }
575 574
     },
576 575
     call: function(param) {
577
-        fn_ajax_call(API_ITEM_CLASS_LEVEL, param, this.callback, 'GET');
578
-    },
579
-    callback: function(result) {
580
-        // console.log(result);
581
-        var id = (itemClassLevel.isList ? 'ITP_FORM_STINFO04010_SEARCH_ITEM_CLASS' : 'ITP_FORM_STINFO04010_DETAIL_ITEM_CLASS')  + itemClassLevel.level;
582
-        fn_make_select_item_class(result.searchList, id, true, '선택');
583
-        if(!itemClassLevel.isList) {
584
-            $('#' + id).val(itemClassLevel.detail.data[ itemClassLevel.level - 1]);
585
-            if(itemClassLevel.level < itemClassLevel.detail.data.length) {
586
-                if(itemClassLevel.detail.data[itemClassLevel.level] !== '') {
587
-                    itemClassLevel.level++;
588
-                    itemClassLevel.call( $.param(itemClassLevel.keys()));
576
+        var callbackFn = function(result) {
577
+            // console.log(result);
578
+            var id = (itemClassLevel.isList ? 'ITP_FORM_STINFO04010_SEARCH_ITEM_CLASS' : 'ITP_FORM_STINFO04010_DETAIL_ITEM_CLASS')  + itemClassLevel.level;
579
+            fn_make_select_item_class(result.searchList, id, true, '선택');
580
+            if(!itemClassLevel.isList) {
581
+                $('#' + id).val(itemClassLevel.detail.data[ itemClassLevel.level - 1]);
582
+                if(itemClassLevel.level < itemClassLevel.detail.data.length) {
583
+                    if(itemClassLevel.detail.data[itemClassLevel.level] !== '') {
584
+                        itemClassLevel.level++;
585
+                        itemClassLevel.call( $.param(itemClassLevel.keys()));
586
+                    }
589 587
                 }
590 588
             }
591
-        }
589
+        };
590
+        fn_ajax_call(API_ITEM_CLASS_LEVEL, param, callbackFn, 'GET');
591
+    },
592
+    reset: function() {
593
+        console.log('reset');
594
+        var id = '#ITP_FORM_STINFO04010_DETAIL_ITEM_CLASS1';
595
+        // $(id).val('').prop('selected', true);
596
+        // $(id).trigger('change');
597
+        console.log('===> ', $(id + ' option:selected').val());
592 598
     },
593 599
     clear: function(level, isList) {
594 600
         for(var i=level; i<5; i++) {