Browse Source

商机报价错误校验提示

zhuth 7 years ago
parent
commit
bfee718f44
1 changed files with 32 additions and 9 deletions
  1. 32 9
      frontend/saas-web/app/view/sale/b2b/QuoteWin.js

+ 32 - 9
frontend/saas-web/app/view/sale/b2b/QuoteWin.js

@@ -30,19 +30,43 @@ Ext.define('saas.view.sale.b2b.QuoteWin', {
                     var taxrateField = this.getForm().findField('taxrate');
                     var grid = this.down('grid');
                     var gridData = grid.store.getData().items;
-                    var flag = gridData.length > 0;
+                    var count = gridData.length > 0;
+
+                    if(leadtimeField.getValue() == undefined) {
+                        saas.util.BaseUtil.showErrorToast('交期不可为空');
+                        return false;
+                    }
+
+                    if(leadtimeField.getValue() <= 0) {
+                        saas.util.BaseUtil.showErrorToast('交期必须大于零');
+                        return false;
+                    }
+
+                    if(taxrateField.getValue() == undefined) {
+                        saas.util.BaseUtil.showErrorToast('税率不可为空');
+                        return false;
+                    }
+
+                    if(taxrateField.getValue() <= 0) {
+                        saas.util.BaseUtil.showErrorToast('税率必须大于零');
+                        return false;
+                    }
+
+                    if(!count) {
+                        saas.util.BaseUtil.showErrorToast('梯度单价不可为空');
+                        return false;
+                    }
 
                     for (var x = 0; x < gridData.length; x++) {
                         var d = gridData[x];
+                        var idx = d.get('no');
                         if (!d.get('lapQty') || !d.get('price')) {
-                            flag = false
+                            saas.util.BaseUtil.showErrorToast('序号为' + idx + '的行梯度单价有误');
+                            return false;
                         }
                     }
 
-                    if(flag) {
-                        flag = leadtimeField.getValue() && taxrateField.getValue();
-                    }
-                    return flag;
+                    return true;
                 },
                 items: [{
                     xtype: 'textfield',
@@ -73,14 +97,15 @@ Ext.define('saas.view.sale.b2b.QuoteWin', {
                     fieldLabel: '交期(天)',
                     name: 'leadtime',
                     allowBlank: false,
+                    vtype: 'positiveNumber',
                     beforeLabelTextTpl: "<font color=\"red\" style=\"position:relative; top:2px;right:2px; font-weight: bolder;\">*</font>"
                 }, {
                     xtype: 'numberfield',
                     fieldLabel: '税率',
                     name: 'taxrate',
-                    minValue: 0,
                     maxValue: 100,
                     allowBlank: false,
+                    vtype: 'positiveNumber',
                     beforeLabelTextTpl: "<font color=\"red\" style=\"position:relative; top:2px;right:2px; font-weight: bolder;\">*</font>"
                 }, {
                     xtype: 'detailGridField',
@@ -154,8 +179,6 @@ Ext.define('saas.view.sale.b2b.QuoteWin', {
                             return r.data;
                         })
                         me.onQuote(values);
-                    } else {
-                        saas.util.BaseUtil.showErrorToast('表单校验失败,请检查字段是否合法');
                     }
                 }
             }, {