Forráskód Böngészése

订单中心开发

wangxiaoming 6 éve
szülő
commit
a96f65a196
26 módosított fájl, 1299 hozzáadás és 243 törlés
  1. 9 0
      watero-common-tool/src/main/java/com/iamberry/wechat/tools/ResponseJson.java
  2. 59 14
      watero-rst-core/src/main/java/com.iamberry.rst.core/cm/SalesOrder.java
  3. 10 0
      watero-rst-core/src/main/java/com.iamberry.rst.core/order/OrderBatch.java
  4. 20 0
      watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/SalesOrderService.java
  5. 3 0
      watero-rst-interface/src/main/java/com/iamberry/rst/faces/sys/SysConfigService.java
  6. 3 2
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/CustomerCommonServiceImpl.java
  7. 36 2
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/SalesOrderServiceImpl.java
  8. 22 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/SalesOrderMapper.java
  9. 252 125
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/salesOrderMapper.xml
  10. 5 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/order/OrderBatchServiceImpl.java
  11. 5 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/sys/SysConfigServiceImpl.java
  12. 3 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/sys/mapper/SysConfigMapper.java
  13. 9 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/sys/mapper/sysConfigMapper.xml
  14. 34 2
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminOrderBatchController.java
  15. 148 3
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminSalesOrderController.java
  16. 80 8
      watero-rst-web/src/main/java/com/iamberry/rst/utils/GenerateKeyUtil.java
  17. 2 0
      watero-rst-web/src/main/webapp/WEB-INF/views/base/add_base.ftl
  18. 2 0
      watero-rst-web/src/main/webapp/WEB-INF/views/base/list_base.ftl
  19. 25 0
      watero-rst-web/src/main/webapp/WEB-INF/views/order/bacth/order_batch_list.ftl
  20. 2 4
      watero-rst-web/src/main/webapp/WEB-INF/views/order/salesOrder/add_order.ftl
  21. 42 43
      watero-rst-web/src/main/webapp/WEB-INF/views/order/salesOrder/sales_order_list.ftl
  22. 482 0
      watero-rst-web/src/main/webapp/WEB-INF/views/order/salesOrder/update_order.ftl
  23. 15 18
      watero-rst-web/src/main/webapp/common/js/common/address.js
  24. 7 0
      watero-rst-web/src/main/webapp/common/js/common/commonInit.js
  25. 24 16
      watero-rst-web/src/main/webapp/common/js/common/salesChannel.js
  26. 0 6
      watero-rst-web/src/main/webapp/common/js/customer/customer.js

+ 9 - 0
watero-common-tool/src/main/java/com/iamberry/wechat/tools/ResponseJson.java

@@ -34,6 +34,15 @@ public class ResponseJson implements Serializable {
 	 */
 	public static ResponseJson FAILURE = new ResponseJson(200, "FAILURE", 500);
 
+
+	public static ResponseJson getSUCCESS(){
+		return  new ResponseJson(200, "SUCCESS", 200);
+	}
+
+	public static ResponseJson getFAILURE(){
+		return  new ResponseJson(200, "FAILURE", 500);
+	}
+
 	public ResponseJson() {
 		super();
 	}

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

@@ -32,6 +32,10 @@ public class SalesOrder implements Serializable {
     private String salesPostNum;            //快递单号
     private String salesPostFirm;           //快递公司
     private String salesAddressInfo;        //详细地址
+    private String salesAddressProvinceName;    //省
+    private String salesAddressCityName;        //市
+    private String salesAddressCountryName;    //区
+    private String salesAddressDesc;    //地址详情
     private String salesAddressTel;         //收件人电话
     private String salesAddressName;        //收件人姓名
     private Integer salesAmount;            //订单总金额
@@ -93,11 +97,13 @@ public class SalesOrder implements Serializable {
 
     //Efast升级新增字段 2018-6-6
     private String isHaveImport;//是否已导出过
-    private String isDeliverGoods;//是否已发货
     private String styleColor;//上传订单结果颜色
 
     private String salesBatchId;    //批次编号
 
+    private Integer salesAddType;   //增加订单方式 1:手动增加 2:Excel导入
+    private Integer salesAdminId;   //录入人id
+
     public String getStyleColor() {
         return styleColor;
     }
@@ -114,15 +120,14 @@ public class SalesOrder implements Serializable {
         this.isHaveImport = isHaveImport;
     }
 
-    public String getIsDeliverGoods() {
-        return isDeliverGoods;
+    public Integer getSalesShippingStatus() {
+        return salesShippingStatus;
     }
 
-    public void setIsDeliverGoods(String isDeliverGoods) {
-        this.isDeliverGoods = isDeliverGoods;
+    public void setSalesShippingStatus(Integer salesShippingStatus) {
+        this.salesShippingStatus = salesShippingStatus;
     }
 
-
     public String getItemProductName() {
         return itemProductName;
     }
@@ -187,14 +192,6 @@ public class SalesOrder implements Serializable {
         this.salesOrderStatus = salesOrderStatus;
     }
 
-    public Integer getSalesShippingStatus() {
-        return salesShippingStatus;
-    }
-
-    public void setSalesShippingStatus(Integer salesShippingStatus) {
-        this.salesShippingStatus = salesShippingStatus;
-    }
-
     public Integer getSalesPayStatus() {
         return salesPayStatus;
     }
@@ -554,4 +551,52 @@ public class SalesOrder implements Serializable {
     public void setListColorBar(List<String> listColorBar) {
         this.listColorBar = listColorBar;
     }
+
+    public String getSalesAddressProvinceName() {
+        return salesAddressProvinceName;
+    }
+
+    public void setSalesAddressProvinceName(String salesAddressProvinceName) {
+        this.salesAddressProvinceName = salesAddressProvinceName;
+    }
+
+    public String getSalesAddressCityName() {
+        return salesAddressCityName;
+    }
+
+    public void setSalesAddressCityName(String salesAddressCityName) {
+        this.salesAddressCityName = salesAddressCityName;
+    }
+
+    public String getSalesAddressCountryName() {
+        return salesAddressCountryName;
+    }
+
+    public void setSalesAddressCountryName(String salesAddressCountryName) {
+        this.salesAddressCountryName = salesAddressCountryName;
+    }
+
+    public String getSalesAddressDesc() {
+        return salesAddressDesc;
+    }
+
+    public void setSalesAddressDesc(String salesAddressDesc) {
+        this.salesAddressDesc = salesAddressDesc;
+    }
+
+    public Integer getSalesAddType() {
+        return salesAddType;
+    }
+
+    public void setSalesAddType(Integer salesAddType) {
+        this.salesAddType = salesAddType;
+    }
+
+    public Integer getSalesAdminId() {
+        return salesAdminId;
+    }
+
+    public void setSalesAdminId(Integer salesAdminId) {
+        this.salesAdminId = salesAdminId;
+    }
 }

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

@@ -30,6 +30,8 @@ public class OrderBatch  implements  Serializable{
     //订单数量
     private Integer batchOrderNum;
 
+    private Integer isBatchOrderConfirm;   //是否有需要确认的订单   0:有   1:没有
+
     public String getBatchId(){
         return batchId;
     }
@@ -85,4 +87,12 @@ public class OrderBatch  implements  Serializable{
     public void setBatchOrderNum(Integer batchOrderNum) {
         this.batchOrderNum = batchOrderNum;
     }
+
+    public Integer getIsBatchOrderConfirm() {
+        return isBatchOrderConfirm;
+    }
+
+    public void setIsBatchOrderConfirm(Integer isBatchOrderConfirm) {
+        this.isBatchOrderConfirm = isBatchOrderConfirm;
+    }
 }

+ 20 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/SalesOrderService.java

@@ -48,6 +48,13 @@ public interface SalesOrderService {
     Integer updateSalesOrder(SalesOrder salesOrder);
 
     /**
+     * 修改订单信息
+     * @param salesOrder
+     * @return
+     */
+    Integer updateOrderInfo(SalesOrder salesOrder);
+
+    /**
      * 批量添加订单信息
      * @param list
      * @return
@@ -195,5 +202,18 @@ public interface SalesOrderService {
      */
     List<SalesOrder> listSalesOrderAndItem(SalesOrder salesOrder);
 
+    /**
+     * 查询订单数量
+     * @param salesOrder
+     * @return
+     */
+    Integer getSalesOrderNum(SalesOrder salesOrder);
+
+    /**
+     * 批量确认订单
+     * @param salesOrder
+     * @return
+     */
+    Integer listConfirmSalesOrder(SalesOrder salesOrder);
 
 }

+ 3 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/sys/SysConfigService.java

@@ -10,6 +10,9 @@ public interface SysConfigService {
     //获取配置参数
     String getSysConfig(Integer configId);
 
+    //获取配置参数
+    SysConfig getSysConfigAll(Integer configId);
+
     //设置配置参数
     Boolean updateSysConfig(SysConfig sysConfig);
 

+ 3 - 2
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/CustomerCommonServiceImpl.java

@@ -6,6 +6,7 @@ import com.iamberry.rst.service.cm.mapper.*;
 import com.iamberry.rst.util.CustomerCommonUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.beans.Transient;
 import java.util.ArrayList;
@@ -128,7 +129,7 @@ public class CustomerCommonServiceImpl implements CustomerCommonService {
     }
 
     @Override
-    @Transient
+    @Transactional
     public Integer updateCustomerCommon(CustomerCommon customerCommon) {
         Integer flag = 0;
         switch (customerCommon.getCustomerIsSolve()){
@@ -160,7 +161,7 @@ public class CustomerCommonServiceImpl implements CustomerCommonService {
     }
 
     @Override
-    @Transient
+    @Transactional
     public Integer updateCommonAndAddPostage(CustomerCommon customerCommon) {
         CustomerCommon newCc = new CustomerCommon();
         newCc.setRelationId(customerCommon.getRelationId());

+ 36 - 2
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/SalesOrderServiceImpl.java

@@ -78,6 +78,30 @@ public class SalesOrderServiceImpl implements SalesOrderService {
         return salesOrderMapper.updateSalesOrder(salesOrder);
     }
 
+    @Transactional
+    @Override
+    public Integer updateOrderInfo(SalesOrder salesOrder) {
+        int flag = 0;
+        //删除订单项
+        flag = salesOrderMapper.delOrderItem(salesOrder.getSalesId());
+        if (flag <= 0) {
+            throw new RuntimeException("删除订单项失败!");
+        }
+
+        //修改订单
+        salesOrderMapper.updateSalesOrder(salesOrder);
+        if (flag <= 0) {
+            throw new RuntimeException("修改订单失败!");
+        }
+
+        //批量添加订单项数据
+        flag = salesOrderMapper.addOrderItemList(salesOrder.getSalesOrderItemList());
+        if (flag <= 0) {
+            throw new RuntimeException("增加订单项失败!");
+        }
+        return flag;
+    }
+
     @Override
     public Integer addSalesOrderList(List<SalesOrder> list) {
         return salesOrderMapper.addSalesOrderList(list);
@@ -97,7 +121,7 @@ public class SalesOrderServiceImpl implements SalesOrderService {
     }
 
     @Override
-    @Transient
+    @Transactional
     public boolean addOrderAndItem(SalesOrder salesOrder, List<SalesOrderItem> list) throws Exception {
         if (list == null || list.size() == 0) {
             throw new RuntimeException("获取订单信息出错!");
@@ -559,7 +583,7 @@ public class SalesOrderServiceImpl implements SalesOrderService {
     }
 
     @Override
-    @Transient
+    @Transactional
     public boolean syncEfastOrder(JSONObject orderInfo) throws Exception {
         if (orderInfo == null) {
             throw  new RuntimeException("获取Efast订单信息出错!");
@@ -753,5 +777,15 @@ public class SalesOrderServiceImpl implements SalesOrderService {
         return salesOrderMapper.listSalesOrderAndItem(salesOrder);
     }
 
+    @Override
+    public Integer getSalesOrderNum(SalesOrder salesOrder) {
+        return salesOrderMapper.getSalesOrderNum(salesOrder);
+    }
+
+    @Override
+    public Integer listConfirmSalesOrder(SalesOrder salesOrder) {
+        return salesOrderMapper.listConfirmSalesOrder(salesOrder);
+    }
+
 
 }

+ 22 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/SalesOrderMapper.java

@@ -147,4 +147,26 @@ public interface SalesOrderMapper {
      * @return
      */
     List<SalesOrder> listSalesOrderAndItem(SalesOrder salesOrder);
+
+    /**
+     * 查询订单数量
+     * @param salesOrder
+     * @return
+     */
+    Integer getSalesOrderNum(SalesOrder salesOrder);
+
+    /**
+     *根据订单id 删除订单项
+     * @param salesId
+     * @return
+     */
+    Integer delOrderItem(Integer salesId);
+
+    /**
+     * 批量确认订单
+     * @param salesOrder
+     * @return
+     */
+    Integer listConfirmSalesOrder(SalesOrder salesOrder);
+
 }

+ 252 - 125
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/salesOrderMapper.xml

@@ -37,7 +37,8 @@
         sales_send_type,sales_send_time,sales_sales_time,sales_post_num,sales_post_firm,sales_address_info,sales_address_tel,
         sales_address_name,sales_amount,sales_pay_money,sales_pay_type,sales_wait_money,sales_last_money,sales_shipping_fee,sales_pay_time,
         sales_create_time,sales_admin_remark,sales_user_remark,sales_pay_number,sales_store_id,sales_company_id,sales_type,sales_deal_code,sales_order_status,
-        sales_status,sales_shipping_status,sales_pay_status,sales_process_status,sales_is_send,sales_is_locked,sales_is_separate,sales_is_download
+        sales_status,sales_shipping_status,sales_pay_status,sales_process_status,sales_is_send,sales_is_locked,sales_is_separate,sales_is_download,sales_main_order_id,
+        sales_batch_id,sales_add_type,sales_admin_id
   </sql>
 
   <!-- 根据id查询订单信息 -->
@@ -66,13 +67,13 @@
       <if test="isHaveImport !=null and isHaveImport !=''">
         AND sales_is_download = #{isHaveImport}
       </if>
-      <if test="isDeliverGoods !=null and isDeliverGoods !=''">
-        AND sales_shipping_status = #{isDeliverGoods}
+      <if test="salesShippingStatus !=null">
+        AND sales_shipping_status = #{salesShippingStatus}
       </if>
-      <if test="salesStatus !=null and salesStatus !=''">
-        AND sales_status = #{salesStatus}listOrderExcel
+      <if test="salesStatus !=null">
+        AND sales_status = #{salesStatus}
       </if>
-      <if test="salesOrderStatus !=null and salesOrderStatus !=''">
+      <if test="salesOrderStatus !=null">
         AND sales_order_status = #{salesOrderStatus}
       </if>
       <if test="salesStoreId !=null and salesStoreId !=''">
@@ -151,8 +152,8 @@
       <if test="isHaveImport !=null and isHaveImport !=''">
         AND sales_is_download = #{isHaveImport}
       </if>
-      <if test="isDeliverGoods !=null and isDeliverGoods !=''">
-        AND sales_shipping_status = #{isDeliverGoods}
+      <if test="salesShippingStatus !=null and salesShippingStatus !=''">
+        AND sales_shipping_status = #{salesShippingStatus}
       </if>
       <if test="salesStoreId !=null and salesStoreId !=''">
         AND sales_store_id = #{salesStoreId}
@@ -206,8 +207,8 @@
         <if test="isHaveImport !=null and isHaveImport !=''">
           AND sales_is_download = #{isHaveImport}
         </if>
-        <if test="isDeliverGoods !=null and isDeliverGoods !=''">
-          AND sales_shipping_status = #{isDeliverGoods}
+        <if test="salesShippingStatus !=null and salesShippingStatus !=''">
+          AND sales_shipping_status = #{salesShippingStatus}
         </if>
         <if test="salesStoreId !=null and salesStoreId !=''">
           AND sales_store_id = #{salesStoreId}
@@ -244,29 +245,95 @@
 
   <!-- 添加订单信息 -->
   <insert id="addSalesOrder" parameterType="SalesOrder" keyProperty="salesId" useGeneratedKeys="true" >
-    insert into tb_rst_sales_order_info (sales_id, sales_orderId, sales_openId, 
-      sales_discount_money, sales_pledge_money, sales_remain_deposit, 
-      sales_status, sales_send_type, sales_send_time, 
-      sales_sales_time, sales_post_num, sales_post_firm, 
-      sales_address_info, sales_address_tel, sales_address_name, 
-      sales_amount, sales_pay_money, sales_pay_type, 
-      sales_wait_money, sales_last_money, sales_shipping_fee, 
-      sales_pay_time, sales_create_time, sales_admin_remark, 
-      sales_user_remark, sales_pay_number, sales_store_id, 
-      sales_company_id, sales_type,sales_deal_code,sales_order_status,sales_shipping_status,
-      sales_pay_status,sales_process_status,sales_is_send,sales_is_locked,sales_is_separate,sales_is_download,sales_main_order_id,sales_batch_id)
-    values (#{salesId,jdbcType=INTEGER}, #{salesOrderId,jdbcType=VARCHAR}, #{salesOpenId,jdbcType=VARCHAR},
-      #{salesDiscountMoney,jdbcType=INTEGER}, #{salesPledgeMoney,jdbcType=INTEGER}, #{salesRemainDeposit,jdbcType=INTEGER}, 
-      #{salesStatus,jdbcType=INTEGER}, #{salesSendType,jdbcType=INTEGER}, #{salesSendTime,jdbcType=TIMESTAMP}, 
-      #{salesSalesTime,jdbcType=TIMESTAMP}, #{salesPostNum,jdbcType=VARCHAR}, #{salesPostFirm,jdbcType=VARCHAR}, 
-      #{salesAddressInfo,jdbcType=VARCHAR}, #{salesAddressTel,jdbcType=VARCHAR}, #{salesAddressName,jdbcType=VARCHAR}, 
-      #{salesAmount,jdbcType=INTEGER}, #{salesPayMoney,jdbcType=INTEGER}, #{salesPayType,jdbcType=INTEGER}, 
-      #{salesWaitMoney,jdbcType=INTEGER}, #{salesLastMoney,jdbcType=INTEGER}, #{salesShippingFee,jdbcType=INTEGER}, 
-      #{salesPayTime,jdbcType=TIMESTAMP}, #{salesCreateTime,jdbcType=TIMESTAMP}, #{salesAdminRemark,jdbcType=VARCHAR},
-      #{salesUserRemark,jdbcType=VARCHAR}, #{salesPayNumber,jdbcType=VARCHAR}, #{salesStoreId,jdbcType=INTEGER}, 
-      #{salesCompanyId,jdbcType=INTEGER}, #{salesType,jdbcType=INTEGER},#{salesDealCode},#{salesOrderStatus},
-      #{salesShippingStatus},#{salesPayStatus},#{salesProcessStatus},#{salesIsSend},#{salesIsLocked},
-      #{salesIsSeparate},#{salesIsDownload},#{salesMainOrderId},#{salesBatchId})
+    insert into
+            tb_rst_sales_order_info
+            (
+                sales_orderId,
+                sales_openId,
+                sales_discount_money,
+                sales_pledge_money,
+                sales_remain_deposit,
+                sales_send_type,
+                sales_send_time,
+                sales_sales_time,
+                sales_post_num,
+                sales_post_firm,
+                sales_address_info,
+                sales_address_tel,
+                sales_address_name,
+                sales_amount,
+                sales_pay_money,
+                sales_pay_type,
+                sales_wait_money,
+                sales_last_money,
+                sales_shipping_fee,
+                sales_pay_time,
+                sales_admin_remark,
+                sales_user_remark,
+                sales_pay_number,
+                sales_store_id,
+                sales_company_id,
+                sales_type,
+                sales_deal_code,
+                sales_order_status,
+                sales_status,
+                sales_shipping_status,
+                sales_pay_status,
+                sales_process_status,
+                sales_is_send,
+                sales_is_locked,
+                sales_is_separate,
+                sales_is_download,
+                sales_main_order_id,
+                sales_batch_id,
+                sales_add_type,
+                sales_create_time,
+                sales_admin_id
+            )
+        values
+            (
+                #{salesOrderId},
+                #{salesOpenId},
+                #{salesDiscountMoney},
+                #{salesPledgeMoney},
+                #{salesRemainDeposit},
+                #{salesSendType},
+                #{salesSendTime},
+                #{salesSalesTime},
+                #{salesPostNum},
+                #{salesPostFirm},
+                #{salesAddressInfo},
+                #{salesAddressTel},
+                #{salesAddressName},
+                #{salesAmount},
+                #{salesPayMoney},
+                #{salesPayType},
+                #{salesWaitMoney},
+                #{salesLastMoney},
+                #{salesShippingFee},
+                #{salesPayTime},
+                #{salesAdminRemark},
+                #{salesUserRemark},
+                #{salesPayNumber},
+                #{salesStoreId},
+                #{salesCompanyId},
+                #{salesType},
+                #{salesDealCode},
+                #{salesOrderStatus},
+                #{salesStatus},
+                #{salesShippingStatus},
+                #{salesPayStatus},
+                #{salesProcessStatus},
+                #{salesIsSend},
+                #{salesIsLocked},
+                #{salesIsSeparate},
+                #{salesIsDownload},
+                #{salesMainOrderId},
+                #{salesBatchId},
+                #{salesAddType},
+                now(),
+                #{salesAdminId}
+            )
   </insert>
 
   <!-- 批量添加订单项数据 -->
@@ -342,100 +409,131 @@
 
   <!-- 修改订单信息 -->
   <update id="updateSalesOrder" parameterType="SalesOrder" >
-    update tb_rst_sales_order_info
+    update
+    tb_rst_sales_order_info
     <set >
-      <if test="salesOrderStatus != null">
+      <if test="salesOrderId != null and salesOrderId != ''">
+        sales_orderId = #{salesOrderId},
+      </if >
+      <if test="salesOpenId != null and salesOpenId != ''">
+        sales_openId = #{salesOpenId},
+      </if >
+      <if test="salesDiscountMoney != null ">
+        sales_discount_money = #{salesDiscountMoney},
+      </if >
+      <if test="salesPledgeMoney != null ">
+        sales_pledge_money = #{salesPledgeMoney},
+      </if >
+      <if test="salesRemainDeposit != null ">
+        sales_remain_deposit = #{salesRemainDeposit},
+      </if >
+      <if test="salesSendType != null ">
+        sales_send_type = #{salesSendType},
+      </if >
+      <if test="salesSendTime != null and salesSendTime != ''">
+        sales_send_time = #{salesSendTime},
+      </if >
+      <if test="salesSalesTime != null and salesSalesTime != ''">
+        sales_sales_time = #{salesSalesTime},
+      </if >
+      <if test="salesPostNum != null and salesPostNum != ''">
+        sales_post_num = #{salesPostNum},
+      </if >
+      <if test="salesPostFirm != null and salesPostFirm != ''">
+        sales_post_firm = #{salesPostFirm},
+      </if >
+      <if test="salesAddressInfo != null and salesAddressInfo != ''">
+        sales_address_info = #{salesAddressInfo},
+      </if >
+      <if test="salesAddressTel != null and salesAddressTel != ''">
+        sales_address_tel = #{salesAddressTel},
+      </if >
+      <if test="salesAddressName != null and salesAddressName != ''">
+        sales_address_name = #{salesAddressName},
+      </if >
+      <if test="salesAmount != null ">
+        sales_amount = #{salesAmount},
+      </if >
+      <if test="salesPayMoney != null ">
+        sales_pay_money = #{salesPayMoney},
+      </if >
+      <if test="salesPayType != null ">
+        sales_pay_type = #{salesPayType},
+      </if >
+      <if test="salesWaitMoney != null ">
+        sales_wait_money = #{salesWaitMoney},
+      </if >
+      <if test="salesLastMoney != null ">
+        sales_last_money = #{salesLastMoney},
+      </if >
+      <if test="salesShippingFee != null ">
+        sales_shipping_fee = #{salesShippingFee},
+      </if >
+      <if test="salesPayTime != null and salesPayTime != ''">
+        sales_pay_time = #{salesPayTime},
+      </if >
+      <if test="salesAdminRemark != null and salesAdminRemark != ''">
+        sales_admin_remark = #{salesAdminRemark},
+      </if >
+      <if test="salesUserRemark != null and salesUserRemark != ''">
+        sales_user_remark = #{salesUserRemark},
+      </if >
+      <if test="salesPayNumber != null and salesPayNumber != ''">
+        sales_pay_number = #{salesPayNumber},
+      </if >
+      <if test="salesStoreId != null ">
+        sales_store_id = #{salesStoreId},
+      </if >
+      <if test="salesCompanyId != null ">
+        sales_company_id = #{salesCompanyId},
+      </if >
+      <if test="salesType != null ">
+        sales_type = #{salesType},
+      </if >
+      <if test="salesDealCode != null and salesDealCode != ''">
+        sales_deal_code = #{salesDealCode},
+      </if >
+      <if test="salesOrderStatus != null ">
         sales_order_status = #{salesOrderStatus},
-      </if>
-      <if test="salesOrderId != null" >
-        sales_orderId = #{salesOrderId,jdbcType=VARCHAR},
-      </if>
-      <if test="salesOpenId != null" >
-        sales_openId = #{salesOpenId,jdbcType=VARCHAR},
-      </if>
-      <if test="salesDiscountMoney != null" >
-        sales_discount_money = #{salesDiscountMoney,jdbcType=INTEGER},
-      </if>
-      <if test="salesPledgeMoney != null" >
-        sales_pledge_money = #{salesPledgeMoney,jdbcType=INTEGER},
-      </if>
-      <if test="salesRemainDeposit != null" >
-        sales_remain_deposit = #{salesRemainDeposit,jdbcType=INTEGER},
-      </if>
-      <if test="salesStatus != null" >
-        sales_status = #{salesStatus,jdbcType=INTEGER},
-      </if>
-      <if test="salesSendType != null" >
-        sales_send_type = #{salesSendType,jdbcType=INTEGER},
-      </if>
-      <if test="salesSendTime != null" >
-        sales_send_time = #{salesSendTime,jdbcType=TIMESTAMP},
-      </if>
-      <if test="salesSalesTime != null" >
-        sales_sales_time = #{salesSalesTime,jdbcType=TIMESTAMP},
-      </if>
-      <if test="salesPostNum != null" >
-        sales_post_num = #{salesPostNum,jdbcType=VARCHAR},
-      </if>
-      <if test="salesPostFirm != null" >
-        sales_post_firm = #{salesPostFirm,jdbcType=VARCHAR},
-      </if>
-      <if test="salesAddressInfo != null" >
-        sales_address_info = #{salesAddressInfo,jdbcType=VARCHAR},
-      </if>
-      <if test="salesAddressTel != null" >
-        sales_address_tel = #{salesAddressTel,jdbcType=VARCHAR},
-      </if>
-      <if test="salesAddressName != null" >
-        sales_address_name = #{salesAddressName,jdbcType=VARCHAR},
-      </if>
-      <if test="salesAmount != null" >
-        sales_amount = #{salesAmount,jdbcType=INTEGER},
-      </if>
-      <if test="salesPayMoney != null" >
-        sales_pay_money = #{salesPayMoney,jdbcType=INTEGER},
-      </if>
-      <if test="salesPayType != null" >
-        sales_pay_type = #{salesPayType,jdbcType=INTEGER},
-      </if>
-      <if test="salesWaitMoney != null" >
-        sales_wait_money = #{salesWaitMoney,jdbcType=INTEGER},
-      </if>
-      <if test="salesLastMoney != null" >
-        sales_last_money = #{salesLastMoney,jdbcType=INTEGER},
-      </if>
-      <if test="salesShippingFee != null" >
-        sales_shipping_fee = #{salesShippingFee,jdbcType=INTEGER},
-      </if>
-      <if test="salesPayTime != null" >
-        sales_pay_time = #{salesPayTime,jdbcType=TIMESTAMP},
-      </if>
-      <if test="salesCreateTime != null" >
-        sales_create_time = #{salesCreateTime,jdbcType=TIMESTAMP},
-      </if>
-      <if test="salesAdminRemark != null" >
-        sales_admin_remark = #{salesAdminRemark,jdbcType=VARCHAR},
-      </if>
-      <if test="salesUserRemark != null" >
-        sales_user_remark = #{salesUserRemark,jdbcType=VARCHAR},
-      </if>
-      <if test="salesPayNumber != null" >
-        sales_pay_number = #{salesPayNumber,jdbcType=VARCHAR},
-      </if>
-      <if test="salesStoreId != null" >
-        sales_store_id = #{salesStoreId,jdbcType=INTEGER},
-      </if>
-      <if test="salesCompanyId != null" >
-        sales_company_id = #{salesCompanyId,jdbcType=INTEGER},
-      </if>
-      <if test="salesType != null" >
-        sales_type = #{salesType,jdbcType=INTEGER},
-      </if>
-      <if test="salesIsDownload != null" >
-        sales_is_download = #{salesIsDownload,jdbcType=INTEGER},
-      </if>
-    </set>
-    where sales_id = #{salesId}
+      </if >
+      <if test="salesStatus != null ">
+        sales_status = #{salesStatus},
+      </if >
+      <if test="salesShippingStatus != null ">
+        sales_shipping_status = #{salesShippingStatus},
+      </if >
+      <if test="salesPayStatus != null ">
+        sales_pay_status = #{salesPayStatus},
+      </if >
+      <if test="salesProcessStatus != null ">
+        sales_process_status = #{salesProcessStatus},
+      </if >
+      <if test="salesIsSend != null ">
+        sales_is_send = #{salesIsSend},
+      </if >
+      <if test="salesIsLocked != null ">
+        sales_is_locked = #{salesIsLocked},
+      </if >
+      <if test="salesIsSeparate != null ">
+        sales_is_separate = #{salesIsSeparate},
+      </if >
+      <if test="salesIsDownload != null ">
+        sales_is_download = #{salesIsDownload},
+      </if >
+      <if test="salesMainOrderId != null and salesMainOrderId != ''">
+        sales_main_order_id = #{salesMainOrderId},
+      </if >
+      <if test="salesBatchId != null and salesBatchId != ''">
+        sales_batch_id = #{salesBatchId},
+      </if >
+      <if test="salesAddType != null ">
+        sales_add_type = #{salesAddType},
+      </if >
+      <if test="salesAdminId != null ">
+        sales_admin_id = #{salesAdminId}
+      </if >
+    </set >
+    where sales_id= #{salesId}
   </update>
 
   <!-- 批量修改订单信息 -->
@@ -611,6 +709,7 @@
   <select id="getOrderStoreName" parameterType="String" resultType="SalesOrder">
       SELECT
           t.sales_id,
+          t.sales_status,
           si.store_name
       FROM
           tb_rst_sales_order_info t
@@ -631,6 +730,34 @@
     WHERE t.sales_batch_id = #{salesBatchId}
   </select>
 
+  <!-- 按照批次查询订单项,并下载,订单列表主要按照订单项来排列 -->
+  <select id="getSalesOrderNum" parameterType="SalesOrder" resultType="Integer">
+    SELECT
+        COUNT(t.sales_id)
+    FROM
+        tb_rst_sales_order_info t
+    <where>
+        <if test="salesCreateTime !=null and salesCreateTime !=''">
+          AND date_format(t.sales_create_time,'%Y-%m') = date_format(#{salesCreateTime},'%Y-%m')
+        </if>
+        <if test="salesDealCode !=null and salesDealCode !=''">
+          AND sales_deal_code = #{salesDealCode}
+        </if>
+    </where>
+  </select>
+
+  <delete id="delOrderItem" parameterType="Integer">
+    DELETE FROM tb_rst_sales_order_item
+    WHERE item_order_id = #{salesId}
+  </delete>
 
+    <!-- 批量确认订单 -->
+    <update id="listConfirmSalesOrder" parameterType="SalesOrder" >
+        update tb_rst_sales_order_info
+        SET
+            sales_status = 1
+        WHERE
+            sales_batch_id = #{salesBatchId}
+    </update>
 
 </mapper>

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/order/OrderBatchServiceImpl.java

@@ -42,11 +42,16 @@ public class OrderBatchServiceImpl  implements OrderBatchService {
         List<OrderBatch> list = orderBatchMapper.getOrderBatchList(orderBatch);
         for (OrderBatch ob : list){
             List<SalesOrder> salesOrderList = salesOrderMapper.getOrderStoreName(ob.getBatchId());
+            Integer flag = 1;   //是否有需要确认的订单   0:有   1:没有
             StringBuffer sb = new StringBuffer();
             for (SalesOrder so: salesOrderList) {
                 sb.append( sb.length()<1?so.getStoreName():(","+so.getStoreName()));
+                if(so.getSalesStatus() == null || so.getSalesStatus() == 0){
+                    flag = 0;
+                }
             }
             ob.setBatchChannel(sb.toString());
+            ob.setIsBatchOrderConfirm(flag);
         }
         return PageUtil.getPage(list);
     }

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/sys/SysConfigServiceImpl.java

@@ -19,6 +19,11 @@ public class SysConfigServiceImpl implements SysConfigService {
     }
 
     @Override
+    public SysConfig getSysConfigAll(Integer configId) {
+        return sysConfigMapper.getSysConfigAll(configId);
+    }
+
+    @Override
     public Boolean updateSysConfig(SysConfig sysConfig) {
         return sysConfigMapper.updateSysConfig(sysConfig);
     }

+ 3 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/sys/mapper/SysConfigMapper.java

@@ -7,6 +7,9 @@ public interface SysConfigMapper {
     //获取配置参数
     String getSysConfig(Integer configId);
 
+    //获取配置参数
+    SysConfig getSysConfigAll(Integer configId);
+
     //设置配置参数
     Boolean updateSysConfig(SysConfig sysConfig);
 

+ 9 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/sys/mapper/sysConfigMapper.xml

@@ -11,6 +11,15 @@
 		WHERE config_id = #{configId}
 	</select>
 
+	<!-- 获取配置参数 -->
+	<select id="getSysConfigAll" parameterType="Integer" resultType="SysConfig">
+		SELECT
+			*
+		FROM
+		tb_rst_sys_config
+		WHERE config_id = #{configId}
+	</select>
+
 	<update id="updateSysConfig" parameterType="SysConfig" >
 		update tb_rst_sys_config
 		<set >

+ 34 - 2
watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminOrderBatchController.java

@@ -1,14 +1,18 @@
 package com.iamberry.rst.controllers.order;
 
+import com.iamberry.rst.core.cm.SalesOrder;
 import com.iamberry.rst.core.order.OrderBatch;
 import com.iamberry.rst.core.page.PagedResult;
+import com.iamberry.rst.faces.cm.SalesOrderService;
 import com.iamberry.rst.faces.order.OrderBatchService;
 import com.iamberry.rst.utils.StitchAttrUtil;
+import com.iamberry.wechat.tools.ResponseJson;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
 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.RequestParam;
+import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.servlet.ModelAndView;
 
 import javax.servlet.http.HttpServletRequest;
@@ -19,10 +23,11 @@ public class AdminOrderBatchController {
 
     @Autowired
     private OrderBatchService orderBatchService;
-
+    @Autowired
+    private SalesOrderService salesOrderService;
 
     /**
-     * 客诉 - 查询签收/仓储列表
+     * 批次列表
      * @param request
      * @return
      */
@@ -43,4 +48,31 @@ public class AdminOrderBatchController {
                 .setModelAndView(orderBatch, mv, "/admin/order_batch/batch_list", pagedResult);
         return mv;
     }
+
+    /**
+     * 按照批次确认订单
+     * @param request
+     * @return
+     */
+    @ResponseBody
+    @RequiresPermissions("salesOrder:confirm:salesOrder")
+    @RequestMapping("/confirm_salesOrder_batch")
+    public ResponseJson confirmSalesOrderBatch(HttpServletRequest request, String batchId) {
+        ResponseJson rj = ResponseJson.getFAILURE();
+        if(batchId == null){
+            return rj;
+        }
+
+        SalesOrder salesOrder = new SalesOrder();
+        salesOrder.setSalesBatchId(batchId);
+
+        /*确认该批次下的所有订单*/
+        Integer flag = salesOrderService.listConfirmSalesOrder(salesOrder);
+
+        rj = ResponseJson.getSUCCESS();
+        rj.addResponseKeyValue("number",flag);
+        return rj;
+    }
+
+
 }

+ 148 - 3
watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminSalesOrderController.java

@@ -7,6 +7,7 @@ import com.iamberry.rst.core.cm.StoreInfo;
 import com.iamberry.rst.core.order.OrderBatch;
 import com.iamberry.rst.core.order.ProductColor;
 import com.iamberry.rst.core.page.PagedResult;
+import com.iamberry.rst.core.sys.Admin;
 import com.iamberry.rst.core.tools.LogisticsInfo;
 import com.iamberry.rst.faces.cm.CompanyInfoService;
 import com.iamberry.rst.faces.cm.SalesOrderService;
@@ -130,6 +131,8 @@ public class AdminSalesOrderController {
         return mv;
     }
 
+
+
     /**
      * 导出订单
      * @param request
@@ -622,6 +625,7 @@ public class AdminSalesOrderController {
         SalesOrder salesOrder,
         String orderItemString
     ) throws Exception {
+        Admin admin = AdminUtils.getLoginAdmin();
         ResponseJson rj = new ResponseJson();
 
         JSONArray jsonArray = JSONArray.fromObject(orderItemString);
@@ -648,7 +652,7 @@ public class AdminSalesOrderController {
             }
         }
 
-        String dealCode = GenerateKeyUtil.getSalesOrderKey();   //获取交易号
+        String dealCode = generateKeyUtil.getSalesOrderKey();   //获取交易号
         salesOrder.setSalesOpenId(dealCode); //身份证号/openid
         salesOrder.setSalesPledgeMoney(0);  ///押金金额
         salesOrder.setSalesRemainDeposit(0);     //待提取金额
@@ -665,6 +669,8 @@ public class AdminSalesOrderController {
         salesOrder.setSalesIsLocked(0); //是否锁定 0:否1:是
         salesOrder.setSalesIsSeparate(0);    //是否缺货  0:否1:是
         salesOrder.setSalesIsDownload(1);    // 1 未下载
+        salesOrder.setSalesAddType(1);  //手动添加
+        salesOrder.setSalesAdminId(admin.getAdminId()); //admin id
 
         salesOrder.setSalesAmount(salesOrder.getSalesAmount()*100);
         salesOrder.setSalesDiscountMoney(salesOrder.getSalesDiscountMoney()*100);;
@@ -689,13 +695,152 @@ public class AdminSalesOrderController {
         boolean bl = true;
         String errorMsg = "";
         try {
-            bl = salesOrderService.addRstOrderAndIteminfo(salesOrder);
+           // bl = salesOrderService.addRstOrderAndIteminfo(salesOrder);
+            bl = salesOrderService.addRstOrderinfo(salesOrder,new ArrayList<SalesOrder>());
         }catch (Exception e){
             errorMsg = e.getMessage();
             e.printStackTrace();
+            return  new ResponseJson(500, "添加订单失败,失败原因:"+errorMsg, 500);
         }
         if(bl){
-            return new ResponseJson(200, "添加订单成功,订单交易号为:"+ dealCode, 200);
+            return new ResponseJson(200, "添加订单成功,订单交易号为:"+ salesOrder.getSalesDealCode(), 200);
+        }else{
+            return  new ResponseJson(500, "添加订单失败,失败原因:"+errorMsg, 500);
+        }
+    }
+
+    /**
+     * 修改订单
+     * @param request
+     * @return
+     * @throws Exception
+     */
+    @RequestMapping("/to_update_sales_order")
+    @RequiresPermissions("salesOrder:update:salesOrder")
+    public ModelAndView toUpdateSalesOrder(HttpServletRequest request) throws Exception {
+        ModelAndView mv = new ModelAndView("order/salesOrder/update_order");
+        String salesId = request.getParameter("salesId");
+        if (!StringUtils.isNotEmpty(salesId)) {
+            return mv;
+        }
+
+        SalesOrder order = new SalesOrder();
+        order.setSalesId(Integer.parseInt(salesId));
+        //根据id查询订单数据
+        List<SalesOrder> orderList = salesOrderService.listSalesOrder(order);
+        if (orderList == null || orderList.size() == 0) {
+            return mv;
+        }
+        order = orderList.get(0);
+        SalesOrderItem item = new SalesOrderItem();
+        item.setItemOrderId(Integer.parseInt(salesId));
+        //批量获取订单项信息
+        List<SalesOrderItem> itemList = salesOrderService.listSalesOrderItem(item);
+        order.setSalesOrderItemList(itemList);
+
+        try{
+            String salesOrderInfo = order.getSalesAddressInfo();
+            String[] salesOrderInfos = new String[4];       //salesOrderInfos
+            if(salesOrderInfo.indexOf("-") > -1){
+                salesOrderInfos = salesOrderInfo.split("-"); //"XXX-XXX"
+            }else if(salesOrderInfo.indexOf(" ") > -1){
+                salesOrderInfos = salesOrderInfo.split("-");
+            }else if(salesOrderInfo.indexOf(",") > -1){
+                salesOrderInfos = salesOrderInfo.split("-");
+            }
+            if(salesOrderInfos.length > 3){
+                order.setSalesAddressProvinceName(salesOrderInfos[0]);
+                order.setSalesAddressCityName(salesOrderInfos[1]);
+                order.setSalesAddressCountryName(salesOrderInfos[2]);
+                int descNumber = salesOrderInfo.indexOf(salesOrderInfos[3]);
+                String salesAddressDesc = "";
+                if(descNumber > 0){
+                    salesAddressDesc = salesOrderInfo.substring(descNumber,salesOrderInfo.length());
+                }
+                order.setSalesAddressDesc(salesAddressDesc);
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        mv.addObject("order",order);
+        mv.addObject("admin", AdminUtils.getLoginAdmin());
+        mv.addObject("orderBatchs", orderBatchService.getOrderBatchListTwenty());
+        return mv;
+    }
+
+    /**
+     * 修改订单
+     * @param request
+     * @param salesOrder
+     * @param orderItemString
+     * @return
+     * @throws Exception
+     */
+    @ResponseBody
+    @RequestMapping("/update_salesOrder")
+    @RequiresPermissions("salesOrder:add:manual")
+    public ResponseJson updateSalesOrder(HttpServletRequest request,
+                                      SalesOrder salesOrder,
+                                      String orderItemString
+    ) throws Exception {
+        ResponseJson rj = new ResponseJson();
+
+        JSONArray jsonArray = JSONArray.fromObject(orderItemString);
+        List<SalesOrderItem> salesOrderItemList = (List) JSONArray.toCollection(jsonArray, SalesOrderItem.class);
+        for (SalesOrderItem salesOrderItem:salesOrderItemList) {
+            if(salesOrderItem.getItemNum() > 0 && salesOrderItem.getItemColorId() > 0){
+                ProductColor productColor = productService.getProduceColor(salesOrderItem.getItemColorId());
+                if(productColor == null){
+                    return  new ResponseJson(500, "商品不存在", 500);
+                }
+                salesOrderItem.setItemProductId(productColor.getColorProductId());  ////产品id
+                salesOrderItem.setItemColorId(productColor.getColorId());
+                salesOrderItem.setItemProductType(productColor.getProductType());
+                salesOrderItem.setItemProductName(productColor.getProductName());
+                salesOrderItem.setItemProductPic(productColor.getColorPicture());
+                salesOrderItem.setItemProductColor(productColor.getColorName());
+                salesOrderItem.setItemColorBar(productColor.getColorBar()); ///产品SKU码(百胜)
+                salesOrderItem.setItemProductPrice(productColor.getColorPrice());
+                salesOrderItem.setItemProductDiscount(productColor.getColorDiscount());
+                salesOrderItem.setItemCreateTime(new Date());
+                salesOrderItem.setItemIsSource(1);
+                salesOrderItem.setItemOrderId(salesOrder.getSalesId()); //---- updata new add
+            }else{
+                return  new ResponseJson(500, "添加商品错误", 500);
+            }
+        }
+
+        salesOrder.setSalesAmount(salesOrder.getSalesAmount()*100);
+        salesOrder.setSalesDiscountMoney(salesOrder.getSalesDiscountMoney()*100);;
+        salesOrder.setSalesPayMoney(salesOrder.getSalesPayMoney()*100);
+        salesOrder.setSalesWaitMoney(salesOrder.getSalesWaitMoney()*100);
+        salesOrder.setSalesLastMoney(salesOrder.getSalesLastMoney()*100);
+        salesOrder.setSalesShippingFee(salesOrder.getSalesShippingFee()*100);
+
+        salesOrder.setSalesOrderItemList(salesOrderItemList);
+
+        if(salesOrder.getSalesBatchId() == null || "1".equals(salesOrder.getSalesBatchId())){
+            String batchId = generateKeyUtil.getSalesBatchIdSD();
+            OrderBatch ob = new OrderBatch();
+            ob.setBatchId(batchId);
+            ob.setBatchStatus(1);
+            Integer flag = orderBatchService.save(ob);
+            if(flag < 1){
+                return  new ResponseJson(500, "创建批次失败", 500);
+            }
+            salesOrder.setSalesBatchId(batchId);
+        }
+        Integer bl = 0;
+        String errorMsg = "";
+        try {
+            bl = salesOrderService.updateOrderInfo(salesOrder);
+        }catch (Exception e){
+            errorMsg = e.getMessage();
+            e.printStackTrace();
+            return  new ResponseJson(500, "添加订单失败,失败原因:"+errorMsg, 500);
+        }
+        if(bl > 0){
+            return new ResponseJson(200, "添加订单成功,订单交易号为:"+ salesOrder.getSalesDealCode(), 200);
         }else{
             return  new ResponseJson(500, "添加订单失败,失败原因:"+errorMsg, 500);
         }

+ 80 - 8
watero-rst-web/src/main/java/com/iamberry/rst/utils/GenerateKeyUtil.java

@@ -1,12 +1,17 @@
 package com.iamberry.rst.utils;
 
+import com.iamberry.rst.core.cm.SalesOrder;
 import com.iamberry.rst.core.order.OrderBatch;
+import com.iamberry.rst.core.sys.SysConfig;
+import com.iamberry.rst.faces.cm.SalesOrderService;
 import com.iamberry.rst.faces.order.OrderBatchService;
+import com.iamberry.rst.faces.sys.SysConfigService;
 import com.iamberry.wechat.tools.ResponseJson;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 import java.text.SimpleDateFormat;
+import java.util.Calendar;
 import java.util.Date;
 
 /***
@@ -15,12 +20,27 @@ import java.util.Date;
 @Component
 public class GenerateKeyUtil {
 
+    public GenerateKeyUtil(){
+        this.calendar = Calendar.getInstance();
+        this.calendar.setTime(new Date());
+    }
+
     @Autowired
     private OrderBatchService orderBatchService;
+    @Autowired
+    private SalesOrderService salesOrderService;
+    @Autowired
+    private SysConfigService sysConfigService;
+
 
-    private static SimpleDateFormat SDF_ORDERID = new SimpleDateFormat("yyyyMMddHHmmss");
+    private Calendar calendar;
 
-    private static SimpleDateFormat SDF_BATCH = new SimpleDateFormat("yyMMddHHmm");
+    private final static Integer orderNo = 3;
+    private final static Integer bacthNo = 4;
+
+    private static SimpleDateFormat SDF_ORDERID = new SimpleDateFormat("yyMMdd");
+
+    private static SimpleDateFormat SDF_BATCH = new SimpleDateFormat("yyMMdd");
 
     /*订单交易号前两位,D标识一定为手动增加  */
     private final static String SD_ORDER = "D";
@@ -34,8 +54,33 @@ public class GenerateKeyUtil {
      * 获取交易号-手动添加
      * @return
      */
-    public static String getSalesOrderKey(){
-        return (SD_ORDER  + SDF_ORDERID.format(new Date()) + "0" + generateRandomNumber(3));
+    public String getSalesOrderKey(){
+        SalesOrder salesOrder = new SalesOrder();
+        salesOrder.setSalesCreateTime(new Date());
+        SysConfig sysConfig = sysConfigService.getSysConfigAll(orderNo);
+        Integer number = this.getSalesDealCode(Integer.valueOf(sysConfig.getConfigParameter())+1);
+        String salesDealCode = SD_ORDER  + SDF_ORDERID.format(new Date()) +  String.format("%05d",number);
+        SysConfig sc = new SysConfig();
+        sc.setConfigId(sysConfig.getConfigId());
+        sc.setConfigParameter(String.valueOf(number));
+        sysConfigService.updateSysConfig(sc);
+        return salesDealCode;
+    }
+
+    /**
+     * 获取唯一number
+     * @param number
+     * @return
+     */
+    private Integer getSalesDealCode(Integer number){
+        String salesDealCode =  SD_ORDER  + SDF_ORDERID.format(new Date()) +  String.format("%05d",number);
+        SalesOrder salesOrder = new SalesOrder();
+        salesOrder.setSalesDealCode(salesDealCode);
+        if(salesOrderService.getSalesOrderNum(salesOrder) > 0){
+            return getSalesDealCode(number+1);
+        }else{
+            return number;
+        }
     }
 
 
@@ -45,8 +90,13 @@ public class GenerateKeyUtil {
      * @return
      */
     public String getSalesBatchIdSD(){
-        Integer orderBatchNum = orderBatchService.getOrderBatchNum(new OrderBatch());
-        return ("S"+ SD_BATCH + SDF_BATCH.format(new Date()) + String.format("%08d", orderBatchNum));
+        SysConfig sysConfig = sysConfigService.getSysConfigAll(bacthNo);
+        Integer number = Integer.valueOf(sysConfig.getConfigParameter())+1;
+        SysConfig sc = new SysConfig();
+        sc.setConfigId(sysConfig.getConfigId());
+        sc.setConfigParameter(String.valueOf(number));
+        sysConfigService.updateSysConfig(sc);
+        return ("S"+ SD_BATCH + SDF_BATCH.format(new Date()) + String.format("%08d", number));
     }
 
     /**
@@ -54,8 +104,13 @@ public class GenerateKeyUtil {
      * @return
      */
     public String getSalesBatchIdSC(){
-        Integer orderBatchNum = orderBatchService.getOrderBatchNum(new OrderBatch());
-        return ("S"+ SC_BATCH + SDF_BATCH.format(new Date()) + String.format("%08d", orderBatchNum));
+        SysConfig sysConfig = sysConfigService.getSysConfigAll(bacthNo);
+        Integer number = Integer.valueOf(sysConfig.getConfigParameter())+1;
+        SysConfig sc = new SysConfig();
+        sc.setConfigId(sysConfig.getConfigId());
+        sc.setConfigParameter(String.valueOf(number));
+        sysConfigService.updateSysConfig(sc);
+        return ("S"+ SC_BATCH + SDF_BATCH.format(new Date()) + String.format("%08d", number));
     }
 
 
@@ -70,5 +125,22 @@ public class GenerateKeyUtil {
         return (long) (Math.random() * 9 * Math.pow(10, n - 1)) + (long) Math.pow(10, n - 1);
     }
 
+    //判断选择的日期是否是本月  当月 true
+    public static boolean isThisMonth(long time)
+    {
+        return isThisTime(time,"yyyy-MM");
+    }
+
+    private static boolean isThisTime(long time,String pattern) {
+        Date date = new Date(time);
+        SimpleDateFormat sdf = new SimpleDateFormat(pattern);
+        String param = sdf.format(date);//参数时间
+        String now = sdf.format(new Date());//当前时间
+        if(param.equals(now)){
+            return true;
+        }
+        return false;
+    }
+
 
 }

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

@@ -30,5 +30,7 @@
     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/commonInit.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 - 0
watero-rst-web/src/main/webapp/WEB-INF/views/base/list_base.ftl

@@ -30,5 +30,7 @@
 </script>
 
 <script type="text/javascript" src="${path}/common/js/common/common.js"></script>
+<script type="text/javascript" src="${path}/common/js/common/commonInit.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>

+ 25 - 0
watero-rst-web/src/main/webapp/WEB-INF/views/order/bacth/order_batch_list.ftl

@@ -74,6 +74,13 @@
                                 <a style="text-decoration:none;color: #00E;" href="javascript:void(0);" title="下载该批次的所有订单的物流信息" onclick="download_order('${batch.batchId!''}')">
                                     下载订单
                                 </a>
+
+                                <#if batch.isBatchOrderConfirm == 0>
+                                    <a style="text-decoration:none;color: #00E;" href="javascript:void(0);" title="确认订单" onclick="review_order('${batch.batchId!''}')">
+                                        确认订单
+                                    </a>
+                                </#if>
+
                             </td>
                         </tr>
                     </#list>
@@ -105,6 +112,24 @@
         window.location.href= "${path}/admin/order/download_order_excel?orderBatchId="+batchId;
     }
 
+    /**
+     * 审核订单
+     */
+    function review_order(batchId){
+        $.ajax('${path}/admin/order_batch/confirm_salesOrder_batch?dates=' + new Date().getTime(), {
+            data: {"batchId":batchId},
+            dataType: 'json',
+            type: 'post',
+            timeout: 15000,
+            success: function(dt) {
+                layer.msg("确认订单成功", {icon: 1, time: 3000});
+            },
+            error: function(xhr, type, errorThrown) {
+                layer.msg("确认订单失败,请重试!", {icon: 5, time: 3000});
+            }
+        });
+    }
+
 </script>
 </body>
 </html>

+ 2 - 4
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>
@@ -150,7 +150,7 @@
                         <select class="select" id="salesPayType" name="salesPayType">
                             <#--1:微信支付 2:现金支付3:已支付定金¥99 4:刷卡支付 5:支付宝支付-->
                             <option value="1">微信支付</option>
-                            <option value="2">现金支付3</option>
+                            <option value="2">现金支付</option>
                             <option value="4">刷卡支付</option>
                             <option value="5">支付宝支付</option>
                         </select>
@@ -327,8 +327,6 @@
                     var index = layer.alert(data.resultMsg, function (index) {
                         if (data.resultCode == 200) {
                             location.href = url_path + "/admin/salesOrder/list_order_page";
-                        } else if(data.resultCode == 505){
-                            location.href = url_path + "/admin/salesOrder/list_order_page";
                         }else {
                             layer.close(index);
                         }

+ 42 - 43
watero-rst-web/src/main/webapp/WEB-INF/views/order/salesOrder/sales_order_list.ftl

@@ -32,32 +32,6 @@
 </nav>
 
 <!--  录入订单 -->
-<div class="layui-layer layui-anim layui-layer-iframe" id="layui-SynOrder" times="4" showtime="0" contype="string" style="display:none;z-index: 19891018; width: 400px; height: 260px; position: absolute; top: 100px; left: 379px;">
-    <form action="" method="post" class="form form-horizontal" id="form-admin-SynOrder">
-
-        <div class="layui-layer-title" style="cursor: move;" move="ok">录入订单</div>
-        <br>
-        <div class="row cl">
-            <label class="form-label col-3" style="float: left;"><span class="c-red">*</span>&nbsp;交易号:</label>
-            <div style="float: left;box-sizing: border-box;min-height: 1px;">
-                <input type="text" id="efastOrderId" style="width: 200px;" class="input-text" value="" placeholder="请输入百胜交易号" nullmsg="订单编号不能为空">
-            </div>
-            <div class="col-4"></div>
-        </div>
-        <div class="row cl">
-            <div class="formControls col-8">&nbsp;&nbsp;&nbsp;<span class="c-red" id="msge"></span></div>
-        </div>
-        <br>
-        <div class="col-9 col-offset-3">
-            <input class="btn btn-primary radius" onclick="submitSynOrder()" type="button" value="&nbsp;&nbsp;同步&nbsp;&nbsp;">
-        </div>
-    </form>
-        <span class="layui-layer-setwin">
-				<a class="layui-layer-ico layui-layer-close layui-layer-close1" onclick="exitWindowsDiv(this);" href="javascript:;"></a>
-		</span>
-</div>
-
-
 
 <div class="page-container">
     <div class="text-c">
@@ -65,19 +39,28 @@
                 <div style="position: relative;float: left;display: block;width: 110px;height: 36px;" id="addOrderDiv" >
                     <button type="button" style="top: 0px;" class="my-btn-search my-order" id="addOrderType" >录入订单</button>
                     <button type="button" style="top: 36px;display: none;" class="my-btn-search my-order" id="addOrderManual" onclick="toAddOrderManual();">手动录入</button>
-                    <button type="button" style="top: 72px;display: none;" class="my-btn-search my-order" id="addOrderExcel" onclick="toAddOrderExcel();">Excel导入</button>
+                    <button type="button" style="top: 72px;display: none;" class="my-btn-search my-order" id="addOrderExcel" onclick="upFiles();">Excel导入</button>
                 </div>
 
                 <select class="my-select" name="isHaveImport" id="isHaveImport" style="height: 36px;width: 120px;margin: 0px;margin-bottom: 10px;">
-                    <option value ="">是否已导出过</option>
-                    <option value ="2" <#if salesOrder.isHaveImport??><#if salesOrder.isHaveImport == "2" >selected="selected"</#if></#if>></option>
-                    <option value ="1" <#if salesOrder.isHaveImport??><#if salesOrder.isHaveImport == "1" >selected="selected"</#if></#if>></option>
+                    <option value ="">导出状态</option>
+                    <option value ="2" <#if salesOrder.isHaveImport??><#if salesOrder.isHaveImport == "2" >selected="selected"</#if></#if>>已导出</option>
+                    <option value ="1" <#if salesOrder.isHaveImport??><#if salesOrder.isHaveImport == "1" >selected="selected"</#if></#if>>未导出</option>
                 </select>
-                <select class="my-select" name="isDeliverGoods" id="isDeliverGoods" style="height: 36px;width: 120px;margin: 0px;margin-bottom: 10px;">
-                    <option value ="">是否已发货</option>
-                    <option value ="1" <#if salesOrder.isDeliverGoods??><#if salesOrder.isDeliverGoods == "1" >selected="selected"</#if></#if>>是</option>
-                    <option value ="0" <#if salesOrder.isDeliverGoods??><#if salesOrder.isDeliverGoods == "0" >selected="selected"</#if></#if>>否</option>
+
+                <select class="my-select" name="salesShippingStatus" id="salesShippingStatus" style="height: 36px;width: 120px;margin: 0px;margin-bottom: 10px;">
+                    <option value ="">发货状态</option>
+                    <option value ="0" <#if salesOrder.salesShippingStatus??><#if salesOrder.salesShippingStatus == 0 >selected="selected"</#if></#if>>未发货</option>
+                    <option value ="1" <#if salesOrder.salesShippingStatus??><#if salesOrder.salesShippingStatus == 1 >selected="selected"</#if></#if>>已发货</option>
                 </select>
+
+                <select class="my-select" name="salesStatus" id="salesStatus" style="height: 36px;width: 120px;margin: 0px;margin-bottom: 10px;">
+                    <option value ="">确认状态</option>
+                    <option value ="0" <#if salesOrder.salesStatus??><#if salesOrder.salesStatus == 0 >selected="selected"</#if></#if>>未确认</option>
+                    <option value ="1" <#if salesOrder.salesStatus??><#if salesOrder.salesStatus == 1 >selected="selected"</#if></#if>>确认</option>
+                    <option value ="2" <#if salesOrder.salesStatus??><#if salesOrder.salesStatus == 2 >selected="selected"</#if></#if>>挂起</option>
+                </select>
+
                 <select name="salesStoreId" id="salesStoreId" class="select" style="height: 36px;width: 120px;margin: 0px;margin-bottom: 10px;"">
                     <option value="">店铺</option>
                     <#if listStoreInfo?? &&  (listStoreInfo?size > 0) >
@@ -91,15 +74,15 @@
             <input type="text" style="width:150px;height:36px;margin-right: 0px;" name="endDate" id="endDate" class="input-text" placeholder="结束时间" onClick="WdatePicker({ dateFmt:'yyyy-MM-dd HH:mm:ss',skin:'whyGreen' })" value="${(salesOrder.endDate?string("yyyy-MM-dd HH:mm:ss"))!''}" readonly="readonly"/>
 
             <#--Efast add end-->
-            <input type="text" class="my-input"  style="width:120px;margin-right: 0px;" value="${salesOrder.salesOrderId!}" placeholder="百胜订单号" name="salesOrderId" id="salesOrderId">
-            <input type="text" class="my-input"  style="width:120px;margin-right: 0px;" value="${salesOrder.salesDealCode!}" placeholder="交易号" name="salesDealCode" id="salesDealCode">
-            <input type="text" class="my-input"  style="width:120px;margin-right: 0px;" value="${salesOrder.salesBatchId!}" placeholder="订单批次号" name="salesBatchId" id="salesBatchId">
-            <input type="text" class="my-input"  style="width:80px;margin-right: 0px;" value="${salesOrder.salesAddressName!}" placeholder="收货人姓名" name="salesAddressName" id="salesAddressName">
-            <input type="text" class="my-input"  style="width:80px;margin-right: 0px;" value="${salesOrder.salesAddressTel!}" placeholder="收货人电话" name="salesAddressTel" id="salesAddressTel">
+            <input type="text" class="my-input trim_input"  style="width:120px;margin-right: 0px;" value="${salesOrder.salesOrderId!}" placeholder="百胜订单号" name="salesOrderId" id="salesOrderId">
+            <input type="text" class="my-input trim_input"  style="width:120px;margin-right: 0px;" value="${salesOrder.salesDealCode!}" placeholder="交易号" name="salesDealCode" id="salesDealCode">
+            <input type="text" class="my-input trim_input"  style="width:120px;margin-right: 0px;" value="${salesOrder.salesBatchId!}" placeholder="订单批次号" name="salesBatchId" id="salesBatchId">
+            <input type="text" class="my-input trim_input"  style="width:80px;margin-right: 0px;" value="${salesOrder.salesAddressName!}" placeholder="收货人姓名" name="salesAddressName" id="salesAddressName">
+            <input type="text" class="my-input trim_input"  style="width:80px;margin-right: 0px;" value="${salesOrder.salesAddressTel!}" placeholder="收货人电话" name="salesAddressTel" id="salesAddressTel">
 
             <button type="submit" class="btn" style="background: #32a3d8;color: #fff;-webkit-transform:translateY(-5%);height: 35px;" id=""><i class="Hui-iconfont">&#xe665;</i> 搜索</button>
             <button type="button" class="btn" style="background: #32a3d8;color: #fff;-webkit-transform:translateY(-5%);height: 35px;" id="order_excel"><i class="Hui-iconfont">&#xe644;</i> 下载订单</button>
-            <button onClick="upFiles();" class="btn radius" style="background: #32a3d8;color: #fff; height: 35px" type="button"><i class="Hui-iconfont">&#xe632;</i>上传第三方平台订单</button>
+            <#--<button onClick="upFiles();" class="btn radius" style="background: #32a3d8;color: #fff; height: 35px" type="button"><i class="Hui-iconfont">&#xe632;</i>上传第三方平台订单</button>-->
             <button onClick="upFiles2();"  class="btn radius" style="background: #32a3d8;color: #fff; height: 35px" type="button"><i class="Hui-iconfont">&#xe632;</i>上传发货信息</button>
             <button onClick="downloadOrder();" class="btn radius" style="background: #32a3d8;color: #fff;" type="button" title="下载第三方平台的发货信息"><i class="Hui-iconfont">&#xe640;</i> 下载发货后订单</button>
         </form>
@@ -205,6 +188,13 @@
                         <a style="text-decoration:none" href="javascript:void(0);" title="详情" onclick="sales_order_detail(${order.salesId!''})">
                             <font color=#06c>详情</font>
                         </a><br/>
+
+                        <#if order.salesStatus == 0>
+                            <a style="text-decoration:none" href="javascript:void(0);" title="修改" onclick="sales_order_update(${order.salesId!''})">
+                                <font color=#06c>修改</font>
+                            </a><br/>
+                        </#if>
+
                     </td>
                 </tr>
                 </#list>
@@ -233,6 +223,15 @@
     function sales_order_detail(orderSaleId) {
         window.location.href= "${path}/admin/salesOrder/select_sales_order?salesId="+orderSaleId;
     }
+
+    /**
+     *跳转到修改页面
+     * @param employee
+     */
+    function sales_order_update(orderSaleId) {
+        window.location.href= "${path}/admin/salesOrder/to_update_sales_order?salesId="+orderSaleId;
+    }
+
     /*onMouseOver="showDownloadOrderInfo();" onMouseOut="hideDownloadOrderInfo();"*/
     function showDownloadOrderInfo() {
         
@@ -377,7 +376,7 @@
         /*导出上传到efast的Excel*/
         $('#order_excel').click(function (e) {
             var isHaveImport = $("#isHaveImport").val(); //是否导出
-            var isDeliverGoods = $("#isDeliverGoods").val(); //是否已发货
+            var salesShippingStatus = $("#salesShippingStatus").val(); //是否已发货
             var salesStoreId = $("#salesStoreId").val(); //店铺
             var startDate = $("#startDate").val();
             var endDate = $("#endDate").val();
@@ -392,7 +391,7 @@
                 url: '${path}/admin/salesOrder/sync_efast_order_num',
                 data:{
                     "isHaveImport" : isHaveImport,
-                    "isDeliverGoods" : isDeliverGoods,
+                    "salesShippingStatus" : salesShippingStatus,
                     "salesStoreId" : salesStoreId,
                     "startDate" : startDate,
                     "endDate" : endDate,
@@ -410,7 +409,7 @@
                         layer.msg(res.resultMsg,{icon: 2,time:3000});
                         return false;
                     }else{
-                        window.location="${path}/admin/salesOrder/download_efast_order?isHaveImport="+isHaveImport+"&isDeliverGoods="+isDeliverGoods+"&salesStoreId="+salesStoreId+"&startDate="+startDate+"&endDate="+endDate+"&salesOrderId="+salesOrderId+"&salesDealCode="+salesDealCode+"&salesAddressName="+salesAddressName+"&salesAddressTel="+salesAddressTel+"&salesBatchId="+salesBatchId;
+                        window.location="${path}/admin/salesOrder/download_efast_order?isHaveImport="+isHaveImport+"&salesShippingStatus="+salesShippingStatus+"&salesStoreId="+salesStoreId+"&startDate="+startDate+"&endDate="+endDate+"&salesOrderId="+salesOrderId+"&salesDealCode="+salesDealCode+"&salesAddressName="+salesAddressName+"&salesAddressTel="+salesAddressTel+"&salesBatchId="+salesBatchId;
                     }
                 }
             });

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

@@ -0,0 +1,482 @@
+<!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"/>
+    <#include "/base/add_base.ftl">
+
+    <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;}
+        .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_results li a span {float:right}
+        .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;}
+        .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;}
+        .msg-phone{height: 35px;line-height: 35px;}
+        .col-sm-1{width: 150px;}
+
+        .all_down{text-decoration: underline;color: #00c;}
+    </style>
+    <title>修改订单 - 订单管理 - RST</title>
+</head>
+<body>
+<nav class="breadcrumb"><i class="Hui-iconfont">&#xe67f;</i> 首页
+    <span class="c-gray en">&gt;</span> 订单管理
+    <span class="c-gray en">&gt;</span> 修改订单
+    <a class="btn radius r"
+       style="line-height:1.6em;margin-top:3px;background: #32a3d8;color: #fff;border:1px solid #32a3d8;"
+       href="javascript:location.replace(location.href);" title="刷新"><i class="Hui-iconfont">&#xe68f;</i></a>
+</nav>
+<article class="page-container" style="padding: 10px;">
+    <div class="pd-20 cl">
+        <form action="${path}/admin/salesOrder/update_salesOrder" method="post" class="form form-horizontal" id="form-order-add"  onkeydown="if(event.keyCode==13)return false;">
+
+            <div class="row cl">
+                <label class="form-label col-3">
+                    <div class="tit-2">订单ID</div>
+                </label>
+                <div class="formControls col-9">
+                </div>
+            </div>
+
+            <div class="row cl">
+
+                <input type="hidden" name="salesId" id="salesId" value="${order.salesId}">
+                <input type="hidden" name="salesDealCode" id="salesDealCode" value="${order.salesDealCode}">
+
+                <label class="form-label col-1 col-sm-1">订单编号:</label>
+                <div class="formControls col-1 col-sm-1" style="padding-top: 3px;">
+                    ${order.salesId}
+                </div>
+                <label class="form-label col-1 col-sm-1">订单交易号:</label>
+                <div class="formControls col-2 col-sm-2" style="padding-top: 3px;">
+                    ${order.salesDealCode}
+                </div>
+            </div>
+
+
+            <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">
+                <label class="form-label col-1 col-sm-1">批次编号:</label>
+                <div class="formControls col-3 col-sm-3" style="">
+                    <span class="select-box">
+                        <select class="select" id="salesBatchId" name="salesBatchId" >
+                            <option value="1" >新增批次</option>
+                            <#list orderBatchs as orderBatch>
+                                <option value="${orderBatch.batchId}" <#if orderBatch.batchId = order.salesBatchId>selected</#if>>${orderBatch.batchId}</option>
+                            </#list>
+                        </select>
+				    </span>
+                </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" name="salesCompanyId" id="" companyId="${order.salesCompanyId!""}" >
+                        </select>
+				    </span>
+                    </div>
+                    <div class="formControls col-2 col-sm-2">
+                    <span class="select-box">
+                        <select  class="select init_store"  name="salesStoreId" id="" storeId="${order.salesStoreId!""}" >
+                        </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">
+                    <input type="text" class="input-text" value="${order.salesAddressName!""}" placeholder="填写收件人姓名" id="salesAddressName" name="salesAddressName" datatype="*1-16" errormsg="联系人格式不正确!" >
+                </div>
+                <div class="formControls col-2 col-sm-2">
+                    <input type="text" class="input-text" value="${order.salesAddressTel!""}" placeholder="填写收件人手机号" id="salesAddressTel" name="salesAddressTel" datatype="*1-11" errormsg="联系人电话格式不正确!">
+                </div>
+            </div>
+
+            <div class="row cl address_info" 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_province" id="addressProvince"  provinceName="${order.salesAddressProvinceName!''}" >
+                        </select>
+				    </span>
+                </div>
+                <div class="formControls col-2 col-sm-2">
+                    <span class="select-box">
+                        <select  class="select init_city" id="addressCity"  cityName="${order.salesAddressCityName!''}">
+                        </select>
+                    </span>
+                </div>
+                <div class="formControls col-2 col-sm-2" style="position: relative;">
+                    <span class="select-box">
+                        <select  class="select init_country" id="addressCountry" countryName="${order.salesAddressCountryName!''}">
+                        </select>
+				    </span>
+                </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" style="height: 50px;" id="addressDesc" cols="" rows="2" datatype="*" errormsg="收货地址不正确!" class="textarea" placeholder="请填写详细地址,最多支持50字符" onKeyUp="$.Huitextarealength(this,50)">${order.salesAddressDesc!''}</textarea>
+                    <span id="addrssMsg"></span>
+                </div>
+                <input type="hidden" name="salesAddressInfo" id="salesAddressInfo" value="">
+            </div>
+
+
+            <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" value="${order.salesPayTime?string('yyyy-MM-dd HH:mm:ss')}" 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-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">
+                            <#--1:微信支付 2:现金支付3:已支付定金¥99 4:刷卡支付 5:支付宝支付-->
+                            <option value="1" <#if order.salesPayType = 1>selected</#if>>微信支付</option>
+                            <option value="2" <#if order.salesPayType = 2>selected</#if>>现金支付</option>
+                            <option value="4" <#if order.salesPayType = 4>selected</#if>>刷卡支付</option>
+                            <option value="5" <#if order.salesPayType = 5>selected</#if>>支付宝支付</option>
+                        </select>
+				    </span>
+                </div>
+            </div>
+
+
+            <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-8 col-sm-8">
+                    <input type="button" class="btn btn-primary add-order-button" onclick="add_product()" value="添加商品" >
+
+                    <table class="table table-border table-bg table-bordered" style="margin-top: 10px;" id="all_add_product">
+                        <thead>
+                            <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="add_product">
+                            <#list order.salesOrderItemList as item>
+                                <tr class="text-c">
+                                    <input type="hidden" class="color_id" id="" value="${item.itemColorId}">
+                                    <input type="hidden" class="color_price" id="" value="${item.itemProductPrice}">
+                                    <input type="hidden" class="color_discount" id="" value="${item.itemProductDiscount}">
+                                    <td>${item.itemProductName}</td>
+                                    <td>${item.itemProductColor}</td>
+                                    <td>${item.itemProductDiscount/100}</td>
+                                    <td>${item.itemColorBar}</td>
+                                    <td>
+                                        <input type="text"
+                                               class="input-text input-number item-num"
+                                               style="width: 100%;border: none;text-align: center;"
+                                               name=""
+                                               id=""
+                                               value="${item.itemNum}"
+                                               placeholder="产品数量"
+                                               onkeyup="keyFun($(this),999,1)"
+                                               onpaste="keyFun($(this),999,1)">
+                                    </td>
+                                    <td><a href="javascript:void(0)" class="del_product all_down" onclick="delProduct($(this))">删除</a></td>
+                                </tr>
+                            </#list>
+
+                        </tbody>
+                    </table>
+                    <input type="hidden" id="orderItemString" name="orderItemString" value="" >
+                </div>
+            </div>
+
+            <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" value="${order.salesAmount/100!'0'}" placeholder="总金额" datatype="*" errormsg="必须要输入总金额!" id="salesAmount" name="salesAmount"  >
+                </div>
+                <label class="form-label col-2 col-sm-2">实付金额:</label>
+                <div class="formControls col-2 col-sm-2">
+                    <input type="text" class="input-text" value="${order.salesPayMoney/100!'0'}" placeholder="实付金额" datatype="*" errormsg="必须要输入总金额!" id="salesPayMoney" name="salesPayMoney"  >
+                </div>
+                <div class="formControls col-2 col-sm-2" style="display: none">
+                    <input type="text" class="input-text" value="${order.salesDiscountMoney/100!'0'}" placeholder="优惠金额" datatype="*" errormsg="必须要输入总金额!" id="salesDiscountMoney" name="salesDiscountMoney"  >
+                </div>
+
+                <div class="formControls col-2 col-sm-2">
+                    <input type="button" style="width: 100%;" class="btn btn-primary add-order-button" onclick="calculatePrice()" value="计算商品总价" >
+                </div>
+            </div>
+
+            <input type="hidden" class="input-text" value="${order.salesWaitMoney/100!'0'}" placeholder="待付金额" id="salesWaitMoney" name="salesWaitMoney"  >
+            <input type="hidden" class="input-text" value="${order.salesLastMoney/100!'0'}" placeholder="本次支付金额" id="salesLastMoney" name="salesLastMoney"  >
+            <input type="hidden" class="input-text" value="${order.salesShippingFee/100!'0'}" placeholder="邮费" id="salesShippingFee" name="salesShippingFee"  >
+
+            <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="salesUserRemark" id="salesUserRemark" cols="" rows="2"  class="textarea" placeholder="请填写用户备注,最多支持100字符" onKeyUp="$.Huitextarealength(this,100)">${order.salesUserRemark!''}</textarea>
+                    <#--<span id="addrssMsg"></span>-->
+                </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" class="textarea" placeholder="请填写后台备注,最多支持100字符" onKeyUp="$.Huitextarealength(this,100)">${order.salesAdminRemark!''}</textarea>
+                    <#--<span id="addrssMsg"></span>-->
+                </div>
+            </div>
+
+            <div class="row cl">
+                <div class="col-2 col-sm-2 col-offset-3">
+                    <button class="btn btn-block btn-primary size-XL" type="submit">确认录入</button>
+                </div>
+            </div>
+        </form>
+    </div>
+</article>
+
+
+<#--时间控件-->
+<script type="text/javascript" src="${path}/common/lib/My97DatePicker/4.8/WdatePicker.js"></script>
+
+<script type="text/javascript">
+    var url_path = "${path}";
+</script>
+
+<script type="text/javascript">
+
+    $('.skin-minimal input').iCheck({
+        checkboxClass: 'icheckbox-blue',
+        radioClass: 'iradio-blue',
+        increaseArea: '20%'
+    });
+
+    /*初始化省市区*/
+    var address = $(".address_info").initAddress(
+    );
+
+    /*初始化销售公司店铺*/
+    $(".sales_channel").initSalesChannel();
+
+    /**
+     * 打开订单
+     */
+    function add_product() {
+        layer_show("商品列表",url_path + "/admin/salesOrder/to_add_product","1000","500");
+    }
+
+    $(function(){
+        $("#form-order-add").Validform({
+            tiptype: function (msg, o, cssctl) {
+                if (o.type == 3) {//失败
+                    layer.msg(msg, {icon: 5, time: 3000});
+                    $(window).scrollTop(o.obj.offset().top - 40);
+                }
+            },
+            datatype: {//自定义验证类型
+            },
+            ignoreHidden: true,
+            tipSweep: true, //若为true,则只在表单提交时验证
+            ajaxPost: true, //异步提交
+            beforeCheck: function (curform) {  //验证通过之前执行的函数
+                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;
+                /*封装订单项*/
+                var orderItemArray = new Array();
+                $("#add_product").find("tr").each(function(){
+                    var orderItem = new Object();
+                    orderItem.itemColorId = $(this).find(".color_id").val();
+                    orderItem.itemNum = $(this).find(".item-num").val();
+                    orderItemArray.push(orderItem);
+                    flag = true;
+                })
+                if(!flag){
+                    vailErrorMsg($(".add-order-button"),"必须要有一个产品");
+                    return false;
+                }
+
+                $("#orderItemString").val(JSON.stringify(orderItemArray));
+
+                var index = layer.load(1, {
+                    shade: [0.5,'#fff'] //0.1透明度的白色背景
+                });
+            },
+            callback: function (data) {//异步回调函数
+                if (data) {
+                    var index = layer.alert(data.resultMsg, function (index) {
+                        if (data.resultCode == 200) {
+                            location.href = url_path + "/admin/salesOrder/list_order_page";
+                        }else {
+                            layer.close(index);
+                        }
+                    });
+                }
+            }
+        });
+    });
+
+    /**
+     * 选择商品回调
+     * @param colorIds
+     */
+    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 +'" >' +
+                                    '<input type="hidden" class="color_price" id="" value="'+ productColor.colorPrice +'" >' +
+                                    '<input type="hidden" class="color_discount" id="" value="'+ productColor.colorDiscount +'" >' +
+                                    ' <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 item-num"  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" onclick="delProduct($(this))" >删除</a></td>' +
+                                    ' </tr>';
+                        }
+                    }else{
+                        html = '<tr class="text-c"><td colspan="12">没有搜索到商品,请重试!</td></tr>';
+                    }
+                    $("#add_product").append(html);
+                    /*计算价格*/
+                    calculatePrice();
+                }
+            });
+        }
+        layer.close(index);
+    }
+
+    /**
+     *  删除商品
+     */
+    function delProduct($this){
+        $this.parents("tr").remove();
+    }
+
+    /**
+     * 计算价格
+     */
+    function calculatePrice(){
+        /*总价,折扣价,优惠金额*/
+        var colorDiscountAll = 0,colorPriceAll = 0,salesPayMoneyAll=0;
+        $("#add_product").find("tr").each(function(){
+            var colorDiscount = 0,colorPrice = 0,salesPayMoney=0,itemNum=0;
+            colorDiscount = parseInt($(this).find(".color_discount").val())/100;
+            colorPrice = parseInt($(this).find(".color_price").val())/100;
+            itemNum = $(this).find(".item-num").val();
+            if(!isEmpty(itemNum)){
+                return;
+            }
+            itemNum = parseInt(itemNum);
+            salesPayMoney = colorPrice -colorDiscount;
+            if(salesPayMoney < 0){
+                salesPayMoney = 0;
+            }
+            colorDiscountAll += colorDiscount*itemNum;
+            colorPriceAll += colorPrice*itemNum;
+            salesPayMoneyAll += salesPayMoney*itemNum;
+        })
+        $("#salesAmount").val(colorPriceAll);
+        $("#salesPayMoney").val(colorDiscountAll);
+        $("#salesDiscountMoney").val(salesPayMoneyAll);
+
+        $("#salesLastMoney").val(colorDiscountAll);
+    }
+
+</script>
+</body>
+</html>

+ 15 - 18
watero-rst-web/src/main/webapp/common/js/common/address.js

@@ -7,12 +7,12 @@
             provinceNode : ele.find(".init_province"),
             cityNode : ele.find(".init_city"),
             countryNode : ele.find(".init_country"),
-            provinceId : 0,
-            cityId : 0,
-            countryId :0,
-            provinceName : "",
-            cityName :  "",
-            countryName : "",
+            provinceId :ele.find(".init_province").attr("provinceId"),
+            cityId : ele.find(".init_city").attr("cityId"),
+            countryId : ele.find(".init_country").attr("countryId"),
+            provinceName : ele.find(".init_province").attr("provinceName"),
+            cityName :   ele.find(".init_city").attr("cityName"),
+            countryName :  ele.find(".init_country").attr("countryName"),
             initLock : false
         },
         this.options = $.extend({}, this.addressInfo, opt)  //opt并入addressInfo集合组成新的集合,然后赋值给 options ,所以一切调用options
@@ -32,12 +32,10 @@
                     $(result.returnMsg.provinceList).each(function (){
                         $provinceNode.append("<option value='"+ this.provinceId +"'>"+ this.province +"</option>");
                     })
-                    if(isEmpty($provinceNode.attr("provinceId"))){
-                        address.options.provinceId = $provinceNode.attr("provinceId");
+                    if(isEmpty(address.options.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 = result.returnMsg.provinceList[0].provinceId;
                     }
@@ -58,12 +56,10 @@
                         $cityNode.append("<option value='"+ this.cityId +"'>"+ this.city +"</option>");
                     })
 
-                    if(isEmpty($cityNode.attr("cityId"))){
-                        address.options.cityId = $cityNode.attr("cityId");
+                    if(isEmpty(address.options.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 = result.returnMsg.cityList[0].cityId;
                     }
@@ -84,12 +80,10 @@
                         $countryNode.append("<option value='"+ this.districtId +"'>"+ this.district +"</option>");
                     })
 
-                    if(isEmpty($countryNode.attr("$countryId"))){
-                        address.options.countryId = $countryNode.attr("$countryId");
+                    if(isEmpty(address.options.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 = result.returnMsg.districtList[0].districtId;
                     }
@@ -139,16 +133,19 @@
             return this;
         },
         setProvinceName:function(provinceName){
+            this.options.provinceId = null; //置空id
             this.options.provinceName =  provinceName;
             this.initProvince();    //直接重新加载
             return this;
         },
         setCityName:function(cityName){
+            this.options.cityId = null; //置空id
             this.options.cityName = cityName;
             this.setProvince();
             return this;
         },
         setCountryName:function(countryName){
+            this.options.countryId =  null; //置空id
             this.options.countryName = countryName;
             this.setCity();
             return this;

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

@@ -0,0 +1,7 @@
+$(function(){
+    /* 所有trim_input 样式,input框都需要去除前后空格*/
+    $(".trim_input").change(function(){
+        var value = $.trim($(this).val());
+        $(this).val(value);
+    })
+})

+ 24 - 16
watero-rst-web/src/main/webapp/common/js/common/salesChannel.js

@@ -5,7 +5,9 @@
         this.$element = ele,
         this.salesChannel = {
             companyNode : ele.find(".init_company"),
-            storeNode : ele.find(".init_store")
+            storeNode : ele.find(".init_store"),
+            companyId : ele.find(".init_company").attr("companyId"),
+            storeId : ele.find(".init_store").attr("storeId")
         }
         this.options = $.extend({}, this.salesChannel, opt)
     }
@@ -24,16 +26,13 @@
                     $(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);
+                    if(!isEmpty(salesChannel.companyId)){
+                        salesChannel.companyId = result.returnMsg.companyInfoList[0].companyId
                     }
+                    salesChannel.setCompany();
                 }else{
                     console.log("销售公司查询失败");
                 }
-
-
             });
         },
         initStore:function(companyId){
@@ -46,28 +45,37 @@
                     $(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);
+                    if(!isEmpty(salesChannel.storeId)){
+                        salesChannel.storeId = result.returnMsg.storeInfoList[0].storeId;
                     }
+                    salesChannel.setStore();
                 }else{
                     console.log("店铺查询失败");
                 }
             });
         },
-        setCompany:function(companyId){
+        setCompany:function(){
             var salesChannel = this;
             var $companyNode = $(this.options.companyNode);
-            $companyNode.val(companyId);
+            $companyNode.val(this.options.companyId);
             $companyNode.change(function (){
                 salesChannel.initStore($companyNode.val());
             })
-            salesChannel.initStore(companyId);
+            salesChannel.initStore(this.options.companyId);
         },
-        setStore:function(storeId){
+        setStore:function(){
             var $storeNode = $(this.options.storeNode);
-            $storeNode.val(storeId);
+            $storeNode.val(this.options.storeId);
+        },
+        setCompanyId:function(companyId){
+            this.options.companyId = companyId;
+            this.setCompany();
+            return this;
+        },
+        setStoreId:function(storeId){
+            this.options.storeId = storeId;
+            this.setStore();
+            return this;
         }
     }
     // initSalesChannel 调用

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

@@ -210,12 +210,6 @@ var phoneReg2 = /(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]
 
 /*=============================== 页面加载完成启动事件  -- start -- =============================== */
 $(function (){
-    /* 所有trim_input 样式,input框都需要去除前后空格*/
-    $(".trim_input").change(function(){
-        var value = $.trim($(this).val());
-        $(this).val(value);
-    })
-
     /*监听销售公司选择事件*/
     $("#selectCompany").change(function (){
         var companyId = $(this).val();