SaleDetail.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.scm.sale.SaleDetail', {
  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.SaleDetail','core.grid.Panel2','core.toolbar.Toolbar',
  9. 'core.button.Save','core.button.Close','core.button.Update',
  10. 'core.trigger.DbfindTrigger','core.trigger.TextAreaTrigger'
  11. ],
  12. init:function(){
  13. var me = this;
  14. this.control({
  15. 'erpGridPanel2': {
  16. itemclick: this.onGridItemClick
  17. },
  18. 'erpSaveButton': {
  19. click: function(btn){
  20. this.FormUtil.beforeSave(this);
  21. }
  22. },
  23. 'erpUpdateButton': {
  24. click: function(btn){
  25. var grid = Ext.getCmp('grid');
  26. var items = grid.store.data.items;
  27. Date.prototype.Format = function(fmt){ //author: meizz
  28. var o = {
  29. "M+" : this.getMonth()+1, //月份
  30. "d+" : this.getDate(), //日
  31. "h+" : this.getHours(), //小时
  32. "m+" : this.getMinutes(), //分
  33. "s+" : this.getSeconds(), //秒
  34. "q+" : Math.floor((this.getMonth()+3)/3), //季度
  35. "S" : this.getMilliseconds() //毫秒
  36. };
  37. if(/(y+)/.test(fmt))
  38. fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
  39. for(var k in o)
  40. if(new RegExp("("+ k +")").test(fmt))
  41. fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
  42. return fmt;
  43. };
  44. var allnum =0;
  45. var StringMes = null;
  46. Ext.each(items, function(item){
  47. if(item.data['sdd_delivery'] !=null&&item.data['sdd_delivery'] !=''){
  48. allnum+=item.data['sdd_qty'];
  49. var oldtime = item.data['sdd_delivery'].Format("yyyy-MM-dd");
  50. var now=new Date();
  51. var nowtime = now.Format("yyyy-MM-dd");
  52. if(nowtime>oldtime){
  53. StringMes = "序号为:"+item.data['sdd_detno']+"的交期小于当前时间,请重新填写!";
  54. }
  55. }
  56. });
  57. if(StringMes !=null){
  58. showError(StringMes);
  59. return;
  60. }
  61. if(allnum !=(Ext.getCmp('sd_qty').value-Ext.getCmp('sd_sendqty').value)){
  62. showError("数量不对,请重新填写!");
  63. return;
  64. }
  65. this.FormUtil.onUpdate(this);
  66. }
  67. },
  68. 'erpCloseButton': {
  69. click: function(btn){
  70. me.FormUtil.beforeClose(me);
  71. }
  72. }
  73. });
  74. },
  75. onGridItemClick: function(selModel, record){//grid行选择
  76. this.GridUtil.onGridItemClick(selModel, record);
  77. },
  78. getForm: function(btn){
  79. return btn.ownerCt.ownerCt;
  80. }
  81. });