deb0709d25ef0a2dc38dc9859f4fd09e1c284587.svn-base 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. BemsWebApplication.ControlValueSet = function (params, viewInfo) {
  2. "use strict";
  3. /*
  4. var facilityViewModel = new BWA.CmFacilityViewModel();
  5. var cmFacilityDataSource = BemsWebApplication.db.createDataSource('CmFacility', true);
  6. var m_Facility;
  7. var facilityDataSource = BWA.db.createDataSource('CmFacility'),
  8. facilitiesForSearch = ko.observableArray(),
  9. facilityCodeForSearch = ko.observable(0),
  10. deferredForSearch = new $.Deferred(); */
  11. var eq = BWA.DataUtil.constructEqualFilter,
  12. and = BWA.DataUtil.andFilter;
  13. //BWA.UserInfo.SiteId()
  14. var facilityClassDataSource = BemsWebApplication.db.createDataSource('FmsFacilityCodeClass');
  15. //var buildingDataSource = BemsWebApplication.db.createDataSource('CmBuilding', true),
  16. // floorDataSource = BemsWebApplication.db.createDataSource('CmFloor'),
  17. //zoneDataSource = BemsWebApplication.db.createDataSource('CmZone');
  18. // 설비분류 데이터소스
  19. var facilityTypeDataSource = BemsWebApplication.db.createDataSource('BemsFacilityType');
  20. var facilityTypes = ko.observableArray();
  21. var facilityClasses = [ko.observableArray(), ko.observableArray(), ko.observableArray()];
  22. var buildings = ko.observableArray(),
  23. floors = ko.observableArray(),
  24. zones = ko.observableArray();
  25. var searchFacilityClasses = [ko.observableArray(), ko.observableArray(), ko.observableArray()],
  26. searchFacilityClassValues = [ko.observable(), ko.observable(), ko.observable()],
  27. searchBuildings = ko.observableArray(),
  28. searchFloors = ko.observableArray(),
  29. searchBuildingId = ko.observable(),
  30. searchFloorId = ko.observable();
  31. // var defaultSearchClassArray = $SearchView.createDefaultArray('FacilityClassId'),
  32. // defaultSearchBuildingArray = $SearchView.createDefaultArray('BuildingId'),
  33. // defaultSearchFloorArray = $SearchView.createDefaultArray('FloorId');
  34. var searchDeferred = new $.Deferred();
  35. /*
  36. selectedFacilityDataInSearchParentPopup.subscribe(function (value) {
  37. viewModel.dataModel.ParentFacilityCode(value.FacilityCode);
  38. viewModel.dataModel.ParentFacilityName(value.Name);
  39. });
  40. selectedUserData.subscribe(function (value) {
  41. if (isMainContactor) {
  42. viewModel.dataModel.MainContactorUserId(value.UserId);
  43. viewModel.dataModel.MainContactorUserName(value.Name);
  44. }
  45. else {
  46. viewModel.dataModel.SubContactorUserId(value.UserId);
  47. viewModel.dataModel.SubContactorUserName(value.Name);
  48. }
  49. });*/
  50. var handleFirstClassChangedValueInSearchView = function (e) {
  51. if (e.value === 0) {
  52. initializeSearchClasses();
  53. return;
  54. }
  55. BWA.DataUtil.setArrayDataSourceFilter(facilityClassDataSource, 'ParentFacilityClassId', e.value, searchFacilityClasses[1], defaultSearchClassArray);
  56. };
  57. var handleSecondClassChangedValueInSearchView = function (e) {
  58. if (e.value === 0) {
  59. initializeSearchClasses(true);
  60. return;
  61. }
  62. BWA.DataUtil.setArrayDataSourceFilter(facilityClassDataSource, 'ParentFacilityClassId', e.value, searchFacilityClasses[2], defaultSearchClassArray);
  63. };
  64. /*
  65. var handleBuildingInSearchView = function (e) {
  66. if (e.value === 0) {
  67. searchFloors(defaultSearchFloorArray.slice(0));
  68. searchFloorId(0);
  69. return 0;
  70. }
  71. BWA.DataUtil.setArrayDataSourceFilter(floorDataSource, 'BuildingId', e.value, searchFloors, defaultSearchFloorArray);
  72. }*/
  73. function initializeSearchClasses(onlyThird) {
  74. if (onlyThird === undefined || onlyThird === false) {
  75. searchFacilityClasses[1](defaultSearchClassArray.slice(0));
  76. searchFacilityClassValues[1](0);
  77. }
  78. searchFacilityClasses[2](defaultSearchClassArray.slice(0));
  79. searchFacilityClassValues[2](0);
  80. }
  81. var facilityOptions = BemsWebApplication.Factory.Facility;
  82. var works = ko.observableArray();
  83. var workDataSource = BWA.DataUtil.createDataSource({
  84. dataSourceOptions: {
  85. select: ['SiteId', 'FacilityCode', 'CmFacility/Name', 'Name', 'BemsFuelType/Name', 'BemsServiceType/Name'],
  86. //'H1', 'H2', 'H3', 'H4', 'H5', 'H6', 'H7', 'H8', 'H9', 'H10', 'H11', 'H12'],
  87. expand: ['CmFacility', 'BemsFuelType', 'BemsServiceType'],
  88. extendOptions: {
  89. forceOriginalField: true,
  90. },
  91. filter: [
  92. //['FacilityCode', "=", 1390],
  93. ]
  94. },
  95. }, 'BemsMonitoringPoint');
  96. /*
  97. function handleSearchInSearchView(filter, searchViewItems) {
  98. //workDataSource.filter = filter;
  99. //workDataSource.load().done(function (workResult) {
  100. viewModel.dataSource.load().done(function (workResult) {
  101. _.each(workResult, function (x) {
  102. x[6] = 'CV';
  103. x.CV = 100;
  104. //works.push(x);
  105. //alert(x.Name());
  106. });
  107. //datas = workResult;
  108. //works(workResult);
  109. //viewModel.dataSource = works;
  110. });
  111. viewModel.dataSource = null;
  112. viewModel.refreshList();
  113. }
  114. */
  115. //var tempDate = new Date();
  116. var paramDate = new Date(2015,8,17, 15,0, 0);
  117. //var viewModel = $.extend(BWA.CommonView.create(
  118. //var viewModel = BWA.DataGrid.createViewWithDataGrid(params, viewInfo, 'BemsMonitoringPoint', {
  119. //var viewModel = BWA.DataGrid.createViewWithDataGrid(params, viewInfo, null, {
  120. BWA.ControlValueSet = {
  121. workDataGridOptions: utils.datagrid.defaultOptions({
  122. handleDataGridRowClick: function (row) {
  123. alert(0);
  124. },
  125. dataSource: works,
  126. columns: [
  127. { dataField: 'FacilityCode', caption: $G('number'), width: '4%', alignment: 'center' }, // ?
  128. { dataField: 'CmFacility/Name', caption: '설비명', width: '20%', alignment: 'center', allowEditing: false },
  129. { dataField: 'Name', caption: '관제점명', width: '20%', alignment: 'center', allowEditing: false },
  130. { dataField: 'BemsFuelType/Name', caption: '에너지원', width: '10%', alignment: 'center', allowEditing: false, },
  131. { dataField: 'BemsServiceType/Name', caption: '용도', width: '10%', alignment: 'center', allowEditing: false },
  132. { dataField: 'CV', caption: '설정값', width: '8%', alignment: 'center', },
  133. ],
  134. }),
  135. /*
  136. popupWidth: 480,
  137. searchViewItems: [
  138. { id: 'CmFacility/Name' },
  139. { id: 'Name' },
  140. ],
  141. promiseDataInSearchView: searchDeferred.promise(),
  142. handleViewShowing: function () {
  143. facilityClassDataSource.filter([
  144. ['SiteId', '=', BWA.UserInfo.SiteId()],
  145. 'and',
  146. ['ParentFacilityClassId', '=', null]
  147. ]);
  148. facilityTypeDataSource.filter([
  149. ['FacilityTypeId', '=', 1]
  150. ]);
  151. // 빌딩 데이터 로드 시점
  152. $.when(facilityClassDataSource.load(),
  153. //buildingDataSource.load(),
  154. facilityTypeDataSource.load()
  155. ).done(function (result1, result2, result3) {
  156. // searchDeferred.resolve();
  157. });
  158. },
  159. handleViewShown: function (dataViewModel, isEditModeInPopup) {
  160. //setupDropZone(isEditModeInPopup, dataViewModel);
  161. handleSearchInSearchView();
  162. },
  163. handleViewHidden: function () {
  164. $SearchView.visibleObservable(false); // hcLee 2015 03 23
  165. visiblePopup(false);
  166. },
  167. handlePopupShowing: function (that) {
  168. alert(9);
  169. }, */
  170. }
  171. };