|
@@ -0,0 +1,188 @@
|
|
1
|
+require(['config'], function() {
|
|
2
|
+ require([
|
|
3
|
+ 'jquery'
|
|
4
|
+ ], function($) {
|
|
5
|
+
|
|
6
|
+ });
|
|
7
|
+});
|
|
8
|
+
|
|
9
|
+let PO_STOCK_ITEM_ADD_POP_GRID_LIST = '/api/nk/product/grid-list';
|
|
10
|
+let NK_LIST_CLASS = '/api/nk/class/list-class'; // 카테고리리스트
|
|
11
|
+let NK_SAVE_EVENT_PRODUCT = '/api/nk/event/save-event-product'; // 이벤트 상품정보 저장
|
|
12
|
+
|
|
13
|
+function itp_fn_BIZPOP_PO_STOCK_ITEM_ADD(parentPopFn, schParam, returnType) {
|
|
14
|
+
|
|
15
|
+ $('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_SAVE_BRAND_CD').val(schParam.brandCd);
|
|
16
|
+ $('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_SAVE_STORE_NO').val(schParam.storeNo);
|
|
17
|
+ $('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_SAVE_EVENT_CD').val(schParam.eventNo);
|
|
18
|
+
|
|
19
|
+ $('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_CMPY_CD').val(schParam.cmpyCd);
|
|
20
|
+ $('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_BRAND_CD').val(schParam.brandCd);
|
|
21
|
+ $('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_STORE_NO').val(schParam.storeNo);
|
|
22
|
+
|
|
23
|
+ // 공통코드 표시
|
|
24
|
+ if(schParam.manageType == 'B') {
|
|
25
|
+ $('<option/>', {'value': 'B', 'text': '본사상품'}).appendTo($('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_PRDT_TYPE'));
|
|
26
|
+ } else if(schParam.manageType == 'S') {
|
|
27
|
+ $('<option/>', {'value': 'S', 'text': '매장상품'}).appendTo($('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_PRDT_TYPE'));
|
|
28
|
+ $('<option/>', {'value': 'B', 'text': '본사상품'}).appendTo($('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_PRDT_TYPE'));
|
|
29
|
+ }
|
|
30
|
+
|
|
31
|
+ // 카테고리리스트
|
|
32
|
+ itp_fn_BIZPOP_PO_STOCK_ITEM_ADD_class_list();
|
|
33
|
+
|
|
34
|
+ let itp_BIZPOP_PO_STOCK_ITEM_ADD_param = {};
|
|
35
|
+ let itp_BIZPOP_PO_STOCK_ITEM_ADD_search = false;
|
|
36
|
+
|
|
37
|
+ const THIS_FORM_ID = '#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD';
|
|
38
|
+ const THIS_GIRD_ID = '#ITP_BIZPOP_PO_STOCK_ITEM_ADD_jqGrid';
|
|
39
|
+ const THIS_GIRD_PAGER = '#ITP_BIZPOP_PO_STOCK_ITEM_ADD_jqGridPager';
|
|
40
|
+
|
|
41
|
+ $('#ITP_BIZPOP_PO_STOCK_ITEM_ADD').one('shown.bs.modal', function(e) {
|
|
42
|
+ itp_fn_jqgrid_resize(THIS_GIRD_ID, '#ITP_BIZPOP_PO_STOCK_ITEM_ADD_jqGrid_list', '');
|
|
43
|
+ itp_fn_fire_window_resize();
|
|
44
|
+ }).one('hidden.bs.modal', function(e) {
|
|
45
|
+ $('#ITP_BIZPOP_PO_STOCK_ITEM_ADD').remove();
|
|
46
|
+ }).modal('show');
|
|
47
|
+
|
|
48
|
+ $('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_PRDT_TYPE').on('change', function() {
|
|
49
|
+ // 카테고리리스트
|
|
50
|
+ itp_fn_BIZPOP_PO_STOCK_ITEM_ADD_class_list(function() {
|
|
51
|
+ itp_fn_BIZPOP_PO_STOCK_ITEM_ADD_search(THIS_FORM_ID, THIS_GIRD_ID);
|
|
52
|
+ });
|
|
53
|
+ });
|
|
54
|
+
|
|
55
|
+ $('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_CLASS_CD').on('change', function() {
|
|
56
|
+ itp_fn_BIZPOP_PO_STOCK_ITEM_ADD_search(THIS_FORM_ID, THIS_GIRD_ID);
|
|
57
|
+ });
|
|
58
|
+
|
|
59
|
+ $('#ITP_BIZPOP_PO_STOCK_ITEM_ADD_BTN_SEARCH').on('click', function() {
|
|
60
|
+ itp_fn_BIZPOP_PO_STOCK_ITEM_ADD_search(THIS_FORM_ID, THIS_GIRD_ID);
|
|
61
|
+ });
|
|
62
|
+
|
|
63
|
+ $('#ITP_BIZPOP_PO_STOCK_ITEM_ADD_BTN_SAVE').on('click', function() {
|
|
64
|
+ const rowKey = $(THIS_GIRD_ID).getGridParam('selrow');
|
|
65
|
+ if (!rowKey) {
|
|
66
|
+ return;
|
|
67
|
+ }
|
|
68
|
+
|
|
69
|
+ var gridInsertData = [];
|
|
70
|
+ var selectedIds = $(THIS_GIRD_ID).getGridParam('selarrrow');
|
|
71
|
+
|
|
72
|
+ for (var i=selectedIds.length-1; i>=0; i--) {
|
|
73
|
+ gridInsertData.push($(THIS_GIRD_ID).jqGrid('getRowData', selectedIds[i]));
|
|
74
|
+ }
|
|
75
|
+
|
|
76
|
+ let param = $('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_SAVE').serializeObject();
|
|
77
|
+ param.gridInsertData = gridInsertData;
|
|
78
|
+
|
|
79
|
+ fn_ajax_call(NK_SAVE_EVENT_PRODUCT, JSON.stringify(param), function() {
|
|
80
|
+ parentPopFn();
|
|
81
|
+ $('#ITP_BIZPOP_PO_STOCK_ITEM_ADD').modal('hide'); // 팝업닫기
|
|
82
|
+ }, 'POST');
|
|
83
|
+ });
|
|
84
|
+
|
|
85
|
+ $('#ITP_BIZPOP_PO_STOCK_ITEM_ADD_jqGridEmpty').on('click', function() {
|
|
86
|
+ itp_fn_BIZPOP_PO_STOCK_ITEM_ADD_empty.back();
|
|
87
|
+ itp_BIZPOP_PO_STOCK_ITEM_ADD_param.gridSize = 10;
|
|
88
|
+ $(THIS_GIRD_ID).setGridParam({'postData': JSON.stringify(itp_BIZPOP_PO_STOCK_ITEM_ADD_param)}).trigger('reloadGrid');
|
|
89
|
+ });
|
|
90
|
+
|
|
91
|
+ var itp_fn_BIZPOP_PO_STOCK_ITEM_ADD_empty = {
|
|
92
|
+ push: function() {
|
|
93
|
+ let param = $(THIS_FORM_ID).serializeObject();
|
|
94
|
+ itp_BIZPOP_PO_STOCK_ITEM_ADD_param = param;
|
|
95
|
+ },
|
|
96
|
+ back: function() {
|
|
97
|
+ $(THIS_FORM_ID + '_PRDT_TYPE').val(itp_BIZPOP_PO_STOCK_ITEM_ADD_param.sprdtType);
|
|
98
|
+ $(THIS_FORM_ID + '_CLASS_CD').val(itp_BIZPOP_PO_STOCK_ITEM_ADD_param.sclassCd);
|
|
99
|
+ $(THIS_FORM_ID + '_PRDT_NM').val(itp_BIZPOP_PO_STOCK_ITEM_ADD_param.sprdtNm);
|
|
100
|
+ $(THIS_FORM_ID + '_BARCODE_NO').val(itp_BIZPOP_PO_STOCK_ITEM_ADD_param.sbarcodeNo);
|
|
101
|
+ }
|
|
102
|
+ };
|
|
103
|
+
|
|
104
|
+ itp_fn_BIZPOP_PO_STOCK_ITEM_ADD_empty.push();
|
|
105
|
+ let param = $('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD').serializeObject();
|
|
106
|
+ param.gridSize = 10;
|
|
107
|
+
|
|
108
|
+ $(THIS_GIRD_ID).jqGrid({
|
|
109
|
+ colModel: [
|
|
110
|
+ {
|
|
111
|
+ index: 'CLASS_NM', name: 'classNm',
|
|
112
|
+ label: '카테고리',
|
|
113
|
+ width: '10', fixed: false, align: 'center',
|
|
114
|
+ sortable: false, hidden: false
|
|
115
|
+ },
|
|
116
|
+ {
|
|
117
|
+ index: 'PRDT_NO', name: 'prdtNo',
|
|
118
|
+ label: '상품번호', //
|
|
119
|
+ width: '10', fixed: false, align: 'center',
|
|
120
|
+ sortable: false, hidden: false
|
|
121
|
+ },
|
|
122
|
+ {
|
|
123
|
+ index: 'PRDT_NM', name: 'prdtNm',
|
|
124
|
+ label: '상품명', //
|
|
125
|
+ width: '15', fixed: false, align: 'center',
|
|
126
|
+ sortable: false, hidden: false
|
|
127
|
+ },
|
|
128
|
+ {
|
|
129
|
+ index: 'SALE_PRICE', name: 'salePrice',
|
|
130
|
+ label: '상품가격', //
|
|
131
|
+ width: '10', fixed: false, align: 'center',
|
|
132
|
+ sortable: false, hidden: false,
|
|
133
|
+ formatter:'integer',formatoptions: { defaultValue: '', thousandsSeparator: ',' }
|
|
134
|
+ },
|
|
135
|
+ {
|
|
136
|
+ index: 'BARCODE_NO', name: 'barcodeNo',
|
|
137
|
+ label: '바코드', //
|
|
138
|
+ width: '10', fixed: false, align: 'center',
|
|
139
|
+ sortable: false, hidden: false
|
|
140
|
+ }
|
|
141
|
+ ],
|
|
142
|
+ loadBeforeSend: function(jqXHR) {
|
|
143
|
+ jqXHR.setRequestHeader('X-AUTH-TOKEN', CONN_KEY);
|
|
144
|
+ },
|
|
145
|
+ postData: JSON.stringify(param),
|
|
146
|
+ url: DOMAIN + PO_STOCK_ITEM_ADD_POP_GRID_LIST,
|
|
147
|
+ pager: THIS_GIRD_PAGER,
|
|
148
|
+ multiselect: true,
|
|
149
|
+ loadComplete: function(data) {
|
|
150
|
+ itp_fn_grid_load_complete(data, THIS_GIRD_ID, true, undefined, 'BIZPOP_PO_STOCK_ITEM_ADD', itp_BIZPOP_PO_STOCK_ITEM_ADD_search, itp_fn_BIZPOP_PO_STOCK_ITEM_ADD_empty, true, data.gridRecords, false);
|
|
151
|
+ },
|
|
152
|
+ loadError: function(jqXHR, textStatus, errorThrown) {
|
|
153
|
+ itp_fn_grid_load_error(jqXHR, textStatus, errorThrown);
|
|
154
|
+ },
|
|
155
|
+ onPaging: function(action) {
|
|
156
|
+ param = $('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD').serializeObject();
|
|
157
|
+ param.gridSize = 10;
|
|
158
|
+ itp_fn_grid_paging(THIS_GIRD_ID, action, param);
|
|
159
|
+ }
|
|
160
|
+ }).navGrid(THIS_GIRD_PAGER, ITP_GRID_NAV_DEFAULTS.navGrid);
|
|
161
|
+};
|
|
162
|
+
|
|
163
|
+var itp_fn_BIZPOP_PO_STOCK_ITEM_ADD_search = function(FORM_ID, GRID_ID) {
|
|
164
|
+ itp_BIZPOP_PO_STOCK_ITEM_ADD_search = true;
|
|
165
|
+ let param = $(FORM_ID).serializeObject();
|
|
166
|
+ param.gridSize = 10;
|
|
167
|
+ param.gridPage = $.jgrid.defaults.page;
|
|
168
|
+ $(GRID_ID).setGridParam({'postData': JSON.stringify(param)}).trigger('reloadGrid');
|
|
169
|
+};
|
|
170
|
+
|
|
171
|
+var itp_fn_BIZPOP_PO_STOCK_ITEM_ADD_class_list = function(fnCall) {
|
|
172
|
+
|
|
173
|
+ const prdtType = $('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_PRDT_TYPE').val();
|
|
174
|
+ const brandCdVal = $('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_BRAND_CD').val();
|
|
175
|
+ let storeNoVal = $('#ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_STORE_NO').val();
|
|
176
|
+ // 본사상품
|
|
177
|
+ if(prdtType == 'B') storeNoVal = '0000';
|
|
178
|
+
|
|
179
|
+ const key = {brandCd: brandCdVal, storeNo: storeNoVal};
|
|
180
|
+ var param = $.param(key);
|
|
181
|
+ fn_ajax_call(NK_LIST_CLASS, param, function(result) {
|
|
182
|
+
|
|
183
|
+ fn_make_select_class(result, 'ITP_FORM_BIZPOP_PO_STOCK_ITEM_ADD_CLASS_CD', true, '카테고리');
|
|
184
|
+
|
|
185
|
+ if (fnCall !== undefined || typeof fnCall !== 'undefined') fnCall();
|
|
186
|
+
|
|
187
|
+ }, 'GET');
|
|
188
|
+};
|