Browse Source

修改投标验证

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@7659 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
dongbw 9 years ago
parent
commit
64484f6999

+ 6 - 3
src/main/java/com/uas/platform/b2b/controller/PurchaseTenderController.java

@@ -129,9 +129,12 @@ public class PurchaseTenderController {
         tenderItems = tenderItems.concat("]");
         List<SaleTenderItem> saleTenderItems = FlexJsonUtils.fromJsonArray(tenderItems, SaleTenderItem.class);
         EnterpriseBaseInfo vendor = FlexJsonUtils.fromJson(enBaseInfo, EnterpriseBaseInfo.class);
-        attaches = "[".concat(attaches);
-        attaches = attaches.concat("]");
-        List<Attach> saleTenderAttaches = FlexJsonUtils.fromJsonArray(attaches, Attach.class);
+        List<Attach> saleTenderAttaches = new ArrayList<>();
+        if (attaches != null && attaches != "") {
+            attaches = "[".concat(attaches);
+            attaches = attaches.concat("]");
+            saleTenderAttaches = FlexJsonUtils.fromJsonArray(attaches, Attach.class);
+        }
         purchaseTenderService.reply(saleTenderItems, vendor, saleTenderAttaches);
 //        logger.log("供应商投标", "供应商对招标单进行投标",  "供应商名称" + item.getEnterpriseBaseInfo().getEnName() + ",价格" + item.getPrice() + ",税率" + item.getTaxrate()+ item.getCode());
         return new ResponseEntity<String>(HttpStatus.OK);

+ 34 - 14
src/main/webapp/resources/js/index/app.js

@@ -10527,11 +10527,12 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
             });
         };
 
-        var taxrateYes = false;
-        var cycleYes = false;
-        var priceYes = false;
-        var emNumYes = false;
-        $scope.validateThis = function(value, type) {
+        // var taxrateYes = false;
+        // var cycleYes = false;
+        // var priceYes = false;
+        // var emNumYes = false;
+        // $scope.canSave = false;
+        /*$scope.validateThis = function(value, type) {
             switch(type) {
                 case 'taxrate':
                     var regex = /^\+?[0-9][0-9]{0,1}$/;
@@ -10554,12 +10555,10 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
                     if (regex.test(value) && value !== 0) {
                         priceYes = true;
                     } else {
-                        if (!value.endsWith(".")) {
-                            toaster.pop('warning', '警告', '单价不合法,请重新填写');
-                        }
+                        // toaster.pop('warning', '警告', '单价不合法,请重新填写');
                     }
                     break;
-                case 'enNum':
+                case 'emNum':
                     var regex = /^\+?[1-9][0-9]*$/;
                     if (regex.test(value) && value !== 0) {
                         emNumYes = true;
@@ -10569,11 +10568,31 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
                     break;
             }
             if (taxrateYes && cycleYes && priceYes && emNumYes) {
-                var canSave = true;
-            } else {
-                var canSave = false;
+                $scope.canSave = true;
+            }
+        };*/
+
+        $scope.emNumYes = true;
+
+        $scope.validEmNum = function (value) {
+            var regex = /^\+?[1-9][0-9]*$/;
+            if (!regex.test(value) || value == 0) {
+                $scope.emNumYes = false;
+                toaster.pop('warning', '警告', '人数不合法,请重新填写');
             }
-            return canSave;
+        };
+
+        $scope.validateThis = function(tenderProds) {
+            $scope.canSave = true;
+            angular.forEach(tenderProds, function (tenderProd) {
+                var cycleRegex = /^\+?[1-9][0-9]*$/;
+                var taxrateRegex = /^\+?[0-9][0-9]{0,1}$/;
+                var priceRegex = /^(0|[0-9][0-9]{0,9})(\.[0-9]{1,6})?$/;
+                if (!cycleRegex.test(tenderProd.currentItem.cycle) || !taxrateRegex.test(tenderProd.currentItem.taxrate) || !priceRegex.test(tenderProd.currentItem.price)) {
+                    toaster.pop('warning', '警告', '填写内容不合法,请重新填写');
+                    $scope.canSave = false;
+                }
+            });
         };
 
         // 投标
@@ -10584,9 +10603,10 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
             }
             var saleTenderItems = [];
             angular.forEach(tender.purchaseTenderProds, function(tenderProd) {
+                tenderProd.currentItem.
                 saleTenderItems.push(tenderProd.currentItem);
             });
-
+            console.log(saleTenderItems);
             PurcTender.reply({tenderItems: saleTenderItems, enBaseInfo: currentEnBaseInfo, attaches:$scope.attaches}, {}, function(data){
                 $scope.loading = false;
                 toaster.pop('info', '成功', '投标成功');

+ 7 - 4
src/main/webapp/resources/tpl/index/sale/tender.html

@@ -314,9 +314,12 @@
                                     </span>
                                     <span ng-bind="prod.unit"></span>
                                     <span ng-bind="prod.qty"></span>
-                                    <span><input type="text" class="editAble" ng-model="prod.currentItem.cycle" ng-pattern="/^\+?[1-9][0-9]*$/" ng-change="validateThis(prod.currentItem.cycle, 'cycle')" placeholder="点击填写周期"/></span>
+                                    <!--<span><input type="text" class="editAble" ng-model="prod.currentItem.cycle" ng-pattern="/^\+?[1-9][0-9]*$/" ng-change="validateThis(prod.currentItem.cycle, 'cycle')" placeholder="点击填写周期"/></span>
                                     <span><input type="text" class="editAble" ng-model="prod.currentItem.taxrate" ng-pattern="/^\+?[0-9][0-9]{0,1}$/" ng-change="validateThis(prod.currentItem.taxrate, 'taxrate')" placeholder="点击填写税率"/></span>
-                                    <span><input type="text" class="editAble" ng-model="prod.currentItem.price" ng-pattern="/^(0|[0-9][0-9]{0,9})(\.[0-9]{1,6})?$/" ng-change="validateThis(prod.currentItem.price, 'price')" placeholder="点击填写单价"/></span>
+                                    <span><input type="text" class="editAble" ng-model="prod.currentItem.price" ng-pattern="/^(0|[0-9][0-9]{0,9})(\.[0-9]{1,6})?$/" ng-change="validateThis(prod.currentItem.price, 'price')" ng-focus="validPrice(prod.currentItem.price)" ng-blur="validPrice(prod.currentItem.price)" placeholder="点击填写单价"/></span>-->
+                                    <span><input type="text" class="editAble" ng-model="prod.currentItem.cycle" ng-pattern="/^\+?[1-9][0-9]*$/" ng-change="validateThis(bid.purchaseTenderProds)" placeholder="点击填写周期"/></span>
+                                    <span><input type="text" class="editAble" ng-model="prod.currentItem.taxrate" ng-pattern="/^\+?[0-9][0-9]{0,1}$/" ng-change="validateThis(bid.purchaseTenderProds)" placeholder="点击填写税率"/></span>
+                                    <span><input type="text" class="editAble" ng-model="prod.currentItem.price" ng-pattern="/^(0|[0-9][0-9]{0,9})(\.[0-9]{1,6})?$/" ng-change="validateThis(bid.purchaseTenderProds)" placeholder="点击填写单价"/></span>
                                     <span ng-bind="prod.currentItem.price * prod.qty || ''"></span>
                                 </dd>
                             </dl>
@@ -407,8 +410,8 @@
                     </div>
                 </div>
                 <div class="col-xs-12" style="padding: 30px;">
-                    <div class="col-xs-2 pull-right btn-bid">
-                        <button class="btn" ng-disabled="bid.overdue == 1 && !canSave" ng-click="bidIt(bid, currentEnBaseInfo)">投标</button>
+                    <div class="col-xs-2 pull-right btn-bid">{{canSave}}---{{emNumYes}}
+                        <button class="btn" ng-disabled="bid.overdue == 1 || !canSave || !emNumYes" ng-click="bidIt(bid, currentEnBaseInfo)">投标</button>
                     </div>
                 </div>
             </div>