浏览代码

优化代码

xian 4 年之前
父节点
当前提交
487098c59f

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

@@ -559,7 +559,7 @@
                 AND sales_company_id = #{salesCompanyId}
             </if>
             <if test="salesId !=null">
-                    AND sales_id = #{salesId}
+                AND sales_id = #{salesId}
             </if>
             <if test="salesOrderId !=null and salesOrderId !=''">
                 AND sales_orderId = #{salesOrderId}

+ 81 - 71
watero-rst-service/src/main/java/com/iamberry/rst/service/fm/ComplaintDetectInfoServiceImpl.java

@@ -28,6 +28,7 @@ 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.Isolation;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.text.MessageFormat;
@@ -286,82 +287,90 @@ public class ComplaintDetectInfoServiceImpl implements ComplaintDetectInfoServic
         }
         return flag;
     }
-    @Transactional
+
     @Override
+    @Transactional(rollbackFor = {Exception.class}, isolation = Isolation.REPEATABLE_READ)
     public int updateDetectById(ComplaintDetectInfo record,String[] imgs) {
         //判断售后流程
-
-        /*if(record.getCustomerId() == null){
-            if(record.getDetectRenovation() == 1){
-                record.setDetectState(20);//待翻新入库
-            }else{
-                record.setDetectState(22);//不能翻新,待报废
-            }
-        }else{*/
-            ProcMethod procMethod;
-            Integer procTypeId;
-            //判断是签收生成还是手动添加
-            ComplaintDetectInfo complaintDetectInfo  = complaintDetectInfoMapper.getDetectById(record.getDetectId());
-            if(complaintDetectInfo.getDetectSource() == 2){//手动添加
-                procMethod = procMethodMapper.getProcMethodById(complaintDetectInfo.getMethodId());
-            }else{
-                CmRelation cmRelation = new CmRelation();
-                cmRelation.setCustomerId(record.getCustomerId());
-                cmRelation = customerInfoMapper.getCmRelationInfo(cmRelation);
-                procMethod = procMethodMapper.getProcMethodById(cmRelation.getProcMethodId());
-            }
-            procTypeId = procMethod.getProcTypeId();
-            switch (procTypeId){
-                case 3://维修
-                    if(procMethod.getProcMethodIsCharge() == 0){//待定
-                        if(record.getIsMaintenance() == 1){
-                            record.setDetectState(38);//机器故障,待用户确认
-                        }else if(record.getIsMaintenance() == 2){
-                            record.setDetectState(37);//机器无故障,待用户确认
-                        }
-                    }else if(procMethod.getProcMethodIsCharge() == 1){//付费
-                        record.setDetectState(30);//待用户确认
-                    }else if(procMethod.getProcMethodIsCharge() == 2){//免费
-                        record.setDetectState(34);//待客服确认维修
-                    }
-                    break;
-                default:
-                    String processingResults = "";
-                    String text = "";
-                    if(record.getDetectRenovation() == 1){//是否可翻新 1可翻新 2不可翻新
-                        record.setDetectState(20);//待翻新入库
-                        processingResults = "维修";
-                    }else if(record.getDetectRenovation() == 2){
-                        record.setDetectState(22);//不能翻新,待报废
-                        processingResults = "报废";
-                    }
-                    //查询维修编号
-                    ComplaintDetectInfo info = complaintDetectInfoMapper.getDetectById(record.getDetectId());
-                    //客诉状态为换货或退货时完成检测需要短信通知维修人员
-                    if(procTypeId == 2){//换货
-                        text = MessageFormat.format(SmsConfig.CUSTOMER_EXCHANGE, info.getDetectNumber(),processingResults);
-                    }
-                    if(procTypeId == 4){//退货
-                        text = MessageFormat.format(SmsConfig.CUSTOMER_RETURN, info.getDetectNumber(),processingResults);
-                    }
-                    if(procTypeId == 2 || procTypeId == 4){
-                        String result = smsService.sendOtherCMS(SmsConfig.CUSTOMER_PHONE, text);
-                        logger.info("给 " + SmsConfig.CUSTOMER_PHONE + " 手机用户发送短信:" + text+"发送完成检测结果("+processingResults+"):"+result);
+        ProcMethod procMethod;
+        Integer procTypeId;
+        //判断是签收生成还是手动添加
+        ComplaintDetectInfo complaintDetectInfo  = complaintDetectInfoMapper.getDetectById(record.getDetectId());
+        if(complaintDetectInfo.getDetectSource() == 2){
+            //手动添加
+            procMethod = procMethodMapper.getProcMethodById(complaintDetectInfo.getMethodId());
+        }else{
+            CmRelation cmRelation = new CmRelation();
+            cmRelation.setCustomerId(record.getCustomerId());
+            cmRelation = customerInfoMapper.getCmRelationInfo(cmRelation);
+            procMethod = procMethodMapper.getProcMethodById(cmRelation.getProcMethodId());
+        }
+        procTypeId = procMethod.getProcTypeId();
+        switch (procTypeId){
+            case 3:
+                //维修
+                if(procMethod.getProcMethodIsCharge() == 0){
+                    //待定
+                    if(record.getIsMaintenance() == 1){
+                        //机器故障,待用户确认
+                        record.setDetectState(38);
+                    }else if(record.getIsMaintenance() == 2){
+                        //机器无故障,待用户确认
+                        record.setDetectState(37);
                     }
-            }
-        /*}*/
+                }else if(procMethod.getProcMethodIsCharge() == 1){
+                    //付费
+                    //待用户确认
+                    record.setDetectState(30);
+                }else if(procMethod.getProcMethodIsCharge() == 2){
+                    //免费
+                    //待客服确认维修
+                    record.setDetectState(34);
+                }
+                break;
+            default:
+                // 退货/换货
+                String processingResults = "";
+                String text = "";
+                if(record.getDetectRenovation() == 1){
+                    // 是否可翻新 1可翻新 2不可翻新
+                    // 待翻新入库
+                    record.setDetectState(20);
+                    processingResults = "维修";
+                }else if(record.getDetectRenovation() == 2){
+                    // 不能翻新,待报废
+                    record.setDetectState(22);
+                    processingResults = "报废";
+                }
+                // 查询维修编号
+                ComplaintDetectInfo info = complaintDetectInfoMapper.getDetectById(record.getDetectId());
+                // 客诉状态为换货或退货时完成检测需要短信通知维修人员
+                if(procTypeId == 2){
+                    //换货
+                    text = MessageFormat.format(SmsConfig.CUSTOMER_EXCHANGE, info.getDetectNumber(),processingResults);
+                }
+                if(procTypeId == 4){
+                    //退货
+                    text = MessageFormat.format(SmsConfig.CUSTOMER_RETURN, info.getDetectNumber(),processingResults);
+                }
+                if(procTypeId == 2 || procTypeId == 4){
+                    String result = smsService.sendOtherCMS(SmsConfig.CUSTOMER_PHONE, text);
+                    logger.info("给 " + SmsConfig.CUSTOMER_PHONE + " 手机用户发送短信:" + text+"发送完成检测结果("+processingResults+"):"+result);
+                }
+        }
+
         try {
-        //封装检测信息
-        //检测现象
-        if(record.getConfigli1() != null) {
-            if (record.getConfigli1().length > 0) {
-                StringBuffer detectPhenomenon = new StringBuffer("");
-                for (String configid : record.getConfigli1()) {
-                    detectPhenomenon.append(adddetectItem(configid, record.getDetectId()) + ";");
-                }
-                record.setDetectPhenomenon(detectPhenomenon.toString());
+            //封装检测信息
+            //检测现象
+            if(record.getConfigli1() != null) {
+                if (record.getConfigli1().length > 0) {
+                    StringBuilder detectPhenomenon = new StringBuilder();
+                    for (String configid : record.getConfigli1()) {
+                        detectPhenomenon.append(adddetectItem(configid, record.getDetectId())).append(";");
+                    }
+                    record.setDetectPhenomenon(detectPhenomenon.toString());
+                }
             }
-        }
 
             if(complaintDetectInfoMapper.updateDetectById(record) > 0){
                 if(imgs != null){
@@ -375,7 +384,8 @@ public class ComplaintDetectInfoServiceImpl implements ComplaintDetectInfoServic
                     }
                 }
             }
-            if(complaintDetectInfo.getDetectSource() == 2){//手动添加需要给业务员发送短信
+            if(complaintDetectInfo.getDetectSource() == 2){
+                //手动添加需要给业务员发送短信
                 //发送短信通知维修检测人员
                 if(record.getDetectState() == 30 || record.getDetectState() == 34|| record.getDetectState() == 38 || record.getDetectState() == 37){
                     if(complaintDetectInfo.getDetectTel() != null && !complaintDetectInfo.getDetectTel().equals("") && complaintDetectInfo.getSalesmanAdminId() != null){

+ 142 - 135
watero-rst-service/src/main/java/com/iamberry/rst/service/fm/ComplaintSignclosedInfoServiceImpl.java

@@ -71,10 +71,10 @@ public class ComplaintSignclosedInfoServiceImpl implements ComplaintSignclosedIn
     private KuaiDi100 kuaidi100;
     @Autowired
     private LogisticsInfoService logisticsInfoService;
+
     @Override
     @Transactional
-    public Integer insert(ComplaintSignclosedInfo record,
-                          String orderItemString,String[] componentsImgs) {
+    public Integer insert(ComplaintSignclosedInfo record, String orderItemString, String[] componentsImgs) {
         Integer msg = 0;
         int num = 0;
         Integer signclosedId = null;
@@ -88,7 +88,8 @@ public class ComplaintSignclosedInfoServiceImpl implements ComplaintSignclosedIn
                 //截取-前的内容搜索一次
                 info.setSignclosedLogisticsNumber(StringUtils.substringBefore(record.getSignclosedLogisticsNumber(), "-"));
                 sinfoList = complaintSignclosedInfoMapper.listSignclosed(info);
-                if(sinfoList.size() <= 0){//如果没有搜索到数据,则用完整单号搜索
+                if(sinfoList.size() <= 0){
+                    //如果没有搜索到数据,则用完整单号搜索
                     info.setSignclosedLogisticsNumber(record.getSignclosedLogisticsNumber());
                     sinfoList = complaintSignclosedInfoMapper.listSignclosed(info);
                 }
@@ -98,7 +99,8 @@ public class ComplaintSignclosedInfoServiceImpl implements ComplaintSignclosedIn
             }
             if(sinfoList.size() <= 0){
                 num = complaintSignclosedInfoMapper.insert(record);
-                msg = 1;//添加成功
+                //添加成功
+                msg = 1;
                 signclosedId = record.getSignclosedId();
             }else{
                 //将签收记录改为已签收
@@ -107,10 +109,12 @@ public class ComplaintSignclosedInfoServiceImpl implements ComplaintSignclosedIn
                     complaintSignclosedInfo.setSignclosedIsReceiving(2);
                     complaintSignclosedInfo.setSignclosedDate(new Date());
                     complaintSignclosedInfoMapper.updateSignclosedById(complaintSignclosedInfo);
-                    msg = 3;//已存在相同单号的签收信息并修改状态为已签收
+                    //已存在相同单号的签收信息并修改状态为已签收
+                    msg = 3;
                     signclosedId = complaintSignclosedInfo.getSignclosedId();
                 }else{
-                    msg = 4;//已存在相同单号的已签收信息
+                    //已存在相同单号的已签收信息
+                    msg = 4;
                 }
 
             }
@@ -124,22 +128,21 @@ public class ComplaintSignclosedInfoServiceImpl implements ComplaintSignclosedIn
                         int i = 0;
                         SignclosedProductInfo signclosedProductInfo = new SignclosedProductInfo();
                         //根据颜色id获取产品信息获取产品信息
-                            ProductColor productColor = productMapper.getProduceColor(salesOrderItem.getItemColorId());
-//                            Product product = productMapper.getProduce(productColor.getColorProductId());
-                            if(productColor == null){
-                                msg = 2;
-                            }
-                            if(salesOrderItem.getItemNum() != null && salesOrderItem.getItemNum() != 0){
-                                signclosedProductInfo.setSignclosedId(record.getSignclosedId());
-                                signclosedProductInfo.setProductName(productColor.getProductName());
-                                signclosedProductInfo.setProductNum(salesOrderItem.getItemNum());
-                                signclosedProductInfo.setSignclosedProductType(1);
-                                signclosedProductInfo.setSignclosedProductId(productColor.getColorProductId());
-                                signclosedProductInfo.setSignclosedProductColor(salesOrderItem.getItemColorId());
-                                signclosedProductInfo.setSignclosedCreateTime(new Date());
-                                signclosedProductInfo.setSignclosedState(2);
-                                complaintSignclosedProductInfoMapper.insert(signclosedProductInfo);
-                            }
+                        ProductColor productColor = productMapper.getProduceColor(salesOrderItem.getItemColorId());
+                        if(productColor == null){
+                            msg = 2;
+                        }
+                        if(salesOrderItem.getItemNum() != null && salesOrderItem.getItemNum() != 0){
+                            signclosedProductInfo.setSignclosedId(record.getSignclosedId());
+                            signclosedProductInfo.setProductName(productColor.getProductName());
+                            signclosedProductInfo.setProductNum(salesOrderItem.getItemNum());
+                            signclosedProductInfo.setSignclosedProductType(1);
+                            signclosedProductInfo.setSignclosedProductId(productColor.getColorProductId());
+                            signclosedProductInfo.setSignclosedProductColor(salesOrderItem.getItemColorId());
+                            signclosedProductInfo.setSignclosedCreateTime(new Date());
+                            signclosedProductInfo.setSignclosedState(2);
+                            complaintSignclosedProductInfoMapper.insert(signclosedProductInfo);
+                        }
                     }
                 }
             }
@@ -195,132 +198,135 @@ public class ComplaintSignclosedInfoServiceImpl implements ComplaintSignclosedIn
      * type 1新增签收 2客服关联客诉
      * @return
      */
+    @Override
     public int addDetect(ComplaintSignclosedInfo record,Integer type){
-            CustomerInfo customerInfo = new CustomerInfo();
-            List<CustomerInfo> listCustomer = new ArrayList<>();
-            if(record.getSignclosedCustomerId() != null){
-                customerInfo.setCustomerId(record.getSignclosedCustomerId());
+        CustomerInfo customerInfo = new CustomerInfo();
+        List<CustomerInfo> listCustomer = new ArrayList<>();
+        if(record.getSignclosedCustomerId() != null){
+            customerInfo.setCustomerId(record.getSignclosedCustomerId());
+            listCustomer = customerInfoMapper.listCustomer(customerInfo);
+        }else if(record.getSignclosedLogisticsNumber() != null){
+            //判断是否是京东
+            if (record.getSignclosedLogisticsNumber().contains("-")){
+                    //截取-前的内容搜索一次
+                customerInfo.setSendLogisticsNo(StringUtils.substringBefore(record.getSignclosedLogisticsNumber(), "-"));
                 listCustomer = customerInfoMapper.listCustomer(customerInfo);
-            }else if(record.getSignclosedLogisticsNumber() != null){
-                //判断是否是京东
-                if (record.getSignclosedLogisticsNumber().contains("-")){
-                        //截取-前的内容搜索一次
-                    customerInfo.setSendLogisticsNo(StringUtils.substringBefore(record.getSignclosedLogisticsNumber(), "-"));
-                    listCustomer = customerInfoMapper.listCustomer(customerInfo);
-                    if(listCustomer.size() <= 0){//如果没有搜索到数据,则用完整单号搜索
-                        customerInfo.setSendLogisticsNo(record.getSignclosedLogisticsNumber());
-                        listCustomer = customerInfoMapper.listCustomer(customerInfo);
-                    }
-                }else{
+                if(listCustomer.size() <= 0){
+                    //如果没有搜索到数据,则用完整单号搜索
                     customerInfo.setSendLogisticsNo(record.getSignclosedLogisticsNumber());
                     listCustomer = customerInfoMapper.listCustomer(customerInfo);
                 }
+            }else{
+                customerInfo.setSendLogisticsNo(record.getSignclosedLogisticsNumber());
+                listCustomer = customerInfoMapper.listCustomer(customerInfo);
             }
-            ComplaintSignclosedInfo sigInfo = complaintSignclosedInfoMapper.getSignclosedById(record.getSignclosedId());
-            boolean m = false;
-            if(listCustomer.size() > 0){
-                customerInfo = listCustomer.get(0);
-                ComplaintSignclosedInfo signclosedInfo = new ComplaintSignclosedInfo();
-                if(customerInfo.getSendbackInfoList().size()>0){
-                    for (SendbackInfo info : customerInfo.getSendbackInfoList()){
-                        if(info.getSendbackLogisticsNo() != null){
-                            if(info.getSendbackLogisticsNo().equals(sigInfo.getSignclosedLogisticsNumber())){
-                                m = true;
-                                //修改该寄回信息为已签收
-                                info.setSendbackStatus(3);
-                                customerInfoMapper.updateSendbackInfo(info);
-                                //同步寄回id到签收信息
-                                record.setSendbackId(info.getSendbackId());
-                                complaintSignclosedInfoMapper.updateSignclosedById(record);
-                            }
+        }
+        ComplaintSignclosedInfo sigInfo = complaintSignclosedInfoMapper.getSignclosedById(record.getSignclosedId());
+        boolean m = false;
+        if(listCustomer.size() > 0){
+            customerInfo = listCustomer.get(0);
+            ComplaintSignclosedInfo signclosedInfo = new ComplaintSignclosedInfo();
+            if(customerInfo.getSendbackInfoList().size()>0){
+                for (SendbackInfo info : customerInfo.getSendbackInfoList()){
+                    if(info.getSendbackLogisticsNo() != null){
+                        if(info.getSendbackLogisticsNo().equals(sigInfo.getSignclosedLogisticsNumber())){
+                            m = true;
+                            //修改该寄回信息为已签收
+                            info.setSendbackStatus(3);
+                            customerInfoMapper.updateSendbackInfo(info);
+                            //同步寄回id到签收信息
+                            record.setSendbackId(info.getSendbackId());
+                            complaintSignclosedInfoMapper.updateSignclosedById(record);
                         }
                     }
                 }
-                SendbackInfo info = new SendbackInfo();
-                if(!m || customerInfo.getSendbackInfoList().size() == 0){
-                    info.setSendbackStatus(3);
-                    info.setSendbackLogisticsCompany(sigInfo.getSignclosedLogistics());
-                    info.setSendbackLogisticsNo(sigInfo.getSignclosedLogisticsNumber());
-                    info.setSendbackName(sigInfo.getSignclosedSendName());
-                    info.setSendbackTel(sigInfo.getSignclosedSendTel());
-                    info.setRelationId(customerInfo.getRelationId());
-                    info.setSendbackSignTime(sigInfo.getSignclosedDate());
-                    List<SendbackItem> list = new ArrayList<>();
-                    if(customerInfoMapper.addSendbackInfo(info) > 0){
-                        //添加寄回产品项
-                        for(SignclosedProductInfo productInfo : sigInfo.getSignclosedProductInfoList()){
-                            SendbackItem sendbackItem = new SendbackItem();
-                            sendbackItem.setSendbackId(info.getSendbackId());
-                            sendbackItem.setSendbackColorId(productInfo.getSignclosedProductColor());
-                            sendbackItem.setSendbackProductId(productInfo.getSignclosedProductId());
-                            sendbackItem.setSendbackProdcueNumber(productInfo.getProductNum());
-                            list.add(sendbackItem);
-                        }
-                        customerInfoMapper.addSendbackItemList(list);
+            }
+            SendbackInfo info = new SendbackInfo();
+            if(!m || customerInfo.getSendbackInfoList().size() == 0){
+                info.setSendbackStatus(3);
+                info.setSendbackLogisticsCompany(sigInfo.getSignclosedLogistics());
+                info.setSendbackLogisticsNo(sigInfo.getSignclosedLogisticsNumber());
+                info.setSendbackName(sigInfo.getSignclosedSendName());
+                info.setSendbackTel(sigInfo.getSignclosedSendTel());
+                info.setRelationId(customerInfo.getRelationId());
+                info.setSendbackSignTime(sigInfo.getSignclosedDate());
+                List<SendbackItem> list = new ArrayList<>();
+                if(customerInfoMapper.addSendbackInfo(info) > 0){
+                    //添加寄回产品项
+                    for(SignclosedProductInfo productInfo : sigInfo.getSignclosedProductInfoList()){
+                        SendbackItem sendbackItem = new SendbackItem();
+                        sendbackItem.setSendbackId(info.getSendbackId());
+                        sendbackItem.setSendbackColorId(productInfo.getSignclosedProductColor());
+                        sendbackItem.setSendbackProductId(productInfo.getSignclosedProductId());
+                        sendbackItem.setSendbackProdcueNumber(productInfo.getProductNum());
+                        list.add(sendbackItem);
                     }
-
+                    customerInfoMapper.addSendbackItemList(list);
                 }
-                //同步寄回id到签收信息
-                signclosedInfo.setSendbackId(info.getSendbackId());
-                signclosedInfo.setSignclosedCustomerId(customerInfo.getCustomerId());
-                signclosedInfo.setSignclosedId(record.getSignclosedId());
-                Integer msg = complaintSignclosedInfoMapper.updateSignclosedById(signclosedInfo);
-
-            if(msg == 1){
-                ComplaintSignclosedInfo infos = complaintSignclosedInfoMapper.getSignclosedById(record.getSignclosedId());
-                //判断是否需要生成维修记录
-                if(infos.getSignclosedProductInfoList().size() > 0) {
-                    for (SignclosedProductInfo productInfo : infos.getSignclosedProductInfoList()) {
-                        ProductColor productColor = productMapper.getProduceColor(productInfo.getSignclosedProductColor());
-                        Product product = productMapper.getProduce(productColor.getColorProductId());
-                        if(product.getProductIsDetection() != null){
-                            if (product.getProductIsDetection() == 1) {
-                                for (int j = 0; j < productInfo.getProductNum(); j++) {
-                                    //添加待检测信息
-                                    //查询签收信息
-                                    ComplaintDetectInfo detectInfo = new ComplaintDetectInfo();
-                                    //生成维修编号
-                                    String number = detectNumber();
-                                    detectInfo.setDetectNumber(number);
-                                    detectInfo.setProductId(productColor.getColorProductId());
-                                    detectInfo.setProductColorId(productInfo.getSignclosedProductColor());
-                                    detectInfo.setDetectProductNumber(product.getProductNumber());
-                                    detectInfo.setDetectState(1);
-                                    detectInfo.setCustomerId(infos.getSignclosedCustomerId());
-                                    detectInfo.setIsMaintenance(0);
-                                    detectInfo.setDetectRenovation(0);
-                                    detectInfo.setDetectProcessingResults(0);
-                                    detectInfo.setSignclosedId(infos.getSignclosedId());
-                                    detectInfo.setDetectSource(1);
-                                    Calendar date = Calendar.getInstance();
-                                    date.setTime(new Date());
-                                    boolean fl = false;
-                                    for (int i = 1 ; i <= 3; i++){
-                                        date.set(Calendar.DATE, date.get(Calendar.DATE) + i);
-                                        int week = date.get(Calendar.DAY_OF_WEEK);//1--7的值,对应:星期日,星期一,星期二,星期三....星期六
-                                        if(week == 1){
-                                            fl = true;
-                                        }
-                                        date.set(Calendar.DATE, date.get(Calendar.DATE) - i);
-                                    }
-                                    if(fl){
-                                        date.set(Calendar.DATE, date.get(Calendar.DATE) + 4);
-                                    }else{
-                                        date.set(Calendar.DATE, date.get(Calendar.DATE) + 3);
+
+            }
+            //同步寄回id到签收信息
+            signclosedInfo.setSendbackId(info.getSendbackId());
+            signclosedInfo.setSignclosedCustomerId(customerInfo.getCustomerId());
+            signclosedInfo.setSignclosedId(record.getSignclosedId());
+            Integer msg = complaintSignclosedInfoMapper.updateSignclosedById(signclosedInfo);
+
+        if(msg == 1){
+            ComplaintSignclosedInfo infos = complaintSignclosedInfoMapper.getSignclosedById(record.getSignclosedId());
+            //判断是否需要生成维修记录
+            if(infos.getSignclosedProductInfoList().size() > 0) {
+                for (SignclosedProductInfo productInfo : infos.getSignclosedProductInfoList()) {
+                    ProductColor productColor = productMapper.getProduceColor(productInfo.getSignclosedProductColor());
+                    Product product = productMapper.getProduce(productColor.getColorProductId());
+                    if(product.getProductIsDetection() != null){
+                        if (product.getProductIsDetection() == 1) {
+                            for (int j = 0; j < productInfo.getProductNum(); j++) {
+                                //添加待检测信息
+                                //查询签收信息
+                                ComplaintDetectInfo detectInfo = new ComplaintDetectInfo();
+                                //生成维修编号
+                                String number = detectNumber();
+                                detectInfo.setDetectNumber(number);
+                                detectInfo.setProductId(productColor.getColorProductId());
+                                detectInfo.setProductColorId(productInfo.getSignclosedProductColor());
+                                detectInfo.setDetectProductNumber(product.getProductNumber());
+                                detectInfo.setDetectState(1);
+                                detectInfo.setCustomerId(infos.getSignclosedCustomerId());
+                                detectInfo.setIsMaintenance(0);
+                                detectInfo.setDetectRenovation(0);
+                                detectInfo.setDetectProcessingResults(0);
+                                detectInfo.setSignclosedId(infos.getSignclosedId());
+                                detectInfo.setDetectSource(1);
+                                Calendar date = Calendar.getInstance();
+                                date.setTime(new Date());
+                                boolean fl = false;
+                                for (int i = 1 ; i <= 3; i++){
+                                    date.set(Calendar.DATE, date.get(Calendar.DATE) + i);
+                                    //1--7的值,对应:星期日,星期一,星期二,星期三....星期六
+                                    int week = date.get(Calendar.DAY_OF_WEEK);
+                                    if(week == 1){
+                                        fl = true;
                                     }
-                                    detectInfo.setMaintenanceCutTime(date.getTime());
-                                    try {
-                                        complaintDetectInfoMapper.insert(detectInfo);
-                                        if(type == 1){//客服关联客诉才发送通知短信
-                                            //发送短信通知维修检测人员
-                                            String text = MessageFormat.format(SmsConfig.CUSTOMER_CONTACT, sigInfo.getSignclosedLogisticsNumber(),number);
-                                            String result = smsService.sendOtherCMS(SmsConfig.CUSTOMER_PHONE, text);
-                                            logger.info("给 " + SmsConfig.CUSTOMER_PHONE + " 手机用户发送短信:" + text+"发送关联客诉通知维修人员:"+result);
-                                        }
-
-                                    } catch (Exception e) {
-                                        throw new RuntimeException("------------生成检测信息出错------------");
+                                    date.set(Calendar.DATE, date.get(Calendar.DATE) - i);
+                                }
+                                if(fl){
+                                    date.set(Calendar.DATE, date.get(Calendar.DATE) + 4);
+                                }else{
+                                    date.set(Calendar.DATE, date.get(Calendar.DATE) + 3);
+                                }
+                                detectInfo.setMaintenanceCutTime(date.getTime());
+                                try {
+                                    complaintDetectInfoMapper.insert(detectInfo);
+                                    if(type == 1){
+                                        //客服关联客诉才发送通知短信
+                                        //发送短信通知维修检测人员
+                                        String text = MessageFormat.format(SmsConfig.CUSTOMER_CONTACT, sigInfo.getSignclosedLogisticsNumber(),number);
+                                        String result = smsService.sendOtherCMS(SmsConfig.CUSTOMER_PHONE, text);
+                                        logger.info("给 " + SmsConfig.CUSTOMER_PHONE + " 手机用户发送短信:" + text+"发送关联客诉通知维修人员:"+result);
                                     }
+
+                                } catch (Exception e) {
+                                    throw new RuntimeException("------------生成检测信息出错------------");
                                 }
                             }
                         }
@@ -328,6 +334,7 @@ public class ComplaintSignclosedInfoServiceImpl implements ComplaintSignclosedIn
                 }
             }
         }
+        }
         return 1;
     }
     /**

+ 8 - 5
watero-rst-service/src/main/java/com/iamberry/rst/service/order/OrderSyncLogServiceImpl.java

@@ -737,10 +737,13 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
 
         //订单状态  只获取代发货的订单
         Map<String,Object> orderMap = new HashMap<>();
-        orderMap.put("condType","orderId");     //receiverName 收件人姓名 //receiverMobile收件人手机号码 //outOrderId原始订单号 //orderId系统订单号
+        //receiverName 收件人姓名 //receiverMobile收件人手机号码 //outOrderId原始订单号 //orderId系统订单号
+        orderMap.put("condType","orderId");
         String[] orders = new String[1];
-        orders[0] = orderId; //只查询待发货
-        orderMap.put("condValue",orders);//生成结束时间
+        orders[0] = orderId;
+        //只查询待发货
+        orderMap.put("condValue",orders);
+        //生成结束时间
         conditionTypeList.add(orderMap);
 
         Map<String,Object> condMap = new HashMap<>();
@@ -749,8 +752,8 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
         condMap.put("conditionType",conditionTypeList);
         paramsMap.put("cond",condMap);
         String json = this.syncXYT("IOrderService.query",paramsMap);
-
-        JSONObject jsonObj = new JSONObject(json);//转化为json格式
+        //转化为json格式
+        JSONObject jsonObj = new JSONObject(json);
         String resultMsg = jsonObj.getString("result_msg");
         if(resultMsg.equals("success")){
             JSONObject dataObj = jsonObj.getJSONObject("data");    //数据

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

@@ -652,7 +652,7 @@ public class AdminDetectController {
     @RequiresPermissions("complete:update:complete")
     @ResponseBody
     @RequestMapping("/update_complete")
-    public ResponseJson update_complete(HttpServletRequest request, ComplaintDetectInfo detectInfo) throws Exception {
+    public ResponseJson updateComplete(HttpServletRequest request, ComplaintDetectInfo detectInfo) throws Exception {
         ResponseJson msg = new ResponseJson();
         if(detectInfo == null){
             msg.setResultCode(500);

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

@@ -812,6 +812,7 @@ public class AdminOrderController {
         titles.add("邮费支付方式");
         titles.add("邮费成本");
         titles.add("发货仓库");
+        titles.add("异常状态");
         model.put("titles", titles);
         List<List<Object>> countexts = Collections.synchronizedList(new ArrayList<>(temporarySalesOrderList.size()));
         if(temporarySalesOrderList.size() > 0){

+ 2 - 4
watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AwaitSendController.java

@@ -734,11 +734,9 @@ public class AwaitSendController {
         //查询当前登录人属于哪个仓库
         OrderWarehouse orderWarehouse = salesOrderService.selectAdminWarehouse(admin.getAdminId());
         if(orderWarehouse == null){
-            ModelAndView mv = new ModelAndView("order/salesOrder/error");
-            return mv;
+            return new ModelAndView("order/salesOrder/error");
         }
-        ModelAndView mv = new ModelAndView("order/salesOrder/deliver_list");
-        return mv;
+        return new ModelAndView("order/salesOrder/deliver_list");
     }
 
     /**

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

@@ -115,6 +115,7 @@ public class DownOrderRunnable implements Runnable {
                     }
                 }
                 row.add(temp);
+                row.add(salesOrder.getSalesIsErrorSign() == null ? null : (salesOrder.getSalesErrorState() == 1 ? "无异常" : (salesOrder.getSalesErrorState() == 2 ? "快递遗失" : (salesOrder.getSalesErrorState() == 3 ? "快递破损" : "其他"))));
                 contexts.add(row);
             }
         } catch (Exception e) {

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

@@ -142,11 +142,10 @@
                 <th width="10">异常信息:</th>
                 <td width="10" colspan="4">
                     <#if order.salesErrorState == 1>无异常
-                    <#elseif order.salesErrorState == 2>快递遗失
-                    <#elseif order.salesErrorState == 3>快递破损
-                    <#elseif order.salesErrorState == 4>其他
-                    <#else>
-                        未知
+                    <#elseif order.salesErrorState == 2><span style="color: red">快递遗失</span>
+                    <#elseif order.salesErrorState == 3><span style="color: red">快递破损</span>
+                    <#elseif order.salesErrorState == 4><span style="color: red">其他</span>
+                    <#else><span style="color: red">未知</span>
                     </#if>
                 </td>
             </tr>