wangxiaoming 6 anni fa
parent
commit
0b10a92177
17 ha cambiato i file con 655 aggiunte e 452 eliminazioni
  1. 3 3
      watero-rst-core/src/main/java/com.iamberry.rst.core/cm/SalesOrder.java
  2. 10 0
      watero-rst-core/src/main/java/com.iamberry.rst.core/order/ProductColor.java
  3. 1 1
      watero-rst-core/src/main/java/com.iamberry.rst.core/sys/Admin.java
  4. 8 3
      watero-rst-service/src/main/java/com/iamberry/rst/service/product/mapper/productMapper.xml
  5. 16 18
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/cm/AdminCustomerController.java
  6. 2 0
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminOrderController.java
  7. 65 0
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminSalesChannelController.java
  8. 89 37
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminSalesOrderController.java
  9. 47 0
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/product/AdminProductController.java
  10. 2 1
      watero-rst-web/src/main/webapp/WEB-INF/views/base/add_base.ftl
  11. 2 1
      watero-rst-web/src/main/webapp/WEB-INF/views/base/list_base.ftl
  12. 130 330
      watero-rst-web/src/main/webapp/WEB-INF/views/order/salesOrder/add_order.ftl
  13. 185 0
      watero-rst-web/src/main/webapp/WEB-INF/views/order/salesOrder/product_list.ftl
  14. 0 57
      watero-rst-web/src/main/webapp/common/js/common/address.js
  15. 10 0
      watero-rst-web/src/main/webapp/common/js/common/common.js
  16. 84 0
      watero-rst-web/src/main/webapp/common/js/common/salesChannel.js
  17. 1 1
      watero-rst-web/src/main/webapp/common/js/customer/customer.js

+ 3 - 3
watero-rst-core/src/main/java/com.iamberry.rst.core/cm/SalesOrder.java

@@ -22,7 +22,7 @@ public class SalesOrder implements Serializable {
     private Integer salesPledgeMoney;       //押金金额
     private Integer salesRemainDeposit;     //待提取金额
     private Integer salesStatus;            //确认状态
-    private Integer salesSendType;          //送货方式
+    private Integer salesSendType;          //送货方式 1:线下送货,2:物流发货
     @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
     @JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8")
     private Date salesSendTime;             //发货时间
@@ -36,7 +36,7 @@ public class SalesOrder implements Serializable {
     private String salesAddressName;        //收件人姓名
     private Integer salesAmount;            //订单总金额
     private Integer salesPayMoney;          //已付金额
-    private Integer salesPayType;           //付款方式
+    private Integer salesPayType;           //付款方式  1:微信支付 2:现金支付3:已支付定金¥99 4:刷卡支付 5:支付宝支付
     private Integer salesWaitMoney;         //待付金额
     private Integer salesLastMoney;         //本次支付金额
     private Integer salesShippingFee;       //邮费
@@ -55,7 +55,7 @@ public class SalesOrder implements Serializable {
     private String salesDealCode;           //交易号
     private Integer salesOrderStatus;       //订单状态 订单状态:1:正常 2:换货 3:退货  4:维修  5:补发
     private Integer salesShippingStatus;    //发货状态
-    private Integer salesPayStatus;         //付款状态
+    private Integer salesPayStatus;         //付款状态 0(未付款)2(已付款)
     private Integer salesProcessStatus;     //单据状态
     private Integer salesIsSend;            //是否通知配货
     private Integer salesIsLocked;          //是否锁定

+ 10 - 0
watero-rst-core/src/main/java/com.iamberry.rst.core/order/ProductColor.java

@@ -39,6 +39,8 @@ public class ProductColor implements Serializable {
 
     private Integer productType;    //产品类型
 
+    private String productTypeName;    //产品类型名称
+
     public String getProductName() {
         return productName;
     }
@@ -135,6 +137,14 @@ public class ProductColor implements Serializable {
         this.colorUpdateTime = colorUpdateTime;
     }
 
+    public String getProductTypeName() {
+        return productTypeName;
+    }
+
+    public void setProductTypeName(String productTypeName) {
+        this.productTypeName = productTypeName;
+    }
+
     @Override
     public String toString() {
         return "ProductColor{" +

+ 1 - 1
watero-rst-core/src/main/java/com.iamberry.rst.core/sys/Admin.java

@@ -22,7 +22,7 @@ public class Admin implements Serializable {
 
     private Integer adminId;
 
-    private Integer adminDept;              // 1:技术组 2:销售组(深圳销售部) 3:客服组(客服运营部) 4:运营组(广州销售部) 5:其他(财务部) 6工厂生产部 7.管理部
+    private Integer adminDept;              // 1:技术组 2:销售组(销售部) 3:客服组(客服运营部) 4:运营组 5:财务部  6工厂生产部 7.管理部
 
     @NotBlank(message="姓名不能为空")
     @Length(min=2,max=10,message="姓名必须由2~10个字组成")

+ 8 - 3
watero-rst-service/src/main/java/com/iamberry/rst/service/product/mapper/productMapper.xml

@@ -32,10 +32,12 @@
             c.color_cretae_time colorCretaeTime,
             c.color_update_time colorUpdateTime,
             p.product_name productName,
-            p.Product_type productType
+            p.Product_type productType,
+            pt.type_name productTypeName
         from
           tb_rst_product_color c
         LEFT JOIN tb_rst_product_info p ON c.color_product_id = p.product_id
+        LEFT JOIN tb_rst_product_type pt ON p.product_type = pt.type_id
         <where>
             <if test="colorId != null">
                 color_id = #{colorId}
@@ -43,12 +45,15 @@
             <if test="colorProductId != null">
                 and color_product_id = #{colorProductId}
             </if>
-            <if test="colorBar != null">
-                and color_bar = #{colorBar}
+            <if test="colorBar != null and colorBar != ''">
+                AND c.color_bar = #{colorBar}
             </if>
             <if test="colorStatus != null">
                 and color_status = #{colorStatus}
             </if>
+            <if test="productName != null and productName != ''">
+                AND p.product_name  like  CONCAT ('%',#{productName},'%')
+            </if >
         </where>
     </select>
 

+ 16 - 18
watero-rst-web/src/main/java/com/iamberry/rst/controllers/cm/AdminCustomerController.java

@@ -353,24 +353,6 @@ public class AdminCustomerController {
         return rj;
     }
 
-
-    /**
-     * 查询问题描述
-     * @return
-     */
-    @ResponseBody
-    @RequiresPermissions("customer:add:customer")
-    @RequestMapping(value = "/select_company")
-    public ResponseJson getCompany(HttpServletRequest request) throws Exception {
-
-        //获取销售公司
-        List<CompanyInfo> companyInfoList = companyInfoService.listCompanyInfo(new CompanyInfo());
-
-        ResponseJson rj = new ResponseJson(200, "查询成功", 200);
-        rj.addResponseKeyValue("companyInfoList", companyInfoList);
-        return rj;
-    }
-
     /**
      * 搜索订单列表弹出框
      *
@@ -490,6 +472,22 @@ public class AdminCustomerController {
 
 
     /**
+     * 查询销售公司
+     * @return
+     */
+    @ResponseBody
+    @RequiresPermissions("customer:add:customer")
+    @RequestMapping(value = "/select_company")
+    public ResponseJson getCompany(HttpServletRequest request) throws Exception {
+
+        //获取销售公司
+        List<CompanyInfo> companyInfoList = companyInfoService.listCompanyInfo(new CompanyInfo());
+
+        ResponseJson rj = new ResponseJson(200, "查询成功", 200);
+        rj.addResponseKeyValue("companyInfoList", companyInfoList);
+        return rj;
+    }
+    /**
      * 获取店铺集合
      *
      * @param request

+ 2 - 0
watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminOrderController.java

@@ -752,6 +752,7 @@ public class AdminOrderController {
         titles.add("快递公司");
         titles.add("快递单号");
         titles.add("商品名称");
+        titles.add("商品颜色");
         titles.add("商品数量");
         model.put("titles", titles);
         PtsBatch ptsBatch = new PtsBatch();
@@ -778,6 +779,7 @@ public class AdminOrderController {
                 row.add(frim);
                 row.add(salesOrder.getSalesPostNum() == null ? null:salesOrder.getSalesPostNum());
                 row.add(salesOrder.getItemProductName() == null ? null:salesOrder.getItemProductName());
+                row.add(salesOrder.getItemProductColor() == null ? null:salesOrder.getItemProductColor());
                 row.add(salesOrder.getItemNum() == null ? null:salesOrder.getItemNum());
                 countexts.add(row);
             }

+ 65 - 0
watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminSalesChannelController.java

@@ -0,0 +1,65 @@
+package com.iamberry.rst.controllers.order;
+
+import com.iamberry.rst.core.cm.CompanyInfo;
+import com.iamberry.rst.core.cm.StoreInfo;
+import com.iamberry.rst.faces.cm.CompanyInfoService;
+import com.iamberry.rst.faces.cm.StoreInfoService;
+import com.iamberry.wechat.tools.ResponseJson;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.List;
+
+/**
+ * 店铺,销售
+ * Created by liuzhiwei
+ */
+@Controller
+@RequestMapping("admin/salesChannel")
+public class AdminSalesChannelController {
+
+    private Logger logger = LoggerFactory.getLogger(AdminSalesChannelController.class);
+
+    @Autowired
+    private CompanyInfoService companyInfoService;
+    @Autowired
+    private StoreInfoService storeInfoService;
+
+    /**
+     * 获取店铺集合
+     *  公共调用
+     * @param request
+     * @param storeInfo
+     * @return
+     */
+    @ResponseBody
+    @RequestMapping(value = "/select_storeInfo")
+    public ResponseJson listStoreInfo(HttpServletRequest request, StoreInfo storeInfo) {
+        storeInfo.setStoreStatus(1);
+        List<StoreInfo> storeInfoList = storeInfoService.listStore(storeInfo);
+        ResponseJson rj = new ResponseJson(200, "查询成功", 200);
+        rj.addResponseKeyValue("storeInfoList", storeInfoList);
+        return rj;
+    }
+
+    /**
+     * 查询销售公司
+     * 公共调用
+     * @return
+     */
+    @ResponseBody
+    @RequestMapping(value = "/select_company")
+    public ResponseJson getCompany(HttpServletRequest request) throws Exception {
+        //获取销售公司
+        List<CompanyInfo> companyInfoList = companyInfoService.listCompanyInfo(new CompanyInfo());
+        ResponseJson rj = new ResponseJson(200, "查询成功", 200);
+        rj.addResponseKeyValue("companyInfoList", companyInfoList);
+        return rj;
+    }
+
+}

+ 89 - 37
watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminSalesOrderController.java

@@ -1,18 +1,21 @@
 package com.iamberry.rst.controllers.order;
 
+import com.iamberry.rst.core.cm.CompanyInfo;
 import com.iamberry.rst.core.cm.SalesOrder;
 import com.iamberry.rst.core.cm.SalesOrderItem;
 import com.iamberry.rst.core.cm.StoreInfo;
 import com.iamberry.rst.core.page.PagedResult;
 import com.iamberry.rst.core.tools.LogisticsInfo;
+import com.iamberry.rst.faces.cm.CompanyInfoService;
 import com.iamberry.rst.faces.cm.SalesOrderService;
 import com.iamberry.rst.faces.cm.StoreInfoService;
 import com.iamberry.rst.faces.order.EfastOrderService;
 import com.iamberry.rst.faces.order.OrderBatchService;
+import com.iamberry.rst.faces.product.ProductService;
+import com.iamberry.rst.utils.AdminUtils;
 import com.iamberry.rst.utils.ExcelUtil;
 import com.iamberry.rst.utils.StitchAttrUtil;
 import com.iamberry.wechat.tools.ResponseJson;
-import net.sf.json.JSONObject;
 import org.apache.commons.lang.StringUtils;
 import org.apache.poi.hssf.usermodel.*;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
@@ -36,7 +39,7 @@ import java.util.List;
 
 /**
  * 订单信息
- * Created by liuzhiwei on 2017/12/4.
+ * Created by liuzhiwei
  */
 @Controller
 @RequestMapping("admin/salesOrder")
@@ -48,14 +51,15 @@ public class AdminSalesOrderController {
     private SalesOrderService salesOrderService;
     @Autowired
     private EfastOrderService efastOrderService;
-
+    @Autowired
+    private CompanyInfoService companyInfoService;
     @Autowired
     private StoreInfoService storeInfoService;
-
     @Autowired
     private OrderBatchService orderBatchService;
+    @Autowired
+    private ProductService productService ;
 
-    private Object lock = new Object();
 
     /**
      * 分页查询订单列表信息
@@ -350,38 +354,38 @@ public class AdminSalesOrderController {
      * @return
      * @throws Exception
      */
-    @ResponseBody
-    @RequiresPermissions("salesOrder:sync:order")
-    @RequestMapping("/sync_efast_order")
-    public ResponseJson syncEfastOrder(HttpServletRequest request) throws Exception {
-        String salesDealCode = request.getParameter("salesDealCode").trim();
-        if (!StringUtils.isNotEmpty(salesDealCode)) {
-            return new ResponseJson(500, "订单编号不能为空,请重新输入!", 500);
-        }
-        //根据时间排序查询订单 信息
-        SalesOrder salesOrder = new SalesOrder();
-        salesOrder.setSalesOrderId(salesDealCode);
-        int num = salesOrderService.getOrderInfoCount(salesOrder);
-        if (num > 0) {
-            return new ResponseJson(500, "该订单已存在,无需同步!", 500);
-        }
-        synchronized (lock) {
-            //获取订单详情
-            JSONObject orderInfo = efastOrderService.getOrderFormEfastByOrderId(salesDealCode);
-            //添加订单和订单项
-            boolean flag = true;
-            try {
-                flag = salesOrderService.syncEfastOrder(orderInfo);
-            }catch (Exception e){
-                return new ResponseJson(500, e.getMessage(), 500);
-            }
-            if (flag) {
-                return new ResponseJson(200, "同步成功!", 200);
-            } else {
-                return new ResponseJson(500, "同步订单错误!", 500);
-            }
-        }
-    }
+//    @ResponseBody
+//    @RequiresPermissions("salesOrder:sync:order")
+//    @RequestMapping("/sync_efast_order")
+//    public ResponseJson syncEfastOrder(HttpServletRequest request) throws Exception {
+//        String salesDealCode = request.getParameter("salesDealCode").trim();
+//        if (!StringUtils.isNotEmpty(salesDealCode)) {
+//            return new ResponseJson(500, "订单编号不能为空,请重新输入!", 500);
+//        }
+//        //根据时间排序查询订单 信息
+//        SalesOrder salesOrder = new SalesOrder();
+//        salesOrder.setSalesOrderId(salesDealCode);
+//        int num = salesOrderService.getOrderInfoCount(salesOrder);
+//        if (num > 0) {
+//            return new ResponseJson(500, "该订单已存在,无需同步!", 500);
+//        }
+//        synchronized (lock) {
+//            //获取订单详情
+//            JSONObject orderInfo = efastOrderService.getOrderFormEfastByOrderId(salesDealCode);
+//            //添加订单和订单项
+//            boolean flag = true;
+//            try {
+//                flag = salesOrderService.syncEfastOrder(orderInfo);
+//            }catch (Exception e){
+//                return new ResponseJson(500, e.getMessage(), 500);
+//            }
+//            if (flag) {
+//                return new ResponseJson(200, "同步成功!", 200);
+//            } else {
+//                return new ResponseJson(500, "同步订单错误!", 500);
+//            }
+//        }
+//    }
 
 
     /**
@@ -594,10 +598,58 @@ public class AdminSalesOrderController {
     public ModelAndView toAddOrder(HttpServletRequest request) throws Exception {
         ModelAndView mv = new ModelAndView("order/salesOrder/add_order");
 
+        mv.addObject("admin", AdminUtils.getLoginAdmin());
         mv.addObject("orderBatchs", orderBatchService.getOrderBatchListTwenty());
         return mv;
     }
 
 
+    @RequestMapping("/to_add_product")
+    @RequiresPermissions("salesOrder:add:manual")
+    public ModelAndView toAddProduct(HttpServletRequest request) throws Exception {
+        ModelAndView mv = new ModelAndView("order/salesOrder/product_list");
+        return mv;
+    }
+
+
+    /**
+     * 获取店铺集合
+     *
+     * @param request
+     * @param storeInfo
+     * @return
+     */
+    @ResponseBody
+    @RequestMapping(value = "/select_storeInfo")
+    @RequiresPermissions("salesOrder:add:manual")
+    public ResponseJson listStoreInfo(HttpServletRequest request, StoreInfo storeInfo) {
+        storeInfo.setStoreStatus(1);
+        List<StoreInfo> storeInfoList = storeInfoService.listStore(storeInfo);
+
+        if (storeInfoList == null || storeInfoList.size() < 1) {
+            return new ResponseJson(500, "查询失败", 500);
+        } else {
+            ResponseJson rj = new ResponseJson(200, "查询成功", 200);
+            rj.addResponseKeyValue("storeInfoList", storeInfoList);
+            return rj;
+        }
+    }
+
+    /**
+     * 查询销售公司
+     * @return
+     */
+    @ResponseBody
+    @RequestMapping(value = "/select_company")
+    @RequiresPermissions("salesOrder:add:manual")
+    public ResponseJson getCompany(HttpServletRequest request) throws Exception {
+
+        //获取销售公司
+        List<CompanyInfo> companyInfoList = companyInfoService.listCompanyInfo(new CompanyInfo());
+
+        ResponseJson rj = new ResponseJson(200, "查询成功", 200);
+        rj.addResponseKeyValue("companyInfoList", companyInfoList);
+        return rj;
+    }
 
 }

+ 47 - 0
watero-rst-web/src/main/java/com/iamberry/rst/controllers/product/AdminProductController.java

@@ -0,0 +1,47 @@
+package com.iamberry.rst.controllers.product;
+
+import com.iamberry.rst.controllers.sys.SysController;
+import com.iamberry.rst.core.order.ProductColor;
+import com.iamberry.rst.faces.product.ProductService;
+import com.iamberry.wechat.tools.ResponseJson;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+
+import javax.servlet.http.HttpServletRequest;
+import java.text.SimpleDateFormat;
+import java.util.List;
+
+/**
+ * 订单 handler
+ *
+ * @company 深圳爱贝源科技有限公司
+ * @website www.iamberry.com
+ * @date 2017年5月16日
+ */
+@Controller
+@RequestMapping("/admin/product")
+public class AdminProductController {
+
+    private static SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
+
+    private static Logger logger = LoggerFactory.getLogger(SysController.class);
+
+    @Autowired
+    private ProductService productService;
+
+
+    @ResponseBody
+    @RequestMapping("/get_product")
+    public ResponseJson addProduct(HttpServletRequest request, ProductColor productColor) throws Exception {
+        ResponseJson rj =  new ResponseJson(200, "SUCCESS", 200);
+        List<ProductColor> productColorList = productService.listproductAndColor(productColor);
+        rj.addResponseKeyValue("productColorList",productColorList);
+        return rj;
+    }
+
+}

+ 2 - 1
watero-rst-web/src/main/webapp/WEB-INF/views/base/add_base.ftl

@@ -30,4 +30,5 @@
     var root_path = "${path}";
 </script>
 <script type="text/javascript" src="${path}/common/js/common/common.js"></script>
-<script type="text/javascript" src="${path}/common/js/common/address.js"></script>
+<script type="text/javascript" src="${path}/common/js/common/address.js"></script>
+<script type="text/javascript" src="${path}/common/js/common/salesChannel.js"></script>

+ 2 - 1
watero-rst-web/src/main/webapp/WEB-INF/views/base/list_base.ftl

@@ -30,4 +30,5 @@
 </script>
 
 <script type="text/javascript" src="${path}/common/js/common/common.js"></script>
-<script type="text/javascript" src="${path}/common/js/common/address.js"></script>
+<script type="text/javascript" src="${path}/common/js/common/address.js"></script>
+<script type="text/javascript" src="${path}/common/js/common/salesChannel.js"></script>

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

@@ -34,8 +34,9 @@
         .table-bg th{background-color: #e2f6ff;}
         .update-parts>span{margin-right: 10px;padding: 3px 4px;background-color: #effaff;border: 1px solid #32a3d8;}
         .msg-phone{height: 35px;line-height: 35px;}
-
         .col-sm-1{width: 150px;}
+
+        .all_down{text-decoration: underline;color: #00c;}
     </style>
     <title>添加Bom - Bom管理 - RST</title>
 </head>
@@ -53,7 +54,7 @@
 
             <div class="row cl">
                 <label class="form-label col-3">
-                    <div class="tit-2">客诉基本信息</div>
+                    <div class="tit-2">订单基本信息</div>
                 </label>
                 <div class="formControls col-9">
                 </div>
@@ -64,19 +65,20 @@
             private String salesOrderId;            //订单号
             private String salesOpenId;             //身份证号/openid
             private Integer salesDiscountMoney;     //优惠金额
-            private Integer salesPledgeMoney;       //押金金额
-            private Integer salesRemainDeposit;     //待提取金额
+            private Integer salesPledgeMoney = 0;       //押金金额
+            private Integer salesRemainDeposit = 0;     //待提取金额
             private Integer salesStatus;            //确认状态
-            private Integer salesSendType;          //送货方式
-            private Date salesSendTime;             //发货时间
-            private Date salesSalesTime;            //订购时间
+            private Integer salesSendType = 2;          //送货方式 1:线下送货,2:物流发货
+            private Date salesSendTime = null ;             //发货时间
+            private Date salesSalesTime = new Date();            //订购时间
             private String salesPostNum;            //快递单号
             private String salesPostFirm;           //快递公司
-            private String salesAddressInfo;        //详细地址
-            private String
-            private Integer salesAmount;            //订单总金额
-            private Integer salesPayMoney;          //已付金额
-            private Integer salesPayType;           //付款方式
+            private String salesAddressInfo = "";        //详细地址
+                private String salesAddressTel;         //收件人电话
+                private String salesAddressName;        //收件人姓名
+                private Integer salesAmount = ;            //订单总金额
+                private Integer salesPayMoney = salesAmount;          //已付金额 = 总金额
+                private Integer salesPayType = 1;           //付款方式 1:微信支付 2:现金支付3:已支付定金¥99 4:刷卡支付 5:支付宝支付
             private Integer salesWaitMoney;         //待付金额
             private Integer salesLastMoney;         //本次支付金额
             private Integer salesShippingFee;       //邮费
@@ -85,8 +87,8 @@
                     private String salesAdminRemark;        //后台的备注 -- 卖家备注
                     private String salesUserRemark;         //用户备注 --
             private String salesPayNumber;          //交易尾号
-            private Integer salesStoreId;           //店铺id
-            private Integer salesCompanyId;         //销售公司id
+                private Integer salesStoreId;           //店铺id
+                private Integer salesCompanyId;         //销售公司id
             private Integer salesType;              //订单类型
             private String salesDealCode;           //交易号
             private Integer salesOrderStatus;       //订单状态 订单状态:1:正常        2:换货 3:退货  4:维修  5:补发
@@ -117,6 +119,27 @@
                 </div>
             </div>
 
+            <#if admin.adminDept == 3 || admin.adminDept == 1>
+
+                <div class="row cl sales_channel" id="" style="">
+                    <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_company" id="" defValue="">
+                        </select>
+				    </span>
+                    </div>
+                    <div class="formControls col-2 col-sm-2">
+                    <span class="select-box">
+                        <select  class="select init_store" id="">
+                        </select>
+                    </span>
+                    </div>
+                </div>
+
+            </#if>
+
+
             <div class="row cl" id="" style="">
                 <label class="form-label col-1 col-sm-1">用户信息:</label>
                 <div class="formControls col-2 col-sm-2">
@@ -149,352 +172,77 @@
                 </div>
             </div>
 
-
-            <div class="row cl" id="" style="">
-                <label class="form-label col-1 col-sm-1">商品信息:</label>
-                <div class="formControls col-6 col-sm-6">
-                    <input type="button" class="btn btn-primary" onclick="add_product()" value="添加商品" >
-
-                    <table class="table table-border table-bg table-bordered" style="margin-top: 10px;">
-                        <thead>
-                            <tr class="text-c" id="table1">
-                                <th style="text-align: center;" width="60">产品名称</th>
-                                <th style="text-align: center;" width="40">产品颜色</th>
-                                <th style="text-align: center;" width="30">数量</th>
-                                <th style="text-align: center;" width="100">操作</th>
-                            </tr>
-                        </thead>
-                        <tbody id="add_product">
-                            <tr id="">
-                                <td style="text-align: center;" colspan="4">选择订单后展示</td>
-                            </tr>
-                        </tbody>
-                    </table>
-
-                </div>
-            </div>
-
             <div class="row cl" id="recipientAddressText" style="">
                 <label class="form-label col-1 col-sm-1"></label>
                 <div class="formControls col-6 col-sm-6">
-                    <textarea name="addressDesc" id="addressDesc" cols="" rows="2" datatype="*" errormsg="收货地址不正确!" class="textarea" placeholder="请填写详细地址,最多支持50字符" onKeyUp="$.Huitextarealength(this,50)"></textarea>
+                    <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" >
             </div>
 
-            <div class="row cl" id="" style="">
-                <label class="form-label col-1 col-sm-1">用户备注:</label>
-                <div class="formControls col-6 col-sm-6">
-                    <textarea name="salesUserRemark" id="salesUserRemark" cols="" rows="2" datatype="" errormsg="" class="textarea" placeholder="请填写用户备注,最多支持100字符" onKeyUp="$.Huitextarealength(this,100)"></textarea>
-                    <#--<span id="addrssMsg"></span>-->
+            <div class="row cl">
+                <label class="form-label col-3">
+                    <div class="tit-2">商品信息</div>
+                </label>
+                <div class="formControls col-9">
                 </div>
             </div>
 
             <div class="row cl" id="" style="">
-                <label class="form-label col-1 col-sm-1">后台备注:</label>
-                <div class="formControls col-6 col-sm-6">
-                    <textarea name="salesAdminRemark" id="salesAdminRemark" cols="" rows="2" datatype="" errormsg="" class="textarea" placeholder="请填写后台备注,最多支持100字符" onKeyUp="$.Huitextarealength(this,100)"></textarea>
-                    <#--<span id="addrssMsg"></span>-->
-                </div>
-            </div>
-
-
-
-
-
-            <div class="row cl">
-                <label class="form-label col-1 col-sm-1"><span class="c-red">*</span>来源入口:</label>
-                <div class="formControls col-10 col-sm-10 skin-minimal customerSourceType_text_all">
-                    <div class="radio-box">
-                        <input type="radio" id="tel-1" name="customerSourceType" value="1" >
-                        <label for="tel-1">400电话</label>
-                    </div>
-                    <div class="radio-box">
-                        <input type="radio" id="tel-2" name="customerSourceType" value="2" checked>
-                        <label for="tel-2">微信公众号</label>
-                    </div>
-                    <div class="radio-box">
-                        <input type="radio" id="tel-4" name="customerSourceType" value="4" >
-                        <label for="tel-4">QQ群</label>
-                        <input type="text" class="input-text trim_input customerSourceType_text_4"  value="" style="width: 100px;">
-                    </div>
-                    <div class="radio-box">
-                        <input type="radio" id="tel-5" name="customerSourceType" value="5" >
-                        <label for="tel-5">微信群</label>
-                        <input type="text" class="input-text trim_input customerSourceType_text_5" value="" style="width: 100px;">
-                    </div>
-                </div>
-            </div>
-            <div class="row cl">
-                <label class="form-label col-1 col-sm-1"><span class="c-red">*</span>咨询类型:</label>
-                <div class="formControls col-10 col-sm-10 skin-minimal">
-                    <div class="radio-box">
-                        <input type="radio" class="customerCounselType" id="customer-type-1" name="customerCounselType" value="1"  >
-                        <label for="customer-type-1">售前咨询</label>
-                    </div>
-                    <div class="radio-box">
-                        <input type="radio" class="customerCounselType" id="customer-type-2" name="customerCounselType" value="2"  checked>
-                        <label for="customer-type-2">售后咨询</label>
-                    </div>
-                </div>
-            </div>
+                <label class="form-label col-1 col-sm-1">商品信息:</label>
+                <div class="formControls col-8 col-sm-8">
+                    <input type="button" class="btn btn-primary" onclick="add_product()" value="添加商品" >
 
-            <div class="row cl">
-                <label class="form-label col-1 col-sm-1"><span class="c-red">*</span>产品类型:</label>
-                <input type="hidden" id="typeCompany" name="typeCompany" value="">
-                <div class="formControls col-10 col-sm-10 skin-minimal produce_type_html" id="produceTypeHtml">
-                <#--<div class="radio-box">
-                        <input type="radio" id="tel-3" name="produceType" datatype="*" nullmsg="请选择产品类型!">
-                        <label for="tel-3">净水机</label>
-                    </div>
-                    <div class="radio-box">
-                        <input type="radio" id="tel-3" name="produceType" datatype="*" nullmsg="请选择产品类型!">
-                        <label for="tel-4">冲奶机</label>
-                    </div>-->
-                </div>
-            </div>
-            <div class="row cl" id="salesChannelsSelect">
-                <input type="hidden" id="companyId" name="companyId" value="" >
-                <input type="hidden" id="storeId" name="storeId" value="" >
-                <label class="form-label col-1 col-sm-1">销售渠道:</label>
-                <div class="formControls col-2 col-sm-2">
-                    <span class="select-box">
-                         <select id="selectCompany" class="select" name="">
-                         </select>
-                     </span>
-                </div>
-                <div class="formControls col-2 col-sm-2">
-                    <span class="select-box">
-                         <select id="selectStore" class="select" name="">
-                         </select>
-                     </span>
-                </div>
-            </div>
-            <div class="row cl">
-                <label class="form-label col-1 col-sm-1">客户信息:</label>
-                <div class="formControls col-2 col-sm-2 skin-minimal">
-                    <input type="text" class="input-text trim_input" placeholder="微信昵称" id="customerWechatName" name="customerWechatName" value="">
-                </div>
-                <div class="formControls col-2 col-sm-2 skin-minimal">
-                    <input type="text" class="input-text trim_input" placeholder="用户姓名" id="customerName" name="customerName" value="">
-                </div>
-                <div class="formControls col-2 col-sm-2 skin-minimal">
-                    <input type="text" class="input-text associated-phone" placeholder="用户电话" id="customerTel" name="customerTel" value="">
-                </div>
-            </div>
-            <input type="hidden" value="" id="customerLastId" name="customerLastId">
-            <input type="hidden" value="" id="customerInitialId" name="customerInitialId">
-            <div class="row cl">
-                <div class="formControls col-9 col-sm-9 text-c" style="display:none;" id="onCustomerTable">
-                    <table class="table table-border table-bg table-bordered">
+                    <table class="table table-border table-bg table-bordered" style="margin-top: 10px;display: none" id="all_add_product">
                         <thead>
-                        <tr class="text-c">
-                            <th style="text-align: center;" width="60">客诉时间</th>
-                            <th style="text-align: center;" width="60">跟进客服</th>
-                            <th style="text-align: center;" width="60">用户姓名</th>
-                            <th style="text-align: center;" width="60">用户昵称</th>
-                            <th style="text-align: center;" width="60">用户电话</th>
-                            <th style="text-align: center;" width="60">处理方式</th>
-                            <th style="text-align: center;" width="60">客诉问题</th>
-                            <th style="text-align: center;" width="60">问题简介</th>
-                            <th style="text-align: center;" width="60">操作</th>
-                        </tr>
+                            <tr class="text-c" id="table1">
+                                <th style="text-align: center;" width="30" >产品名称</th>
+                                <th style="text-align: center;" width="25" >产品颜色</th>
+                                <th style="text-align: center;" width="10">售价</th>
+                                <th style="text-align: center;" width="10">产品编码</th>
+                                <th style="text-align: center;" width="10">数量</th>
+                                <th style="text-align: center;" width="10">操作</th>
+                            </tr>
                         </thead>
-                        <tbody id="onCustomer">
-
+                        <tbody id="add_product">
                         </tbody>
                     </table>
-                </div>
-            </div>
-            <div class="row cl" id="twiceSellEnd">
-                <label class="form-label col-1 col-sm-1"><span class="c-red">*</span>二次售后:</label>
-                <div class="formControls col-10 col-sm-10 skin-minimal">
-                    <div class="radio-box">
-                        <input type="radio" id="customerSecondaryCustomer1"  name="customerSecondaryCustomer" value="1"  >
-                        <label for="customerSecondaryCustomer1">是</label>
-                    </div>
-                    <div class="radio-box">
-                        <input type="radio" id="customerSecondaryCustomer2"  name="customerSecondaryCustomer" value="2" checked>
-                        <label for="customerSecondaryCustomer2">否</label>
-                    </div>
-                </div>
-            </div>
-            <div class="row cl" id="openTheLock">
-                <label class="form-label col-1 col-sm-1"><span class="c-red">*</span>开箱损:</label>
-                <div class="formControls col-10 col-sm-10 skin-minimal">
-                    <div class="radio-box">
-                        <input type="radio" id="customerOutDamaged1" name="customerOutDamaged" value="1"  >
-                        <label for="customerOutDamaged1">是</label>
-                    </div>
-                    <div class="radio-box">
-                        <input type="radio" id="customerOutDamaged2"  name="customerOutDamaged" value="2"  checked>
-                        <label for="customerOutDamaged2">否</label>
-                    </div>
-                </div>
-            </div>
-            <div class="row cl" style="position: relative;">
-                <label class="form-label col-1 col-sm-1"><span class="c-red">*</span>客诉问题:</label>
-                <div class="formControls col-2 col-sm-2"> <span class="select-box">
-				<select name="complaintId" class="select">
-                    <option value="">请选择问题分类</option>
-                <#--<option value="0">使用操作</option>-->
-                <#--<option value="1">使用操作</option>-->
-				</select>
-				</span>
-                </div>
-                <div class="formControls col-2 col-sm-2"> <span class="select-box">
-				<select name="smallClassId" id="smallClassId" class="select">
-                    <option value="">请选择问题分类</option>
-                <#--<option value="0">使用操作制水出水</option>
-                <option value="1">使用操作制水出水</option>-->
-				</select>
-				</span>
-                </div>
-                <div class="formControls col-2 col-sm-2">
-                    <div class="clearfix">
-                        <input type="text" placeholder="搜索关键词" class="input-text  ac_input trim_input" name="questionIdMsg" value="" id="search_text" autocomplete="off" style="width:60%"><button type="button" class="btn btn-primary" id="search_button">搜索</button>
-                    </div>
-                </div>
 
-                <div class="dalog-ask">
-                    <div class="tag">
-                        <em></em>
-                        <strong>相关QA</strong>
-                        <a href="javascript:void(0)" style="margin-left: 200px;" onclick="closeQA()">关闭</a>
-                        <ul id="question" style="padding-top: 15px">
-                        <#--<li class="ask">1、净水机面板操作不灵敏,是怎么回事?</li>
-                            <li class="answer">答:<span>4净水机面板操作不灵敏,是怎么回事。1、净水机面板操作不灵敏,是怎么回事?1、净水机面板操作不灵敏,是怎么回事?1、净水机面板操作不灵敏,是怎么回事?</span></li>-->
-                        </ul>
-                    </div>
                 </div>
-
             </div>
 
-            <div class="row cl">
-                <label class="form-label col-1 col-sm-1"><span class="c-red">*</span>问题标题:</label>
-                <div class="formControls col-5 col-sm-5">
-                    <input type="text" class="input-text trim_input" style="width: 625px;" name="describeTitle" id="describeTitle" datatype="*1-50" errormsg="问题标题不正确!" >
-                </div>
-            </div>
-
-            <div class="row cl">
-                <label class="form-label col-1 col-sm-1"></label>
+            <div class="row cl" id="" style="">
+                <label class="form-label col-1 col-sm-1">商品价格:</label>
                 <div class="formControls col-2 col-sm-2">
-                    <input type="text" class="input-text associated-phone" value="" placeholder="请输入手机号" id="p-phone" name="">
-                </div>
-                <div class="formControls col-2 col-sm-2" style="width: 10%">
-                    <input type="button" class="btn btn-primary" value="发送问题回复给用户" onclick="sendPhone('p','p-msg');">
-                </div>
-                <div class="formControls col-2 col-sm-2" style="width: 10%;    margin-left: 40px;">
-                    <input type="button" class="btn btn-primary" value="保存QA" onclick="saveQuestion(1);">
+                    <input type="text" class="input-text" value="" placeholder="订单总价" id="salesAmount" name="salesAmount"  >
                 </div>
-                <div class="formControls col-2 col-sm-2 msg-phone">
-                    <div id="p-msg" style="color: #e00"></div>
-                </div>
-            </div>
-            <div class="row cl">
-                <label class="form-label col-1 col-sm-1">
-                    <div class="tit">处理结果</div>
-                </label>
-                <div class="formControls col-10 col-sm-10">
+                <div class="formControls col-2 col-sm-2">
+                    <input type="text" class="input-text" value="" placeholder="实际总价" id="salesAmount" name="salesAmount" onkeyup="keyFun($(this),999,1)" onpaste="keyFun($(this),999,1)">
                 </div>
             </div>
 
-            <input type="hidden" id="sendProdcues" name="sendProdcuesJson" value="">
-            <input type="hidden" id="sendFittings" name="sendFittingsJson" value="">
-            <input type="hidden" id="closedProdcues" name="closedProdcuesJson" value="">
-            <input type="hidden" id="closedFittings" name="closedFittingsJson" value="">
-
             <div class="row cl">
-                <label class="form-label col-1 col-sm-1"></label>
-                <div class="formControls col-10 col-sm-10">
-                    <ul class="time-line-list" id="processResultStatus">
-                    <#-- <li><span class="arrow"></span><div class="number">1</div><div>录入客诉</div></li>
-                        <li><span class="arrow"></span><div class="number">2</div><div>督促用户寄回</div></li>
-                        <li><span class="arrow"></span><div class="number">3</div><div>录入快递单号</div></li>
-                        <li><span class="arrow"></span><div class="number">4</div><div>仓库收货</div></li>
-                        <li><span class="arrow"></span><div class="number">5</div><div>换新发货</div></li>
-                        <li><span class="arrow"></span><div class="number">6</div><div>发货通知用户</div></li>
-                        <li><span class="arrow"></span><div class="number">7</div><div>收货后回访</div></li>-->
-                    </ul>
-                </div>
-            </div>
-            <div class="row cl" id="orderHead" style="display: none;">
-                <label class="form-label col-1 col-sm-1"><span class="c-red">*</span>订单信息:</label>
-                <div class="formControls col-1 col-sm-1">
-                    <button type="button" class="btn btn-primary" id="selectOrder">搜索订单</button>
-                </div>
-            </div>
-
-
-            <div class="row cl" id="recipientInfoTitle" style="display: none;">
-                <label class="form-label col-1 col-sm-1"><span class="c-red">*</span>收件信息:</label>
-                <div class="formControls col-8 col-sm-8">请先选择订单,系统自动填充姓名,电话和地址信息。</div>
-            </div>
-
-            <div class="row cl" id="recipientInfo" style="display: none;">
-                <label class="form-label col-1 col-sm-1"></label>
-                <div class="formControls col-2 col-sm-2">
-                    <input type="text" class="input-text" value="" placeholder="填写收件人姓名" id="sendName" name="relationSendName" datatype="*1-16" errormsg="联系人格式不正确!" >
-                </div>
-                <div class="formControls col-2 col-sm-2">
-                    <input type="text" class="input-text" value="" placeholder="填写收件人手机号" id="sendTel" name="relationSendTel" datatype="m" errormsg="联系人电话格式不正确!">
-                </div>
-                <div class="formControls col-2 col-sm-2"  id="postageAccount">
-                    <input type="text" class="input-text" value="" placeholder="邮费转账 支付宝账户" id="relationAlipay" name="relationAlipay" errormsg="邮费转账账户!">
-                </div>
-            </div>
-            <div class="row cl" id="recipientAddress" style="display: none;">
-                <input type="hidden" id="addressInfo">
-                <label class="form-label col-1 col-sm-1"></label>
-                <div class="formControls col-2 col-sm-2">
-                    <span class="select-box">
-                         <select id="province" class="select" name="provinceNumber">
-                         </select>
-                     </span>
-                </div>
-                <div class="formControls col-2 col-sm-2">
-                    <span class="select-box">
-                        <select id="city" class="select" name="cityNumber">
-                        </select>
-                    </span>
-                </div>
-                <div class="formControls col-2 col-sm-2">
-                    <span class="select-box">
-                        <select id="district" class="select" name="areaNumber">
-                        </select>
-                    </span>
-                </div>
-                <input type="hidden" name="relationSendMergeAddress" id="relationSendMergeAddress">
-            </div>
-            <div class="row cl" id="recipientAddressText" style="display: none;">
-                <label class="form-label col-1 col-sm-1"></label>
-                <div class="formControls col-5 col-sm-5">
-                    <textarea name="relationSendAddress" id="sendAddress" cols="" rows="2" datatype="*" errormsg="收货地址不正确!" class="textarea" placeholder="请填写详细地址,最多支持50字符" onKeyUp="$.Huitextarealength(this,50)"></textarea>
-                    <span id="addrssMsg"></span>
+                <label class="form-label col-3">
+                    <div class="tit-2">备注信息</div>
+                </label>
+                <div class="formControls col-9">
                 </div>
             </div>
 
-            <div class="row cl" id="TDScollectShow" style="display: none;">
-                <label class="form-label col-1 col-sm-1"></label>
+            <div class="row cl" id="" style="">
+                <label class="form-label col-1 col-sm-1">用户备注:</label>
                 <div class="formControls col-6 col-sm-6">
-                    <span id="DTS-address"></span>
-                    &nbsp;&nbsp;&nbsp;&nbsp;<span id="DTS-in"></span>&nbsp;&nbsp;  <span id="DTS-out"></span>
+                    <textarea name="salesUserRemark" id="salesUserRemark" cols="" rows="2" datatype="" errormsg="" class="textarea" placeholder="请填写用户备注,最多支持100字符" onKeyUp="$.Huitextarealength(this,100)"></textarea>
+                    <#--<span id="addrssMsg"></span>-->
                 </div>
             </div>
 
-            <div class="row cl">
-                <label class="form-label col-1 col-sm-1"><span class="c-red">*</span>回访信息:</label>
-                <div class="formControls col-10 col-sm-10 skin-minimal">
-                    <div class="radio-box">
-                        <input type="radio" id="customer-visit-1" name="customerIsVisit" value="2" >
-                        <label for="customer-visit-1">需要回访</label>
-                    </div>
-                    <div class="radio-box">
-                        <input type="radio" id="customer-visit-2" name="customerIsVisit"  value="1" checked>
-                        <label for="customer-visit-2">不需要回访</label>
-                    </div>
+            <div class="row cl" id="" style="">
+                <label class="form-label col-1 col-sm-1">后台备注:</label>
+                <div class="formControls col-6 col-sm-6">
+                    <textarea name="salesAdminRemark" id="salesAdminRemark" cols="" rows="2" datatype="" errormsg="" class="textarea" placeholder="请填写后台备注,最多支持100字符" onKeyUp="$.Huitextarealength(this,100)"></textarea>
+                    <#--<span id="addrssMsg"></span>-->
                 </div>
             </div>
 
@@ -522,16 +270,68 @@
     /*初始化省市区*/
     $(".address_info").initAddress();
 
+    /*初始化销售公司店铺*/
+    $(".sales_channel").initSalesChannel();
+
     /**
      * 打开订单
      */
     function add_product() {
-        layer_show("搜索订单",url_path + "/admin/customer/select_order","1000","500");
+        layer_show("商品列表",url_path + "/admin/salesOrder/to_add_product","1000","500");
     }
 
-    $(function(){
-
-    })
+    function setSelectProduct(colorIds){
+        var index = layer.load(1, {
+            shade: [0.5,'#fff'] //0.1透明度的白色背景
+        });
+
+        $("#all_add_product").show();
+
+        var colorIdArray = colorIds.split("_");
+        for(var i=0;i<colorIdArray.length;i++){
+            var colorId = colorIdArray[i];
+            if(colorId == ""){
+                break;
+            }
+
+            var flag = true;
+            $("#add_product").find("tr").each(function (){
+                var colId = $(this).find(".color_id").eq(0).val();
+                if(colId == colorId){
+                    flag  = false;
+                }
+            })
+            if(!flag){
+                continue;
+            }
+            $.ajax({
+                type: "POST",
+                data: { colorId : colorId},
+                url: "${path}/admin/product/get_product",
+                success: function(data){
+                    var html = "";
+                    if (data.returnCode == 200 && data.returnMsg.productColorList.length > 0 ) {
+                        for(var i=0;i<data.returnMsg.productColorList.length;i++){
+                            var productColor = data.returnMsg.productColorList[i];
+                            html += '<tr class="text-c">' +
+                                    '<input type="hidden" class="color_id" id="" value="'+ productColor.colorId +'" >' +
+                                    ' <td>'+ cufte(productColor.productName) +'</td>' +
+                                    ' <td>'+ cufte(productColor.colorName) +'</td>' +
+                                    ' <td>'+ cufte(productColor.colorPrice)/100 +'</td>' +
+                                    ' <td>'+ cufte(productColor.colorBar) +'</td>' +
+                                    ' <td><input type="text" class="input-text input-number"  style="width: 100%;border: none;text-align: center;" name="" id="" placeholder="产品数量" onkeyup="keyFun($(this),999,1)" onpaste="keyFun($(this),999,1)"></td>' +
+                                    ' <td><a href="javascript:void(0)" class="del_product all_down" >删除</a></td>' +
+                                    ' </tr>';
+                        }
+                    }else{
+                        html = '<tr class="text-c"><td colspan="12">没有搜索到商品,请重试!</td></tr>';
+                    }
+                    $("#add_product").append(html);
+                }
+            });
+        }
+        layer.close(index);
+    }
 </script>
 </body>
 </html>

+ 185 - 0
watero-rst-web/src/main/webapp/WEB-INF/views/order/salesOrder/product_list.ftl

@@ -0,0 +1,185 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+    <meta charset="utf-8">
+    <meta name="renderer" content="webkit|ie-comp|ie-stand">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+    <meta http-equiv="Cache-Control" content="no-siteapp" />
+    <link rel="Bookmark" href="/favicon.ico" >
+    <link rel="Shortcut Icon" href="/favicon.ico" />
+<#include "/base/add_base.ftl">
+    <title>商品列表</title>
+    <style>
+        .tit{position: relative;text-align: left;font-size: 16px;padding-left: 10px;}
+        .tit:after{content: '';position: absolute;left: 0;top: 20%;height: 60%;width: 3px;background-color: #32a3d8;}
+        .tit-2{position: relative;text-align: left;font-size: 16px;padding-left: 10px;}
+        .tit-2:after{content: '';position: absolute;left: 0;top: 20%;height: 60%;width: 3px;background-color: #32a3d8;}
+        #province select{margin-right:10px; width:100px;height: 31px;-webkit-appearance:none !important;appearance:none;background: url(${path}/common/images/cm/select-1.png) right center no-repeat;background-size: auto 100%;padding-left:3px;padding-right: 25px;}
+        #suggest, #suggest2 {width:200px}
+        .gray {color:gray}
+        .ac_results {background:#fff;border:1px solid #7f9db9;position: absolute;z-index: 10000;display: none}
+        .ac_results li a {white-space: nowrap;text-decoration:none;display:block;color:#05a;padding:1px 3px}
+        .ac_results li {border:1px solid #fff}
+        .ac_over, .ac_results li a:hover {background:#c8e3fc}
+        .ac_results li a span {float:right}
+        .ac_result_tip {border-bottom:1px dashed #666;padding:3px}
+        .select-box{background: url(${path}/common/images/cm/select-1.png) right center no-repeat;background-size: auto 100%;}
+        .select-box select{-webkit-appearance:none !important;background-color: transparent; appearance:none;padding-right: 25px;}
+        .dalog-ask{position: absolute;left:60%;top:0;-webkit-transform: translateY(-30%);transform: translateY(-30%);display: none;background-color: #fff;z-index: 10;}
+        .tag{ width:300px; min-height:300px; border:1px solid #32a3d8; position:relative;background-color: #fff;line-height: 1.5;padding: 10px 12px;}
+        .tag em{display:block; border-width:15px; position:absolute; top:30%; left:-30px;border-style:solid dashed dashed; border-color:transparent  #32a3d8 transparent transparent;font-size:0; line-height:0;}
+        .dalog-ask .ask{color: #000;margin: 10px 0 5px 0;}
+        .dalog-ask .answer{color: #666;margin-bottom: 10px;}
+        .dalog-ask .answer:hover{color: #32a3d8;cursor: pointer;}
+        .time-line-list{list-style: none;width: 100%;margin-left: -20px;}
+        .time-line-list>li{position: relative;float: left; text-align: center;width: 100px;overflow: hidden;white-space: nowrap;word-break: break-all;padding: 2px 0;}
+        .time-line-list .number{display: inline-block; padding: 2px; background: #32a3d8;border: 2px solid #fff;box-shadow:0 0 0 1px #32a3d8;width: 20px;height: 20px;color: #fff;line-height: 20px;border-radius: 50%;}
+        .time-line-list>li:before{content:'';position: absolute;height: 1px;width: 30%;right:0;top: 15px; background-color: #32a3d8;}
+        .time-line-list>li:after{content: '';position: absolute;height: 1px;width: 30%;left: 0;top: 15px;background:#32a3d8;}
+        .time-line-list>li:first-child:after,.time-line-list>li:last-child:before{display: none;}
+        .time-line-list .arrow{border-width:7px; position:absolute; left:25%; top:9px;border-style:solid dashed dashed; border-color:transparent  transparent  transparent #32a3d8;font-size:0; line-height:0;}
+        .time-line-list>li:first-child .arrow{display: none;}
+        .table-bg th{background-color: #e2f6ff;}
+        .update-parts>span{margin-right: 10px;padding: 3px 4px;background-color: #effaff;border: 1px solid #32a3d8;}
+        .my-search-input{padding-left: 30px;background: url(${path}/common/images/cm/search.png) 6px center no-repeat;background-size: auto 60%; }
+        .input-produce{height: 25px;line-height: 25px}
+        .color-div{height: 30px;}
+        .table-td-color{}
+        .msg-phone{
+            height: 35px;
+            line-height: 35px;
+        }
+        .select-order{text-decoration:none;color: #32A3D8;}
+        .select-order:hover{text-decoration:underline;}
+    </style>
+</head>
+<body>
+<div class="page-container">
+    <div class="order-list">
+        <div class="text-c">
+            <form action="" method="post">
+                <div class="row cl" style="margin-left: 0px;">
+
+                    <div class="formControls col-md-offset-4 col-2 col-sm-2"  style="padding: 0px 10px 0px 0px; width: 110px;">
+                        <input type="text" class="input-text" value="" placeholder="产品名称" id="productName" name="productName">
+                    </div>
+                     <div class="formControls col-2 col-sm-2" style="padding: 0px 10px 0px 0px; width: 110px;" >
+                         <input type="text" class="input-text" value="" placeholder="产品编码" id="colorBar" name="colorBar">
+                     </div>
+                     <div class="formControls col-1 col-sm-1" >
+                         <button type="button" class="btn btn-primary" style="background: #32a3d8;color: #fff;-webkit-transform:translateY(-5%);" id="searchOrder" name="">搜索</button>
+                     </div>
+                </div>
+
+            </form>
+        </div>
+
+        <div class="mt-20" style="height: 330px;overflow: auto;overflow-x: hidden;margin-bottom: 12px;border: 1px solid #ddd;">
+            <table class="table table-border table-bordered table-bg table-hover table-sort">
+                <thead>
+                <tr class="text-c">
+                    <th width="10"><input type="checkbox" class="selectAll" id="selectAll" value="selectAll" ></th>
+                    <th width="50">产品名称</th>
+                    <th width="50">产品颜色</th>
+                    <#--<th width="50">产品原价</th>-->
+                    <th width="50">产品售价</th>
+                    <th width="100">产品编码</th>
+                    <th width="80">产品类型</th>
+                </tr>
+                </thead>
+                <tbody id="productHtml">
+
+                </tbody>
+            </table>
+        </div>
+
+        <div class="formControls col-1 col-sm-1" style="margin-left: 45%;">
+            <button type="button" class="btn btn-primary" style="background: #32a3d8;color: #fff;" id="" name="" onclick="selectProduct()">确认选择</button>
+        </div>
+    </div>
+
+</div>
+
+<tfoot>
+</tfoot>
+
+<script>
+    $(function () {
+        /*搜索*/
+        $(document).on('click', '#searchOrder', function() {
+            searchOrder();
+        });
+
+        /*初始化  搜索订单  */
+       searchOrder();
+
+        /*回车搜索*/
+        $('.input-text').keydown(function(event){
+            if(event.keyCode == 13){ //绑定回车
+                $('#searchOrder').click();
+            }
+        });
+    })
+
+    /**
+     * 搜索订单
+     */
+    function searchOrder(){
+        var index = layer.load(1, {
+            shade: [0.5,'#fff'] //0.1透明度的白色背景
+        });
+
+        var productName = cufte($("#productName").val());
+        var colorBar = cufte($("#colorBar").val());
+
+        $.ajax({
+            type: "POST",
+            data: {
+                productName : productName,
+                colorBar : colorBar
+            },
+            url: "${path}/admin/product/get_product",
+            success: function(data){
+                var html = "";
+                if (data.returnCode == 200 && data.returnMsg.productColorList.length > 0 ) {
+                    for(var i=0;i<data.returnMsg.productColorList.length;i++){
+                        var productColor = data.returnMsg.productColorList[i];
+                        html += '<tr class="text-c">' +
+                                ' <td><input type="checkbox" class="color_id" id="" value="'+ productColor.colorId +'" ></td>' +
+                                ' <td>'+ cufte(productColor.productName) +'</td>' +
+                                ' <td>'+ cufte(productColor.colorName) +'</td>' +
+                                ' <td>'+ cufte(productColor.colorPrice)/100 +'</td>' +
+                                ' <td>'+ cufte(productColor.colorBar) +'</td>' +
+                                ' <td>'+ cufte(productColor.productTypeName) +'</td>' +
+                                ' </tr>';
+                    }
+                }else{
+                    html = '<tr class="text-c"><td colspan="12">没有搜索到商品,请重试!</td></tr>';
+                }
+                $("#productHtml").html(html);
+                layer.close(index);
+            },
+            error: function(XmlHttpRequest, textStatus, errorThrown){
+                layer.close(index);
+            }
+        });
+    }
+
+    /**
+     * 选择订单,返回订单内容到父级
+     */
+    function selectProduct() {
+        var colorId = "";
+        $(".color_id").each(function(){
+            if($(this).is(':checked')){
+                colorId += $(this).val() + "_";
+            }
+        })
+        parent.setSelectProduct(colorId);
+        parent.layer.close(parent.layer.getFrameIndex(window.name));
+    }
+</script>
+
+</body>
+</html>

+ 0 - 57
watero-rst-web/src/main/webapp/common/js/common/address.js

@@ -89,63 +89,6 @@
 
 
 /**
- *  初始化省市区
- * @param provinceNode
- * @param cityNode
- * @param countryNode
- */
-function initAddress(provinceNode,cityNode,countryNode){
-    initAddressProvince(provinceNode,cityNode,countryNode);
-    $(provinceNode).change(function (){
-        initAddresscity(this.val());
-    })
-
-    $(cityNode).change(function (){
-        initAddressCountry(this.val());
-    })
-}
-
-/**
- * 初始化省
- * @param provinceNode
- */
-function initAddressProvince(provinceNode,cityNode,countryNode){
-    var infoArray = listProvince();
-    $(provinceNode).empty();    //清空
-    $(infoArray).each(function (){
-        $(provinceNode).append("<option value='"+ this.provinceId +"'>"+ this.province +"</option>");
-    })
-    var proId = $(provinceNode).val();
-    initAddresscity(proId,cityNode,countryNode);
-}
-
-/**
- * 初始化市
- * @param provinceNode
- */
-function initAddresscity(proId,cityNode,countryNode){
-    var infoArray = listCity(proId);
-    $(cityNode).empty();    //清空
-    $(infoArray).each(function (){
-        $(cityNode).append("<option value='"+ this.provinceId +"'>"+ this.province +"</option>");
-    })
-    var cityId = $(cityNode).val();
-    initAddressCountry(cityId,countryNode);
-}
-
-/**
- * 初始化区
- * @param provinceNode
- */
-function initAddressCountry(countryNode){
-    var infoArray = listDistrict();
-    $(countryNode).empty();    //清空
-    $(infoArray).each(function (){
-        $(countryNode).append("<option value='Value'>Text</option>");
-    })
-}
-
-/**
  * 获取省
  * @param provinceId 省id
  * @param province 省名称(模糊搜索)

+ 10 - 0
watero-rst-web/src/main/webapp/common/js/common/common.js

@@ -54,6 +54,16 @@ function cufte(val) {
 }
 
 /**
+ * 该方法用于将Undefined转换为空值
+ * @param val
+ */
+function isEmpty(val) {
+    if(convertUndefinedToEmpty(val) == "")
+        return false;
+    return true;
+}
+
+/**
  * 截取字符串显示
  * @param val
  * @param length  长度

+ 84 - 0
watero-rst-web/src/main/webapp/common/js/common/salesChannel.js

@@ -0,0 +1,84 @@
+/*** 没事的时候多写写代码 -- ljk */
+;(function($,window,document,undefined){
+    //定义SalesChannel的构造函数
+    var SalesChannel = function(ele,opt) {
+        this.$element = ele,
+        this.salesChannel = {
+            companyNode : ele.find(".init_company"),
+            storeNode : ele.find(".init_store")
+        }
+        this.options = $.extend({}, this.defaults, opt)
+    }
+    //定义SalesChannel的方法
+    SalesChannel.prototype = {
+        create: function() {
+            this.companyNode =  this.options.companyNode;
+            this.storeNode =  this.options.storeNode;
+            return this;
+        },
+        init: function() {
+           this.initCompany();
+            return this;
+        },
+        initCompany:function(){
+            var salesChannel = this;
+            var $companyNode = $(this.salesChannel.companyNode);
+            $.get(root_path +"/admin/salesChannel/select_company", function(result){
+                if (result.returnCode == 200) {
+                    $companyNode.empty();    //清空下拉框
+                    $(result.returnMsg.companyInfoList).each(function (){
+                        $companyNode.append("<option value='"+ this.companyId +"'>"+ this.companyName +"</option>");
+                    })
+                    if(isEmpty($companyNode.attr("defValue"))){
+                        salesChannel.setCompany($companyNode.attr("defValue"));
+                    }else{
+                        salesChannel.setCompany(result.returnMsg.companyInfoList[0].companyId);
+                    }
+                }else{
+                    console.log("销售公司查询失败");
+                }
+
+
+            });
+        },
+        initStore:function(companyId){
+            var salesChannel = this;
+            var $storeNode = $(this.salesChannel.storeNode);
+            companyId = cufte(companyId);
+            $.get(root_path +"/admin/salesChannel/select_storeInfo?companyId="+companyId, function(result){
+                if (result.returnCode == 200) {
+                    $storeNode.empty();    //清空下拉框
+                    $(result.returnMsg.storeInfoList).each(function (){
+                        $storeNode.append("<option value='"+ this.storeId +"'>"+ this.storeName +"</option>");
+                    })
+                    if(isEmpty($storeNode.attr("defValue"))){
+                        salesChannel.setStore($storeNode.attr("defValue"));
+                    }else{
+                        salesChannel.setStore(result.returnMsg.storeInfoList[0].storeId);
+                    }
+                }else{
+                    console.log("店铺查询失败");
+                }
+            });
+        },
+        setCompany:function(companyId){
+            var salesChannel = this;
+            var $companyNode = $(this.salesChannel.companyNode);
+            $companyNode.val(companyId);
+            $companyNode.change(function (){
+                salesChannel.initStore($companyNode.val());
+            })
+            salesChannel.initStore(companyId);
+        },
+        setStore:function(storeId){
+            var $storeNode = $(this.salesChannel.storeNode);
+            $storeNode.val(storeId);
+        }
+    }
+    // initSalesChannel 调用
+    $.fn.initSalesChannel = function(options) {
+        var salesChannel = new SalesChannel(this, options);
+        salesChannel.init();
+    }
+})(jQuery,window,document);
+

+ 1 - 1
watero-rst-web/src/main/webapp/common/js/customer/customer.js

@@ -1561,7 +1561,7 @@ function getCompany(companyId){
 }
 
 /**
- * 展示销售公司
+ * 展示店铺
  */
 function setStore(companyId,node){