| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 | $(function () {    'use strict';    BemsWebApplication.Popup.FacilityWorkHistory = {        create: function (viewInfo, viewModel) {            var eq = BWA.DataUtil.constructEqualFilter;            var and = BWA.DataUtil.andFilter;            var facilities = ko.observableArray(),                facilitiesInView = ko.observableArray(),                businessFields = ko.observableArray();            var facilitySearchPopup = null,                facilityFactory = BWA.Factory.Facility,                facilityGridView = ko.observable(undefined),                facilityDataGridOptions,                modifiableFacilityDataGridOptions = undefined;            var facilityDataSource = facilityFactory.getBasicDataSourceRef({                dbModeIId: 'FmsWorkOrderToFacility',                primaryKeyDataField: 'WorkRequestId'            })            ;            function isValidateWithFunction(errorMessage) {                if (_.isEmpty(facilities())) {                    errorMessage.message = '점검을 위한 시설이 없습니다.';                    return false;                }                return true;            }            function handlePopupShowing(isNewInPopup, dataModel, selectedData) {                               facilityDataSource.filter([                    eq('SiteId', selectedData.SiteId()),                    and,                    eq('WorkRequestId', selectedData.WorkRequestId())                ]);                facilityDataSource.load().done(function (dbFacilities) {                    facilitiesInView(dbFacilities);                });            }            function handleBeforeShowingPopupForEdit(rowData, dataViewModel) {                dataViewModel.BusinessFieldName(rowData['FmsWorkOrder/CmBusinessField/Name']());                dataViewModel.WorkTypeName(rowData['FmsWorkOrder/FmsWorkRequest/FmsWorkCodeType/Name']());                dataViewModel.WorkProgressName(rowData['FmsWorkOrder/FmsWorkRequest/FmsWorkCodeProgress/Name']());                dataViewModel.OrderUserName(rowData['FmsWorkOrder/CmUser/Name']());                dataViewModel.RejectUserName($KoValue(rowData['FmsWorkOrder/CmUser1/Name']));                dataViewModel.OrderDate = $KoSet(dataViewModel.OrderDate, rowData['FmsWorkOrder/OrderDate']);                dataViewModel.StartWorkDate = $KoSet(dataViewModel.StartWorkDate, rowData['FmsWorkOrder/StartWorkDate']);                dataViewModel.Title = $KoSet(dataViewModel.Title, rowData['FmsWorkOrder/Title']);                dataViewModel.Content = $KoSet(dataViewModel.Content, rowData['FmsWorkOrder/Content']);            }            viewModel.popupVisible.subscribe(function (visible) {                if (!visible) {                    facilitiesInView([]);                }            });            //viewModel.isEditModeInPopup.subscribe(function (isEditMode) {            //    if (isEditMode) {            //        facilities(facilitiesInView.slice(0));            //    }            //});            viewModel.dataModel.WorkTypeName = ko.observable();            viewModel.dataModel.BusinessFieldName = ko.observable();            viewModel.dataModel.OrderUserName = ko.observable();            viewModel.dataModel.RejectUserName = ko.observable();            viewModel.dataModel.WorkProgressName = ko.observable();            facilityDataGridOptions = BWA.Popup.Facility.getReadOnlyDataGridOptions(                facilitiesInView, viewModel.viewModeInPopup);            modifiableFacilityDataGridOptions = BWA.Popup.Facility.getModifiableDataGridOptions(                facilities, viewModel.isEditModeInPopup, facilityGridView);                        return {                facilitySearchPopup: facilitySearchPopup,                facilities: facilitiesInView,                businessFields: businessFields,                isValidateWithFunction: isValidateWithFunction,                facilityDataGridOptions: facilityDataGridOptions,                modifiableFacilityDataGridOptions: modifiableFacilityDataGridOptions,                handlePopupShowing: handlePopupShowing,                handleBeforeShowingPopupForEdit: handleBeforeShowingPopupForEdit,                handleDeleteSelectedFacilities: BWA.Popup.Facility.getDeleteSelectedFacilitiesFunc(facilityGridView, facilities)            };        }    }});
 |