InfoUtil.js 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. var UserStorageResource = require('../../common/UserStorageResource.js');
  2. var Common = require('../../common/Common.js');
  3. export default {
  4. cloneField: function (field) {
  5. var fieldClone = {
  6. 'fieldName': field.fieldName,
  7. 'name': field.name,
  8. 'nameEng': field.nameEng,
  9. 'isShow': field.isShow,
  10. 'mandatory': field.mandatory,
  11. 'sortNo':field.sortNo,
  12. 'width':field.width,
  13. };
  14. return fieldClone;
  15. },
  16. // 获取InfoFilterField的Key
  17. getInfoFilterFieldKey: function(infoFilterFieldItem){
  18. if(infoFilterFieldItem == undefined){
  19. return undefined;
  20. }
  21. return '#InfoFilterFieldItem_' + infoFilterFieldItem.id + '_' + infoFilterFieldItem.fieldName + '_' + infoFilterFieldItem.rowNumber;
  22. },
  23. saveInfoFilterFields: function (infoWindowNo, filterFields) {
  24. var key = 'InfoFilterFields_' + infoWindowNo;
  25. var userStorageDtos = [
  26. {
  27. key: key,
  28. value: JSON.stringify(filterFields),
  29. },
  30. ];
  31. return new Promise(function (resolve, reject) {
  32. UserStorageResource.uploadUserStorage(userStorageDtos).then(successData => {
  33. resolve();
  34. }, errorData => {
  35. Common.processException(errorData);
  36. reject();
  37. });
  38. });
  39. },
  40. saveInfoGridFields: function (infoWindowNo, filterGrids) {
  41. var key = 'InfoGridFields_' + infoWindowNo;
  42. var userStorageDtos = [
  43. {
  44. key: key,
  45. value: JSON.stringify(filterGrids),
  46. },
  47. ];
  48. return new Promise(function (resolve, reject) {
  49. UserStorageResource.uploadUserStorage(userStorageDtos).then(successData => {
  50. resolve();
  51. }, errorData => {
  52. Common.processException(errorData);
  53. reject();
  54. });
  55. });
  56. },
  57. restoreInfoFilterFields: function (infoWindowNo, localInfoFilterFields) {
  58. var key = 'InfoFilterFields_' + infoWindowNo;
  59. if (localInfoFilterFields != null) {
  60. UserStorageResource.uniqueByKey(key).then(successData => {
  61. var remoteInfoFilterFields = null;
  62. if (successData != null) {
  63. remoteInfoFilterFields = JSON.parse(successData);
  64. }else{
  65. remoteInfoFilterFields = null;
  66. }
  67. if (remoteInfoFilterFields != null) {
  68. localInfoFilterFields.forEach(localInfoFilterField => {
  69. remoteInfoFilterFields.forEach(remoteInfoFilterField => {
  70. if (remoteInfoFilterField != null && localInfoFilterField != null &&
  71. localInfoFilterField.fieldName == remoteInfoFilterField.fieldName) {
  72. localInfoFilterField.isShow = remoteInfoFilterField.isShow;
  73. localInfoFilterField.sortNo = remoteInfoFilterField.sortNo == null ? 0 : remoteInfoFilterField.sortNo;
  74. }
  75. });
  76. });
  77. localInfoFilterFields.sort(function(item1, item2){
  78. return item1.sortNo - item2.sortNo;
  79. });
  80. }else{
  81. localInfoFilterFields.forEach(localInfoFilterField => {
  82. if(localInfoFilterField.sortNo == undefined){
  83. localInfoFilterField.sortNo = 10;
  84. }
  85. });
  86. localInfoFilterFields.sort(function(item1, item2){
  87. return item1.sortNo - item2.sortNo;
  88. });
  89. }
  90. }, errorData => {
  91. Common.processException(errorData);
  92. });
  93. }
  94. },
  95. restoreInfoGridFields: function (infoWindowNo, localInfoGridFields) {
  96. var key = 'InfoGridFields_' + infoWindowNo;
  97. if (localInfoGridFields != null) {
  98. UserStorageResource.uniqueByKey(key).then(successData => {
  99. var remoteInfoGridFields = null;
  100. if (successData != null) {
  101. remoteInfoGridFields = JSON.parse(successData);
  102. }else{
  103. remoteInfoGridFields = null;
  104. }
  105. if (remoteInfoGridFields != null && remoteInfoGridFields != undefined) {
  106. localInfoGridFields.forEach(localInfoGridField => {
  107. remoteInfoGridFields.forEach(remoteInfoGridField => {
  108. if (remoteInfoGridField != null && localInfoGridField != null &&
  109. localInfoGridField.fieldName == remoteInfoGridField.fieldName) {
  110. localInfoGridField.isShow = remoteInfoGridField.isShow;
  111. localInfoGridField.sortNo = remoteInfoGridField.sortNo == null ? 0 : remoteInfoGridField.sortNo;
  112. localInfoGridField.width = remoteInfoGridField.width;
  113. }
  114. });
  115. });
  116. localInfoGridFields.sort(function(item1, item2){
  117. return item1.sortNo - item2.sortNo;
  118. });
  119. }else{
  120. localInfoGridFields.forEach(localInfoGridField => {
  121. if(localInfoGridField.sortNo == undefined){
  122. localInfoGridField.sortNo = 10;
  123. }
  124. });
  125. localInfoGridFields.sort(function(item1, item2){
  126. return item1.sortNo - item2.sortNo;
  127. });
  128. }
  129. }, errorData => {
  130. Common.processException(errorData);
  131. });
  132. }
  133. },
  134. };