| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297 | BemsWebApplication.ControlValueSet = function (params, viewInfo) {    "use strict";/*    var facilityViewModel = new BWA.CmFacilityViewModel();    var cmFacilityDataSource = BemsWebApplication.db.createDataSource('CmFacility', true);    var m_Facility;    var facilityDataSource = BWA.db.createDataSource('CmFacility'),        facilitiesForSearch = ko.observableArray(),        facilityCodeForSearch = ko.observable(0),        deferredForSearch = new $.Deferred(); */    var facilityClassDataSource = BemsWebApplication.db.createDataSource('FmsFacilityCodeClass');    //var buildingDataSource = BemsWebApplication.db.createDataSource('CmBuilding', true),      //  floorDataSource = BemsWebApplication.db.createDataSource('CmFloor'),        //zoneDataSource = BemsWebApplication.db.createDataSource('CmZone');    // 설비분류 데이터소스     var facilityTypeDataSource = BemsWebApplication.db.createDataSource('BemsFacilityType');    var facilityTypes = ko.observableArray();    var facilityClasses = [ko.observableArray(), ko.observableArray(), ko.observableArray()];    var buildings = ko.observableArray(),        floors = ko.observableArray(),        zones = ko.observableArray();    var searchFacilityClasses = [ko.observableArray(), ko.observableArray(), ko.observableArray()],        searchFacilityClassValues = [ko.observable(), ko.observable(), ko.observable()],        searchBuildings = ko.observableArray(),        searchFloors = ko.observableArray(),        searchBuildingId = ko.observable(),        searchFloorId = ko.observable();//    var defaultSearchClassArray = $SearchView.createDefaultArray('FacilityClassId'),  //      defaultSearchBuildingArray = $SearchView.createDefaultArray('BuildingId'),    //    defaultSearchFloorArray = $SearchView.createDefaultArray('FloorId');    var searchDeferred = new $.Deferred();    /*    selectedFacilityDataInSearchParentPopup.subscribe(function (value) {        viewModel.dataModel.ParentFacilityCode(value.FacilityCode);        viewModel.dataModel.ParentFacilityName(value.Name);    });    selectedUserData.subscribe(function (value) {        if (isMainContactor) {            viewModel.dataModel.MainContactorUserId(value.UserId);            viewModel.dataModel.MainContactorUserName(value.Name);        }        else {            viewModel.dataModel.SubContactorUserId(value.UserId);            viewModel.dataModel.SubContactorUserName(value.Name);        }    });*/    var handleFirstClassChangedValueInSearchView = function (e) {        if (e.value === 0) {            initializeSearchClasses();            return;        }        BWA.DataUtil.setArrayDataSourceFilter(facilityClassDataSource, 'ParentFacilityClassId', e.value, searchFacilityClasses[1], defaultSearchClassArray);    };    var handleSecondClassChangedValueInSearchView = function (e) {        if (e.value === 0) {            initializeSearchClasses(true);            return;        }        BWA.DataUtil.setArrayDataSourceFilter(facilityClassDataSource, 'ParentFacilityClassId', e.value, searchFacilityClasses[2], defaultSearchClassArray);    };    /*    var handleBuildingInSearchView = function (e) {        if (e.value === 0) {            searchFloors(defaultSearchFloorArray.slice(0));            searchFloorId(0);            return 0;        }        BWA.DataUtil.setArrayDataSourceFilter(floorDataSource, 'BuildingId', e.value, searchFloors, defaultSearchFloorArray);    }*/    function initializeSearchClasses(onlyThird) {        if (onlyThird === undefined || onlyThird === false) {            searchFacilityClasses[1](defaultSearchClassArray.slice(0));            searchFacilityClassValues[1](0);        }        searchFacilityClasses[2](defaultSearchClassArray.slice(0));        searchFacilityClassValues[2](0);    }    var facilityOptions = BemsWebApplication.Factory.Facility;    /*    var works = ko.observableArray();    var workDataSource = BWA.DataUtil.createDataSource({        dataSourceOptions: {            select: ['SiteId', 'FacilityCode', 'CmFacility/Name', 'Name', 'BemsFuelType/Name', 'BemsServiceType/Name'],            //'H1', 'H2', 'H3', 'H4', 'H5', 'H6', 'H7', 'H8', 'H9', 'H10', 'H11', 'H12'],            expand: ['CmFacility', 'BemsFuelType', 'BemsServiceType'],            extendOptions: {                forceOriginalField: true,            }        },    }, 'BemsMonitoringPoint'); */    function handleSearchInSearchView(filter, searchViewItems) {        //workDataSource.filter = filter;        //workDataSource.load().done(function (workResult) {        viewModel.dataSource.load().done(function (workResult) {            _.each(workResult, function (x) {                x[6] = 'CV';                x.CV = 100;                //works.push(x);                //alert(x.Name());            });            //datas = workResult;            //works(workResult);            //viewModel.dataSource = works;                    });        viewModel.dataSource = null;        viewModel.refreshList();    }    //var tempDate = new Date();    var paramDate = new Date(2015,8,17, 15,0, 0);    var viewModel = BWA.DataGrid.createViewWithDataGrid(params, viewInfo, 'BemsMonitoringPoint', {    //var viewModel = BWA.DataGrid.createViewWithDataGrid(params, viewInfo, null, {            rowAlternationEnabled: true,            editing: {                //editMode: 'batch',                //editMode: 'editcell',                editMode: 'cell', // 14.1은  batch, row 두가지 밖에 없다. cell->row로 동작중이다. 2015 07 15 hcLee                editEnabled: true,                //removeEnabled:false,                //visible:false,            },            //dataSource: works,            dataSourceOptions: {                select: ['SiteId', 'FacilityCode', 'CmFacility/Name', 'Name', 'BemsFuelType/Name', 'BemsServiceType/Name', 'BemsMonitoringPointHistoryDaily/DailyValue'],                    //'H1', 'H2', 'H3', 'H4', 'H5', 'H6', 'H7', 'H8', 'H9', 'H10', 'H11', 'H12'],                expand: ['CmFacility', 'BemsFuelType', 'BemsServiceType', 'BemsMonitoringPointHistoryDaily'],                extendOptions: {                    forceOriginalField: true,                },                filter: [                    //['BemsMonitoringPointHistory15min/CreatedDateTime', ">=", paramDate],                    ['FacilityCode', "=", 1390],                ]            },            columns: [                { dataField: 'FacilityCode', caption: $G('number'), width: '4%', alignment: 'center' }, // ?                 { dataField: 'CmFacility/Name', caption: '설비명', width: '20%', alignment: 'center', allowEditing: false },                { dataField: 'Name', caption: '관제점명', width: '20%', alignment: 'center', allowEditing: false },                { dataField: 'BemsFuelType/Name', caption: '에너지원', width: '10%', alignment: 'center', allowEditing: false, },                { dataField: 'BemsServiceType/Name', caption: '용도', width: '10%', alignment: 'center', allowEditing: false },                { dataField: 'BemsMonitoringPointHistory15Min/CurrentValue', caption: '설정값', width: '8%', alignment: 'center', },/*                { dataField: 'T4', caption: '2월', width: '6%', alignment: 'center' },                { dataField: 'T5', caption: '2월', width: '6%', alignment: 'center' },                { dataField: 'T6', caption: '2월', width: '6%', alignment: 'center' },                { dataField: 'T7', caption: '2월', width: '6%', alignment: 'center' },                { dataField: 'T8', caption: '2월', width: '6%', alignment: 'center' },                { dataField: 'T9', caption: '2월', width: '6%', alignment: 'center' },                { dataField: 'T10', caption: '2월', width: '6%', alignment: 'center' },                { dataField: 'T11', caption: '2월', width: '6%', alignment: 'center' },                { dataField: 'T12', caption: '2월', width: '6%', alignment: 'center' }, */                //{ dataField: 'Target_humidity', caption: '목표습도', width: '40%', alignment: 'center' }                //utils.datagrid.columnIsUse( '15%' )            ],            popupWidth: 480,            searchViewItems: [/*                { id: 'FacilityCode', ignoreValue: 0, defaultValue: 0, value: facilityCodeForSearch, dataSource: facilitiesForSearch }, *//*                { id: 'FirstClassId', ignoreValue: 0, defaultValue: 0, value: searchFacilityClassValues[0], dataSource: searchFacilityClasses[0], handleChangedValue: handleFirstClassChangedValueInSearchView },                { id: 'SecondClassId', ignoreValue: 0, defaultValue: 0, withCheckId: 'FirstClassId', value: searchFacilityClassValues[1], dataSource: searchFacilityClasses[1], handleChangedValue: handleSecondClassChangedValueInSearchView },                { id: 'ThirdClassId', ignoreValue: 0, defaultValue: 0, withCheckId: 'FirstClassId', value: searchFacilityClassValues[2], dataSource: searchFacilityClasses[2] },*/                //{ id: 'CmFacility/BuildingId', ignoreValue: 0, defaultValue: 0, value: searchBuildingId, dataSource: searchBuildings, handleChangedValue: handleBuildingInSearchView },                //{ id: 'CmFacility/FloorId', ignoreValue: 0, defaultValue: 0, withCheckId: 'CmFacility/BuildingId', value: searchFloorId, dataSource: searchFloors },                { id: 'CmFacility/Name' },                { id: 'Name' },            ],            promiseDataInSearchView: searchDeferred.promise(),                            //promiseDataInSearchView: deferredForSearch.promise(),                        handleViewShowing: function () {                facilityClassDataSource.filter([                        ['SiteId', '=', BWA.UserInfo.SiteId()],                        'and',                        ['ParentFacilityClassId', '=', null]                ]);                facilityTypeDataSource.filter([                    ['FacilityTypeId', '=', 1]                ]);                // 빌딩 데이터 로드 시점                 $.when(facilityClassDataSource.load(),                    //buildingDataSource.load(),                    facilityTypeDataSource.load()                ).done(function (result1, result2, result3) {                    //                    searchDeferred.resolve();                });            },            handleViewShown: function (dataViewModel, isEditModeInPopup) {                //setupDropZone(isEditModeInPopup, dataViewModel);                handleSearchInSearchView();            },            handleViewHidden: function () {                $SearchView.visibleObservable(false); // hcLee 2015 03 23                visiblePopup(false);            },            handlePopupShowing: function (that) {                alert(9);            },    });    //floorDataSource.filter('BuildingId', -1);    //zoneDataSource.filter('FloorId', -1);    viewModel.handleSelectBoxChangeFirstClass = function (e) {        BWA.DataUtil.setArrayDataSourceFilter(facilityClassDataSource, 'ParentFacilityClassId', e.value, facilityClasses[1]);        viewModel.dataModel.SecondClassId(null);        viewModel.dataModel.ThirdClassId(null);    };    viewModel.handleSelectBoxChangeSecondClass = function (e) {        BWA.DataUtil.setArrayDataSourceFilter(facilityClassDataSource, 'ParentFacilityClassId', e.value, facilityClasses[2]);        viewModel.dataModel.ThirdClassId(null);    };    /*    viewModel.handleSelectBoxChangeBuilding = function (e) {        BWA.DataUtil.setArrayDataSourceFilter(floorDataSource, 'BuildingId', e.value, floors);        viewModel.dataModel.FloorId(null);        viewModel.dataModel.ZoneId(null);    };    viewModel.handleSelectBoxChangeFloor = function (e) {        BWA.DataUtil.setArrayDataSourceFilter(zoneDataSource, 'FloorId', e.value, zones);        viewModel.dataModel.ZoneId(null);    };*/    function refreshList() {        //dataSource.pageIndex(0);        //dataSource.load();    }    /*    function getDefaultFloorForSearch() {        return $SearchView.createDefaultArray( 'FloorId' );            }*/    /*    viewModel.buildings = buildings;    viewModel.buildingsForSearch = buildingsForSearch;    viewModel.floors = floors;    viewModel.floorsForSearch = floorsForSearch;    viewModel.handleSelectBoxChangeBuilding = function( e ) {        BWA.DataUtil.setArrayDataSourceFilter( floorDataSource, 'BuildingId', e.value, floors );        viewModel.dataModel.FloorId( null );    }*/    viewModel.handleSearchInSearchView = handleSearchInSearchView;    /*    viewModel.facilityTypes = facilityTypes;    viewModel.dataModel.ClassName = ko.observable();    viewModel.facilityClasses = facilityClasses;    viewModel.searchFacilityClasses = searchFacilityClasses;    viewModel.buildings = buildings;    viewModel.floors = floors;    viewModel.zones = zones;*/    /*    function handleSelectedFacilityInSearchView(facility) {        m_Facility = facility;        return;    }*/    return viewModel;};
 |