coe.js 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. /**
  2. * Created by CSL on 2017-05-18.
  3. */
  4. var pageObj = {
  5. initPage: function (){
  6. $("#drirect-dinge").click(function(){
  7. $(this).attr('href', "/rationRepository/ration" + "?repository=" + getQueryString("repository"))
  8. });
  9. $("#gongliao").click(function(){
  10. $(this).attr('href', "/rationRepository/lmm" + "?repository=" + getQueryString("repository"))
  11. });
  12. var libID = getQueryString("repository");
  13. var libName = storageUtil.getSessionCache("RationGrp","repositoryID_" + libID);
  14. if (libName) {
  15. var html = $("#rationname")[0].outerHTML;
  16. html = html.replace("XXX定额库", libName);
  17. $("#rationname")[0].outerHTML = html;
  18. };
  19. coeList.show();
  20. }
  21. };
  22. var coeList = {
  23. mainSpread: null,
  24. detailSpread: null,
  25. datas: [],
  26. colDefMain: [
  27. {name: "ID", displayName: "编号", size: 100},
  28. {name: "name", displayName: "名称", size: 280},
  29. {name: "content", displayName: "内容", size: 250}
  30. ],
  31. colDefContent: [
  32. {name: "coeType", displayName: "类型", size: 100, hAlign: "center"},
  33. {name: "gljID", displayName: "工料机ID", size: 100, hAlign: "center",formatter: "00000000"},
  34. {name: "operator", displayName: "操作符", size: 60, hAlign: "center"},
  35. {name: "amount", displayName: "数量", size: 80, hAlign: "right"}
  36. ],
  37. show: function (){
  38. var me = this;
  39. me.getDatas();
  40. me.mainSpread = sheetObj.create($('#mainSpread')[0], me.colDefMain, me.datas);
  41. me.detailSpread = sheetObj.create($('#contentSpread')[0], me.colDefContent, me.datas[0].coes);
  42. var coeType = new GC.Spread.Sheets.CellTypes.ComboBox();
  43. coeType.items(["单个","全部","人工类","材料类","机械类"]);
  44. me.detailSpread.getSheet(0).getRange(-1, 0, -1, 1).cellType(coeType);
  45. var operType = new GC.Spread.Sheets.CellTypes.ComboBox();
  46. operType.items(["+","-","*","/","="]);
  47. me.detailSpread.getSheet(0).getRange(-1, 2, -1, 1).cellType(operType);
  48. me.detailSpread.options.showVerticalScrollbar = false;
  49. me.mainSpread.getSheet(0).bind(GC.Spread.Sheets.Events.EnterCell, me.onMainEnterCell);
  50. me.detailSpread.getSheet(0).bind(GC.Spread.Sheets.Events.CellChanged, me.onDetailCellChanged);
  51. },
  52. getDatas: function () {
  53. var me = this;
  54. var libID = getQueryString("repository");
  55. $.ajax({
  56. type:"POST",
  57. url:"/rationRepository/api/getCoeList",
  58. data:{"libID": libID},
  59. dataType:"json",
  60. cache:false,
  61. async: false,
  62. timeout:20000,
  63. success: function (result) {
  64. if (result.data) {
  65. me.datas = result.data;
  66. };
  67. },
  68. error: function (result) {
  69. alert('内部程序错误!');
  70. }
  71. })
  72. },
  73. getLibID: function(libName){
  74. var me = this;
  75. $.ajax({
  76. type:"POST",
  77. url:"/rationRepository/api/getLibIDByName",
  78. data:{"libName": libName},
  79. dataType:"json",
  80. cache:false,
  81. async: false,
  82. timeout:20000,
  83. success: function (result) {
  84. if (result.data) {
  85. me.libID = result.data;
  86. }
  87. },
  88. error: function (result) {
  89. alert('内部程序错误!');
  90. }
  91. })
  92. },
  93. onMainEnterCell: function(sender, args) {
  94. var me = coeList;
  95. var row = args.sheet.getActiveRowIndex();
  96. me.detailSpread.suspendPaint();
  97. me.detailSpread.getSheet(0).setDataSource(me.datas[row].coes);
  98. me.detailSpread.resumePaint();
  99. },
  100. onDetailCellChanged: function(sender, args) {
  101. //alert('onDetailCellChanged');
  102. var me = coeList;
  103. var row = args.sheet.getActiveRowIndex();
  104. var mainRow = me.mainSpread.getSheet(0).getActiveRowIndex();
  105. var curType = args.sheet.getValue(row,0);
  106. if (!(curType == '单个')){
  107. me.detailSpread.suspendEvent();
  108. args.sheet.setValue(row, 1, null);
  109. me.detailSpread.resumeEvent();
  110. //args.sheet.getCell(row, 1).backColor("red");
  111. }
  112. else{
  113. //args.sheet.getCell(row, 1).backColor("Blue");
  114. };
  115. var obj = me.datas[mainRow];
  116. me.save([],[],[obj]);
  117. },
  118. save: function(addArr, deleteArr, updateArr) {
  119. $.ajax({
  120. type:"POST",
  121. url:"api/saveCoeList",
  122. data: {"data": JSON.stringify({"addArr": addArr, "deleteArr": deleteArr, "updateArr": updateArr})},
  123. dataType:"json",
  124. cache:false,
  125. timeout:5000,
  126. success:function(result){
  127. if (result.error) {
  128. alert(result.message);
  129. } else {
  130. // 成功。
  131. }
  132. },
  133. error:function(err){
  134. alert("内部程序错误!");
  135. }
  136. })
  137. }
  138. };
  139. pageObj.initPage();