Explorar o código

订单中心开发

wangxiaoming %!s(int64=6) %!d(string=hai) anos
pai
achega
1193028b7e

+ 0 - 1
watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminSalesOrderController.java

@@ -66,7 +66,6 @@ public class AdminSalesOrderController {
     @Autowired
     private GenerateKeyUtil generateKeyUtil ;
 
-
     /**
      * 分页查询订单列表信息
      * @param request

+ 11 - 5
watero-rst-web/src/main/webapp/WEB-INF/views/order/salesOrder/add_order.ftl

@@ -111,7 +111,7 @@
                 <label class="form-label col-1 col-sm-1">地址信息:</label>
                 <div class="formControls col-2 col-sm-2" style="">
                     <span class="select-box">
-                        <select class="select init_province" id="addressProvince">
+                        <select class="select init_province" id="addressProvince" >
                         </select>
 				    </span>
                 </div>
@@ -135,7 +135,7 @@
                     <textarea name="addressDesc" style="height: 50px;" id="addressDesc" cols="" rows="2" datatype="*" errormsg="收货地址不正确!" class="textarea" placeholder="请填写详细地址,最多支持50字符" onKeyUp="$.Huitextarealength(this,50)"></textarea>
                     <span id="addrssMsg"></span>
                 </div>
-                <input type="hidden" name="salesAddressInfo" id="salesAddressInfo" >
+                <input type="hidden" name="salesAddressInfo" id="salesAddressInfo" value="">
             </div>
 
 
@@ -144,7 +144,7 @@
                 <div class="formControls col-2 col-sm-2">
                     <input type="text" placeholder="购买日期" id="salesPayTime"  name="salesPayTime" datatype="*" class="input-text Wdate" onclick="WdatePicker({skin:'whyGreen',dateFmt:'yyyy-MM-dd HH:mm:ss',maxDate: '%y-%M-%d'})"  readonly="readonly">
                 </div>
-                <label class="form-label col-1 col-sm-1">支付方式:</label>
+                <label class="form-label col-2 col-sm-2">支付方式:</label>
                 <div class="formControls col-2 col-sm-2" style="">
                     <span class="select-box">
                         <select class="select" id="salesPayType" name="salesPayType">
@@ -264,7 +264,8 @@
     });
 
     /*初始化省市区*/
-    var address = $(".address_info").initAddress();
+    var address = $(".address_info").initAddress(
+    );
 
     /*初始化销售公司店铺*/
     $(".sales_channel").initSalesChannel();
@@ -277,7 +278,6 @@
     }
 
     $(function(){
-
         $("#form-order-add").Validform({
             tiptype: function (msg, o, cssctl) {
                 if (o.type == 3) {//失败
@@ -294,6 +294,12 @@
                 var flag = false;
             },
             beforeSubmit: function (curform) {  //验证通过之后执行的函数
+                var addressProvince = $("#addressProvince").find("option:selected").text();
+                var addressCity = $("#addressCity").find("option:selected").text();
+                var addressCountry = $("#addressCountry").find("option:selected").text();
+                var addressDesc = $("#addressDesc").val();
+                var salesAddressInfo = addressProvince + "-" + addressCity + "-" + addressCountry + "-" + addressDesc
+                $("#salesAddressInfo").val(salesAddressInfo);
 
                 var flag = false;
                 /*封装订单项*/

+ 66 - 17
watero-rst-web/src/main/webapp/common/js/common/address.js

@@ -9,7 +9,11 @@
             countryNode : ele.find(".init_country"),
             provinceId : 0,
             cityId : 0,
-            countryId :0
+            countryId :0,
+            provinceName : "",
+            cityName :  "",
+            countryName : "",
+            initLock : false
         },
         this.options = $.extend({}, this.addressInfo, opt)  //opt并入addressInfo集合组成新的集合,然后赋值给 options ,所以一切调用options
     }
@@ -28,13 +32,14 @@
                     $(result.returnMsg.provinceList).each(function (){
                         $provinceNode.append("<option value='"+ this.provinceId +"'>"+ this.province +"</option>");
                     })
-
-                    if(isEmpty($provinceNode.attr("defValue"))){
-                        address.options.provinceId = $provinceNode.attr("defValue");
-                    }else if(!isEmpty(address.options.provinceId)){
-                        address.options.provinceId = result.returnMsg.provinceList[0].provinceId;
+                    if(isEmpty($provinceNode.attr("provinceId"))){
+                        address.options.provinceId = $provinceNode.attr("provinceId");
+                    }else if(isEmpty(address.options.provinceName)){
+                        address.options.provinceId = address.getAttrIdByName($provinceNode,address.options.provinceName);
+                    }else if(isEmpty($provinceNode.attr("provinceName"))) {
+                        address.options.provinceId = address.getAttrIdByName($provinceNode,$provinceNode.attr("provinceName"));
                     }else{
-                        address.options.provinceId = $provinceNode.val();
+                        address.options.provinceId = result.returnMsg.provinceList[0].provinceId;
                     }
                     address.setProvince();
                 }else{
@@ -53,12 +58,14 @@
                         $cityNode.append("<option value='"+ this.cityId +"'>"+ this.city +"</option>");
                     })
 
-                    if(isEmpty($cityNode.attr("defValue"))){
-                        address.options.cityId = $cityNode.attr("defValue");
-                    }else if(!isEmpty(address.options.cityId)){
-                        address.options.cityId = result.returnMsg.cityList[0].cityId;
+                    if(isEmpty($cityNode.attr("cityId"))){
+                        address.options.cityId = $cityNode.attr("cityId");
+                    }else if(isEmpty(address.options.cityName)){
+                        address.options.cityId = address.getAttrIdByName($cityNode,address.options.cityName);
+                    }else if(isEmpty($cityNode.attr("cityName"))){
+                        address.options.cityId = address.getAttrIdByName($cityNode,$cityNode.attr("cityName"));
                     }else{
-                        address.options.cityId = $cityNode.val();
+                        address.options.cityId = result.returnMsg.cityList[0].cityId;
                     }
                     address.setCity();
                 }else{
@@ -77,14 +84,17 @@
                         $countryNode.append("<option value='"+ this.districtId +"'>"+ this.district +"</option>");
                     })
 
-                    if(isEmpty($countryNode.attr("defValue"))){
-                        address.options.countryId = $countryNode.attr("defValue");
-                    }else if(!isEmpty(address.options.countryId)){
-                        address.options.countryId = result.returnMsg.districtList[0].districtId;
+                    if(isEmpty($countryNode.attr("$countryId"))){
+                        address.options.countryId = $countryNode.attr("$countryId");
+                    }else if(isEmpty(address.options.countryName)){
+                        address.options.countryId = address.getAttrIdByName($countryNode,address.options.countryName);
+                    }else if(isEmpty($countryNode.attr("$countryName"))){
+                        address.options.countryId = address.getAttrIdByName($countryNode,$countryNode.attr("$countryName"));
                     }else{
-                        address.options.countryId = $countryNode.val();
+                        address.options.countryId = result.returnMsg.districtList[0].districtId;
                     }
                     address.setCountry();
+                    address.options.initLock = true;
                 }else{
                     console.log("区县查询失败");
                 }
@@ -128,6 +138,45 @@
             this.setCountry();
             return this;
         },
+        setProvinceName:function(provinceName){
+            this.options.provinceName =  provinceName;
+            this.initProvince();    //直接重新加载
+            return this;
+        },
+        setCityName:function(cityName){
+            this.options.cityName = cityName;
+            this.setProvince();
+            return this;
+        },
+        setCountryName:function(countryName){
+            this.options.countryName = countryName;
+            this.setCity();
+            return this;
+        },
+        getAttrIdByName:function($node,name){
+            name = $.trim(name);
+            var reArray = "省,市,县,乡,镇,市,自治区";
+            var array = reArray.split(",");
+            for (var i=0;i<array.length;i++){
+                name = name.replace(array[i],"");
+            }
+            var max = 0,maxValue="";
+            $node.find("option").each(function(){
+                var number=0,attrName = "";
+                if($(this).text().indexOf(name) > -1){
+                    number ++
+                    if($(this).text() == name){
+                        number ++
+                    }
+                    attrName = $(this).val();
+                }
+                if(max < number){
+                    max = number;
+                    maxValue = attrName;
+                }
+            })
+            return maxValue;
+        },
         cufte:function(val) {
             if (undefined == val || null == val||typeof val == undefined || typeof val == 'undefined'|| 'undefined' == val) {
                 val = "";