Craft.js 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.pm.craft.Craft', {
  3. extend: 'Ext.app.Controller',
  4. FormUtil: Ext.create('erp.util.FormUtil'),
  5. BaseUtil: Ext.create('erp.util.BaseUtil'),
  6. GridUtil: Ext.create('erp.util.GridUtil'),
  7. views:[
  8. 'pm.craft.Craft','core.form.Panel','core.grid.Panel2','core.toolbar.Toolbar',
  9. 'core.button.Add','core.button.Save','core.button.Close','core.button.DeleteDetail',
  10. 'core.button.Submit','core.button.ResSubmit','core.button.Audit','core.button.ResAudit',
  11. 'core.button.Update','core.button.Delete','core.button.Scan','core.form.YnField',
  12. 'core.trigger.TextAreaTrigger','core.trigger.DbfindTrigger'
  13. ],
  14. init:function(){
  15. var me = this;
  16. this.control({
  17. 'erpGridPanel2': {
  18. itemclick: function(selModel, record){
  19. if(!Ext.getCmp('grid').readOnly){
  20. this.onGridItemClick(selModel, record);
  21. }
  22. }
  23. },
  24. 'erpSaveButton': {
  25. click: function(btn){
  26. me.beforeSaveOrUpdate();
  27. setTimeout(function(){
  28. me.FormUtil.beforeSave(me);
  29. },200);
  30. }
  31. },
  32. 'erpCloseButton': {
  33. click: function(btn){
  34. this.FormUtil.beforeClose(this);
  35. }
  36. },
  37. 'erpUpdateButton': {
  38. click: function(btn){
  39. me.beforeSaveOrUpdate();
  40. setTimeout(function(){
  41. me.FormUtil.onUpdate(me);
  42. },200);
  43. }
  44. },
  45. 'erpDeleteButton': {
  46. click: function(btn){
  47. me.FormUtil.onDelete(Ext.getCmp('cr_id').value);
  48. }
  49. },
  50. 'erpAddButton': {
  51. click: function(){
  52. me.FormUtil.onAdd('addCraft', '新增工艺资料', 'jsps/pm/craft/craft.jsp');
  53. }
  54. },
  55. 'erpSubmitButton': {
  56. afterrender: function(btn){
  57. var status = Ext.getCmp('cr_statuscode');
  58. if(status && status.value != 'ENTERING'){
  59. btn.hide();
  60. }
  61. },
  62. click: function(btn){
  63. me.FormUtil.onSubmit(Ext.getCmp('cr_id').value);
  64. }
  65. },
  66. 'erpResSubmitButton': {
  67. afterrender: function(btn){
  68. var status = Ext.getCmp('cr_statuscode');
  69. if(status && status.value != 'COMMITED'){
  70. btn.hide();
  71. }
  72. },
  73. click: function(btn){
  74. me.FormUtil.onResSubmit(Ext.getCmp('cr_id').value);
  75. }
  76. },
  77. 'erpAuditButton': {
  78. afterrender: function(btn){
  79. var status = Ext.getCmp('cr_statuscode');
  80. if(status && status.value != 'COMMITED'){
  81. btn.hide();
  82. }
  83. },
  84. click: function(btn){
  85. me.FormUtil.onAudit(Ext.getCmp('cr_id').value);
  86. }
  87. },
  88. 'erpResAuditButton': {
  89. afterrender: function(btn){
  90. var status = Ext.getCmp('cr_statuscode');
  91. if(status && status.value != 'AUDITED'){
  92. btn.hide();
  93. }
  94. },
  95. click: function(btn){
  96. me.FormUtil.onResAudit(Ext.getCmp('cr_id').value);
  97. }
  98. },
  99. });
  100. },
  101. onGridItemClick: function(selModel, record){//grid行选择
  102. this.GridUtil.onGridItemClick(selModel, record);
  103. },
  104. getForm: function(btn){
  105. return btn.ownerCt.ownerCt;
  106. },
  107. beforeSaveOrUpdate: function(){
  108. var me = this;
  109. var grid = Ext.getCmp('grid');
  110. var items = grid.getStore().data.items;//获取store里面的数据
  111. var sum_price = 0;
  112. var sum_count = 0;
  113. Ext.each(items,function(item,index){
  114. if(!me.GridUtil.isBlank(grid, item.data)){
  115. sum_price = sum_price + Number(item.data['cd_price']);
  116. sum_count ++;
  117. }
  118. });
  119. Ext.getCmp('cr_price').setValue(sum_price.toFixed(4));
  120. Ext.getCmp('cr_stepcount').setValue(sum_count);
  121. }
  122. });