BarStockProfit.js 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.scm.reserve.BarStockProfit', {
  3. extend: 'Ext.app.Controller',
  4. requires: ['erp.util.FormUtil', 'erp.util.GridUtil', 'erp.util.BaseUtil'],
  5. views:[
  6. 'core.form.Panel','scm.reserve.BarStockProfit','core.grid.Panel2','core.toolbar.Toolbar','core.form.MultiField','core.form.YnField',
  7. 'core.button.Save','core.button.Add','core.button.Submit','core.button.ResAudit', 'core.button.Audit','core.button.Close','core.button.Delete','core.button.Update','core.button.DeleteDetail','core.button.ResSubmit',
  8. 'core.button.Banned','core.button.ResBanned','core.button.Post','core.button.ResPost','core.button.Query','core.button.GetPrice','core.button.Barcode','core.trigger.DbfindTrigger',
  9. 'core.button.BatchGenBarcode','core.button.PrintAll'
  10. ],
  11. init:function(){
  12. var me = this;
  13. var grid = Ext.getCmp('grid');
  14. me.FormUtil = Ext.create('erp.util.FormUtil');
  15. me.GridUtil = Ext.create('erp.util.GridUtil');
  16. me.BaseUtil = Ext.create('erp.util.BaseUtil');
  17. this.control({
  18. 'erpGridPanel2': {
  19. afterrender: function(grid){},
  20. itemclick: function(selModel, record){
  21. if(record.data.bsd_id != 0 && record.data.bsd_id != null && record.data.bsd_id != ''){
  22. var btn = Ext.getCmp('barcodebtn');
  23. btn && btn.setDisabled(false);
  24. }
  25. this.GridUtil.onGridItemClick(selModel, record);
  26. }
  27. },
  28. 'dbfindtrigger[name=bsd_prodcode]':{
  29. focus: function(t){
  30. t.autoDbfind = false;
  31. t.setHideTrigger(false);
  32. t.setReadOnly(false);
  33. var bs_whcode = Ext.getCmp("bs_whcode").value;
  34. if (bs_whcode == ''|| bs_whcode == null){
  35. showError("请先选择仓库编号 !");
  36. t.setHideTrigger(true);
  37. t.setReadOnly(true);
  38. return;
  39. }
  40. var record = Ext.getCmp('grid').selModel.getLastSelected();
  41. var batchcode = record.data['bsd_batchcode'];
  42. if(batchcode !='' && batchcode != null){
  43. t.dbBaseCondition ="ba_whcode='"+bs_whcode+"' and ba_code='"+batchcode+"'";
  44. }else{
  45. t.dbBaseCondition ="ba_whcode='"+bs_whcode+"'";
  46. }
  47. }
  48. },
  49. 'dbfindtrigger[name=bsd_batchcode]':{
  50. focus: function(t){
  51. t.autoDbfind = false;
  52. t.setHideTrigger(false);
  53. t.setReadOnly(false);
  54. var bs_whcode = Ext.getCmp("bs_whcode").value;
  55. if (bs_whcode == ''|| bs_whcode == null){
  56. showError("请先选择仓库编号 !");
  57. t.setHideTrigger(true);
  58. t.setReadOnly(true);
  59. return;
  60. }
  61. var record = Ext.getCmp('grid').selModel.getLastSelected();
  62. var prodcode = record.data['bsd_prodcode'];
  63. if(prodcode !='' && prodcode != null){
  64. t.dbBaseCondition ="ba_whcode='"+bs_whcode+"' and ba_prodcode='"+prodcode+"'";
  65. }else{
  66. t.dbBaseCondition ="ba_whcode='"+bs_whcode+"'";
  67. }
  68. }
  69. },
  70. 'erpDeleteDetailButton': {
  71. afterrender: function(btn){
  72. btn.ownerCt.add({
  73. xtype: 'erpBarcodeButton'
  74. });
  75. }
  76. },
  77. 'erpBarcodeButton':{
  78. click :function(btn){
  79. var record=btn.ownerCt.ownerCt.getSelectionModel().getLastSelected();
  80. var bsd_id = record.get('bsd_id');
  81. Ext.create('Ext.Window', {
  82. height : '90%',
  83. width : '95%',
  84. autoShow: true,
  85. layout: 'anchor',
  86. items: [{
  87. tag : 'iframe',
  88. frame : true,
  89. anchor : '100% 100%',
  90. layout : 'fit',
  91. html : '<iframe id="iframe_dbfind" src="' + basePath + 'jsps/scm/reserve/barStockCode.jsp?formCondition=bsd_id='
  92. + bsd_id +'&gridCondition=bdd_bsdid=' + bsd_id +'" height="100%" width="100%" frameborder="0" scrolling="no"></iframe>'
  93. }]
  94. });
  95. },
  96. afterrender:function(btn) {
  97. btn.setDisabled(true);
  98. }
  99. },
  100. 'erpSaveButton': {
  101. click: function(btn){
  102. var form = me.getForm(btn);
  103. if(Ext.getCmp(form.codeField).value == null || Ext.getCmp(form.codeField).value == ''){
  104. me.BaseUtil.getRandomNumber();//自动添加编号
  105. }
  106. me.FormUtil.beforeSave(me);
  107. }
  108. },
  109. 'erpDeleteButton' : {
  110. afterrender: function(btn){
  111. var status = Ext.getCmp(me.getForm(btn).statuscodeField);
  112. if(status && status.value == 'DELETED'){
  113. btn.hide();
  114. }
  115. },
  116. click: function(btn){
  117. me.FormUtil.onDelete({pu_id: Number(Ext.getCmp('bs_id').value)});
  118. }
  119. },
  120. 'erpUpdateButton': {
  121. afterrender: function(btn){
  122. var status = Ext.getCmp(me.getForm(btn).statuscodeField);
  123. if(status && status.value != 'ENTERING'){
  124. btn.hide();
  125. }
  126. },
  127. click: function(btn){
  128. me.FormUtil.onUpdate(me);
  129. }
  130. },
  131. 'erpAddButton': {
  132. click: function(){
  133. me.FormUtil.onAdd('add' + caller, '新增库存条码盘盈维护', "jsps/scm/reserve/barStockProfit.jsp?whoami=" + caller);
  134. }
  135. },
  136. 'erpCloseButton': {
  137. click: function(btn){
  138. me.FormUtil.beforeClose(me);
  139. }
  140. },
  141. 'erpSubmitButton': {
  142. afterrender: function(btn){
  143. var status = Ext.getCmp(me.getForm(btn).statuscodeField);
  144. if(status && status.value != 'ENTERING'){
  145. btn.hide();
  146. }
  147. },
  148. click: function(btn){
  149. var grid = Ext.getCmp('grid');
  150. me.FormUtil.onSubmit(Ext.getCmp('bs_id').value);
  151. }
  152. },
  153. 'erpResSubmitButton': {
  154. afterrender: function(btn){
  155. var status = Ext.getCmp(me.getForm(btn).statuscodeField);
  156. if(status && status.value != 'COMMITED'){
  157. btn.hide();
  158. }
  159. },
  160. click: function(btn){
  161. me.FormUtil.onResSubmit(Ext.getCmp('bs_id').value);
  162. }
  163. },
  164. 'erpAuditButton': {
  165. afterrender: function(btn){
  166. var status = Ext.getCmp(me.getForm(btn).statuscodeField);
  167. if(status && status.value != 'COMMITED'){
  168. btn.hide();
  169. }
  170. },
  171. click: function(btn){
  172. me.FormUtil.onAudit(Ext.getCmp('bs_id').value);
  173. }
  174. },
  175. 'erpResAuditButton': {
  176. afterrender: function(btn){
  177. var status = Ext.getCmp(me.getForm(btn).statuscodeField);
  178. if((status && status.value != 'AUDITED') ){
  179. btn.hide();
  180. }
  181. },
  182. click: function(btn){
  183. me.FormUtil.onResAudit(Ext.getCmp('bs_id').value);
  184. }
  185. },
  186. 'erpBatchGenBarcodeButton':{//根据批号:一个批号生成一个条码
  187. afterrender: function(btn){
  188. var status = Ext.getCmp(me.getForm(btn).statuscodeField);
  189. if(status &&(status.value == 'AUDITED' || status.value =='已审核')){
  190. btn.hide();
  191. }
  192. },
  193. click: function (btn){
  194. /*var r = me.getForm();
  195. var param = unescape(escape(Ext.JSON.encode(r)));*/
  196. var bs_id = Ext.getCmp("bs_id").value;
  197. me.FormUtil.setLoading(true);
  198. Ext.Ajax.request({
  199. url : basePath + "scm/reserve/barStockProfit/batchGenBarcode.action",
  200. params: {
  201. caller: caller,
  202. id:bs_id
  203. },
  204. method : 'post',
  205. callback : function(options,success,response){
  206. me.FormUtil.setLoading(false);
  207. var res = new Ext.decode(response.responseText);
  208. if(res.exceptionInfo != null){
  209. showError(res.exceptionInfo);return;
  210. }else {
  211. showMessage('提示', '批量生成成功!', 1000);
  212. window.location.href = basePath +'jsps/scm/reserve/barStockCode.jsp?_noc=1&whoami='+caller+'&formCondition='+formCondition+'&gridCondition='+condition;
  213. }
  214. }
  215. })
  216. }
  217. },
  218. 'erpPrintAllButton':{
  219. click:function (btn){
  220. var lps_barcaller = "BarStockPrint";
  221. var win = new Ext.window.Window({
  222. id : 'win',
  223. maximizable : true,
  224. buttonAlign : 'center',
  225. layout : 'anchor',
  226. title: '打印模板选择',
  227. modal : true,
  228. items: [{
  229. tag : 'iframe',
  230. frame : true,
  231. anchor : '100% 100%',
  232. layout : 'fit',
  233. html : '<iframe id="iframe_' + caller + '" src="' + basePath + 'jsps/scm/reserve/selPrintTemplate.jsp?whoami='+lps_barcaller +'" height="100%" width="100%" frameborder="0" scrolling="no"></iframe>'
  234. }]
  235. });
  236. win.show();
  237. }
  238. }
  239. });
  240. },
  241. getForm: function(btn){
  242. return btn.ownerCt.ownerCt;
  243. },
  244. save: function(btn){}
  245. });