| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 | 
							- BemsWebApplication.MaterialStoredApproval = function (params, viewInfo) {
 
-     'use strict';
 
-     var viewModel, gridView, options;
 
-     var visibleApprovalButton = ko.observable();
 
-     function postMaterialStoredApproval(materialStoredList) {
 
-         var progressId = $Code.PurchaseProgress.MATERIAL_STORED_APPROVAL;
 
-         var list = _.reject(materialStoredList, function (x) {
 
-             try {
 
-                 return x.IsApproval();
 
-             } catch (e) {
 
-                 return x.IsApproval;
 
-             }
 
-         });
 
-         if (_.isEmpty(list)) {
 
-             utils.toast.show('승인 할 입고 항목이 없습니다. 이미 승인되었거나 선택된 항목이 없습니다.', 'error');
 
-             return;
 
-         }
 
-         var postData = undefined;
 
-         try {
 
-             postData = {
 
-                 UserId: BWA.UserInfo.UserId(),
 
-                 MaterialStoredList: _.map(list, function (x) {
 
-                     return {
 
-                         SiteId: x.SiteId(),
 
-                         BusinessFieldId: x.BusinessFieldId(),
 
-                         MaterialStoredId: x.MaterialStoredId(),
 
-                         PurchaseOrderId: x.PurchaseOrderId()
 
-                     }
 
-                 })
 
-             };
 
-         } catch (e) {
 
-             postData = {
 
-                 UserId: BWA.UserInfo.UserId(),
 
-                 MaterialStoredList: _.map(list, function (x) {
 
-                     return {
 
-                         SiteId: x.SiteId,
 
-                         BusinessFieldId: x.BusinessFieldId,
 
-                         MaterialStoredId: x.MaterialStoredId,
 
-                         PurchaseOrderId: x.PurchaseOrderId
 
-                     }
 
-                 })
 
-             };
 
-         }
 
-         return BWA.api.post('FmsMaterialStored/Approval', postData).then(function () {
 
-             // 자재 테이블 업데이트 필요, 입고정보 승인 API 에서 처리 
 
-             viewModel.refreshList();
 
-             utils.toast.show('성공적으로 승인 처리되었습니다.');
 
-         });
 
-     };
 
-     function handleApproveSelectedItem() {
 
-         var rows = gridView().getSelectedRowsData();
 
-         postMaterialStoredApproval(rows);
 
-     }
 
-     options = {
 
-         viewOptions: {
 
-             isModifiable: false,
 
-             selection: { mode: 'multiple', allowSelectAll: false },
 
-             handleBeforeShowingPopupForEdit: function (data, dataModel) {
 
-                 visibleApprovalButton(!data.IsApproval());
 
-                 // 툴바에 버튼이 추가되지 않아 강제로 수정함 
 
-                 viewModel.materialStoredPopupToolbarItems[1].options.text = $G('approval');
 
-                 viewModel.materialStoredPopupToolbarItems[1].options.icon = 'save';
 
-                 viewModel.materialStoredPopupToolbarItems[1].options.type = 'success';
 
-                 viewModel.materialStoredPopupToolbarItems[1].options.visible = visibleApprovalButton;
 
-                 viewModel.materialStoredPopupToolbarItems[1].options.disabled = viewModel.hasnotModificationPermission;
 
-                 viewModel.materialStoredPopupToolbarItems[1].options.clickAction = this.handlePopupButtonSave;
 
-             },
 
-             handlePopupButtonSave: function () {
 
-                 var promise = postMaterialStoredApproval([viewModel.dataModel]);
 
-                 promise.then(function () {
 
-                     viewModel.popupVisible(false);
 
-                 });
 
-             },
 
-             getAddedToolbarItemsInPopup: function (e) {
 
-                 var hasnotModificationPermission = e.hasnotModificationPermission,
 
-                     dataViewModel = e.dataViewModel,
 
-                     popupVisible = e.popupVisible;
 
-                 return [{
 
-                     location: 'after',
 
-                     widget: 'button',
 
-                     options: {
 
-                         text: $G('approval'), icon: 'save', type: 'success',
 
-                         visible: visibleApprovalButton,
 
-                         disabled: hasnotModificationPermission,
 
-                         clickAction: function () {
 
-                             var promise = postMaterialStoredApproval([dataViewModel]);
 
-                             promise.then(function () {
 
-                                 popupVisible(false);
 
-                             });
 
-                         }
 
-                     }
 
-                 },
 
-                 {
 
-                     location: 'after', widget: 'button', options: {
 
-                         text: $G('close'), icon: 'close',
 
-                         clickAction: function () { popupVisible(false); }
 
-                     }
 
-                 }
 
-                 ];
 
-             },
 
-         },
 
-         popupOptions: {
 
-         }
 
-     }
 
-     viewModel = BWA.MaterialStored2(params, viewInfo, options);
 
-     gridView = viewModel.gridView;
 
-     viewModel.approvalButtonOptions = {
 
-         icon: 'add',
 
-         id: 'create',
 
-         title: $G('approval'),
 
-         action: handleApproveSelectedItem,
 
-         disabled: viewModel.hasnotModificationPermission
 
-     };
 
-     viewModel.visibleApprovalButton = visibleApprovalButton;
 
-     return viewModel;
 
- };
 
 
  |