EditorColumn.js 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.common.EditorColumn', {
  3. extend: 'Ext.app.Controller',
  4. requires: ['erp.util.RenderUtil', 'erp.util.GridUtil'],
  5. views:[
  6. 'common.editorColumn.GridPanel',
  7. 'common.editorColumn.Viewport',
  8. 'core.trigger.DbfindTrigger',
  9. 'core.grid.YnColumn'
  10. ],
  11. init:function(){
  12. var me = this;
  13. this.control({
  14. 'erpEditorColumnGridPanel': {
  15. storeloaded: function(grid){
  16. me.getProductWh(grid);
  17. }
  18. },
  19. 'dbfindtrigger[name=pw_whcode]':{
  20. focus: function(t){
  21. t.setHideTrigger(false);
  22. t.setReadOnly(false);
  23. var record = t.record;
  24. var code = record.data['sd_prodcode'];
  25. if(caller =='Sale!ToAccept!Deal'){
  26. t.dbBaseCondition ="pw_prodcode='" + code + "'";
  27. }
  28. }
  29. },
  30. 'dbfindtrigger[name=sd_whcode]':{
  31. focus: function(t){
  32. t.setHideTrigger(false);
  33. t.setReadOnly(false);
  34. var record = t.record;
  35. var code = record.data['sd_prodcode'];
  36. if(caller =='Sale!ToAccept!Deal'){
  37. t.dbBaseCondition ="pwd_prodcode='" + code + "'";
  38. }
  39. }
  40. }
  41. });
  42. },
  43. getProductWh: function(grid) {
  44. var prodfield = grid.getProdField();
  45. if(prodfield) {
  46. var codes = [];
  47. grid.store.each(function(d){
  48. codes.push("'" + d.get(prodfield) + "'");
  49. });
  50. Ext.Ajax.request({
  51. url: basePath + 'scm/product/getProductwh.action',
  52. params: {
  53. codes: codes.join(',')
  54. },
  55. callback: function (opt, s, r) {
  56. if(s) {
  57. var rs = Ext.decode(r.responseText);
  58. if(rs.data) {
  59. grid.productwh = rs.data;
  60. }
  61. }
  62. }
  63. });
  64. }
  65. }
  66. });