From fabb29dfd7fdcc19727c459c8ef309a86d73ed09 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期二, 17 十月 2023 10:37:14 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/crm/manager/controller/OrderController.java |  137 +++++++++++++++++++++++++++++++++------------
 1 files changed, 100 insertions(+), 37 deletions(-)

diff --git a/src/main/java/com/zy/crm/manager/controller/OrderController.java b/src/main/java/com/zy/crm/manager/controller/OrderController.java
index 006bf7f..e599f10 100644
--- a/src/main/java/com/zy/crm/manager/controller/OrderController.java
+++ b/src/main/java/com/zy/crm/manager/controller/OrderController.java
@@ -42,7 +42,9 @@
     @Autowired
     private PriOnline2Service priOnline2Service;
     @Autowired
-    private PriSalesService priSalesService;
+    private PriQuoteService priQuoteService;
+    @Autowired
+    private FollowUpService followUpService;
 
     @RequestMapping(value = "/order/{id}/auth")
     @ManagerAuth
@@ -110,7 +112,25 @@
         }
         Date now = new Date();
 
+        if (order.getStatus()!=0){
+            if (Cools.isEmpty(order.getMemoExperience())){
+                return R.error("璇疯緭鍏ュ績寰椾綋浼�");
+            }else {
+                FollowUp followUp = new FollowUp();
+                followUp.setWorkMsg(order.getMemoExperience());
+                followUp.setOrderId(order.getId());
+                followUp.setUserId(getUserId());
+                followUp.setCreateBy(getUserId());
+                followUp.setUpdateBy(getUserId());
+                followUp.setDirector(getUserId());
+                followUp.setDeptId(getDeptId());
+                followUp.setCreateTime(now);
+                followUp.setUpdateTime(now);
+                followUpService.insert(followUp);
+            }
+        }
 
+        order.setMemoExperience(null);
         order.setUpdateBy(getUserId());
         order.setUpdateTime(now);
         Order orderOld = orderService.selectById(order.getId());
@@ -135,45 +155,88 @@
         try{
             List<Plan> plans = planService.selectList(new EntityWrapper<Plan>().eq("order_id", orderId));
             for (Plan plan:plans){
-                if (plan.getSettle$().equals("瀹℃壒閫氳繃")){
+                boolean signPlan = false;
+                List<PriOnline2> priOnline2s = priOnline2Service.selectList(new EntityWrapper<PriOnline2>().eq("item_id", plan.getId()));
+                if (!Cools.isEmpty(priOnline2s)){
+                    for (PriOnline2 priOnline2:priOnline2s){
+                        boolean signPriOnline2 = false;
+                        List<PriQuote> priQuotes = priQuoteService.selectList(new EntityWrapper<PriQuote>().eq("pri_online_id", priOnline2.getId()));
+                        if (!Cools.isEmpty(priQuotes)){
+                            for (PriQuote priQuote:priQuotes){
+                                if (priQuote.getSettle()>=4){
+                                    continue;
+                                }
+                                signPriOnline2 = true;
+                                priQuote.setUserId(user.getId());
+                                priQuote.setDeptId(user.getDeptId());
+                                priQuote.setHostId(user.getHostId());
+                                priQuote.setUpdateUserId(getUserId());
+                                priQuote.setUpdateTime(now);
+
+                                List<SettleDto> priQuoteDtos = JSON.parseArray(priQuote.getSettleMsg(), SettleDto.class);
+                                List<SettleDto> priQuoteDtoList = new ArrayList<>();
+                                for (SettleDto dto : priQuoteDtos) {
+                                    switch (dto.getStep()) {
+                                        case 1:
+                                            dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(now)+" 璺熻釜椤圭洰淇敼璐熻矗浜轰负锛�"+priQuote.getUserId$());
+                                            dto.setUserId(priQuote.getUserId());
+                                            dto.setUsername(priQuote.getUserId$());
+                                            break;
+                                        case 4:
+                                            dto.setUserId(priQuote.getUserId());
+                                            dto.setUsername(priQuote.getUserId$());
+                                            break;
+                                        default:
+                                            break;
+                                    }
+                                    priQuoteDtoList.add(dto);
+                                }
+                                priQuote.setSettleMsg(JSON.toJSONString(priQuoteDtoList));
+
+                                priQuoteService.updateById(priQuote);
+                            }
+                        }else {
+                            signPriOnline2=true;
+                        }
+                        if (!signPriOnline2){
+                            continue;
+                        }
+                        signPlan = true;
+
+                        priOnline2.setUserId(user.getId());
+                        priOnline2.setDeptId(user.getDeptId());
+                        priOnline2.setHostId(user.getHostId());
+                        priOnline2.setUpdateUserId(getUserId());
+                        priOnline2.setUpdateTime(now);
+                        List<SettleDto> priOnline2Dtos = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class);
+                        List<SettleDto> priOnline2DtoList = new ArrayList<>();
+                        for (SettleDto dto : priOnline2Dtos) {
+                            switch (dto.getStep()) {
+                                case 0:
+                                    dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(now)+" 璺熻釜椤圭洰淇敼璐熻矗浜轰负锛�"+priOnline2.getUser$());
+                                    break;
+                                case 2:
+                                    dto.setUserId(priOnline2.getUserId());
+                                    dto.setUsername(priOnline2.getUser$());
+                                    break;
+                                default:
+                                    break;
+                            }
+                            priOnline2DtoList.add(dto);
+                        }
+                        priOnline2.setSettleMsg(JSON.toJSONString(priOnline2DtoList));
+
+                        priOnline2Service.updateById(priOnline2);
+                    }
+
+                }else {
+                    signPlan=true;
+                }
+
+                if (!signPlan){
                     continue;
                 }
-                List<PriOnline2> priOnline2s = priOnline2Service.selectList(new EntityWrapper<PriOnline2>().eq("item_id", plan.getId()));
-                for (PriOnline2 priOnline2:priOnline2s){
-                    List<PriSales> priSalesList = priSalesService.selectList(new EntityWrapper<PriSales>().eq("pri_online2_id", priOnline2.getId()));
-                    for (PriSales priSales:priSalesList){
-                        priSales.setUserId(user.getId());
-                        priSales.setDeptId(user.getDeptId());
-                        priSales.setHostId(user.getHostId());
-                        priSalesService.updateById(priSales);
-                    }
-                    priOnline2.setUserId(user.getId());
-                    priOnline2.setDeptId(user.getDeptId());
-                    priOnline2.setHostId(user.getHostId());
-                    priOnline2.setUpdateUserId(getUserId());
-                    priOnline2.setUpdateTime(now);
-//                    List<SettleDto> priOnline2Dtos = JSON.parseArray(plan.getSettleMsg(), SettleDto.class);
-//                    List<SettleDto> priOnline2DtoList = new ArrayList<>();
-//                    for (SettleDto dto : priOnline2Dtos) {
-//                        switch (dto.getStep()) {
-//                            case 1:
-//                                dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�� "+DateUtils.convert(now)+" 璺熻釜椤圭洰淇敼璐熻矗浜轰负锛�"+plan.getUserId$());
-//                                dto.setUserId(plan.getUserId());
-//                                dto.setUsername(plan.getUserId$());
-//                                break;
-//                            case 4:
-//                                dto.setUserId(plan.getUserId());
-//                                dto.setUsername(plan.getUserId$());
-//                                break;
-//                            default:
-//                                break;
-//                        }
-//                        priOnline2DtoList.add(dto);
-//                    }
-//                    plan.setSettleMsg(JSON.toJSONString(priOnline2DtoList));
 
-                    priOnline2Service.updateById(priOnline2);
-                }
                 plan.setUserId(user.getId());
                 plan.setDeptId(user.getDeptId());
                 plan.setHostId(user.getHostId());

--
Gitblit v1.9.1