ProdAbnormal.js 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.scm.qc.ProdAbnormal', {
  3. extend: 'Ext.app.Controller',
  4. FormUtil: Ext.create('erp.util.FormUtil'),
  5. BaseUtil: Ext.create('erp.util.BaseUtil'),
  6. views:[
  7. 'core.form.Panel','scm.qc.ProdAbnormal','core.toolbar.Toolbar','core.form.MultiField',
  8. 'core.form.FileField','core.form.CheckBoxGroup',
  9. 'core.button.Save','core.button.Add','core.button.Submit','core.button.Print','core.button.ResAudit',
  10. 'core.button.Audit','core.button.Close','core.button.Delete','core.button.Update',
  11. 'core.button.ResSubmit','core.button.Flow','core.button.Check','core.button.ResCheck',
  12. 'core.trigger.DbfindTrigger','core.trigger.TextAreaTrigger','core.form.YnField'
  13. ],
  14. init:function(){
  15. var me = this;
  16. this.control({
  17. 'erpSaveButton': {
  18. click: function(btn){
  19. var form = me.getForm(btn);
  20. if(Ext.getCmp(form.codeField).value == null || Ext.getCmp(form.codeField).value == ''){
  21. me.BaseUtil.getRandomNumber();//自动添加编号
  22. }
  23. var inqty = Ext.Number.from(Ext.getCmp('pa_inqty').getValue(), 0),
  24. checkqty = Ext.Number.from(Ext.getCmp('pa_checkqty').getValue(), 0),
  25. ngqty = Ext.Number.from(Ext.getCmp('pa_ngqty').getValue(), 0);
  26. if(checkqty > inqty){
  27. showError('抽检数不能大于来料数量!');return;
  28. }
  29. if(ngqty > checkqty){
  30. showError('不合格数量不能大于抽检数!');return;
  31. }
  32. var form = Ext.getCmp('form');
  33. if(checkqty != 0){
  34. Ext.getCmp('pa_ngrate').setValue(form.BaseUtil.numberFormat(ngqty/checkqty, 6));
  35. }
  36. this.FormUtil.beforeSave(this);
  37. }
  38. },
  39. 'erpDeleteButton' : {
  40. click: function(btn){
  41. me.FormUtil.onDelete(Ext.getCmp('pa_id').value);
  42. }
  43. },
  44. 'erpUpdateButton': {
  45. click: function(btn){
  46. var inqty = Ext.Number.from(Ext.getCmp('pa_inqty').getValue(), 0),
  47. checkqty = Ext.Number.from(Ext.getCmp('pa_checkqty').getValue(), 0),
  48. ngqty = Ext.Number.from(Ext.getCmp('pa_ngqty').getValue(), 0);
  49. if(checkqty > inqty){
  50. showError('抽检数不能大于来料数量!');return;
  51. }
  52. if(ngqty > checkqty){
  53. showError('不合格数量不能大于抽检数!');return;
  54. }
  55. var form = Ext.getCmp('form');
  56. if(checkqty != 0){
  57. Ext.getCmp('pa_ngrate').setValue(form.BaseUtil.numberFormat(ngqty/checkqty, 6));
  58. }
  59. this.FormUtil.onUpdate(this);
  60. }
  61. },
  62. 'erpAddButton': {
  63. click: function(){
  64. me.FormUtil.onAdd('addProdAbnormal', '新增物料品质异常联络单', 'jsps/scm/qc/prodAbnormal.jsp');
  65. }
  66. },
  67. 'erpCloseButton': {
  68. click: function(btn){
  69. me.FormUtil.beforeClose(me);
  70. }
  71. },
  72. 'erpAuditButton': {
  73. afterrender: function(btn){
  74. var status = Ext.getCmp('pa_statuscode'), checkstatus = Ext.getCmp('pa_checkstatuscode');
  75. if(status && status.value != 'COMMITED'){
  76. btn.hide();
  77. }
  78. if(checkstatus && checkstatus.value == 'APPROVE'){
  79. btn.hide();
  80. }
  81. },
  82. click: function(btn){
  83. me.FormUtil.onAudit(Ext.getCmp('pa_id').value);
  84. }
  85. },
  86. 'erpResAuditButton': {
  87. afterrender: function(btn){
  88. var status = Ext.getCmp('pa_statuscode'), checkstatus = Ext.getCmp('pa_checkstatuscode');
  89. if(status && status.value != 'AUDITED'){
  90. btn.hide();
  91. }
  92. if(checkstatus && checkstatus.value == 'APPROVE'){
  93. btn.hide();
  94. }
  95. },
  96. click: function(btn){
  97. me.FormUtil.onResAudit(Ext.getCmp('pa_id').value);
  98. }
  99. },
  100. 'erpSubmitButton': {
  101. afterrender: function(btn){
  102. var status = Ext.getCmp('pa_checkstatuscode');
  103. if(status && status.value != 'UNAPPROVED'){
  104. btn.hide();
  105. }
  106. var auditstatus = Ext.getCmp('pa_statuscode');
  107. if(auditstatus && auditstatus.value != 'ENTERING'){
  108. btn.hide();
  109. }
  110. },
  111. click: function(btn){
  112. me.FormUtil.onSubmit(Ext.getCmp('pa_id').value);
  113. }
  114. },
  115. 'erpResSubmitButton': {
  116. afterrender: function(btn){
  117. var status = Ext.getCmp('pa_statuscode'), checkstatus = Ext.getCmp('pa_checkstatuscode');
  118. if(status && status.value != 'COMMITED'){
  119. btn.hide();
  120. }
  121. if(checkstatus && checkstatus.value == 'APPROVE'){
  122. btn.hide();
  123. }
  124. },
  125. click: function(btn){
  126. me.FormUtil.onResSubmit(Ext.getCmp('pa_id').value);
  127. }
  128. },
  129. 'erpCheckButton': {
  130. afterrender: function(btn){
  131. var status = Ext.getCmp('pa_statuscode'), checkstatus = Ext.getCmp('pa_checkstatuscode');
  132. if(status && status.value != 'AUDITED'){
  133. btn.hide();
  134. }
  135. if(checkstatus && checkstatus.value != 'UNAPPROVED'){
  136. btn.hide();
  137. }
  138. },
  139. click: function(btn){
  140. me.FormUtil.onCheck(Ext.getCmp('pa_id').value);
  141. }
  142. },
  143. 'erpResCheckButton': {
  144. afterrender: function(btn){
  145. var status = Ext.getCmp('pa_checkstatuscode');
  146. if(status && status.value != 'APPROVE' ){
  147. btn.hide();
  148. }
  149. },
  150. click: function(btn){
  151. me.FormUtil.onResCheck(Ext.getCmp('pa_id').value);
  152. }
  153. },
  154. 'erpPrintButton': {
  155. click: function(btn){
  156. var condition = '{ProdAbnormal.pa_id}=' + Ext.getCmp('pa_id').value + '';
  157. var id = Ext.getCmp('pa_id').value;
  158. reportName="ProdAbnormal";
  159. me.FormUtil.onwindowsPrint(id, reportName, condition);
  160. }
  161. }
  162. });
  163. },
  164. getForm: function(btn){
  165. return btn.ownerCt.ownerCt;
  166. }
  167. });