| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418 | 
							- $(function () {
 
-     "use strict";
 
-     var TEXTAREA_HEIGHT_MAX = 420,
 
-         TEXTAREA_HEIGHT_MIN = 240;
 
-     var dropZone = null;
 
-     var historyViewModel = new BemsWebApplication.FmsDrawingHistoryViewModel();
 
-     
 
-     var uploadedFileInfo = {};
 
-     //2019-11-25 변경
 
-     var backUpFileId = null;
 
-     var eq = BWA.DataUtil.constructEqualFilter;
 
-     var and = BWA.DataUtil.andFilter;
 
-     var drawingHistoryDataSource = BemsWebApplication.DataUtil.createDataSource({
 
-         dataSourceOptions: {
 
-             select: [
 
-                 'SiteId', 'DrawingId', 'HistoryId', 'FileId', 'Description', 'RevisionNo',
 
-                 'UpdatedDate', 'UpdatedUserId',
 
-                 'CmFile/Name', 'CmFile/FileSize', 'CmUser/Name'
 
-             ],
 
-             expand: ['CmFile', 'CmUser'],
 
-             extendOptions: {
 
-                 forceOriginalField: true
 
-             }
 
-         }
 
-     }, 'FmsDrawingHistory');
 
-     //2019-11-25 변경
 
-     BWA.Popup = BWA.Popup || {};
 
-     BWA.Popup.DrawingHistory = {
 
-         create: function (viewModel, params, drawingHistories, reloadDrawingHistory) {
 
-             // 다운로드 기능은 다른 창으로 url를 열면 될 듯하다.
 
-             var drawingId = viewModel.dataModel.DrawingId,
 
-             // hcLee 2016 03 28
 
- //                textAreaHeightInPopup = ko.observable(),
 
-             popupVisible = ko.observable(false),
 
-             position = ko.observable(),
 
-             isNewData = ko.observable(false),
 
-             IsPrevImg = ko.observable(false),
 
-             RowHistoryId = null,
 
- //                textAreaHistoryNoteHeight = ko.observable(TEXTAREA_HEIGHT_MAX),
 
-             uploadedFileInfo = {},
 
-             isVisibleDropZone = ko.observable('hidden'),
 
-             isEditMode = ko.observable(false),
 
-             //isVisibleDeleteButton = ko.observable(true),
 
-             isVisibleSaveButton = ko.observable(false),
 
-             isVisibleCancelButton = ko.observable(true),
 
-             isVisibleEditButton = ko.observable(true),
 
-             selectedHistory = null,
 
-             historyGridView = null,
 
-             timerObj = { timer: null },
 
-             mainPopupElement = params.mainPopupElement;
 
-             historyViewModel.UpdatedUserName = ko.observable();
 
-             historyViewModel.FileName = ko.observable();
 
-             //hcLee 2016 03 28
 
-             historyViewModel.FildIdBackUp = ko.observable();
 
-             BWA.db.FmsDrawingHistory.modified.add(function () {
 
-                 reloadDrawingHistory(drawingId());
 
-                 $('#gridContainer').dxDataGrid('instance').refresh();
 
-             });
 
-             function handleButtonSave() {
 
-                 historyViewModel.SiteId(BWA.UserInfo.SiteId());
 
-                 historyViewModel.DrawingId(drawingId());
 
-                 if (isNewData()) {
 
-                     if (drawingHistoryFileUpload.dropzone.files.length == 0) {
 
-                         utils.toast.show('도면 파일을 업로드하여 주십시오.', 'error');
 
-                         return;
 
-                     }
 
-                     //2019-11-25 변경
 
-                     if (_.isNull(dropZone) === false) { //추가
 
-                         if (historyViewModel.FileId() == null) {
 
-                             dropZone.processQueue();
 
-                         }
 
-                     }
 
-                     //2019-11-25 변경
 
-                     historyViewModel.UpdatedDate(new Date());
 
-                     historyViewModel.UpdatedUserId(BWA.UserInfo.UserId());
 
-                     
 
-                     BWA.db.FmsDrawingHistory.insert(historyViewModel.toJS()).done(function (res) {
 
-                         utils.toast.show('도면 이력 항목이 성공적으로 저장되었습니다.');
 
-                         dropZone.resetUploadedFileInfo();
 
-                         // 2016 03 28
 
-                         reloadDrawingHistory(drawingId());
 
-                         $('#gridContainer').dxDataGrid('instance').refresh();
 
-                         isNewData(false);
 
-                         ChangeMode(false);
 
-                         popupVisible(false);
 
-                         IsPrevImg(false);
 
-                     });
 
-                 }
 
-                 else {
 
-                     // hcLee 2016 03 27
 
-                     if (_.isUndefined(historyViewModel.FileId()) || historyViewModel.FileId() == null) {
 
-                         utils.toast.show('도면 파일을 업로드하여 주십시오.', 'error');
 
-                         return;
 
-                     }
 
-                     historyViewModel.RevisionNo(undefined);
 
-                     //historyViewModel.FileId(undefined); // hcLee 2016 03 28
 
-                     historyViewModel.UpdatedDate(new Date());
 
-                     historyViewModel.UpdatedUserId(BWA.UserInfo.UserId());
 
-                     //2019-11-25 변경
 
-                     backUpFileId = historyViewModel.FileId();
 
-                     if (_.isNull(dropZone) === false) {
 
-                             dropZone.processQueue();
 
-                     }
 
-                     //2019-11-25 변경
 
-                     var keys = BWA.db.extractKeysObject('FmsDrawingHistory', historyViewModel);
 
-                     BWA.db.FmsDrawingHistory.update(keys, historyViewModel.toJS()).done(function (res) {
 
-                         utils.toast.show('도면 이력 항목이 성공적으로 저장되었습니다.');
 
-                         dropZone.resetUploadedFileInfo();
 
-                         reloadDrawingHistory(drawingId());
 
-                         $('#gridContainer').dxDataGrid('instance').refresh();
 
-                         ChangeMode(false);
 
-                         popupVisible(false);
 
-                         IsPrevImg(true);
 
-                     });
 
-                     
 
-                 }
 
-             }
 
-             /*
 
-             function handleButtonDelete() {
 
-                 var keys = BWA.db.extractKeysObject('FmsDrawingHistory', historyViewModel);
 
-                 BWA.db.FmsDrawingHistory.remove(keys).done(function() {
 
-                     BWA.db.CmFile.remove({
 
-                         SiteId: historyViewModel.SiteId(),
 
-                         FileId: historyViewModel.FileId()
 
-                     }).done(function() {
 
-                         utils.toast.show('도면 이력 항목 삭제 처리가 성공하였습니다.');
 
-                         popupVisible(false);
 
-                     });
 
-                 });
 
-             }*/
 
-             function ChangeMode(bEdit) {
 
-                 if (bEdit) {
 
-                     setupDropzone(bEdit); // 업로드된 파일을 지운후 저장하지 않고 취소만 하고 다시 수정을 시작한 경우를 위하여 hcLee 2016 03 25
 
-                     isEditMode(true);
 
-                     isVisibleEditButton(false);
 
-                     isVisibleSaveButton(true);
 
-                     isVisibleCancelButton(true);
 
-                 }
 
-                 else {
 
-                     setupDropzone(false); // 업로드된 파일을 지운후 저장하지 않고 취소만 하고 다시 수정을 시작한 경우를 위하여 hcLee 2016 03 25
 
-                     isEditMode(false);
 
-                     isVisibleEditButton(true);
 
-                     isVisibleSaveButton(false);
 
-                     isVisibleCancelButton(false);
 
-                 }
 
-             }
 
-             function handleEditDrawingHistory() {
 
-                 ChangeMode(true);
 
-             }
 
-             function setupDropzone(bEdit) {
 
-                 //var clone2 = $("div.dz-preview").clone(); // making zeh' clones!
 
-                 if (bEdit) {
 
-                     if (dropZone) {
 
-                         dropZone.removeAllFiles();
 
-                         dropZone.options.startLoadFileCount = 0;
 
-                         $('div.dz-preview').remove();
 
-                     }
 
-                     historyViewModel.FileId(historyViewModel.FildIdBackUp()); // hcLee 2016 03 25
 
-                     if (_.isNull(dropZone)) {
 
-                         dropZone = BWA.DropZone.create({
 
-                             id: '#drawingHistoryFileUpload',
 
-                             categoryId: $Code.FileCategory.DRAWING,
 
-                             uploadedFileInfo: uploadedFileInfo,
 
-                             previewTemplate: "...",
 
-                             handleSuccess: function (fileInfo) {
 
-                                 //2019-11-25 변경
 
-                                 historyViewModel.FileId(fileInfo.FileId);
 
-                                 var tempFileID = fileInfo.FileId;
 
-                                 if (uploadedFileInfo.FileId) {
 
-                                     drawingHistoryDataSource.filter([
 
-                                         eq('SiteId', BWA.UserInfo.SiteId()),
 
-                                         and,
 
-                                         eq('DrawingId', historyViewModel.DrawingId())
 
-                                     ]);
 
-                                     drawingHistoryDataSource.load().done(function (histories) {
 
-                                         drawingHistories(histories);
 
-                                         var len = drawingHistories().length;
 
-                                         if (RowHistoryId != null)
 
-                                             historyViewModel.HistoryId(RowHistoryId);
 
-                                         else
 
-                                             historyViewModel.HistoryId(drawingHistories()[len - 1].HistoryId());
 
-                                         var keys = BWA.db.extractKeysObject('FmsDrawingHistory', historyViewModel);
 
-                                         if (keys.HistoryId != null) {
 
-                                             return BWA.db.FmsDrawingHistory.update(keys, { FileId: tempFileID })
 
-                                                 .done(function (res) {
 
-                                                     $('#gridContainer').dxDataGrid('instance').refresh();
 
-                                                     if (IsPrevImg() == true) { // 그림삭제
 
-                                                         var temp = {
 
-                                                             SiteId: BWA.UserInfo.SiteId(),
 
-                                                             FileId: backUpFileId
 
-                                                         }
 
-                                                         BWA.db.CmFile.byKey(temp).done(function (data) {
 
-                                                             dropZone.removeFile(data);
 
-                                                         });
 
-                                                     }
 
-                                                 });
 
-                                             if (fileInfo.FileId != null)
 
-                                                 IsPrevImg(true);
 
-                                             else
 
-                                                 IsPrevImg(false);
 
-                                         }
 
-                                     });
 
-                                 }
 
-                             },
 
-                             handleRemovedFile: function () {
 
-                                 historyViewModel.FileId(null);
 
-                             },
 
-                         });
 
-                     }
 
-                 }
 
-             }
 
-             popupVisible.subscribe(utils.popup.getAttachFunc('#popupDetail', timerObj, position));
 
-             position.subscribe(function (value) {
 
-             });
 
-             isNewData.subscribe(function (isNew) {
 
-                 if (isNew && popupVisible()) {
 
-                     isVisibleDropZone('visible');
 
-                 }
 
-                 else {
 
-                     isVisibleDropZone('hidden');
 
-                 }
 
-             });
 
-             viewModel.popupVisible.subscribe(function (value) {
 
-                 if (value === false) {
 
-                     popupVisible(false);
 
-                 }
 
-             });
 
-             viewModel.isEditModeInPopup.subscribe(function (value) {
 
-             });
 
-             return {
 
-                 visible: popupVisible,
 
-                 isNewData: isNewData,
 
-                 dataModel: historyViewModel,
 
-                 isVisibleDropZone: isVisibleDropZone,
 
-                 isEditMode: isEditMode,
 
-                 show: function () {
 
-                     popupVisible(true);
 
-                 },
 
-                 hide: function () {
 
-                     popupVisible(false);
 
-                 },
 
-                 popupOptions: {
 
-                     width: '480px',
 
-                     height: '616px',
 
-                     dragEnabled: false,
 
-                     position: position,
 
-                     visible: popupVisible,
 
-                     showingAction: function () { },
 
-                     closeOnOutsideClick: false,
 
-                     shading: false,
 
-                     animation: {
 
-                         show: { type: "slide", duration: 150, from: { left: '-=10', opacity: 0 }, to: { opacity: 1 } },
 
-                         hide: { type: "slide", duration: 150, from: { left: '-=10', opacity: 1 }, to: { opacity: 0 } }
 
-                     },
 
-                     shownAction: function () {
 
-                         if (isNewData()) {
 
-                             isVisibleDropZone('visible');
 
-                         }
 
-                         else {
 
-                             isVisibleDropZone('hidden');
 
-                         }
 
-                         setupDropzone();
 
-                     },
 
-                     hidingAction: function () {
 
-                         //dropZone.dispose(uploadedFileInfo); // 2016 03 29
 
-                     }
 
-                 },
 
-                 toolbarItems: [
 
-                     { location: 'before', text: $G('drawingHistoryDetailInfo') },
 
-                     {
 
-                         location: 'after',
 
-                         widget: 'button',
 
-                         options: {
 
-                             text: '수정',
 
-                             icon: 'edit',
 
-                             visible: isVisibleEditButton,
 
-                             disabled: viewModel.hasnotModificationPermission,
 
-                             clickAction: handleEditDrawingHistory
 
-                         }
 
-                     },
 
-                     {
 
-                         location: 'after',
 
-                         widget: 'button',
 
-                         options: {
 
-                             text: '취소',
 
-                             icon: 'cancel',
 
-                             visible: isVisibleCancelButton,
 
-                             disabled: viewModel.hasnotModificationPermission,
 
-                             clickAction: function () {
 
-                                 // 파일 id를 다시 설정해야 한다. hcLee 2016 03 25
 
-                                 historyViewModel.FileId(historyViewModel.FildIdBackUp()); // hcLee 2016 03 25
 
-                                 ChangeMode(false);
 
-                             }
 
-                         }
 
-                     },
 
-                     {
 
-                         location: 'after', widget: 'button', options: {
 
-                             text: $G('save'),
 
-                             icon: 'save',
 
-                             visible: isVisibleSaveButton,
 
-                             disabled: viewModel.hasnotModificationPermission,
 
-                             clickAction: handleButtonSave
 
-                         }
 
-                     },
 
-                     {
 
-                         location: 'after', widget: 'button', options: {
 
-                             text: $G('close'),
 
-                             icon: 'close',
 
-                             clickAction: function () {
 
-                                 isNewData(false);
 
-                                 ChangeMode(false);
 
-                                 popupVisible(false);
 
-                             }
 
-                         }
 
-                     }
 
-                 ],
 
-                 setDrawingHistoryGridViewInstance: function (instance) {
 
-                     historyGridView = instance;
 
-                 },
 
-                 setSelectedDrawingHistory: function (history) {
 
-                     isNewData(false);
 
-                     BWA.DataUtil.copyViewModel(history, historyViewModel);
 
-                     RowHistoryId = history.HistoryId();
 
-                     historyViewModel.FildIdBackUp(history.FileId()); // hcLee 2016 03 28                    
 
-                     historyViewModel.FileName(history['CmFile/Name']());
 
-                     historyViewModel.UpdatedUserName(history['CmUser/Name']());
 
-                     historyViewModel.Description(history['Description']());
 
-                     ChangeMode(false);
 
-                 },
 
-                 handleInsertDrawingHistory: function () {
 
-                     ChangeMode(false);
 
-                     popupVisible(false);
 
-                     isNewData(true);
 
-                     BWA.DataUtil.resetDataModel(_.omit(historyViewModel, 'DrawingId'));
 
-                     var maxHistory = _.max(drawingHistories(), function (x) {
 
-                         return x.RevisionNo();
 
-                     });
 
-                     historyViewModel.RevisionNo(maxHistory.RevisionNo() + 1);
 
-                     historyViewModel.UpdatedUserName(BWA.UserInfo.Name());
 
-                     popupVisible(true);
 
-                     ChangeMode(true);
 
-                     isVisibleCancelButton(false);
 
-                 }
 
-             };
 
-         }
 
-     }
 
- });
 
 
  |