Browse Source

修改客诉BUG

wangxiaoming 7 years ago
parent
commit
ec532b56dc
45 changed files with 2968 additions and 46 deletions
  1. 86 0
      watero-rst-core/src/main/java/com.iamberry.rst.core/sys/SysConfig.java
  2. 8 0
      watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/BackGoodsService.java
  3. 7 0
      watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/NoreasonBackService.java
  4. 7 0
      watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/ReissueService.java
  5. 7 0
      watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/RenewedService.java
  6. 7 0
      watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/RepairService.java
  7. 1 1
      watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/SalesOrderService.java
  8. 7 0
      watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/VisitService.java
  9. 16 0
      watero-rst-interface/src/main/java/com/iamberry/rst/faces/sys/SysConfigService.java
  10. 5 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/BackGoodsServiceImpl.java
  11. 5 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/NoreasonBackServiceImpl.java
  12. 5 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/ReissueServiceImpl.java
  13. 5 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/RenewedServiceImpl.java
  14. 5 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/RepairServiceImpl.java
  15. 32 8
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/SalesOrderServiceImpl.java
  16. 5 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/VisitServiceImpl.java
  17. 7 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/BackGoodsMapper.java
  18. 7 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/NoreasonBackMapper.java
  19. 7 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/ReissueMapper.java
  20. 7 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/VisitMapper.java
  21. 14 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/backGoodsMapper.xml
  22. 14 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/noreasonBackMapper.xml
  23. 16 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/reissueMapper.xml
  24. 9 2
      watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/visitMapper.xml
  25. 1 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/order/EfastOrderServiceImpl.java
  26. 27 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/sys/SysConfigServiceImpl.java
  27. 13 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/sys/mapper/SysConfigMapper.java
  28. 33 0
      watero-rst-service/src/main/java/com/iamberry/rst/service/sys/mapper/sysConfigMapper.xml
  29. 72 0
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/cm/AdminCustomerController.java
  30. 7 0
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/cm/AdminDetectController.java
  31. 16 0
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/cm/AdminSignclosedController.java
  32. 22 9
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/mq/MQTask.java
  33. 2 2
      watero-rst-web/src/main/java/com/iamberry/rst/controllers/pts/AdminSoftwareVersionController.java
  34. 4 0
      watero-rst-web/src/main/resources/watero-rst-orm.xml
  35. 1 1
      watero-rst-web/src/main/webapp/WEB-INF/views/cm/customer/add_customer.ftl
  36. 11 0
      watero-rst-web/src/main/webapp/WEB-INF/views/cm/customer/custome_list.ftl
  37. 2291 0
      watero-rst-web/src/main/webapp/WEB-INF/views/cm/customer/update_customer.ftl
  38. 4 4
      watero-rst-web/src/main/webapp/WEB-INF/views/cm/inspection/detect_complete.ftl
  39. 2 2
      watero-rst-web/src/main/webapp/WEB-INF/views/cm/inspection/detect_list.ftl
  40. 4 3
      watero-rst-web/src/main/webapp/WEB-INF/views/cm/inspection/update_complete.ftl
  41. 15 10
      watero-rst-web/src/main/webapp/WEB-INF/views/cm/inspection/view_progress.ftl
  42. 2 1
      watero-rst-web/src/main/webapp/WEB-INF/views/cm/signclosed/complete_signclosed.ftl
  43. 150 2
      watero-rst-web/src/main/webapp/WEB-INF/views/cm/signclosed/signclosed_list.ftl
  44. 1 0
      watero-rst-web/src/main/webapp/WEB-INF/views/order/excel_to_order.ftl
  45. 1 1
      watero-rst-web/src/main/webapp/WEB-INF/views/pts/machineVersion/version_add.ftl

+ 86 - 0
watero-rst-core/src/main/java/com.iamberry.rst.core/sys/SysConfig.java

@@ -0,0 +1,86 @@
+package com.iamberry.rst.core.sys;
+
+import java.io.Serializable;
+import java.util.Date;
+
+public class SysConfig implements Serializable {
+    private static final long serialVersionUID = -7391345128592964111L;
+
+    //主键
+    private Integer configId;
+    //配置名称
+    private String configName;
+    //配置参数
+    private String configParameter;
+    //状态   1:使用   0:未使用
+    private Integer configStatus;
+    //备注
+    private String configRemarks;
+    //创建时间
+    private Date configCreateTime;
+    //修改时间
+    private Date configUpdateTime;
+
+    public SysConfig(){}
+
+    public SysConfig(Integer configId,String configParameter){
+        this.configId = configId;
+        this.configParameter = configParameter;
+    }
+
+    public Integer getConfigId() {
+        return configId;
+    }
+
+    public void setConfigId(Integer configId) {
+        this.configId = configId;
+    }
+
+    public String getConfigName() {
+        return configName;
+    }
+
+    public void setConfigName(String configName) {
+        this.configName = configName;
+    }
+
+    public String getConfigParameter() {
+        return configParameter;
+    }
+
+    public void setConfigParameter(String configParameter) {
+        this.configParameter = configParameter;
+    }
+
+    public Integer getConfigStatus() {
+        return configStatus;
+    }
+
+    public void setConfigStatus(Integer configStatus) {
+        this.configStatus = configStatus;
+    }
+
+    public String getConfigRemarks() {
+        return configRemarks;
+    }
+
+    public void setConfigRemarks(String configRemarks) {
+        this.configRemarks = configRemarks;
+    }
+
+    public Date getConfigCreateTime() {
+        return configCreateTime;
+    }
+
+    public void setConfigCreateTime(Date configCreateTime) {
+        this.configCreateTime = configCreateTime;
+    }
+
+    public Date getConfigUpdateTime() {
+        return configUpdateTime;
+    }
+
+    public void setConfigUpdateTime(Date configUpdateTime) {
+        this.configUpdateTime = configUpdateTime;
+    }
+}

+ 8 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/BackGoodsService.java

@@ -14,4 +14,12 @@ public interface BackGoodsService {
      * @return
      */
     Integer updateBackGoods(BackGoods record, String closedProducts, String closedFittings);
+
+
+    /**
+     * 查询售后退货信息
+     * @param backGoods
+     * @return
+     */
+    BackGoods getBackGoods(BackGoods backGoods);
 }

+ 7 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/NoreasonBackService.java

@@ -13,4 +13,11 @@ public interface NoreasonBackService {
      * @return
      */
     Integer updateNoreasonBack(NoreasonBack record, String closedProducts, String closedFittings);
+
+    /**
+     * 获取无理由退货信息
+     * @param noreasonBack
+     * @return
+     */
+    NoreasonBack getNoreasonBack(NoreasonBack noreasonBack);
 }

+ 7 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/ReissueService.java

@@ -21,4 +21,11 @@ public interface ReissueService {
      * @return
      */
     List<Reissue> listSynchronizingReissue(Reissue reissue);
+
+    /**
+     * 获取维修信息
+     * @param reissue
+     * @return
+     */
+    Reissue getReissue(Reissue reissue);
 }

+ 7 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/RenewedService.java

@@ -30,4 +30,11 @@ public interface RenewedService {
      * @return
      */
     List<Renewed> listSynchronizingRenewed(Renewed renewed);
+
+    /**
+     * 获取换新
+     * @param record
+     * @return
+     */
+    Renewed getRenewed(Renewed record);
 }

+ 7 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/RepairService.java

@@ -23,4 +23,11 @@ public interface RepairService {
      * @return
      */
     List<Repair> listSynchronizingRepair(Repair repair);
+
+    /**
+     * 获取维修信息
+     * @param repair
+     * @return
+     */
+    Repair getRepair(Repair repair);
 }

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

@@ -48,7 +48,7 @@ public interface SalesOrderService {
      * @param list
      * @return
      */
-    boolean addOrderAndItem(SalesOrder salesOrder, List<SalesOrderItem> list);
+    boolean addOrderAndItem(SalesOrder salesOrder, List<SalesOrderItem> list)throws Exception;
 
     /**
      * 获取订单集合

+ 7 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/VisitService.java

@@ -29,4 +29,11 @@ public interface VisitService {
      * @return
      */
     List<Visit> listVisit(Visit visit);
+
+    /**
+     * 查询visit
+     * @param visit
+     * @return
+     */
+    Visit getVisit(Visit visit);
 }

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

@@ -0,0 +1,16 @@
+package com.iamberry.rst.faces.sys;
+
+import com.iamberry.rst.core.sys.SysConfig;
+
+/**
+ *
+ */
+public interface SysConfigService {
+
+    //获取配置参数
+    String getSysConfig(Integer configId);
+
+    //设置配置参数
+    Boolean updateSysConfig(SysConfig sysConfig);
+
+}

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/BackGoodsServiceImpl.java

@@ -84,4 +84,9 @@ public class BackGoodsServiceImpl implements BackGoodsService {
             return 0;
         }
     }
+
+    @Override
+    public BackGoods getBackGoods(BackGoods backGoods) {
+        return backGoodsMapper.getBackGoods(backGoods);
+    }
 }

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/NoreasonBackServiceImpl.java

@@ -83,4 +83,9 @@ public class NoreasonBackServiceImpl implements NoreasonBackService {
             return 0;
         }
     }
+
+    @Override
+    public NoreasonBack getNoreasonBack(NoreasonBack noreasonBack) {
+        return noreasonBackMapper.getNoreasonBack(noreasonBack);
+    }
 }

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/ReissueServiceImpl.java

@@ -27,4 +27,9 @@ public class ReissueServiceImpl implements ReissueService {
     public List<Reissue> listSynchronizingReissue(Reissue reissue) {
         return reissueMapper.listSynchronizingReissue(reissue);
     }
+
+    @Override
+    public Reissue getReissue(Reissue reissue) {
+        return reissueMapper.getReissue(reissue);
+    }
 }

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/RenewedServiceImpl.java

@@ -95,4 +95,9 @@ public class RenewedServiceImpl implements RenewedService {
     public List<Renewed> listSynchronizingRenewed(Renewed renewed) {
         return renewedMapper.listSynchronizingRenewed(renewed);
     }
+
+    @Override
+    public Renewed getRenewed(Renewed record) {
+        return renewedMapper.getRenewedInfo(record);
+    }
 }

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/RepairServiceImpl.java

@@ -94,4 +94,9 @@ public class RepairServiceImpl implements RepairService {
     public List<Repair> listSynchronizingRepair(Repair repair) {
         return repairMapper.listSynchronizingRepair(repair);
     }
+
+    @Override
+    public Repair getRepair(Repair repair) {
+        return repairMapper.getRepairInfo(repair);
+    }
 }

+ 32 - 8
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/SalesOrderServiceImpl.java

@@ -7,21 +7,26 @@ import com.iamberry.rst.core.cm.SalesOrderItem;
 import com.iamberry.rst.core.cm.StoreInfo;
 import com.iamberry.rst.core.order.ProductColor;
 import com.iamberry.rst.core.page.PagedResult;
+import com.iamberry.rst.core.sys.SysConfig;
 import com.iamberry.rst.faces.cm.SalesOrderService;
 import com.iamberry.rst.faces.cm.StoreInfoService;
 import com.iamberry.rst.faces.order.EfastOrderService;
 import com.iamberry.rst.faces.product.ProductService;
 import com.iamberry.rst.service.cm.mapper.FittingsInfoMapper;
 import com.iamberry.rst.service.cm.mapper.SalesOrderMapper;
+import com.iamberry.rst.service.sys.mapper.SysConfigMapper;
 import com.iamberry.rst.util.PageUtil;
 import com.iamberry.wechat.tools.DateTimeUtil;
 import net.sf.json.JSONArray;
 import net.sf.json.JSONObject;
 import org.apache.commons.lang.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import javax.xml.crypto.Data;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
@@ -32,6 +37,8 @@ import java.util.List;
 @Service
 public class SalesOrderServiceImpl implements SalesOrderService {
 
+    private static Logger logger = LoggerFactory.getLogger(CustomerServiceImpl.class);
+
     @Autowired
     private SalesOrderMapper salesOrderMapper;
     @Autowired
@@ -44,6 +51,8 @@ public class SalesOrderServiceImpl implements SalesOrderService {
     private SalesOrderService salesOrderService;
     @Autowired
     private FittingsInfoMapper fittingsInfoMapper;
+    @Autowired
+    private SysConfigMapper sysConfigMapper;
 
     @Override
     public Integer addSalesOrder(SalesOrder salesOrder) {
@@ -79,7 +88,7 @@ public class SalesOrderServiceImpl implements SalesOrderService {
     }
 
     @Override
-    public boolean addOrderAndItem(SalesOrder salesOrder, List<SalesOrderItem> list) {
+    public boolean addOrderAndItem(SalesOrder salesOrder, List<SalesOrderItem> list) throws Exception {
         if (list == null || list.size() == 0) {
             return false;
         }
@@ -207,22 +216,29 @@ public class SalesOrderServiceImpl implements SalesOrderService {
         if (orderList == null || orderList.size() == 0) {
             return;
         }
+
+        String endTime = sysConfigMapper.getSysConfig(1);
+
         for (int i = 0;i < orderList.size();i++) {
             JSONObject order = orderList.getJSONObject(i);
             //获取订单详情
-            JSONObject orderInfo = efastOrderService.getOrderFormEfast(order.getString("deal_code"));
+            JSONObject orderInfo = null;
+            try{
+                orderInfo = efastOrderService.getOrderFormEfast(order.getString("deal_code"));
+            }catch (Exception e){
+                logger.info("推送订单失败;异常编号:505;失败原因:"+ e.getMessage() +"--推送失败订单号:" + orderList.getJSONObject(i).getString("deal_code"));
+            }
             if (orderInfo == null) {
-                return;
+                continue;
             }
             if (!orderInfo.has("orders")) {
-                return;
+                continue;
             }
             //获取订单项集合
             JSONArray itemArray = orderInfo.getJSONArray("orders");
             if (itemArray == null || itemArray.size() == 0) {
-                return;
+                continue;
             }
-
             SalesOrder salesOrder = new SalesOrder();
             salesOrder.setSalesOrderId(order.getString("order_sn"));//订单编号
             salesOrder.setSalesDealCode(order.getString("deal_code"));//交易号
@@ -260,6 +276,9 @@ public class SalesOrderServiceImpl implements SalesOrderService {
             salesOrder.setSalesLastMoney(salesOrder.getSalesPayMoney());//本次支付金额
             salesOrder.setSalesPayNumber("0000");//支付尾号
             salesOrder.setSalesType(1);//订单类型
+
+            endTime = order.getString("create_time"); //获取
+
             //查询店铺信息
             StoreInfo storeInfo = new StoreInfo();
             storeInfo.setStoreEfast(order.getString("sd_id"));
@@ -318,11 +337,16 @@ public class SalesOrderServiceImpl implements SalesOrderService {
                     item.setItemIsSource(2);
                     itemList.add(item);
                 }
-
             }
             //添加订单和订单项
-            salesOrderService.addOrderAndItem(salesOrder,itemList);
+            try{
+                salesOrderService.addOrderAndItem(salesOrder,itemList);
+            }catch (Exception e){
+                logger.info("添加订单失败,异常编号:505;失败原因:+"+ e.getMessage() +"Efast编号:"+ salesOrder.getSalesOrderId());
+            }
         }
+        SysConfig sysConfig = new SysConfig(1,endTime);
+        sysConfigMapper.updateSysConfig(sysConfig);
     }
 
     @Override

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/VisitServiceImpl.java

@@ -47,4 +47,9 @@ public class VisitServiceImpl implements VisitService {
     public List<Visit> listVisit(Visit visit) {
         return visitMapper.listVisit(visit);
     }
+
+    @Override
+    public Visit getVisit(Visit visit) {
+        return visitMapper.getVisit(visit);
+    }
 }

+ 7 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/BackGoodsMapper.java

@@ -15,6 +15,13 @@ public interface BackGoodsMapper {
     BackGoods selectByPrimaryKey(Integer backGoodsId);
 
     /**
+     * 查询售后退货信息
+     * @param backGoods
+     * @return
+     */
+    BackGoods getBackGoods(BackGoods backGoods);
+
+    /**
      * 修改售后退货信息
      * @param record
      * @return

+ 7 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/NoreasonBackMapper.java

@@ -14,6 +14,13 @@ public interface NoreasonBackMapper {
     NoreasonBack selectByPrimaryKey(Integer noreasonBackId);
 
     /**
+     * 获取无理由退货信息
+     * @param noreasonBack
+     * @return
+     */
+    NoreasonBack getNoreasonBack(NoreasonBack noreasonBack);
+
+    /**
      * 修改无理由退货信息
      * @param record
      * @return

+ 7 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/ReissueMapper.java

@@ -14,6 +14,13 @@ public interface ReissueMapper {
     Reissue selectByPrimaryKey(Integer reissueId);
 
     /**
+     * 获取维修信息
+     * @param reissue
+     * @return
+     */
+    Reissue getReissue(Reissue reissue);
+
+    /**
      * 修改售后补发信息
      * @param record
      * @return

+ 7 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/VisitMapper.java

@@ -29,4 +29,11 @@ public interface VisitMapper {
      * @return
      */
     List<Visit> listVisit(Visit visit);
+
+    /**
+     * 查询visit
+     * @param visit
+     * @return
+     */
+    Visit getVisit(Visit visit);
 }

+ 14 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/backGoodsMapper.xml

@@ -33,6 +33,20 @@
     where back_goods_id = #{backGoodsId,jdbcType=INTEGER}
   </select>
 
+  <select id="getBackGoods" resultMap="BaseResultMap" parameterType="BackGoods" >
+    select
+    <include refid="Base_Column_List" />
+    from tb_rst_back_goods
+   <where>
+       <if test="backGoodsId != null" >
+           back_goods_id = #{backGoodsId}
+       </if>
+       <if test="customerId != null">
+           AND  customer_id = #{customerId}
+       </if>
+   </where>
+  </select>
+
   <!-- 查询售后退货集合 -->
   <select id="listBackGoods" resultMap="goodsMap" parameterType="BackGoods">
     select

+ 14 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/noreasonBackMapper.xml

@@ -34,6 +34,20 @@
     where noreason_back_id = #{noreasonBackId,jdbcType=INTEGER}
   </select>
 
+  <select id="getNoreasonBack" resultMap="BaseResultMap" parameterType="NoreasonBack" >
+    select
+    <include refid="Base_Column_List" />
+    from tb_rst_noreason_back
+    <where>
+      <if test="customerId != null">
+        customer_id = #{customerId}
+      </if>
+      <if test="noreasonBackId != null">
+        and noreason_back_id = #{noreasonBackId}
+      </if>
+    </where>
+  </select>
+
   <!-- 查询售后无理由退货集合 -->
   <select id="listNoreasonBack" resultMap="noreasonBackMap" parameterType="NoreasonBack">
     select

+ 16 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/reissueMapper.xml

@@ -34,6 +34,22 @@
     where reissue_id = #{reissueId,jdbcType=INTEGER}
   </select>
 
+  <select id="getReissue" resultMap="BaseResultMap" parameterType="Reissue" >
+    select
+    <include refid="Base_Column_List" />
+    from tb_rst_reissue
+    <where>
+      <if test="reissueId != null" >
+         reissue_id = #{reissueId}
+      </if>
+      <if test="customerId != null" >
+        AND  customer_id = #{customerId}
+      </if>
+    </where>
+  </select>
+
+
+
   <!-- 查询售后补发集合 -->
   <select id="listReissue" resultType="Reissue" parameterType="Reissue">
     select

+ 9 - 2
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/visitMapper.xml

@@ -22,11 +22,18 @@
     visit_status, visit_complete_date, visit_complete_name, visit_complete_tel, visit_complete_remark, 
     visit_create_time, visit_update_time
   </sql>
-  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
+  <select id="getVisit" resultMap="BaseResultMap" parameterType="Visit" >
     select 
     <include refid="Base_Column_List" />
     from tb_rst_visit
-    where visit_id = #{visitId,jdbcType=INTEGER}
+    <where>
+      <if test="visitId != null" >
+        AND visit_id = #{visitId}
+      </if>
+      <if test="customerId != null" >
+        AND customer_id = #{customerId}
+      </if>
+    </where>
   </select>
 
   <!-- 查询回访列表 -->

+ 1 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/order/EfastOrderServiceImpl.java

@@ -520,6 +520,7 @@ public class EfastOrderServiceImpl implements EfastOrderService {
         try {
             String resultJson = HttpClient431Util.doPost(requestData, NameUtils.getConfig("efast_base_url"));
             resultJson = StringEscapeUtils.unescapeJava(resultJson); // unicode
+            resultJson = resultJson.replaceAll("[\\t\\n\\r]", "");
             logger.info("get-百胜订单列表,百胜返回信息:" + resultJson);
             JSONObject jsonObject = JSONObject.fromObject(resultJson);
 

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

@@ -0,0 +1,27 @@
+package com.iamberry.rst.service.sys;
+
+import com.iamberry.rst.core.sys.SysConfig;
+import com.iamberry.rst.faces.sys.SysConfigService;
+import com.iamberry.rst.service.sys.mapper.SysConfigMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class SysConfigServiceImpl implements SysConfigService {
+
+
+    @Autowired
+    private SysConfigMapper sysConfigMapper;
+
+    @Override
+    public String getSysConfig(Integer configId) {
+        return sysConfigMapper.getSysConfig(configId);
+    }
+
+    @Override
+    public Boolean updateSysConfig(SysConfig sysConfig) {
+        return sysConfigMapper.updateSysConfig(sysConfig);
+    }
+
+
+}

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

@@ -0,0 +1,13 @@
+package com.iamberry.rst.service.sys.mapper;
+
+import com.iamberry.rst.core.sys.SysConfig;
+
+public interface SysConfigMapper {
+
+    //获取配置参数
+    String getSysConfig(Integer configId);
+
+    //设置配置参数
+    Boolean updateSysConfig(SysConfig sysConfig);
+
+}

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

@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.iamberry.rst.service.sys.mapper.SysConfigMapper">
+
+	<!-- 获取配置参数 -->
+	<select id="getSysConfig" parameterType="Integer" resultType="String">
+		SELECT
+			config_parameter
+		FROM
+		 tb_rst_sys_config
+		WHERE config_id = #{configId}
+	</select>
+
+	<update id="updateSysConfig" parameterType="SysConfig" >
+		update tb_rst_sys_config
+		<set >
+			<if test="configName != null" >
+				config_name = #{configName},
+			</if>
+			<if test="configParameter != null" >
+				config_parameter = #{configParameter},
+			</if>
+			<if test="configStatus != null" >
+				config_status = #{configStatus},
+			</if>
+			<if test="configRemarks != null" >
+				config_remarks = #{configRemarks}
+			</if>
+		</set>
+		where config_id = #{configId}
+	</update>
+
+</mapper>

+ 72 - 0
watero-rst-web/src/main/java/com/iamberry/rst/controllers/cm/AdminCustomerController.java

@@ -126,6 +126,76 @@ public class AdminCustomerController {
     }
 
     /**
+     * 跳转到修改客诉页面
+     *
+     * @return
+     */
+    @RequiresPermissions("customer:update:customer")
+    @RequestMapping(value = "/to_update_customer")
+    public ModelAndView toUpdateCustomer(HttpServletRequest request,Integer customerId) {
+        ModelAndView mv = new ModelAndView("cm/customer/update_customer");
+
+        ProductType productType = new ProductType();
+        //查询产品类型集合
+        List<ProductType> typeList = productService.listProductType(productType);
+        //查询客诉类型集合
+        List<ComplaintTypeInfo> complaintTypeList = complaintTypeInfoService.listComplaintTypeInfo(new ComplaintTypeInfo());
+        //查询跟进客服集合
+        Admin admin = new Admin();
+        admin.setAdminStatus(1);
+        List<Admin> adminList = sysService.listSelectAdmin(admin);
+        //获取登录人id
+        Integer loginAdminId = AdminUtils.getLoginAdminId();
+        //查询客诉基本信息
+        CustomerInfo customerInfo = customerService.getCustomerInfo(customerId);
+        if(customerInfo.getCustomerIsSolve() != null){
+            CustomerCommon customerCommon = new CustomerCommon();
+            switch (customerInfo.getCustomerIsSolve()){   //处理结果: 1:已解决  2:未解决 3:换新  4:维修 5:补发 6:退货 7:无理由退货
+                case 3://获取换新
+                    Renewed renewed = new Renewed();
+                    renewed.setCustomerId(customerInfo.getCustomerId());
+                    renewed = renewedService.getRenewed(renewed);
+                    customerCommon.getCustomerCommon(3,renewed);
+                    break;
+                case 4://维修
+                    Repair repair = new Repair();
+                    repair.setCustomerId(customerInfo.getCustomerId());
+                    repair = repairService.getRepair(repair);
+                    customerCommon.getCustomerCommon(4,repair);
+                case 5:
+                    Reissue reissue = new  Reissue();
+                    reissue.setCustomerId(customerInfo.getCustomerId());
+                    reissue = reissueService.getReissue(reissue);
+                    customerCommon.getCustomerCommon(5,reissue);
+                case 6:
+                    BackGoods backGoods = new  BackGoods();
+                    backGoods.setCustomerId(customerInfo.getCustomerId());
+                    backGoods = backGoodsService.getBackGoods(backGoods);
+                    customerCommon.getCustomerCommon(6,backGoods);
+                case 7:
+                    NoreasonBack noreasonBack = new  NoreasonBack();
+                    noreasonBack.setCustomerId(customerInfo.getCustomerId());
+                    noreasonBack = noreasonBackService.getNoreasonBack(noreasonBack);
+                    customerCommon.getCustomerCommon(7,noreasonBack);
+            }
+            mv.addObject("customerCommon", customerCommon);
+        }
+        if ("2".equals(customerInfo.getCustomerIsVisit())){ //1:不需要回访  2:需要回访
+            Visit visit = new Visit();
+            visit.setCustomerId(customerInfo.getCustomerId());
+            visit = visitService.getVisit(visit);
+            mv.addObject("visit", visit);
+        }
+
+        mv.addObject("typeList", typeList);
+        mv.addObject("complaintTypeList", complaintTypeList);
+        mv.addObject("complaintTypeList", complaintTypeList);
+        mv.addObject("adminList", adminList);
+        mv.addObject("loginAdminId", loginAdminId);
+        return mv;
+    }
+
+    /**
      * 搜索订单列表弹出框
      *
      * @return
@@ -684,6 +754,8 @@ public class AdminCustomerController {
         return new ResponseJson(200, "添加客诉成功!客诉编号为:" + customerId, 200);
     }
 
+
+
     /**
      * 验证方法
      *

+ 7 - 0
watero-rst-web/src/main/java/com/iamberry/rst/controllers/cm/AdminDetectController.java

@@ -314,6 +314,13 @@ public class AdminDetectController {
             msg.setReturnCode(500);
             return msg;
         }
+
+        if(detectInfo.getMaintenanceResults() == 1){
+            detectInfo.setDetectState(3);
+        }else if(detectInfo.getMaintenanceResults() == 2){
+            detectInfo.setDetectState(4);
+        }
+
         if(detectInfo.getDetectIsMaintenance() == 2){ //选择不需要转入时 detect_revolution_produced 统一改为待转入
             detectInfo.setDetectRevolutionProduced(1);
         }

+ 16 - 0
watero-rst-web/src/main/java/com/iamberry/rst/controllers/cm/AdminSignclosedController.java

@@ -424,5 +424,21 @@ public class AdminSignclosedController {
         }
         return msg;
     }
+
+    /**
+     * 获取仓储信息
+     *
+     * @return
+     */
+    @ResponseBody
+    @RequiresPermissions("signclosed:select:signclosed")
+    @RequestMapping(value = "/select_signclosed_info")
+    public ResponseJson selectProduct(HttpServletRequest request,Integer signclosedId){
+        if(signclosedId == null){
+            return new ResponseJson(500, "未获取到仓储信息!", 500);
+        }
+        ComplaintSignclosedInfo complaintSignclosedInfo = complaintSignclosedInfoService.getSignclosedById(signclosedId);
+        return new ResponseJson(500, "未获取到仓储信息!", 500);
+    }
 }
 

+ 22 - 9
watero-rst-web/src/main/java/com/iamberry/rst/controllers/mq/MQTask.java

@@ -11,12 +11,14 @@ import com.iamberry.rst.core.order.ProductType;
 import com.iamberry.rst.core.sms.OrderMessage;
 import com.iamberry.rst.core.sms.SmsMessage;
 import com.iamberry.rst.core.sys.Relu;
+import com.iamberry.rst.core.sys.SysConfig;
 import com.iamberry.rst.faces.address.AddressService;
 import com.iamberry.rst.faces.cm.*;
 import com.iamberry.rst.faces.order.EfastOrderService;
 import com.iamberry.rst.faces.product.ProductService;
 import com.iamberry.rst.faces.sms.MessageService;
 import com.iamberry.rst.faces.sms.SmsService;
+import com.iamberry.rst.faces.sys.SysConfigService;
 import com.iamberry.rst.faces.sys.SysService;
 import com.iamberry.rst.service.cm.mapper.CustomerInfoMapper;
 import com.iamberry.rst.service.sms.mapper.MessageMapper;
@@ -70,6 +72,8 @@ public class MQTask implements InitializingBean {
 	private ReissueService reissueService;
 	@Autowired
 	private CustomerInfoMapper customerInfoMapper;
+	@Autowired
+	private SysConfigService sysConfigService;
 
 
 
@@ -110,7 +114,8 @@ public class MQTask implements InitializingBean {
 	 * 批量同步百胜订单信息 -- 客诉系统
 	 * @throws Exception
 	 */
-	@Scheduled(cron = "0 0 */1 * * ?")//每小时执行一次
+	 @Scheduled(cron = "0 0 */1 * * ?")//每小时执行一次
+	//@Scheduled(cron = "0 0/2 * * * ?")//每三分钟执行一次
 	//@Scheduled(cron = "*/10 * * * * ?")
 	public void syncEfastOrderList() throws Exception {
 		logger.info("---------------- 批量同步百胜订单开始 ---------------");
@@ -119,17 +124,25 @@ public class MQTask implements InitializingBean {
 		boolean flag = false;	//控制是否还需要获取百胜订单信息
 		String date = "";
 		synchronized (lock) {
+			String configParameter = sysConfigService.getSysConfig(1);
+
 			//根据时间排序查询订单信息
-			List<SalesOrder> orderList = salesOrderService.listSalesOrder(new SalesOrder());
-			if (orderList != null && orderList.size() > 0) {
-				SalesOrder salesOrder = orderList.get(0);
-				date = salesOrder.getSalesCreateTime().toString();
-			} else {
-				date = "2016-04-01";
-			}
+//			List<SalesOrder> orderList = salesOrderService.listSalesOrder(new SalesOrder());
+//			if (orderList != null && orderList.size() > 0) {
+//				SalesOrder salesOrder = orderList.get(0);
+//				date = salesOrder.getSalesCreateTime().toString();
+//			} else {
+//				date = "2016-04-01";
+//			}
+			String endTime = configParameter;
 			do {
 				//批量获取百胜订单信息
-				JSONObject obj = efastOrderService.listOrderInfoFormEfast(pageNo, pageSize, date);
+				JSONObject obj = null;
+				try{
+                    obj = efastOrderService.listOrderInfoFormEfast(pageNo, pageSize, configParameter);
+				}catch (Exception e){
+					logger.info("Efast订单获取失败,失败原因:"+e.getMessage());
+				}
 				if (obj == null) {
 					return;
 				}

+ 2 - 2
watero-rst-web/src/main/java/com/iamberry/rst/controllers/pts/AdminSoftwareVersionController.java

@@ -197,10 +197,10 @@ public class AdminSoftwareVersionController {
         }
         PtsMachineVersion version = new PtsMachineVersion();
         version.setMachineVersionNo(ptsMachineVersion.getMachineVersionNo());
+        version.setProduceId(ptsMachineVersion.getProduceId());
         version = machineVersionService.getMachineVersion(version);
         if(version != null){
-            responseJson.setReturnCode(500);
-            return responseJson;
+            return new ResponseJson(500, "版本号重复", 500);
         }
         ptsMachineVersion.setMachineVersionCreateTime(new Date());
         ptsMachineVersion.setMachineVersionType(1);//软件版本默认为1

+ 4 - 0
watero-rst-web/src/main/resources/watero-rst-orm.xml

@@ -81,6 +81,8 @@
 		<typeAlias type="com.iamberry.rst.core.cm.StoreInfo" alias="StoreInfo"/>
 		<typeAlias type="com.iamberry.rst.core.cm.Visit" alias="Visit"/>
 
+		<typeAlias type="com.iamberry.rst.core.sys.SysConfig" alias="SysConfig"/>
+
 		<typeAlias type="com.iamberry.rst.core.address.City" alias="City"/>
 		<typeAlias type="com.iamberry.rst.core.address.Country" alias="Country"/>
 		<typeAlias type="com.iamberry.rst.core.address.District" alias="District"/>
@@ -140,5 +142,7 @@
 
 		<mapper resource="com/iamberry/rst/service/address/mapper/addressMapper.xml"/>
 
+		<mapper resource="com/iamberry/rst/service/sys/mapper/sysConfigMapper.xml"/>
+
 	</mappers>
 </configuration>

+ 1 - 1
watero-rst-web/src/main/webapp/WEB-INF/views/cm/customer/add_customer.ftl

@@ -463,7 +463,7 @@
             </div>
             <div id="needToVisit" style="display: none;">
                 <div class="row cl">
-                    <label class="form-label col-1 col-sm-1"><span class="c-red">*</span>回访人:</label>
+                    <label class="form-label col-1 col-sm-1"><span class="c-red">*</span>回访人:</label>
                     <div class="formControls col-2 col-sm-2">
                         <input type="text" class="input-text" value="" placeholder="填写回访人姓名" id="" name="visitName"  datatype="s1-20" errormsg="回访人姓名格式不正确!" >
                     </div>

+ 11 - 0
watero-rst-web/src/main/webapp/WEB-INF/views/cm/customer/custome_list.ftl

@@ -305,6 +305,9 @@
                                 <a style="text-decoration:none" href="javascript:void(0);" title="详情" onclick="admin_details_customer(${customer.customerId!''})">
                                     <font color=#06c>详情</font>
                                 </a><br/>
+                                <a style="text-decoration:none" href="javascript:void(0);" title="修改客诉" onclick="admin_update_customer(${customer.customerId!''})">
+                                    <font color=#06c>修改客诉</font>
+                                </a><br/>
                                 <#if customer.customerIsVisit == "2">
                                     <#if customer.visitStatus == 1 && customer.customerIsVisit == "2">
                                         <a style="text-decoration:none" href="javascript:void(0);" title="已完成回访" onclick="toUpdateVisit(${customer.customerId!''})">
@@ -355,6 +358,14 @@
         window.location.href= "${path}/admin/customer/_customer_info?customerId="+customerId;
     }
 
+    /**
+     *修改客诉
+     * @param employee
+     */
+    function admin_update_customer(customerId) {
+        window.location.href= "${path}/admin/customer/to_update_customer?customerId="+customerId;
+    }
+
     function hide_this(val) {
         $(val).parent().parent().hide();
     }

File diff suppressed because it is too large
+ 2291 - 0
watero-rst-web/src/main/webapp/WEB-INF/views/cm/customer/update_customer.ftl


+ 4 - 4
watero-rst-web/src/main/webapp/WEB-INF/views/cm/inspection/detect_complete.ftl

@@ -32,7 +32,7 @@
 <body>
 <article class="page-container">
     <form class="form form-horizontal" id="form-admin-add">
-        <div class="input-box">
+       <#-- <div class="input-box">
             <label class="col-3 col-sm-3 huanhang" style="text-align: right;margin: 10px 0px;"><span class="c-red">*</span>检测结果:</label>
             <div class="formControls col-xs-9 col-sm-9 skin-minimal huanhang" style="margin: 10px 0px;">
                 <div class="radio-box">
@@ -44,7 +44,7 @@
                     <label for="radio-4">检测未通过</label>
                 </div>
             </div>
-        </div>
+        </div>-->
         <div class="input-box" >
             <label class="col-3 col-sm-3 huanhang" style="text-align: right;margin: 10px 0px;"><span class="c-red">*</span>工厂检测现象:</label>
             <div class="formControls col-xs-9 col-sm-9 skin-minimal huanhang" style="margin: 10px 0px;">
@@ -129,8 +129,8 @@
             <div class="input-box" >
                 <label class="form-label col-3 col-sm-3 huanhang"  style="text-align: right;">备注:</label>
                 <div class="formControls col-xs-9 col-sm-9">
-                    <div class="radio-box">
-                        <textarea rows="3" style="width: 193%;margin-left: -15%;margin-top: 5%;" cols="20" name="detectDesc" id="detectDesc" class="my-textarea" placeholder="请详细备注签收的内容,便于以后复查。如果转入生产,则生产部门同事可查看!">${detectInfo.detectDesc!''}</textarea>
+                    <div class="radio-box" style="padding: 0px; width: 100%;">
+                        <textarea  style="height: 60px;"  name="detectDesc" id="detectDesc" class="my-textarea" placeholder="请详细备注签收的内容,便于以后复查。如果转入生产,则生产部门同事可查看!">${detectInfo.detectDesc!''}</textarea>
                     </div>
                 </div>
             </div>

+ 2 - 2
watero-rst-web/src/main/webapp/WEB-INF/views/cm/inspection/detect_list.ftl

@@ -150,7 +150,7 @@
                             </#if>
                                 <#if detect.detectRevolutionProduced == 1>
                                     <a style="text-decoration:none" href="javascript:;" title="转入生产"
-                                       onclick="update_info('转入生产','${path}/admin/detect/to_detect_complete?detectId=${detect.detectId!''}&state=2','670','450');">
+                                       onclick="update_info('转入生产','${path}/admin/detect/to_detect_complete?detectId=${detect.detectId!''}&state=2','800','550');">
                                         <i class="Hui-iconfont">&#xe6e1;</i>
                                     </a>
                                 </#if>
@@ -159,7 +159,7 @@
                     </#if>
                         <#if detect.detectState == 3>
                             <a style="text-decoration:none" href="javascript:;" title="修改检测信息"
-                               onclick="update_info('修改检测信息','${path}/admin/detect/to_update_complete?detectId=${detect.detectId!''}','670','450');">
+                               onclick="update_info('修改检测信息','${path}/admin/detect/to_update_complete?detectId=${detect.detectId!''}','800','550');">
                                 <i class="Hui-iconfont">&#xe60c;</i>
                             </a>
                         </#if>

+ 4 - 3
watero-rst-web/src/main/webapp/WEB-INF/views/cm/inspection/update_complete.ftl

@@ -103,11 +103,12 @@
         </div>
         <div class="input-box">
             <label class="form-label col-3 col-sm-3 huanhang" style="text-align: right;">备注:</label>
-            <div class="formControls col-xs-9 col-sm-9">
-                <div class="radio-box">
-                    <textarea rows="3" cols="20" style="width: 200%;margin-left: -15%;margin-top: 5%;" name="detectDesc" id="detectDesc" class="my-textarea" placeholder="请详细备注内容,便于以后复查。如果转入生产,则生产部门同事可查看!">${detectInfo.detectDesc!''}</textarea>
+            <div class="col-xs-9 col-sm-9 skin-minimal">
+                <div class="radio-box" style="padding: 0px; width: 100%;">
+                    <textarea style="height: 60px;margin: 10px 0px 10px 0px;width: 85%;" name="detectDesc" id="detectDesc" class="my-textarea" placeholder="请详细备注内容,便于以后复查。如果转入生产,则生产部门同事可查看!">${detectInfo.detectDesc!''}</textarea>
                 </div>
             </div>
+        </div>
         <div>
             <input type="hidden" value="${detectId!''}" id="detectId" name="detectId">
            <button type="button" style="margin-left: 35%" class="my-btn-submit" onclick="add();">确认提交</button>

+ 15 - 10
watero-rst-web/src/main/webapp/WEB-INF/views/cm/inspection/view_progress.ftl

@@ -32,18 +32,19 @@
 <article class="page-container">
     <form class="form form-horizontal" id="form-admin-add">
         <div class="input-box">
-            <span>签收日期:</span>
-            <#if signclosedInfo??>
-                ${(signclosedInfo.signclosedDate?string("yyyy-MM-dd"))!'暂无签收日期'}
-            <#else >
-                暂无签收日期
-            </#if>
+            <span style="display: block;float: left;width: 18%;text-align: right;">签收日期:</span>
+            <div style="display: block;float:left;width: 80%">
+                <#if signclosedInfo??>
+                    ${(signclosedInfo.signclosedDate?string("yyyy-MM-dd"))!'暂无签收日期'}
+                <#else >
+                    暂无签收日期
+                </#if>
+            </div>
         </div>
 
         <div class="input-box">
-            <span>签收产品:</span>
-
-            <div style="margin-left: 13%;margin-top: -4%;">
+            <span style="display: block;float: left;width: 18%;text-align: right;">签收产品:</span>
+            <div style="display: block;float:left;width: 80%">
             <#if signclosedProductInfo??>
                 <#if (signclosedProductInfo?size > 0)>
                     <#list signclosedProductInfo as info>
@@ -68,7 +69,11 @@
                 <button type="button" class="my-btn-submit" onclick="add();">催促仓库转入QC</button>
             </#if>
             <#if signclosedInfo.signclosedState == 2>
-                <button type="button" class="my-btn-submit" onclick="openLogistics('物流信息','${path}/admin/detect/to_view_logistics?billCode=${signclosedInfo.signclosedLogisticsNumber!''}&billName=${signclosedInfo.signclosedLogistics!''}',375,400);">查看物流</button>
+                <#--<div class="input-box">
+                    <span style="display: block;float: left;width: 18%;text-align: right;">签收日期:</span>
+                    <div style="display: block;float:left;width: 80%"></div>
+                </div>-->
+                <button type="button" class="my-btn-submit" onclick="openLogistics('物流信息','${path}/admin/detect/to_view_logistics?billCode=${signclosedInfo.signclosedLogisticsNumber!''}&billName=${signclosedInfo.signclosedLogistics!''}',500,400);">查看物流</button>
             </#if>
         <#else >
             <button type="button" class="my-btn-submit" onclick="add();">催促仓库转入QC</button>

+ 2 - 1
watero-rst-web/src/main/webapp/WEB-INF/views/cm/signclosed/complete_signclosed.ftl

@@ -392,7 +392,8 @@
             async: false,
             success: function(data){
                 if (data.returnCode == 200) {
-                    layer.msg('添加成功',{icon: 1,time:1000},function () {
+                    //询问框
+                    layer.msg('签收成功,请及时转入品检部门',{icon: 1,time:3000},function () {
                         window.location.href= "${path}/admin/signclosed/select_signclosed_list";
                     });
                 } else if(data.returnCode == 501) {

+ 150 - 2
watero-rst-web/src/main/webapp/WEB-INF/views/cm/signclosed/signclosed_list.ftl

@@ -139,7 +139,7 @@
                         </#if>
                     ${signclosed.signclosedLogisticsNumber!}</td>
                     <td class="text-c" width="100">${signclosed.signclosedSendName!}</td>
-                    <td class="text-c" width="100">${signclosed.signclosedSendTel!}</td>
+                    <td class="text-c" width="180"><span class="fom_send_tel">${signclosed.signclosedSendTel!}</span></td>
                     <td class="text-c" width="100">
                         <div>
                         <#if signclosed.awaitingSignclosedProductInfoList??>
@@ -226,6 +226,10 @@
                            onclick="add_remark('修改备注','${path}/admin/signclosed/to_update_remark?signclosedId=${signclosed.signclosedId!''}','570','450');">
                             <i class="Hui-iconfont">&#xe692;</i>
                         </a>
+                       <#-- <a style="text-decoration:none" href="javascript:;" title="打印"
+                           onclick="print_aftermarket(${signclosed.signclosedId!''});">
+                            <i class="Hui-iconfont">&#xe652;</i>
+                        </a>-->
                         <#if signclosed.signclosedState == 1>
                             <a style="text-decoration:none" href="javascript:;" title="修改寄件人信息"
                                onclick="add_remark('修改寄件人信息','${path}/admin/signclosed/to_update_sender?signclosedId=${signclosed.signclosedId!''}','570','450');">
@@ -250,9 +254,153 @@
     </div>
 </div>
 <div style="padding-top: 10px;"></div>
+<div  style="display:none;padding: 0px;margin: 0px;" >
+    <div id="printlist" style="">
+        <ul style=" height: 460px;margin-left: 20px;margin-right: 20px;">
+            <li style="font-size: 22px;letter-spacing:26px;border-bottom: 1px solid #000000;height: 35px;text-align: center;font-weight: bold;">东莞市优尼雅电子科技有限公司</li>
+            <li style="font-size: 30px;height: 50px;display: block;text-align: center;font-weight: bold;margin-top: 15px">退货/换货产品维修追踪卡</li>
+            <li style="height: 40px;font-size: 12px;font-weight: normal;border: 1px solid #000000;">
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">客户名称</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">小茗</div>
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">客户电话</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">13265476840</div>
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">签收日期</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;text-align: center;">2017-12-28</div>
+            </li>
+            <li style="height: 40px;font-size: 12px;font-weight: normal;border-bottom: 1px solid #000000;border-left: 1px solid #000000;border-right: 1px solid #000000;">
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">快递公司</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">申通</div>
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">快递单号</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">2343242543234</div>
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">退货/换货</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;text-align: center;">换货</div>
+            </li>
+            <li style="height: 40px;font-size: 12px;font-weight: normal;border-bottom: 1px solid #000000;border-left: 1px solid #000000;border-right: 1px solid #000000;">
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">产品名称</div>
+                <div style="float:left;display:block;width:99px;line-height: 15px;height: 40px;border-right: 1px solid #000000;text-align: center;">美国watero净饮水一体机WA-2</div>
+                <div style="float:left;display:block;width:40px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">颜色</div>
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">黑色黑色</div>
+                <div style="float:left;display:block;width:50px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">二维码</div>
+                <div style="float:left;display:block;width:89px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">xxxxxxxx</div>
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">地区</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;text-align: center;">北京-北京市</div>
+            </li>
+            <li style="height: 60px;display:block;font-size: 12px;font-weight: normal;border-bottom: 1px solid #000000;border-left: 1px solid #000000;border-right: 1px solid #000000;">
+                <div style="float:left;display:block;width:80px;line-height: 60px;height: 60px;border-right: 1px solid #000000;text-align: center;">退/换货原因</div>
+                <div style="float:left;display:block;width:560px;height: 60px; line-height: 16px;padding: 0px 5px;">换货原因换货原因换货原因换货原因换货原因换货原因换货换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因原因换货原因换货原因换货原因</div>
+            </li>
+            <li style="height: 60px;display:block;font-size: 12px;font-weight: normal;border-bottom: 1px solid #000000;border-left: 1px solid #000000;border-right: 1px solid #000000;">
+                <div style="float:left;display:block;width:80px;line-height: 60px;height: 60px;border-right: 1px solid #000000;text-align: center;">检测问题点</div>
+                <div style="float:left;display:block;width:560px;height: 60px;line-height: 16px;padding: 0px 5px;">换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因</div>
+            </li>
+            <li style="height: 60px;font-size: 12px;font-weight: normal;border-bottom: 1px solid #000000;border-left: 1px solid #000000;border-right: 1px solid #000000;">
+                <div style="float:left;display:block;width:80px;line-height: 60px;height: 60px;border-right: 1px solid #000000;text-align: center;">维修方案</div>
+                <div style="float:left;display:block;width:560px;height: 60px;line-height: 16px;padding: 0px 5px;">换货原因换货原因换货原因换货换货原因换货原因换货原因换换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因货原因换货原因换货原因换货原因换货原因换货原因换货原因原因换货原因换货原因换货原因换货原因换货原因换货原因</div>
+            </li>
+            <li style="height: 40px;font-size: 12px;font-weight: normal;border-bottom: 1px solid #000000;border-left: 1px solid #000000;border-right: 1px solid #000000;">
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">维修员</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">小红</div>
+                <div style="float:left;display:block;width:90px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">维修后检验确认</div>
+                <div style="float:left;display:block;width:130px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">小芳</div>
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">日期</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;text-align: center;">2017年11月23日</div>
+            </li>
+        </ul>
+        <div style="margin-top: 30px;margin-bottom: 30px;text-align: center">-------------------------------------------------------------------------------------------------------</div>
+        <ul style=" height: 460px;margin-left: 20px;margin-right: 20px;">
+            <li style="font-size: 22px;letter-spacing:26px;border-bottom: 1px solid #000000;height: 35px;text-align: center;font-weight: bold;">东莞市优尼雅电子科技有限公司</li>
+            <li style="font-size: 30px;height: 50px;display: block;text-align: center;font-weight: bold;margin-top: 15px">退货/换货产品维修追踪卡</li>
+            <li style="height: 40px;font-size: 12px;font-weight: normal;border: 1px solid #000000;">
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">客户名称</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">小茗</div>
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">客户电话</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">13265476840</div>
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">签收日期</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;text-align: center;">2017-12-28</div>
+            </li>
+            <li style="height: 40px;font-size: 12px;font-weight: normal;border-bottom: 1px solid #000000;border-left: 1px solid #000000;border-right: 1px solid #000000;">
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">快递公司</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">申通</div>
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">快递单号</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">2343242543234</div>
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">退货/换货</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;text-align: center;">换货</div>
+            </li>
+            <li style="height: 40px;font-size: 12px;font-weight: normal;border-bottom: 1px solid #000000;border-left: 1px solid #000000;border-right: 1px solid #000000;">
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">产品名称</div>
+                <div style="float:left;display:block;width:99px;line-height: 15px;height: 40px;border-right: 1px solid #000000;text-align: center;">美国watero净饮水一体机WA-2</div>
+                <div style="float:left;display:block;width:40px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">颜色</div>
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">黑色黑色</div>
+                <div style="float:left;display:block;width:50px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">二维码</div>
+                <div style="float:left;display:block;width:89px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">xxxxxxxx</div>
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">地区</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;text-align: center;">北京-北京市</div>
+            </li>
+            <li style="height: 60px;display:block;font-size: 12px;font-weight: normal;border-bottom: 1px solid #000000;border-left: 1px solid #000000;border-right: 1px solid #000000;">
+                <div style="float:left;display:block;width:80px;line-height: 60px;height: 60px;border-right: 1px solid #000000;text-align: center;">退/换货原因</div>
+                <div style="float:left;display:block;width:560px;height: 60px; line-height: 16px;padding: 0px 5px;">换货原因换货原因换货原因换货原因换货原因换货原因换货换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因原因换货原因换货原因换货原因</div>
+            </li>
+            <li style="height: 60px;display:block;font-size: 12px;font-weight: normal;border-bottom: 1px solid #000000;border-left: 1px solid #000000;border-right: 1px solid #000000;">
+                <div style="float:left;display:block;width:80px;line-height: 60px;height: 60px;border-right: 1px solid #000000;text-align: center;">检测问题点</div>
+                <div style="float:left;display:block;width:560px;height: 60px;line-height: 16px;padding: 0px 5px;">换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因</div>
+            </li>
+            <li style="height: 60px;font-size: 12px;font-weight: normal;border-bottom: 1px solid #000000;border-left: 1px solid #000000;border-right: 1px solid #000000;">
+                <div style="float:left;display:block;width:80px;line-height: 60px;height: 60px;border-right: 1px solid #000000;text-align: center;">维修方案</div>
+                <div style="float:left;display:block;width:560px;height: 60px;line-height: 16px;padding: 0px 5px;">换货原因换货原因换货原因换货换货原因换货原因换货原因换换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因换货原因货原因换货原因换货原因换货原因换货原因换货原因换货原因原因换货原因换货原因换货原因换货原因换货原因换货原因</div>
+            </li>
+            <li style="height: 40px;font-size: 12px;font-weight: normal;border-bottom: 1px solid #000000;border-left: 1px solid #000000;border-right: 1px solid #000000;">
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">维修员</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">小红</div>
+                <div style="float:left;display:block;width:90px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">维修后检验确认</div>
+                <div style="float:left;display:block;width:130px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">小芳</div>
+                <div style="float:left;display:block;width:80px;line-height: 40px;height: 40px;border-right: 1px solid #000000;text-align: center;">日期</div>
+                <div style="float:left;display:block;width:140px;line-height: 40px;height: 40px;text-align: center;">2017年11月23日</div>
+            </li>
+        </ul>
+    </div>
+</div>
 <#include "/base/page_util.ftl">
-
+<script type="text/javascript" src="${path}/common/lib/jquery.PrintArea/jquery.PrintArea.js"></script>
 <script type="text/javascript">
+
+    $(function(){
+        $("td .fom_send_tel").each(function(){
+            var tel = $(this).html();
+            var firstTel = tel.substring(0,3);
+            var lastTel = tel.substring(7,11);
+            $(this).html(firstTel + "****" +lastTel);
+        })
+    })
+
+
+    /**
+     * 打印
+     */
+    function print_aftermarket(signclosedId){
+        $.ajax({
+            cache: true,
+            type: "POST",
+            url: "${path}/admin/signclosed/select_signclosed_info",
+            data:{"signclosedId":signclosedId},
+            async: false,
+            success: function(data){
+                if (data.returnCode == 200) {
+                    layer.msg('转入成功',{icon: 1,time:1000},function () {
+                        location.replace(location.href);
+                    });
+                } else {
+                    layer.msg('转入失败',{icon: 5,time:1000});
+                }
+            },
+            error: function(XmlHttpRequest, textStatus, errorThrown){
+                layer.msg('转入错误',{icon: 5,time:1000});
+            }
+        });
+
+
+        $("#printlist").printArea();
+    }
+
     /*添加*/
     function add_signclosed(url){
         window.location.href = url;

+ 1 - 0
watero-rst-web/src/main/webapp/WEB-INF/views/order/excel_to_order.ftl

@@ -101,6 +101,7 @@
                             <option value="28">蓝极风</option>
                             <option value="29">小莉团购</option>
                             <option value="30">超级妈咪团</option>
+                            <option value="31">艾德叔叔</option>
                         </select>
                     </label>
                 </td>

+ 1 - 1
watero-rst-web/src/main/webapp/WEB-INF/views/pts/machineVersion/version_add.ftl

@@ -117,7 +117,7 @@
                         layer.msg('添加成功!', {icon: 1, time: 2000});
                         window.location.href = document.referrer;
                     }else{
-                        layer.msg('添加失败!', {icon: 2, time: 2000});
+                        layer.msg(data.resultMsg, {icon: 2, time: 3000});
                     }
                 },
                 error: function(XmlHttpRequest, textStatus, errorThrown){