819066048ffd8cceb17d4385ecb464bb6838ae23.svn-base 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. BemsWebApplication.EquipManagement = function (params, viewInfo) {
  2. "use strict";
  3. var codeTypeDataSource = BemsWebApplication.db.createDataSource('FmsEquipmentCodeType', true, false, true),
  4. codeStateTypeDataSource = BemsWebApplication.db.createDataSource('FmsEquipmentCodeStateType', false, false, true),
  5. warehouseDataSource = BemsWebApplication.db.createDataSource('FmsMaterialWarehouse', true, false, true);
  6. var codeTypes = ko.observableArray(),
  7. codeStateTypes = ko.observableArray(),
  8. warehouses = ko.observableArray();
  9. var codeTypesForSearch = ko.observableArray(),
  10. codeStateTypesForSearch = ko.observableArray(),
  11. warehousesForSearch = ko.observableArray();
  12. var deferredForSearch = new $.Deferred();
  13. var viewModel = BWA.DataGrid.createViewWithDataGrid(params, viewInfo, 'FmsEquipment', {
  14. dataSourceOptions: {
  15. select: [
  16. 'SiteId',
  17. 'EquipmentId',
  18. 'Name',
  19. 'EquipmentTypeId',
  20. 'WarehouseId',
  21. 'Unit',
  22. 'Standard',
  23. 'AddDate',
  24. 'UpdateDate',
  25. 'RegisterUserId',
  26. 'SupplierName',
  27. 'SupplierPhoneNo',
  28. 'FmsEquipmentCodeType/Name',
  29. 'CmUser/Name',
  30. ],
  31. expand: [
  32. 'CmUser',
  33. 'FmsEquipmentCodeType'
  34. ],
  35. extendOptions: {
  36. forceOriginalField: true,
  37. }
  38. },
  39. columns: [
  40. { dataField: 'Number', caption: $G('number'), width: '10%', alignment: 'center' },
  41. { dataField: 'Name', caption: $G('name'), width: '30%', alignment: 'center' },
  42. { dataField: 'FmsEquipmentCodeType/Name', caption: '분류', width: '20%', alignment: 'center' },
  43. { dataField: 'Standard', caption: '규격', width: '20%', alignment: 'center' },
  44. { caption: '보유수량', width: '20%', alignment: 'center', format: 'currency' }, // dataField: 'CurrentStockCount',
  45. { caption: '전체수량', width: '20%', alignment: 'center', format: 'currency' }, //
  46. { dataField: 'Unit', caption: '단위', width: '20%', alignment: 'center' },
  47. { dataField: 'CmUser/Name', caption: '등록자', width: '20%', alignment: 'center' },
  48. ],
  49. sort: { field: "EquipmentId", desc: true },
  50. searchViewItems: [{ id: 'Name' }, { id: 'Name' }],
  51. popupWidth: 400,
  52. handleViewShowing: function (dataModel) {
  53. $.when(
  54. codeStateTypeDataSource.load(),
  55. codeTypeDataSource.load(),
  56. warehouseDataSource.load()
  57. ).done(function (codeStateTypeResult, codeTypeResult, warehouseResult) {
  58. codeStateTypes(codeStateTypeResult[0]);
  59. codeTypes(codeTypeResult[0]);
  60. warehouses(warehouseResult[0]);
  61. codeStateTypesForSearch($SearchView.createArrayOfSelectBox('EquipmentStateTypeId', codeStateTypes()));
  62. codeTypesForSearch($SearchView.createArrayOfSelectBox('EquipmentTypeId', codeTypes()));
  63. warehousesForSearch($SearchView.createArrayOfSelectBox('WarehouseId', warehouses()));
  64. deferredForSearch.resolve();
  65. });
  66. },
  67. handleDataGridRowClick: function (id, dataGrid, clickRow, popupVisible) {
  68. dataGrid.clearSelection();
  69. var data = clickRow.data;
  70. var dataModel = viewModel.dataModel;
  71. //dataModel.CompanyName = $KoSet( dataModel.CompanyName, data.CmCompany_Name );
  72. popupVisible(true);
  73. },
  74. handlePopupShown: function (isEditMode, isNew, dataViewModel) {
  75. if (isNew) { // 신규등록인 경우
  76. dataViewModel.AddDate($G.date(new Date()));
  77. dataViewModel.UpdateDate($G.date(new Date()));
  78. dataViewModel.RegisterUserId(BWA.UserInfo.UserId());
  79. }
  80. }
  81. });
  82. viewModel.codeTypes = codeTypes;
  83. viewModel.codeStateTypes = codeStateTypes;
  84. viewModel.warehouses = warehouses;
  85. return viewModel;
  86. };