ITP_POMNG01010.js 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608
  1. require(['config'], function() {
  2. require([
  3. ], function($) {
  4. pageObj.init();
  5. });
  6. });
  7. /********************************************************
  8. --------------------------------------------------------
  9. - Object 목록 -
  10. --------------------------------------------------------
  11. * const gridColModel = {} : 화면 Grid Object *
  12. * let pageObj = {} : 화면공통 Object *
  13. * let listObj = {} : 목록화면 Object *
  14. * let viewObj = {} : 상세화면 Object *
  15. * let modifyObj = {} : 수정화면 Object *
  16. * let createObj = {} : 신규화면 Object *
  17. *******************************************************/
  18. /*화면 변수*/
  19. const POMNG01010_DETAIL_GRID_ID = '#ITP_POMNG01010_DETAIL_jqGrid';
  20. const POMNG01010_DETAIL_GRID_LIST = '#ITP_POMNG01010_DETAIL_jqGrid_list';
  21. const POMNG01010_DETAIL_GRID_PAGER = '#ITP_POMNG01010_DETAIL_jqGridPager';
  22. const POMNG01010_DETAIL_GRID_EMPTY = '#ITP_POMNG01010_DETAIL_jqGridEmpty'; // ==>dwkim html확인필요
  23. let POMNG01010_DETAIL_GRID_LAST_ROW_ID;
  24. /*API URL*/
  25. let API_DETAIL_INIT_INFO = '/api/pomng/init-pchReq'
  26. let API_DETAIL_SAVE = '/api/pomng/save-pchReq';
  27. /*화면 Grid ColModel ==>선택박스 항목 추가 부분 */
  28. const gridColModel = {
  29. detail: [
  30. {
  31. index: 'VIEW_CD', name: 'viewCd',
  32. label: ITP_MSG_LOCALE.label.viewCd,
  33. width: '10', fixed: false, align: 'center',
  34. sortable: false, hidden: true
  35. },
  36. {
  37. index: 'ITEM_ID', name: 'itemId',
  38. label: ITP_MSG_LOCALE.label.itemId,
  39. width: '20', fixed: false, align: 'center',
  40. sortable: false, editable: false, edittype: 'text',
  41. editrules: { required: true }
  42. },
  43. {
  44. index: 'ITEM_NM', name: 'itemNm',
  45. label: ITP_MSG_LOCALE.label.itemNm,
  46. width: '30', fixed: false, align: 'left',
  47. sortable: true, editable: false, edittype: 'text',
  48. editrules: { required: true }
  49. },
  50. {
  51. index: 'UNIT', name: 'unit',
  52. label: ITP_MSG_LOCALE.label.unit,
  53. width: '10', fixed: false, align: 'center',
  54. sortable: false, editable: false, edittype: 'text'
  55. },
  56. {
  57. index: 'UNIT_AMT', name: 'unitAmt',
  58. label: ITP_MSG_LOCALE.label.unitAmt,
  59. width: '10', fixed: false, align: 'right',
  60. sortable: false, editable: false, edittype: 'text', hidden: false,
  61. formatter:'integer',formatoptions: { defaultValue: '', thousandsSeparator: ',' }
  62. },
  63. {
  64. index: 'PCH_REQ_QTY', name: 'pchReqQty',
  65. label: ITP_MSG_LOCALE.label.pchReqQty, //수량
  66. width: '10', fixed: false, align: 'right',
  67. sortable: false, editable: true, edittype: 'text',
  68. classes: 'input_color',
  69. editrules: { number:true },
  70. formatter:'integer',formatoptions: { defaultValue: '', thousandsSeparator: ',' }
  71. },
  72. {
  73. index: 'PCH_REQ_AMT', name: 'pchReqAmt',
  74. label: ITP_MSG_LOCALE.label.pchReqAmt,
  75. width: '10', fixed: false, align: 'right',
  76. sortable: false, editable: false, edittype: 'text', hidden: false,
  77. formatter:'integer',formatoptions: { defaultValue: '', thousandsSeparator: ',' }
  78. },
  79. {
  80. index: 'BRAND_UNIT_UNQ_NO', name: 'brandUnitUnqNo',
  81. label: ITP_MSG_LOCALE.label.brandUnitUnqNo,
  82. width: '10', fixed: false, align: 'center',
  83. sortable: false, editable: false, edittype: 'text', hidden: true
  84. },
  85. {
  86. index: 'STORE_UNIT_UNQ_NO', name: 'storeUnitUnqNo',
  87. label: ITP_MSG_LOCALE.label.storeUnitUnqNo,
  88. width: '10', fixed: false, align: 'center',
  89. sortable: false, editable: false, edittype: 'text', hidden: true
  90. },
  91. {
  92. index: 'UNIT_GUBUN', name: 'unitGubun',
  93. label: ITP_MSG_LOCALE.label.unitGubun,
  94. width: '10', fixed: false, align: 'center',
  95. sortable: false, editable: false, edittype: 'text', hidden: true
  96. }
  97. ]
  98. };
  99. /*화면공통 Object*/
  100. let pageObj = {
  101. init: function() {
  102. this.ui.init();
  103. this.event.init();
  104. this.action();
  105. },
  106. action: function () {
  107. var _this = this;
  108. // 납품장소 조회 버튼 클릭
  109. $('#ITP_FORM_POMNG01010_SEARCH_WHS_NM').on('click', function() {
  110. _this.popup();
  111. });
  112. // 납품장소 텍스트 삭제 버튼 클릭
  113. $('#ITP_FORM_POMNG01010_DELETE_WHS_NM').on('click', function() {
  114. $('#ITP_FORM_POMNG01010_DETAIL_WHS_NM').val('');
  115. $('#ITP_FORM_POMNG01010_DETAIL_WHS_ID').val('');
  116. $('#ITP_FORM_POMNG01010_DETAIL_LOCATION_NM').val('');
  117. $('#ITP_FORM_POMNG01010_DETAIL_LOCATION').val('');
  118. });
  119. },
  120. popup: function () {
  121. // 팝업
  122. var popFn = this.callback.create;
  123. var whsDvsn = "";
  124. if (fn_make_user_info.get('storeId') == '' ) {
  125. whsDvsn = "W01";
  126. } else {
  127. whsDvsn = "W02";
  128. }
  129. const key = {brandId:fn_make_user_info.get('brandId'),storeId:fn_make_user_info.get('storeId'),whsDvsn: whsDvsn};
  130. fn_call_popup('biz', 'BIZPOP_WHS_LOCATION', '#ITP_ASIDE', popFn, key, 'S');
  131. },
  132. callback: {
  133. create: function(rowDataPop) {
  134. console.log(rowDataPop);
  135. if(rowDataPop) {
  136. $('#ITP_FORM_POMNG01010_DETAIL_WHS_NM').val(rowDataPop.whsNm);
  137. $('#ITP_FORM_POMNG01010_DETAIL_WHS_ID').val(rowDataPop.whsId);
  138. $('#ITP_FORM_POMNG01010_DETAIL_LOCATION_NM').val(rowDataPop.locationNm);
  139. $('#ITP_FORM_POMNG01010_DETAIL_LOCATION').val(rowDataPop.location);
  140. }
  141. }
  142. },
  143. itp_POMNG01010_param: {}, // ==>dwkim
  144. itp_POMNG01010_search: false, // ==>dwkim
  145. ui: {
  146. init: function() {
  147. this.view();
  148. this.grid();
  149. this.ready();
  150. },
  151. view: function() {
  152. // 버튼 권한설정
  153. fn_proc_btn_auth('POMNG01010');
  154. // 공통코드 표시
  155. $('select').each(function() {
  156. if ($(this).data('select-code')) {
  157. fn_make_select(CODE_LIST, $(this).data('select-code'), $(this).attr('id'));
  158. }
  159. });
  160. // 조회일자 지정
  161. //var now = new Date(date.getDate() + 5);
  162. var now = new Date();
  163. $('#ITP_TAB_POMNG01010 .input-group.date').datepicker(ITP_DATE_LANGUAGE);
  164. $('#ITP_FORM_POMNG01010_DETAIL_DLV_REQ_DT').datepicker('setDate', new Date(now.setDate(now.getDate() + 5)));
  165. //납품장소 필드 readonly
  166. $('#ITP_FORM_POMNG01010_DETAIL_WHS_NM').attr('readonly', true);
  167. $('#ITP_FORM_POMNG01010_DETAIL_LOCATION_NM').attr('readonly', true);
  168. },
  169. grid: function() {
  170. itp_fn_jqgrid_resize(POMNG01010_DETAIL_GRID_ID, POMNG01010_DETAIL_GRID_LIST, 'lg');
  171. //itp_fn_fire_window_resize();
  172. },
  173. ready: function() {
  174. createObj.init();
  175. }
  176. },
  177. event: {
  178. init: function() {
  179. this.button();
  180. },
  181. button: function() {
  182. // 버튼 클릭 이벤트
  183. $('button').each(function() {
  184. var id = $(this).attr('id');
  185. $(this).on('click', function() {
  186. switch (id) {
  187. case 'ITP_BTN_POMNG01010_SRH': createObj.button.save("PR20"); break; // 구매요청
  188. case 'ITP_BTN_POMNG01010_NEWREG': createObj.button.save("PR00"); break; // 임시저장
  189. case 'ITP_BTN_POMNG01010_DETAIL_ADDROW': pageObj.grid.button.addRow(); break; // 품목추가
  190. case 'ITP_BTN_POMNG01010_DETAIL_DELROW': pageObj.grid.button.delRow(); break; // 품목삭제
  191. }
  192. });
  193. });
  194. $('body').on('click', function(e) {
  195. var gridId = POMNG01010_DETAIL_GRID_ID.replace('#', '');
  196. var rids = $(POMNG01010_DETAIL_GRID_ID).jqGrid('getDataIDs');
  197. var last_row_id = rids[rids.length - 1];
  198. itp_fn_grid_reset_selection(e, last_row_id, gridId, 'POMNG01010_DETAIL');
  199. pageObj.grid.recal();
  200. });
  201. }
  202. },
  203. grid: {
  204. init: function(mode, gridData) {
  205. this.mode = mode;
  206. this.gridId = POMNG01010_DETAIL_GRID_ID;
  207. this.unload(); // ==>dwkim
  208. this.load(gridData);
  209. },
  210. mode: 'DETAIL',
  211. gridId: '',
  212. button: {
  213. addRow: function() {
  214. // 팝업
  215. var popFn = function(rowDataPop) {
  216. console.log(rowDataPop);
  217. // 기존등록 데이터
  218. var exists = '';
  219. const rowData = $(POMNG01010_DETAIL_GRID_ID).getRowData();
  220. $.each(rowData, function(key, value) {
  221. exists = exists + value.brandUnitUnqNo + ';';
  222. });
  223. $.each(rowDataPop, function(key, value) {
  224. if (exists.indexOf(value.brandUnitUnqNo) < 0 && value.podrPssblDvsn == 'PO01') {
  225. value['viewCd'] = "C";
  226. $(POMNG01010_DETAIL_GRID_ID).jqGrid('addRowData', value.brandUnitUnqNo, value, 'last');
  227. }
  228. });
  229. $(POMNG01010_DETAIL_GRID_EMPTY).hide();
  230. };
  231. const key = {brandId:fn_make_user_info.get('brandId'),storeId:fn_make_user_info.get('storeId')};
  232. fn_call_popup('biz', 'BIZPOP_ITEM', '#ITP_ASIDE', popFn, key, 'S'); // ==>dwkim 추후 작업 진행 파라메타 설명필요
  233. },
  234. delRow: function() {
  235. itp_fn_grid_del_row(POMNG01010_DETAIL_GRID_ID);
  236. // 그리드 포문으로 금액 재계산후 구매요청금액에 넣어줌
  237. pageObj.grid.recal(); //==>dwkim 왜 호출이 안될까요
  238. }
  239. },
  240. load: function(gridData) { // ==>dwkim 오픈시 데이타 가져오는 부분 넣으면 되는건지 여부 gird가 아님
  241. var _this = this;
  242. var option = {
  243. gridId: this.gridId,
  244. colModel: gridColModel.detail,
  245. data: gridData,
  246. multiselect: true,
  247. // cellEdit: true,
  248. onCellSelect: function(rowId, cellIdx, cellValue) {
  249. POMNG01010_DETAIL_GRID_LAST_ROW_ID = itp_fn_set_data_editable(rowId, cellIdx, POMNG01010_DETAIL_GRID_LAST_ROW_ID, POMNG01010_DETAIL_GRID_ID, ['pchReqQty']);
  250. },
  251. loadComplete: function(data) {
  252. _this.clearData();
  253. }
  254. };
  255. itp_fn_grid_make_local(option);
  256. },
  257. clearData: function() {
  258. // console.log(this.gridId);
  259. $(POMNG01010_DETAIL_GRID_ID).jqGrid('clearGridData', true);
  260. $(POMNG01010_DETAIL_GRID_LIST).find('.ui-jqgrid .ui-jqgrid-bdiv').css('overflow-x', 'hidden');
  261. $(POMNG01010_DETAIL_GRID_LIST).find('.ui-jqgrid-bdiv').css('min-height', '100px');
  262. $(POMNG01010_DETAIL_GRID_EMPTY).html(ITP_MSG_LOCALE.message.grid.noData);
  263. $(POMNG01010_DETAIL_GRID_EMPTY).show();
  264. },
  265. recal: function() {
  266. var ids = $(POMNG01010_DETAIL_GRID_ID).getDataIDs();
  267. $.each(ids, function(idx, rowId) {
  268. var viewCd = jQuery(POMNG01010_DETAIL_GRID_ID).jqGrid('getCell', rowId, 'viewCd');
  269. var unitAmt = jQuery(POMNG01010_DETAIL_GRID_ID).jqGrid('getCell', rowId, 'unitAmt');
  270. var pchReqQty = jQuery(POMNG01010_DETAIL_GRID_ID).jqGrid('getCell', rowId, 'pchReqQty');
  271. if(viewCd != 'D' && unitAmt != null && unitAmt != '' && pchReqQty != null && pchReqQty != '') {
  272. jQuery(POMNG01010_DETAIL_GRID_ID).jqGrid('setRowData',rowId,{pchReqAmt: parseInt(unitAmt)*parseInt(pchReqQty)});
  273. }
  274. });
  275. const rowData = $(POMNG01010_DETAIL_GRID_ID).getRowData();
  276. var pchReqAmt = 0 ;
  277. $.each(rowData, function(key, value) {
  278. // console.log(JSON.stringify(rowData));
  279. if (value.pchReqAmt != null && value.pchReqAmt != "" && value.viewCd != "D") {
  280. pchReqAmt = pchReqAmt + parseInt(value.pchReqAmt) ;
  281. }
  282. });
  283. $('#ITP_FORM_POMNG01010_DETAIL .fnPchReqAmt').text(itp_fn_number_comma(pchReqAmt));
  284. },
  285. unload: function() {
  286. $.jgrid.gridUnload(this.gridId);
  287. }
  288. }
  289. };
  290. /*신규화면 Object */
  291. let createObj = {
  292. init: function() {
  293. $('#ITP_FORM_POMNG01010_DETAIL_BRAND_ID').val(fn_make_user_info.get('brandId'));
  294. $('#ITP_FORM_POMNG01010_DETAIL_STORE_ID').val(fn_make_user_info.get('storeId'));
  295. //let param = 'brandId=' + LOGIN_USER_INFO.brandId + "&spplyId=" + LOGIN_USER_INFO.spplyId;
  296. this.load();
  297. },
  298. newinit: function() {
  299. $('#ITP_FORM_POMNG01010_DETAIL_BRAND_ID').val(fn_make_user_info.get('brandId'));
  300. $('#ITP_FORM_POMNG01010_DETAIL_STORE_ID').val(fn_make_user_info.get('storeId'));
  301. $('#ITP_FORM_POMNG01010_DETAIL_PCH_REQ_NM').val('');
  302. $('#ITP_FORM_POMNG01010_DETAIL_NOTE').val('');
  303. var now = new Date();
  304. $('#ITP_TAB_POMNG01010 .input-group.date').datepicker(ITP_DATE_LANGUAGE);
  305. $('#ITP_FORM_POMNG01010_DETAIL_DLV_REQ_DT').datepicker('setDate', new Date(now.setDate(now.getDate() + 5)));
  306. this.load(); //==>dwkim 초기화 하여 다시 초기 데이타 가져와 뿌려줌
  307. const key = {brandId:fn_make_user_info.get('brandId'),storeId:fn_make_user_info.get('storeId')};
  308. fn_ajax_call(API_DETAIL_INIT_INFO, key, this.callback, 'GET');
  309. },
  310. button: {
  311. save: function(arg) {
  312. $('body').trigger('click');
  313. const formId = '#ITP_FORM_POMNG01010_DETAIL';
  314. itp_fn_form_clear_validate(null, formId);
  315. $('#ITP_FORM_POMNG01010_DETAIL_PCH_REQ_ST_CD').val(arg);
  316. var dlvReqDt = $('#ITP_FORM_POMNG01010_DETAIL_DLV_REQ_DT').val();
  317. var itemcnt = $(POMNG01010_DETAIL_GRID_ID).getGridParam('reccount');
  318. var dlvReqAmt = $('#ITP_FORM_POMNG01010_DETAIL .fnPchReqAmt').text();
  319. var apprArg = {};
  320. //정산 타입이 무정산이면 스킵
  321. var apprTypeCd = "Y" // Y 정상결재, NP 선불, NA 후불
  322. var loanDvsn = $('#ITP_FORM_POMNG01010_DETAIL_LOAN_DVSN').val();
  323. if (loanDvsn != null && loanDvsn != "") {
  324. if (loanDvsn != 'LD03' && arg == 'PR20' ) {
  325. //itp_fn_currency_unfmatter
  326. var pchActAtm = itp_fn_currency_unfmatter($('#ITP_FORM_POMNG01010_DETAIL .fnPchActAmt').text(),"","");
  327. var pchReqAtm = itp_fn_currency_unfmatter($('#ITP_FORM_POMNG01010_DETAIL .fnPchReqAmt').text(),"","");
  328. var mallId = $('#ITP_FORM_POMNG01010_DETAIL_MALL_ID').val();
  329. let pchActAtmNum;
  330. if(pchActAtm == '0' || pchActAtm == 0 || pchActAtm == Infinity || pchActAtm == 'Infinity') {
  331. pchActAtmNum = 'Infinity';
  332. } else {
  333. pchActAtmNum = pchActAtm
  334. }
  335. if (parseFloat(pchActAtmNum) < parseFloat(pchReqAtm)) {
  336. dlvReqAmt = itp_fn_number_comma(String(parseInt(pchReqAtm) - parseInt(pchActAtm)));
  337. if (mallId == '') {
  338. if (loanDvsn == 'LD01') {
  339. apprTypeCd = 'NPN';
  340. } else {
  341. apprTypeCd = 'NAN';
  342. }
  343. } else {
  344. if (loanDvsn == 'LD01') {
  345. apprTypeCd = 'NP';
  346. } else {
  347. apprTypeCd = 'NA';
  348. }
  349. }
  350. }
  351. }
  352. }
  353. if (itp_fn_form_event.isValid(formId)) {
  354. // 품목대상 정보 확인 필요
  355. var records = $(POMNG01010_DETAIL_GRID_ID).getGridParam('reccount');
  356. if (records == 0) {
  357. alert( "요청할 품목내역이 없습니다.");
  358. return ;
  359. }
  360. var now = new Date();
  361. var today = now.getFullYear() +
  362. "." + (now.getMonth()+1 > 9 ? (now.getMonth()+1).toString() : "0" + (now.getMonth()+1).toString()) +
  363. "." + (now.getDate() > 9 ? now.getDate().toString() : "0" + now.getDate().toString());
  364. var dlvReqDt = $('#ITP_FORM_POMNG01010_DETAIL_DLV_REQ_DT').val();
  365. if (today > dlvReqDt) {
  366. alert("납품요청일은 오늘 이후이어야 합니다.");
  367. return;
  368. }
  369. const rowChkData = $(POMNG01010_DETAIL_GRID_ID).getRowData();
  370. var chkQtyYn = "N";
  371. $.each(rowChkData, function(key, value) {
  372. if (value.pchReqQty == '' || value.pchReqQty < 1 ) {
  373. alert("요청수량을 입력해주세요!");
  374. chkQtyYn = "Y";
  375. return false;
  376. }
  377. });
  378. if (chkQtyYn == "Y") return;
  379. if (arg == 'PR20') {
  380. apprArg.dlvReqDt = dlvReqDt;
  381. apprArg.itemcnt = itemcnt;
  382. apprArg.dlvReqAmt = dlvReqAmt;
  383. if (apprTypeCd == "Y") { // 여신 구분, 여신금액
  384. var prIngFn = {
  385. callBack: function(args) {
  386. createObj.button.saveLastReq(arg);
  387. }
  388. };
  389. itp_fn_modal_confirm_req1(apprArg, prIngFn, arg);
  390. } else // 금액 부족시
  391. createObj.button.saveApprReq(apprArg,apprTypeCd, arg);
  392. } else {
  393. console.log("===");
  394. console.log(arg);
  395. createObj.button.saveReq(apprArg);
  396. }
  397. }
  398. },
  399. saveReq: function(arg) {
  400. const formId = '#ITP_FORM_POMNG01010_DETAIL';
  401. var saveFn = {
  402. callBack: function(args) {
  403. $(formId).val(arg);
  404. let gridInsertData = [];
  405. let gridUpdateData = [];
  406. let gridDeleteData = [];
  407. const rowData = $(POMNG01010_DETAIL_GRID_ID).getRowData();
  408. $.each(rowData, function(key, value) {
  409. if (value.viewCd !== 'R') {
  410. if (value.viewCd === 'C') {
  411. gridInsertData.push(value);
  412. } else if (value.viewCd === 'U') {
  413. gridUpdateData.push(value);
  414. } else if (value.viewCd === 'D') {
  415. gridDeleteData.push(value);
  416. }
  417. }
  418. });
  419. //if (chkQtyYn == "Y") return;
  420. let param = $(formId).serializeObject();
  421. param.gridInsertData = gridInsertData;
  422. param.gridUpdateData = gridUpdateData;
  423. param.gridDeleteData = gridDeleteData;
  424. console.log(JSON.stringify(param));
  425. var searhFn = function() {
  426. createObj.newinit();
  427. };
  428. fn_ajax_call(API_DETAIL_SAVE, JSON.stringify(param), searhFn, 'POST');
  429. }
  430. };
  431. itp_fn_modal_confirm(ITP_MSG_LOCALE.message.ajax.tmpSave, saveFn, null);
  432. },
  433. saveApprReq: function(param, apprTypeCd, arg) {
  434. var apprFn = {
  435. callBack: function(args) {
  436. // 결재금액이 부족하여 결재란으로 이동처리
  437. var popFn = function(rowDataPop) {
  438. // 결재 성공시 승인처리함
  439. createObj.button.saveLastReq(arg);
  440. };
  441. // 결제 팝업 : LD01(선불(충전)), LD02(후불(신용))
  442. // 결제타입코드 : 10(선불(충전)), 20(후불(결제)), 30(후불(선결제))
  443. // 구매요청 번호 전달 -
  444. //var loanDvsn = $('#ITP_FORM_LOANMNG02010_SEARCH_STORE_LOAN_DVSN').val();
  445. var pchActAtm = itp_fn_currency_unfmatter($('#ITP_FORM_POMNG01010_DETAIL .fnPchActAmt').text(),"","");
  446. var pchReqAtm = itp_fn_currency_unfmatter($('#ITP_FORM_POMNG01010_DETAIL .fnPchReqAmt').text(),"","");
  447. var args = {'payTpCd': '40',
  448. 'brandId': fn_make_user_info.get('brandId'),
  449. 'storeId': fn_make_user_info.get('storeId'),
  450. 'prchReqUnqNo': $('ITP_FORM_POMNG01010_DETAIL_PCH_REQ_UNQ_NO').val(),
  451. 'goodsAmt': pchReqAtm-pchActAtm};
  452. fn_call_popup('biz', 'BIZPOP_PO_PAYMENT', '#ITP_ASIDE', popFn, args, 'S');
  453. }
  454. };
  455. var apprNFn = {
  456. callBack: function(args) {
  457. // 임시저장 처리한다.
  458. arg = 'PR00';
  459. $('#ITP_FORM_POMNG01010_DETAIL_PCH_REQ_ST_CD').val(arg);
  460. createObj.button.saveLastReq(arg);
  461. }
  462. };
  463. //console.log(apprTypeCd) ;
  464. if (apprTypeCd == 'NP') { // 선불
  465. itp_fn_modal_confirm_req2(param, apprFn, arg);
  466. } else if (apprTypeCd == 'NA') { //후불
  467. itp_fn_modal_confirm_req3(param, apprFn, arg);
  468. } else if (apprTypeCd == 'NPN') { //선불 pg없음 임시저장으로
  469. itp_fn_modal_confirm_req4(param, apprNFn, arg);
  470. } else if (apprTypeCd == 'NAN') { //후불 pg없음 임시저장으로
  471. itp_fn_modal_confirm_req5(param, apprNFn, arg);
  472. }
  473. },
  474. saveLastReq: function(arg) {
  475. const formId = '#ITP_FORM_POMNG01010_DETAIL';
  476. $(formId).val(arg);
  477. let gridInsertData = [];
  478. let gridUpdateData = [];
  479. let gridDeleteData = [];
  480. const rowData = $(POMNG01010_DETAIL_GRID_ID).getRowData();
  481. $.each(rowData, function(key, value) {
  482. if (value.viewCd !== 'R') {
  483. if (value.viewCd === 'C') {
  484. gridInsertData.push(value);
  485. } else if (value.viewCd === 'U') {
  486. gridUpdateData.push(value);
  487. } else if (value.viewCd === 'D') {
  488. gridDeleteData.push(value);
  489. }
  490. }
  491. });
  492. //if (chkQtyYn == "Y") return;
  493. let param = $(formId).serializeObject();
  494. param.gridInsertData = gridInsertData;
  495. param.gridUpdateData = gridUpdateData;
  496. param.gridDeleteData = gridDeleteData;
  497. console.log(JSON.stringify(param));
  498. var searhFn = function() {
  499. createObj.newinit();
  500. };
  501. fn_ajax_call(API_DETAIL_SAVE, JSON.stringify(param), searhFn, 'POST');
  502. },
  503. },
  504. load: function() {
  505. const key = {brandId:fn_make_user_info.get('brandId'),storeId:fn_make_user_info.get('storeId')};
  506. fn_ajax_call(API_DETAIL_INIT_INFO, key, this.callback, 'GET');
  507. },
  508. callback: function(result) {
  509. console.log(result);
  510. $('#ITP_FORM_POMNG01010_DETAIL #ITP_FORM_POMNG01010_DETAIL_VIEW_CD').val('C');
  511. $('#ITP_FORM_POMNG01010_DETAIL #ITP_FORM_POMNG01010_DETAIL_BRAND_ID').val(result.brandId);
  512. $('#ITP_FORM_POMNG01010_DETAIL #ITP_FORM_POMNG01010_DETAIL_STORE_ID').val(result.storeId);
  513. $('#ITP_FORM_POMNG01010_DETAIL #ITP_FORM_POMNG01010_DETAIL_LOAN_DVSN').val(result.loanDvsn);
  514. $('#ITP_FORM_POMNG01010_DETAIL #ITP_FORM_POMNG01010_DETAIL_LOAN_MGNT_UNQ_NO').val(result.loanMgntUnqNo);
  515. $('#ITP_FORM_POMNG01010_DETAIL #ITP_FORM_POMNG01010_DETAIL_PCH_REQ_DVSN').val(result.pchReqDvsn);
  516. $('#ITP_FORM_POMNG01010_DETAIL #ITP_FORM_POMNG01010_DETAIL_WHS_ID').val(result.whsId);
  517. $('#ITP_FORM_POMNG01010_DETAIL #ITP_FORM_POMNG01010_DETAIL_WHS_NM').val(result.whsNm);
  518. $('#ITP_FORM_POMNG01010_DETAIL #ITP_FORM_POMNG01010_DETAIL_LOCATION').val(result.location);
  519. $('#ITP_FORM_POMNG01010_DETAIL #ITP_FORM_POMNG01010_DETAIL_LOCATION_NM').val(result.locationNm);
  520. $('#ITP_FORM_POMNG01010_DETAIL #ITP_FORM_POMNG01010_DETAIL_MALL_ID').val(result.mallId);
  521. $('#ITP_FORM_POMNG01010_DETAIL .fnBrandNm').text(result.brandNm);
  522. $('#ITP_FORM_POMNG01010_DETAIL .fnPchReqDept').text(result.reqDept);
  523. $('#ITP_FORM_POMNG01010_DETAIL .fnPchReqMgrNm').text(result.userNm);
  524. $('#ITP_FORM_POMNG01010_DETAIL .fnPchReqAmt').text("0");
  525. $('#ITP_FORM_POMNG01010_DETAIL .fnLoanDvsnNm').text(result.loanDvsnNm);
  526. var pchActAmt
  527. if(result.ordUseAmt == 'Infinity' || result.ordUseAmt == Infinity || result.ordUseAmt == 0){
  528. pchActAmt = 0;
  529. } else {
  530. pchActAmt = result.ordUseAmt
  531. }
  532. $('#ITP_FORM_POMNG01010_DETAIL .fnPchActAmt').text(itp_fn_number_comma(pchActAmt));
  533. $('#ITP_FORM_POMNG01010_DETAIL .fnPchReqUnqNo').text(result.pchReqUnqNo);
  534. $('#ITP_FORM_POMNG01010_DETAIL #ITP_FORM_POMNG01010_DETAIL_PCH_REQ_UNQ_NO').val(result.pchReqUnqNo);
  535. pageObj.grid.init();
  536. }
  537. };