SalePrice.js 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.scm.sale.SalePrice', {
  3. extend: 'Ext.app.Controller',
  4. FormUtil: Ext.create('erp.util.FormUtil'),
  5. GridUtil: Ext.create('erp.util.GridUtil'),
  6. BaseUtil: Ext.create('erp.util.BaseUtil'),
  7. views:[
  8. 'core.form.Panel','scm.sale.SalePrice','core.grid.Panel2','core.toolbar.Toolbar','core.form.MultiField','core.form.FileField',
  9. 'core.button.Save','core.button.Add','core.button.Submit','core.button.Print','core.button.Upload','core.button.ResAudit',
  10. 'core.button.Audit','core.button.Close','core.button.Delete','core.button.Update','core.button.DeleteDetail','core.button.ResSubmit',
  11. 'core.trigger.DbfindTrigger','core.trigger.TextAreaTrigger', 'core.button.Scan','core.button.Abate','core.button.ResAbate'
  12. ],
  13. init:function(){
  14. var me = this;
  15. this.control({
  16. 'erpGridPanel2': {
  17. itemclick: function(view,record){
  18. me.itemclick(view,record);
  19. }
  20. },
  21. 'erpSaveButton': {
  22. click: function(btn){
  23. var form = me.getForm(btn);
  24. if(Ext.getCmp(form.codeField).value == null || Ext.getCmp(form.codeField).value == ''){
  25. me.BaseUtil.getRandomNumber();//自动添加编号
  26. }
  27. var grid = Ext.getCmp('grid');
  28. var items = grid.store.data.items;
  29. var bool = true;
  30. Ext.each(items, function(item){
  31. if(item.dirty && item.data[grid.necessaryField] != null && item.data[grid.necessaryField] != ""){
  32. if(item.data['spd_currency'] == null || item.data['spd_currency'] == ''){
  33. bool = false;
  34. showError('明细表第' + item.data['spd_detno'] + '行的币别为空');return;
  35. }
  36. if(item.data['spd_price'] == null || item.data['spd_price'] == '' || item.data['spd_price'] == '0'
  37. || item.data['spd_price'] == 0){
  38. bool = false;
  39. showError('明细表第' + item.data['spd_detno'] + '行的价格为空或0');return;
  40. }
  41. }
  42. });
  43. if(bool){
  44. this.FormUtil.beforeSave(this);
  45. }
  46. }
  47. },
  48. 'erpDeleteButton' : {
  49. click: function(btn){
  50. me.FormUtil.onDelete(Ext.getCmp('sp_id').value);
  51. }
  52. },
  53. 'erpUpdateButton': {
  54. click: function(btn){
  55. this.FormUtil.onUpdate(this);
  56. }
  57. },
  58. 'erpAddButton': {
  59. click: function(){
  60. me.FormUtil.onAdd('addSalePrice', '新增销售单价', 'jsps/scm/sale/salePrice.jsp?whoami=SalePrice');
  61. }
  62. },
  63. 'erpCloseButton': {
  64. click: function(btn){
  65. me.FormUtil.beforeClose(me);
  66. }
  67. },
  68. 'erpSubmitButton': {
  69. afterrender: function(btn){
  70. var status = Ext.getCmp('sp_statuscode');
  71. if(status && status.value != 'ENTERING'){
  72. btn.hide();
  73. }
  74. },
  75. click: function(btn){
  76. me.FormUtil.onSubmit(Ext.getCmp('sp_id').value);
  77. }
  78. },
  79. 'erpResSubmitButton': {
  80. afterrender: function(btn){
  81. var status = Ext.getCmp('sp_statuscode');
  82. if(status && status.value != 'COMMITED'){
  83. btn.hide();
  84. }
  85. },
  86. click: function(btn){
  87. me.FormUtil.onResSubmit(Ext.getCmp('sp_id').value);
  88. }
  89. },
  90. 'erpAuditButton': {
  91. afterrender: function(btn){
  92. var status = Ext.getCmp('sp_statuscode');
  93. if(status && status.value != 'COMMITED'){
  94. btn.hide();
  95. }
  96. },
  97. click: function(btn){
  98. me.FormUtil.onAudit(Ext.getCmp('sp_id').value);
  99. }
  100. },
  101. 'erpResAuditButton': {
  102. afterrender: function(btn){
  103. /*var status = Ext.getCmp('sp_statuscode');
  104. if(status && status.value != 'AUDITED'){
  105. }
  106. */
  107. btn.hide();
  108. },
  109. /*click: function(btn){
  110. me.FormUtil.onResAudit(Ext.getCmp('sp_id').value);
  111. }*/
  112. },
  113. 'erpResAbateButton':{
  114. afterrender: function(btn){
  115. Ext.getCmp('erpResAbateButton').setDisabled(true);
  116. },
  117. click: function(btn){
  118. var grid = Ext.getCmp('grid'),
  119. record = grid.selModel.lastSelected;
  120. if(!record) {
  121. return;
  122. }
  123. var ppdid = record.get('spd_id');
  124. if(ppdid == null || ppdid == 0) {
  125. return;
  126. }
  127. Ext.Ajax.request({
  128. url : basePath + "scm/sale/resabatesaleprice.action",
  129. params:{
  130. id: ppdid
  131. },
  132. method:'post',
  133. callback:function(options,success,response){
  134. var localJson = new Ext.decode(response.responseText);
  135. if(localJson.success){
  136. Ext.Msg.alert("提示","操作成功!");
  137. window.location.reload();
  138. } else {
  139. if(localJson.exceptionInfo){
  140. var str = localJson.exceptionInfo;
  141. if(str.trim().substr(0, 12) == 'AFTERSUCCESS'){//特殊情况:操作成功,但是出现警告,允许刷新页面
  142. str = str.replace('AFTERSUCCESS', '');
  143. showError(str);
  144. } else {
  145. showError(str);return;
  146. }
  147. }
  148. }
  149. }
  150. });
  151. }
  152. },
  153. 'erpAbateButton':{
  154. afterrender: function(btn){
  155. Ext.getCmp('erpAbateButton').setDisabled(true);
  156. },
  157. click: function(btn){
  158. var grid = Ext.getCmp('grid'),
  159. record = grid.selModel.lastSelected;
  160. if(!record) {
  161. return;
  162. }
  163. var ppdid = record.get('spd_id');
  164. if(ppdid == null || ppdid == 0) {
  165. return;
  166. }
  167. Ext.Ajax.request({
  168. url : basePath + "scm/sale/abatesaleprice.action",
  169. params:{
  170. id: ppdid
  171. },
  172. method:'post',
  173. callback:function(options,success,response){
  174. var localJson = new Ext.decode(response.responseText);
  175. if(localJson.success){
  176. Ext.Msg.alert("提示","操作成功!");
  177. window.location.reload();
  178. } else {
  179. if(localJson.exceptionInfo){
  180. var str = localJson.exceptionInfo;
  181. if(str.trim().substr(0, 12) == 'AFTERSUCCESS'){//特殊情况:操作成功,但是出现警告,允许刷新页面
  182. str = str.replace('AFTERSUCCESS', '');
  183. showError(str);
  184. } else {
  185. showError(str);return;
  186. }
  187. }
  188. }
  189. }
  190. });
  191. }
  192. },
  193. 'erpPrintButton': {
  194. click: function(btn){
  195. me.FormUtil.onPrint(Ext.getCmp('sp_id').value);
  196. }
  197. }
  198. });
  199. },
  200. onGridItemClick: function(selModel, record){//grid行选择
  201. this.GridUtil.onGridItemClick(selModel, record);
  202. },
  203. getForm: function(btn){
  204. return btn.ownerCt.ownerCt;
  205. },
  206. itemclick:function(view, record){
  207. this.GridUtil.onGridItemClick(view, record);
  208. var ppdid = record.get('spd_id');
  209. console.log(ppdid);
  210. if(ppdid != null && ppdid != 0) {
  211. Ext.getCmp('erpAbateButton').setDisabled(false);
  212. Ext.getCmp('erpResAbateButton').setDisabled(false);
  213. }
  214. }
  215. });