Przeglądaj źródła

Merge branch 'master' of http://git.iamberry.com/hexiugang/iamberry-common-parent

# Conflicts:
#	watero-rst-web/src/main/java/com/iamberry/rst/controllers/cm/AdminCustomerController.java
wangxiaoming 7 lat temu
rodzic
commit
0af6a90040

+ 31 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/CustomerService.java

@@ -3,6 +3,7 @@ package com.iamberry.rst.faces.cm;
 import com.iamberry.rst.core.cm.*;
 import com.iamberry.rst.core.order.ProductType;
 import com.iamberry.rst.core.page.PagedResult;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 import java.util.Map;
@@ -102,4 +103,34 @@ public interface CustomerService {
      * @return
      */
     ProductType getcompanyAffiliation(Integer customerId);
+
+    /*设置产品,配件参数*/
+    void setName(CustomerCommon cc);
+    /**
+     * 将原订单生成退货单
+     * @param customerCommon
+     * @param salesOrder
+     * @return
+     * @throws Exception
+     */
+    boolean chargebackEfastOrder(CustomerCommon customerCommon, SalesOrder salesOrder,Integer status) throws Exception;
+    /**
+     * 添加仓储
+     * @param customerCommon
+     * @return
+     */
+    void saveComplaintSignclosedInfo(ComplaintSignclosedInfo complaintSignclosedInfo,CustomerCommon customerCommon)throws  Exception;
+    /**
+     * 添加品检
+     * @param complaintDetectInfo
+     * @param customerCommon
+     * @return
+     */
+    void saveComplaintDetectInfo(ComplaintDetectInfo complaintDetectInfo,CustomerCommon customerCommon) throws  Exception;
+    /**
+     * 向Efast推送订单  仅换新,维修 ,补发
+     * @return
+     */
+    @Transactional
+    Map<String,Object> sendEfastOrder(CustomerCommon customerCommon,SalesOrder salesOrder) throws Exception;
 }

+ 33 - 24
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/CustomerServiceImpl.java

@@ -74,8 +74,6 @@ public class CustomerServiceImpl implements CustomerService {
     @Autowired
     private EfastOrderService efastOrderService;
 
-
-
     @Override
     public CustomerInfo getCustomerInfo(Integer customerId) {
         return customerInfoMapper.getCustomerInfo(customerId);
@@ -136,7 +134,7 @@ public class CustomerServiceImpl implements CustomerService {
             customerCommon.setRelationBackPostage(0);   //邮费默认为0
 
             /*  初始化产品类型,名称,配件名称 */
-            this.setName(customerCommon);
+            customerService.setName(customerCommon);
 
             ComplaintDetectInfo complaintDetectInfo = new ComplaintDetectInfo();  //品质检测
             ComplaintSignclosedInfo complaintSignclosedInfo = new ComplaintSignclosedInfo(); //客诉-签收表
@@ -145,9 +143,12 @@ public class CustomerServiceImpl implements CustomerService {
             switch (customerInfo.getCustomerIsSolve()) {  //处理结果: 1:已解决  2:未解决 3:换新  4:维修 5:补发 6:退货 7:无理由退货
                 case 3: //换新
 
-                    isReturn = this.chargebackEfastOrder(customerCommon,salesOrder,2);    //原订单生成退单
+                    isReturn = customerService.chargebackEfastOrder(customerCommon,salesOrder,2);    //原订单生成退单
+                    if(!isReturn){
+                        throw new Exception("生成退单失败");
+                    }
 
-                    map = this.sendEfastOrder(customerCommon,salesOrder);  //换新需要向Efast推送一条换新发货的订单
+                    map = customerService.sendEfastOrder(customerCommon,salesOrder);  //换新需要向Efast推送一条换新发货的订单
                     if(map.get("status") == 1){
                         customerCommon.setRelationBackEfastOrderId(String.valueOf(map.get("EfastOrderId")));  //存放Efast订单编号
                         complaintSignclosedInfo.setNewEfastId(String.valueOf(map.get("EfastOrderId")));     //仓储签收表添加  发货的Efast订单id
@@ -155,15 +156,18 @@ public class CustomerServiceImpl implements CustomerService {
                         throw new Exception("换新创建Efast订单失败");
                     }
                     complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId());    //原有订单的Efast的订单编号
-                    this.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
+                    customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
                     complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
-                    this.saveComplaintDetectInfo(complaintDetectInfo,customerCommon);   //创建品检
+                    customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon);   //创建品检
                     break;
                 case 4: //维修
 
-                    isReturn = this.chargebackEfastOrder(customerCommon,salesOrder,2);    //原订单生成退单
+                    isReturn = customerService.chargebackEfastOrder(customerCommon,salesOrder,2);    //原订单生成退单
+                    if(!isReturn){
+                        throw new Exception("生成退单失败");
+                    }
 
-                    map = this.sendEfastOrder(customerCommon,salesOrder);  //维修需要向Efast推送一条维修发货的订单
+                    map = customerService.sendEfastOrder(customerCommon,salesOrder);  //维修需要向Efast推送一条维修发货的订单
                     if(map.get("status") == 1){
                         customerCommon.setRelationBackEfastOrderId(String.valueOf(map.get("EfastOrderId")));  //存放Efast订单编号
                         complaintSignclosedInfo.setNewEfastId(String.valueOf(map.get("EfastOrderId")));     //仓储签收表添加  发货的Efast订单id
@@ -171,12 +175,12 @@ public class CustomerServiceImpl implements CustomerService {
                         throw new Exception("维修创建Efast订单失败");
                     }
                     complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId());    //原有订单的Efast的订单编号
-                    this.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
+                    customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
                     complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
-                    this.saveComplaintDetectInfo(complaintDetectInfo,customerCommon);   //创建品检
+                    customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon);   //创建品检
                     break;
                 case 5: //补发  不用创建仓储签收任务
-                    map = this.sendEfastOrder(customerCommon,salesOrder);  //补发需要向Efast推送一条发货的订单
+                    map = customerService.sendEfastOrder(customerCommon,salesOrder);  //补发需要向Efast推送一条发货的订单
                     if(map.get("status") == 1){
                         customerCommon.setRelationBackEfastOrderId(String.valueOf(map.get("EfastOrderId")));  //存放Efast订单编号
                         complaintSignclosedInfo.setNewEfastId(String.valueOf(map.get("EfastOrderId")));     //仓储签收表添加  发货的Efast订单id
@@ -186,21 +190,27 @@ public class CustomerServiceImpl implements CustomerService {
                     break;
                 case 6: //退货
 
-                    isReturn = this.chargebackEfastOrder(customerCommon,salesOrder,3);    //原订单生成退单
+                    isReturn = customerService.chargebackEfastOrder(customerCommon,salesOrder,3);    //原订单生成退单
+                    if(!isReturn){
+                        throw new Exception("生成退单失败");
+                    }
 
                     complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId());    //原有订单的Efast的订单编号
-                    this.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
+                    customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
                     complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
-                    this.saveComplaintDetectInfo(complaintDetectInfo,customerCommon);   //创建品检
+                    customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon);   //创建品检
                     break;
                 case 7: //无理由退货
 
-                    isReturn = this.chargebackEfastOrder(customerCommon,salesOrder,3);    //原订单生成退单
+                    isReturn = customerService.chargebackEfastOrder(customerCommon,salesOrder,3);    //原订单生成退单
+                    if(!isReturn){
+                        throw new Exception("生成退单失败");
+                    }
 
                     complaintSignclosedInfo.setOldEfastId(salesOrder.getSalesOrderId());    //原有订单的Efast的订单编号
-                    this.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
+                    customerService.saveComplaintSignclosedInfo(complaintSignclosedInfo,customerCommon);//创建仓储任务
                     complaintDetectInfo.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储签收id
-                    this.saveComplaintDetectInfo(complaintDetectInfo,customerCommon);   //创建品检
+                    customerService.saveComplaintDetectInfo(complaintDetectInfo,customerCommon);   //创建品检
                     break;
             }
             customerCommon.setSignclosedId(complaintSignclosedInfo.getSignclosedId()); //设置仓储id
@@ -263,7 +273,7 @@ public class CustomerServiceImpl implements CustomerService {
      * 产品配件初始化
      * @param cc
      */
-    private void setName(CustomerCommon cc){
+    public void setName(CustomerCommon cc){
         for (int i=0;i<cc.getSendProdcues().size();i++) {
             Product product = productMapper.getProduce(cc.getSendProdcues().get(i).getProductId());
             cc.getSendProdcues().get(i).setSendProduceName(product.getProductName());
@@ -596,16 +606,15 @@ public class CustomerServiceImpl implements CustomerService {
      * @throws Exception
      */
     @Transactional
-    boolean chargebackEfastOrder(CustomerCommon customerCommon, SalesOrder salesOrder,Integer status) throws Exception{
+    public boolean chargebackEfastOrder(CustomerCommon customerCommon, SalesOrder salesOrder,Integer status) throws Exception{
 
         SalesOrder order = new SalesOrder();
         order.setSalesId(salesOrder.getSalesId());
         order.setSalesOrderStatus(status); //换货状态
         Integer flag = salesOrderMapper.updateSalesOrder(order);
-//        if(flag < 0){
-//            throw new Exception("退货失败");
-//        }
-
+        if(flag < 0){
+            return false;
+        }
         EfastOrder efastOrder = new EfastOrder();
         List<EfastOrderItem> itemList = new ArrayList<>();
 

+ 5 - 5
watero-rst-web/src/main/java/com/iamberry/rst/controllers/pts/AdminPtsBomController.java

@@ -210,13 +210,13 @@ public class AdminPtsBomController {
     @RequestMapping(value = "/get_listBom")
     public ResponseJson listBomByProduceId(HttpServletRequest request) {
 
-        String produceId = request.getParameter("produceId");
-        if (produceId == null || "".equals(produceId)) {
-            return new ResponseJson(500, "ERROR", 500);
-        }
+//        String produceId = request.getParameter("produceId");
+//        if (produceId == null || "".equals(produceId)) {
+//            return new ResponseJson(500, "ERROR", 500);
+//        }
 
         PtsBom ptsBom = new PtsBom();
-        ptsBom.setProduceId(Integer.valueOf(produceId));
+//        ptsBom.setProduceId(Integer.valueOf(produceId));
         List<PtsBom> ptsBomsList = ptsBomService.listBom(ptsBom);
 
         if (ptsBomsList != null) {

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

@@ -849,14 +849,11 @@
         initVisitEvent();
     }
 
-    function keyFun(node){
-        var c=$(node);
-        if(/[^\d]/.test(c.val())){//替换非数字字符
-            var temp_amount=c.val().replace(/[^\d]/g,'');
-            $(node).val(temp_amount);
-        }
-    }
-
+//    function keyFun(node){
+//        var c=$(node);
+//        var temp_amount=c.val().replace(/[^\d]/g,'');
+//        $(node).val(Number(temp_amount));
+//    }
 
     /*初始化客服*/
     var sysAminList;
@@ -1999,45 +1996,45 @@
             case 3:
                 process = processIsEmpty([closedProdcues,closedFittings]);
                 if(!process){
-                    layer.msg("必须选择一个换新寄回的产品或配件并填写数量!", {icon: 5, time: 3000});
+                    layer.msg("选择一个换新寄回的产品或配件并填写一个以上的数量!", {icon: 5, time: 3000});
                     return false;
                 }
                 process = processIsEmpty([sendProdcues,sendFittings]);
                 if(!process){
-                    layer.msg("必须选择一个换新寄送的产品或配件并填写数量!", {icon: 5, time: 3000});
+                    layer.msg("选择一个换新寄送的产品或配件并填写一个以上的数量!", {icon: 5, time: 3000});
                     return false;
                 }
                 break;
             case 4:
                 process = processIsEmpty([closedProdcues,closedFittings]);
                 if(!process){
-                    layer.msg("必须选择一个维修寄回的产品或配件并填写数量!", {icon: 5, time: 3000});
+                    layer.msg("选择一个维修寄回的产品或配件并填写一个以上的数量!", {icon: 5, time: 3000});
                     return false;
                 }
                 process = processIsEmpty([sendProdcues,sendFittings]);
                 if(!process){
-                    layer.msg("必须选择一个维修寄送的产品或配件并填写数量!", {icon: 5, time: 3000});
+                    layer.msg("选择一个维修寄送的产品或配件并填写一个以上的数量!", {icon: 5, time: 3000});
                     return false;
                 }
                 break;
             case 5:
                 process = processIsEmpty([sendProdcues,sendFittings]);
                 if(!process){
-                    layer.msg("必须选择一个补发寄送的产品或配件并填写数量!", {icon: 5, time: 3000});
+                    layer.msg("选择一个补发寄送的产品或配件并填写一个以上的数量!", {icon: 5, time: 3000});
                     return false;
                 }
                 break;
             case 6:
                 process = processIsEmpty([closedProdcues,closedFittings]);
                 if(!process){
-                    layer.msg("必须选择一个退货寄回的产品或配件并填写数量!", {icon: 5, time: 3000});
+                    layer.msg("选择一个退货寄回的产品或配件并填写一个以上的数量!", {icon: 5, time: 3000});
                     return false;
                 }
                 break;
             case 7:
                 process = processIsEmpty([closedProdcues,closedFittings]);
                 if(!process){
-                    layer.msg("必须选择一个退货寄回的产品或配件并填写数量!", {icon: 5, time: 3000});
+                    layer.msg("选择一个退货寄回的产品或配件并填写一个以上的数量!", {icon: 5, time: 3000});
                     return false;
                 }
                 break;
@@ -2056,14 +2053,36 @@
     function processIsEmpty(process){
         if(process != null && process != "" && process.length > 0){
             var flag = 2;
+            var num = 0;
             if(process[0] == null ||  process[0].length < 1 ){
                 flag -- ;
             }
             if(process[1] == null ||  process[1].length < 1 ){
                 flag -- ;
             }
+
+            for(var j=0; j<process.length;j++){
+                for(var i=0;i<process[j].length;i++){
+                    if(process[j][i].sendProdcueNumber !== undefined){
+                        num +=  process[j][i].sendProdcueNumber;
+                    }
+                    if(process[j][i].sendFittingNumber !== undefined){
+                        num += process[j][i].sendFittingNumber;
+                    }
+                    if(process[j][i].closedProdcueNumber !== undefined){
+                        num += process[j][i].closedProdcueNumber ;
+                    }
+                    if(process[j][i].closedFittingNumber !== undefined){
+                        num += process[j][i].closedFittingNumber;
+                    }
+                }
+            }
+
             if(flag == 0){
-                return false
+                return false;
+            }
+            if(num == 0){
+                return false;
             }
         }
         return true;

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

@@ -344,7 +344,7 @@
                                 ' <td>'+ salesOrder.salesId +'</td>' +
                                 ' <td>'+ salesOrder.salesAddressName +'</td>' +
                                 ' <td>'+ salesOrder.salesAddressTel +'</td>' +
-                                ' <td>'+ salesOrder.salesAmount +'</td>' +
+                                ' <td>'+ salesOrder.salesAmount/100 +'</td>' +
                                 ' <td>'+ productsHtml +'</td>' +
                                 ' <td>'+ time +'</td>' +
                                 ' <td>'+ salesOrder.salesAddressInfo +'</td>' +

+ 5 - 2
watero-rst-web/src/main/webapp/WEB-INF/views/pts/bom/add_bom.ftl

@@ -186,7 +186,7 @@
 
         var produceId =   $("[name='produceId']").val();
         staticProduceId = produceId;
-        getBomByProduce(produceId);
+        getBomByProduce(produceId);  //获取bom单
 
         /*监听产品选择*/
         $("[name='produceId']").change(function(){
@@ -347,11 +347,14 @@
                                 addComponents(components[i].componentsId,components[i].bomComponentsQuantity/100);
                             }
                         }
-                        layer.close(index);
+
                     }else{
                         defaultAllInput();
                     }
+                }else{
+                    defaultAllInput();
                 }
+                layer.close(index);
             },
             error: function(XmlHttpRequest, textStatus, errorThrown){
             }

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

@@ -133,7 +133,7 @@
                                 </#if>
                             </td>
                             <td class="text-c" width="100">
-                                ${list.produceName }-${list.producePattern }-${list.produceModel }
+                                ${list.produceName }/${list.producePattern }-${list.produceModel }
                             </td>
 							<!-- 遍历操作 -->
 							<td class="td-manage text-c">

+ 2 - 2
watero-rst-web/src/main/webapp/WEB-INF/views/pts/machine/machine_print_List.ftl

@@ -47,7 +47,7 @@
                         <th width="1"><input name='checkbox' type='checkbox' value='' id="all" ></th>
                         <th width="25">设备尾号</th>
                         <th width="40">产品条码</th>
-                        <th width="25">产品名/型号</th>
+                        <th width="70">产品名/型号</th>
                         <th width="10">生产时间</th>
                         <th width="20">操作</th>
                     </tr>
@@ -68,7 +68,7 @@
                                 <td class="text-c" style="font-size: 24px" width="10">${list.machineBarcode?substring(list.machineBarcode?length-4) }</td>
                                 <td class="text-c" width="10">${list.machineBarcode }</td>
                                 <td class="text-c" width="6">
-                                ${list.produceName }-${list.producePattern }-${list.produceModel }
+                                ${list.produceName }/${list.producePattern }-${list.produceModel }
                                 </td>
                                 <td>${(list.machineCreateTime?string("yyyy-MM-dd HH:mm:ss"))!''}</td>
                                 <!-- 遍历操作 -->

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

@@ -147,11 +147,14 @@ function listDistrict(cityId,districtName){
  */
 function keyFun(node){
     var c=$(node);
-    if(/[^\d]/.test(c.val())){//替换非数字字符
-        var temp_amount=c.val().replace(/[^\d]/g,'');
-        $(node).val(temp_amount);
-    }
+    var temp_amount=c.val().replace(/[^\d]/g,'');
+    $(node).val(Number(temp_amount));
 }
+// var c=$(node);
+// if(/[^\d]/.test(c.val())){//替换非数字字符
+//     var temp_amount=c.val().replace(/[^\d]/g,'');
+//     $(node).val(temp_amount);
+// }
 
 /**
  * 用于展示错误信息,并让该节点得到焦点