2fa2ac62d2d5b503580e2b88f0ccf899a50c0f79.svn-base 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. $(function() {
  2. BemsWebApplication.Facility.setupMultiViewInPopup = function(viewModel, selectedFacility, multiViewDataSource) {
  3. "use strict";
  4. var facilityFactory = BemsWebApplication.Factory.Facility,
  5. dataViewModel = new BemsWebApplication.CmFacilityViewModel(),
  6. datagrid = null;
  7. var dataSource = BWA.DataUtil.createDataSource({
  8. dataSourceOptions: facilityFactory.getDataSourceForDataGrid()
  9. }, 'CmFacility');
  10. var dataGridOptions = utils.datagrid.defaultOptions({
  11. dxDataSource: dataSource,
  12. selectedSourceItem: dataViewModel,
  13. datagridId: 'childFacilitiesDataGrid',
  14. dbId: 'CmFacility',
  15. height: 480,
  16. handleDataGridRowClick: function() {
  17. },
  18. contentReadyAction: function(e) {
  19. },
  20. columns: facilityFactory.getColumns([
  21. { dataField: 'ClassName', width: '25%' },
  22. { dataField: 'Name', width: '30%' },
  23. { dataField: 'ManufactureModel', width: '15%' },
  24. { dataField: 'Location', width: '30%' }
  25. ]),
  26. wordWrapEnabled: true,
  27. cellPrepared: BemsWebApplication.Factory.Facility.cellPrepared,
  28. });
  29. //function load() {
  30. // //var f = BWA.DataUtil.makeEqualArrayForFilter;
  31. // //datagrid.filter([
  32. // // f('SiteId', selectedFacility().SiteId()),
  33. // // 'and',
  34. // // f('ParentFacilityCode', selectedFacility().FacilityCode())
  35. // //]);
  36. //}
  37. selectedFacility.subscribe(function(item) {
  38. if (_.has(item, 'SiteId') === false ||
  39. _.has(item, 'FacilityCode') === false) {
  40. return;
  41. }
  42. var eq = BWA.DataUtil.constructEqualFilter;
  43. $('#childFacilitiesDataGrid').dxDataGrid('instance').filter([
  44. eq('SiteId', item.SiteId()),
  45. 'and',
  46. eq('ParentFacilityCode', item.FacilityCode())
  47. ]);
  48. });
  49. multiViewDataSource.push({
  50. viewModel: viewModel,
  51. dataGridOptions: dataGridOptions,
  52. template: 'childFacilities'
  53. });
  54. return {
  55. // load: load
  56. }
  57. };
  58. });