Feeder.js 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.pm.mes.Feeder', {
  3. extend: 'Ext.app.Controller',
  4. FormUtil: Ext.create('erp.util.FormUtil'),
  5. BaseUtil: Ext.create('erp.util.BaseUtil'),
  6. views:[
  7. 'pm.mes.MakePrepare','core.form.Panel','core.grid.Panel2','core.button.Delete',
  8. 'core.button.Add','core.button.Save','core.button.Close',
  9. 'core.button.ResAudit','core.button.Update','core.button.TurnProdIOGet','core.button.ResSubmit',
  10. 'core.form.YnField','core.grid.YnColumn', 'core.grid.TfColumn','core.button.Submit','common.datalist.Toolbar',
  11. 'core.trigger.TextAreaTrigger','core.trigger.DbfindTrigger','core.button.Audit','common.datalist.GridPanel',
  12. 'core.button.Scrap','core.button.RepairLog'
  13. ],
  14. init:function(){
  15. var me = this;
  16. this.control({
  17. 'erpGridPanel2': {
  18. reconfigure: function(grid){
  19. Ext.defer(function(){
  20. grid.readOnly = true;
  21. }, 500);
  22. }
  23. },
  24. 'erpSaveButton': {
  25. click: function(btn){
  26. var form = me.getForm(btn);
  27. if(Ext.getCmp(form.codeField).value == null || Ext.getCmp(form.codeField).value == ''){
  28. me.BaseUtil.getRandomNumber();//自动添加编号
  29. }
  30. this.FormUtil.beforeSave(this);
  31. }
  32. },
  33. 'erpCloseButton': {
  34. click: function(btn){
  35. this.FormUtil.beforeClose(this);
  36. }
  37. },
  38. 'erpUpdateButton': {
  39. click: function(btn){
  40. this.FormUtil.onUpdate(this);
  41. }
  42. },
  43. 'erpDeleteButton': {
  44. click: function(btn){
  45. me.FormUtil.onDelete(Ext.getCmp('fe_id').value);
  46. }
  47. },
  48. 'erpAddButton': {
  49. click: function(){
  50. me.FormUtil.onAdd('addFeeder', '新增飞达', 'jsps/pm/mes/feeder.jsp');
  51. }
  52. },
  53. 'erpSubmitButton': {
  54. afterrender: function(btn){
  55. var status = Ext.getCmp('fe_statuscode');
  56. if(status && status.value != 'ENTERING'){
  57. btn.hide();
  58. }
  59. },
  60. click: function(btn){
  61. me.FormUtil.onSubmit(Ext.getCmp('fe_id').value);
  62. }
  63. },
  64. 'erpResSubmitButton': {
  65. afterrender: function(btn){
  66. var status = Ext.getCmp('fe_statuscode');
  67. if(status && status.value != 'COMMITED'){
  68. btn.hide();
  69. }
  70. },
  71. click: function(btn){
  72. me.FormUtil.onResSubmit(Ext.getCmp('fe_id').value);
  73. }
  74. },
  75. 'erpAuditButton': {
  76. afterrender: function(btn){
  77. var status = Ext.getCmp('fe_statuscode');
  78. if(status && status.value != 'COMMITED'){
  79. btn.hide();
  80. }
  81. },
  82. click: function(btn){
  83. me.FormUtil.onAudit(Ext.getCmp('fe_id').value);
  84. }
  85. },
  86. 'erpResAuditButton': {
  87. afterrender: function(btn){
  88. var status = Ext.getCmp('fe_statuscode');
  89. if(status && status.value != 'AUDITED'){
  90. btn.hide();
  91. }
  92. },
  93. click: function(btn){
  94. me.FormUtil.onResAudit(Ext.getCmp('fe_id').value);
  95. }
  96. },
  97. '#fe_id':{
  98. afterrender:function(a){
  99. if(!a || !a.value){
  100. Ext.getCmp('tab').setVisible(false);
  101. }
  102. }
  103. },
  104. 'tabpanel > #tab-list': {
  105. activate: function(panel) {
  106. var fecode = Ext.getCmp('fe_code').value, condition;
  107. if(!Ext.isEmpty(fecode) ){
  108. condition = "msl_fecode='" + fecode + "'";
  109. }
  110. if(panel.boxReady) {
  111. var grid = Ext.getCmp('grid2');
  112. if(grid) {
  113. grid.formCondition = condition;
  114. grid.getCount(null, grid.getCondition() || '');
  115. }
  116. } else {
  117. panel.boxReady = true;
  118. panel.add({
  119. xtype: 'erpDatalistGridPanel',
  120. caller: 'FeederUseRecord',
  121. anchor: '100% 100%',
  122. id:'grid2',
  123. formCondition: condition
  124. });
  125. }
  126. }
  127. },
  128. 'erpRepairLogButton':{//维修登记
  129. click:function(btn){
  130. var win = new Ext.window.Window({
  131. modal : true,
  132. id : 'win',
  133. height : '35%',
  134. width : '30%',
  135. layout : 'anchor',
  136. bodyStyle: 'background: #f1f1f1;',
  137. bodyPadding:5,
  138. items : [{
  139. anchor: '100% 100%',
  140. xtype: 'form',
  141. bodyStyle: 'background: #f1f1f1;',
  142. items:[{
  143. xtype:'textareatrigger',
  144. name:'bad_remark',
  145. fieldLabel:'故障描述',
  146. id:'bad_remark',
  147. allowBlank:false ,
  148. fieldStyle : "background:rgb(224, 224, 255);",
  149. labelStyle:"color:red;"
  150. },{
  151. xtype: 'checkbox',
  152. boxLabel : '累计数清零',
  153. name : 'ifclear',
  154. checked : false,
  155. id : 'ifclear',
  156. allowBlank:false
  157. }],
  158. buttonAlign : 'center',
  159. buttons: [{
  160. text: '确定' ,
  161. cls: 'x-btn-gray',
  162. iconCls: 'x-button-icon-save',
  163. id:'confirmBtn',
  164. formBind: true, //only enabled once the form is valid
  165. handler: function(btn) {
  166. me.saveRepairLog(Ext.getCmp('bad_remark').value,Ext.getCmp('ifclear').checked);
  167. }
  168. },{
  169. text: '取消' ,
  170. cls: 'x-btn-gray',
  171. iconCls: 'x-button-icon-close',
  172. handler: function(btn) {
  173. win.close();
  174. }
  175. }]
  176. }]
  177. });
  178. win.show();
  179. },
  180. afterrender:function(btn){
  181. var status = Ext.getCmp('fe_statuscode');
  182. if(status && status.value != 'AUDITED'){
  183. btn.hide();
  184. }
  185. }
  186. },
  187. 'erpScrapButton':{//报废
  188. click:function(btn){
  189. var win = new Ext.window.Window({
  190. modal : true,
  191. id : 'win',
  192. height : '35%',
  193. width : '30%',
  194. layout : 'anchor',
  195. bodyStyle: 'background: #f1f1f1;',
  196. bodyPadding:5,
  197. items : [{
  198. anchor: '100% 100%',
  199. xtype: 'form',
  200. bodyStyle: 'background: #f1f1f1;',
  201. defaults:{
  202. fieldStyle : "background:rgb(224, 224, 255);",
  203. labelStyle:"color:red;"
  204. },
  205. items:[{
  206. xtype:'textareatrigger',
  207. name:'scrap_remark',
  208. fieldLabel:'报废原因',
  209. id:'scrap_remark',
  210. allowBlank:false
  211. }],
  212. buttonAlign : 'center',
  213. buttons: [{
  214. text: '确定' ,
  215. cls: 'x-btn-gray',
  216. iconCls: 'x-button-icon-save',
  217. id:'confirmBtn',
  218. formBind: true, //only enabled once the form is valid
  219. handler: function(btn) {
  220. me.saveScrapLog(Ext.getCmp('scrap_remark').value);
  221. }
  222. },{
  223. text: '取消' ,
  224. cls: 'x-btn-gray',
  225. iconCls: 'x-button-icon-close',
  226. handler: function(btn) {
  227. win.close();
  228. }
  229. }]
  230. }]
  231. });
  232. win.show();
  233. },
  234. afterrender:function(btn){
  235. var status = Ext.getCmp('fe_statuscode');
  236. if(status && status.value != 'AUDITED'){
  237. btn.hide();
  238. }
  239. }
  240. }
  241. });
  242. },
  243. getForm: function(btn){
  244. return btn.ownerCt.ownerCt;
  245. },
  246. saveRepairLog:function(a,b){//保存维修登记
  247. Ext.getCmp('win').close();
  248. var fe_id = Ext.getCmp("fe_id").value;
  249. Ext.Ajax.request({
  250. url: basePath + 'pm/mes/saveFeederRepairLog.action',
  251. params: {
  252. caller : caller,
  253. fe_id : fe_id,
  254. remark : a,
  255. ifclear: b
  256. },
  257. async: false,
  258. callback: function(opt, s, r) {
  259. var rs = Ext.decode(r.responseText);
  260. if(rs.exceptionInfo) {
  261. showError(rs.exceptionInfo);
  262. }else{
  263. showMessage('提示','保存维修记录成功');
  264. var grid = Ext.getCmp('grid1');
  265. var gridParam = {caller: caller, condition: 'fe_id='+fe_id, _m: 0}
  266. grid.GridUtil.getGridColumnsAndStore(grid, 'common/singleGridPanel.action', gridParam, "");
  267. }
  268. }
  269. });
  270. },
  271. saveScrapLog:function(data){//报废记录
  272. var remark = data,fe_id=Ext.getCmp('fe_id').value;
  273. Ext.getCmp('win').close();
  274. Ext.Ajax.request({
  275. url: basePath + 'pm/mes/saveFeederScrapLog.action',
  276. params: {
  277. caller: caller,
  278. fe_id : fe_id,
  279. remark: remark
  280. },
  281. async: false,
  282. callback: function(opt, s, r) {
  283. var rs = Ext.decode(r.responseText);
  284. if(rs.exceptionInfo) {
  285. showError(rs.exceptionInfo);
  286. }else{
  287. showMessage('提示','报废成功');
  288. var grid = Ext.getCmp('grid1');
  289. var gridParam = {caller: caller, condition: 'fe_id='+fe_id, _m: 0}
  290. grid.GridUtil.getGridColumnsAndStore(grid, 'common/singleGridPanel.action', gridParam, "");
  291. }
  292. }
  293. });
  294. }
  295. });