Toolbar.js 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. Ext.define('erp.view.scm.purchase.Toolbar',{
  2. extend: 'Ext.Toolbar',
  3. alias: 'widget.erpPurchaseToolbar',
  4. dock: 'bottom',
  5. initComponent : function(){
  6. Ext.apply(this,{
  7. items: [{
  8. xtype: 'button',
  9. itemId: 'remove',
  10. text: '<font id="removeText"/>',
  11. handler : this.deleteDetail
  12. },'->',{
  13. xtype: 'tbtext',
  14. html: '<marquee scrollamount="2">'+ $I18N.common.toolbar.prompt +'</marquee>'
  15. }]
  16. });
  17. this.callParent(arguments);
  18. },
  19. deleteDetail: function(){
  20. var index = Number(document.getElementById('removeText').innerHTML.substring(3,4));//得到要删除的行号
  21. var store = Ext.getCmp('grid').store;
  22. var pd_puid = store.data.items[index-1].data['pd_puid'];
  23. if(pd_puid > 0){//这里表示该明细行为从数据库读出来的数据,删除时,要操作数据库
  24. var pd_id = store.data.items[index-1].data['pd_id'];
  25. Ext.Ajax.request({
  26. url : basePath + 'scm/purchase/deleteDetail.action',
  27. params: {
  28. pd_id: Number(pd_id)
  29. },
  30. method : 'post',
  31. callback : function(options,success,response){
  32. var localJson = new Ext.decode(response.responseText);
  33. if(localJson.success){
  34. delSuccess(ok);//@webContent/i18n/i18n.js
  35. function ok(btn){
  36. if(btn=='ok'){
  37. store.removeAt(index-1);//删除该行
  38. //重新排序
  39. var length = store.data.length;
  40. for(var i=index-1;i<length;i++){
  41. store.data.items[i].set('pd_detno',i+1);//明细行自动编号
  42. }
  43. } else {
  44. return;
  45. }
  46. };
  47. }
  48. }
  49. });
  50. } else {
  51. store.removeAt(index-1);//删除该行
  52. //重新排序
  53. var length = store.data.length;
  54. for(var i=index-1;i<length;i++){
  55. store.data.items[i].set('pd_detno',i+1);//明细行自动编号
  56. }
  57. }
  58. }
  59. });