From efbc8993d6545d7ab898f5349a89915729fe5cb7 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期五, 06 十月 2023 14:12:31 +0800
Subject: [PATCH] #一键修改负责人
---
src/main/java/com/zy/crm/manager/controller/OrderController.java | 113 +++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 102 insertions(+), 11 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 27455e0..d8eebb7 100644
--- a/src/main/java/com/zy/crm/manager/controller/OrderController.java
+++ b/src/main/java/com/zy/crm/manager/controller/OrderController.java
@@ -1,24 +1,19 @@
package com.zy.crm.manager.controller;
+import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.core.annotations.ManagerAuth;
-import com.core.common.BaseRes;
-import com.core.common.Cools;
-import com.core.common.R;
+import com.core.common.*;
import com.core.domain.KeyValueVo;
import com.core.exception.CoolException;
+import com.zy.crm.common.model.SettleDto;
import com.zy.crm.common.web.BaseController;
import com.zy.crm.manager.controller.result.FollowerTableVo;
-import com.zy.crm.manager.entity.CstmrFoll;
-import com.zy.crm.manager.entity.Order;
-import com.zy.crm.manager.entity.OrderFoll;
-import com.zy.crm.manager.entity.Plan;
-import com.zy.crm.manager.service.OrderFollService;
-import com.zy.crm.manager.service.OrderService;
-import com.zy.crm.manager.service.PlanService;
+import com.zy.crm.manager.entity.*;
+import com.zy.crm.manager.service.*;
import com.zy.crm.system.entity.Role;
import com.zy.crm.system.entity.User;
import com.zy.crm.system.service.UserService;
@@ -44,6 +39,10 @@
private OrderService orderService;
@Autowired
private PlanService planService;
+ @Autowired
+ private PriOnline2Service priOnline2Service;
+ @Autowired
+ private PriSalesService priSalesService;
@RequestMapping(value = "/order/{id}/auth")
@ManagerAuth
@@ -104,16 +103,108 @@
@RequestMapping(value = "/order/update/auth")
@ManagerAuth(memo = "鏇存柊璺熻釜椤圭洰")
+ @Transactional
public R update(Order order){
if (Cools.isEmpty(order) || null==order.getId()){
return R.error();
}
+ Date now = new Date();
+
+
order.setUpdateBy(getUserId());
- order.setUpdateTime(new Date());
+ order.setUpdateTime(now);
+ Order orderOld = orderService.selectById(order.getId());
+ if (Cools.isEmpty(orderOld) || null==orderOld.getId()){
+ return R.error();
+ }
+ if (!orderOld.getDirector().equals(order.getDirector())){
+ User user = userService.selectById(order.getDirector());
+ order.setUserId(user.getId());
+ order.setDeptId(user.getDeptId());
+ order.setHostId(user.getHostId());
+
+ updateDirector(order.getId(),user,now);
+ }
orderService.updateById(order);
+
+
return R.ok();
}
+ public void updateDirector(Long orderId, User user , Date now){
+ try{
+ List<Plan> plans = planService.selectList(new EntityWrapper<Plan>().eq("order_id", orderId));
+ for (Plan plan:plans){
+ if (plan.getSettle$().equals("瀹℃壒閫氳繃")){
+ 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());
+
+// 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());
+
+ List<SettleDto> planDtos = JSON.parseArray(plan.getSettleMsg(), SettleDto.class);
+ List<SettleDto> planDtoList = new ArrayList<>();
+ for (SettleDto dto : planDtos) {
+ 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;
+ }
+ planDtoList.add(dto);
+ }
+ plan.setSettleMsg(JSON.toJSONString(planDtoList));
+ planService.updateById(plan);
+ }
+ }catch (Exception e){
+ R.error();
+ return;
+ }
+ R.ok();
+ }
+
@RequestMapping(value = "/order/delete/auth")
@ManagerAuth(memo = "鍒犻櫎璺熻釜椤圭洰")
public R delete(@RequestParam(value="ids[]") Long[] ids){
--
Gitblit v1.9.1