From a25d3c16f9f9be1a1b4774402d1907a28dab06fb Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期二, 12 九月 2023 09:43:55 +0800
Subject: [PATCH] #核价管理完善

---
 src/main/java/com/zy/crm/manager/controller/OrderController.java |   84 ++++++++++++++++++++++++++++++++++++++----
 1 files changed, 76 insertions(+), 8 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 9ff6024..27455e0 100644
--- a/src/main/java/com/zy/crm/manager/controller/OrderController.java
+++ b/src/main/java/com/zy/crm/manager/controller/OrderController.java
@@ -12,10 +12,13 @@
 import com.core.exception.CoolException;
 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.system.entity.Role;
 import com.zy.crm.system.entity.User;
 import com.zy.crm.system.service.UserService;
@@ -39,6 +42,8 @@
 
     @Autowired
     private OrderService orderService;
+    @Autowired
+    private PlanService planService;
 
     @RequestMapping(value = "/order/{id}/auth")
     @ManagerAuth
@@ -52,17 +57,23 @@
                   @RequestParam(defaultValue = "10") Integer limit,
                   @RequestParam(required = false) String condition,
                   @RequestParam(required = false, value = "dept_id") Long deptId,
-                  @RequestParam(required = false, value = "user_id") Long userId){
+                  @RequestParam(required = false, value = "user_id") Long userId,
+                  @RequestParam Map<String, Object> param){
+        Integer status = null;
+        if (param.get("status") != null) {
+            status = Integer.parseInt(param.get("status").toString());
+        }
         return R.ok(orderService.getPage(new Page<>(curr, limit)
                 , getHostId()
                 , deptId == null ? null : String.valueOf(deptId)
                 , userId == null ? getUserId() : userId
-                , condition)
+                , condition
+                , status)
         );
     }
 
     @RequestMapping(value = "/order/add/auth")
-    @ManagerAuth
+    @ManagerAuth(memo = "娣诲姞璺熻釜椤圭洰")
     public R add(Order order) {
         Long hostId = getHostId();
         if (orderService.selectByUuid(hostId, order.getUuid()) != null) {
@@ -77,14 +88,22 @@
         order.setCreateTime(new Date());
         order.setUpdateBy(getUserId());
         order.setUpdateTime(new Date());
-        order.setStatus(1);
+        order.setStatus(0);
+        order.setStep(1);
 
         orderService.insert(order);
         return R.ok();
     }
 
+    @RequestMapping(value = "/order/userName/userId/auth")
+    @ManagerAuth(memo = "娣诲姞璺熻釜椤圭洰鑾峰彇褰撳墠鐧诲綍璐﹀彿淇℃伅")
+    public R userNameAndUserId() {
+        KeyValueVo keyValueVo = new KeyValueVo(getUser().getNickname(),getUserId());
+        return R.ok().add(keyValueVo);
+    }
+
 	@RequestMapping(value = "/order/update/auth")
-	@ManagerAuth
+	@ManagerAuth(memo = "鏇存柊璺熻釜椤圭洰")
     public R update(Order order){
         if (Cools.isEmpty(order) || null==order.getId()){
             return R.error();
@@ -96,11 +115,15 @@
     }
 
     @RequestMapping(value = "/order/delete/auth")
-    @ManagerAuth
+    @ManagerAuth(memo = "鍒犻櫎璺熻釜椤圭洰")
     public R delete(@RequestParam(value="ids[]") Long[] ids){
          for (Long id : ids){
+             int plan = planService.selectCount(new EntityWrapper<Plan>().eq("order_id", id));
+             if (plan!=0){
+                 return R.error("瀛樺湪鍏宠仈鐨勮鍒掑崟锛岀姝㈠垹闄わ紒锛侊紒");
+             }
             orderService.deleteById(id);
-        }
+         }
         return R.ok();
     }
 
@@ -115,6 +138,32 @@
             Map<String, Object> map = new HashMap<>();
             map.put("id", order.getId());
             map.put("value", order.getId());
+            map.put("name", order.getName());
+            result.add(map);
+        }
+        return R.ok(result);
+    }
+
+    @RequestMapping(value = "/orderQueryName/auth")
+    @ManagerAuth
+    public R queryName(String condition) {
+        EntityWrapper<Order> wrapper = new EntityWrapper<>();
+        wrapper.like("name", condition);
+        Long id = getRole().getId();
+        if (id.equals(1L)) {
+            wrapper.eq("host_id", 1);
+        } else if (id.equals(2L)) {
+            wrapper.eq("dept_id", getDeptId());
+        } else {
+            wrapper.eq("user_id", getUserId());
+        }
+
+        Page<Order> page = orderService.selectPage(new Page<>(0, 10), wrapper);
+        List<Map<String, Object>> result = new ArrayList<>();
+        for (Order order : page.getRecords()){
+            Map<String, Object> map = new HashMap<>();
+            map.put("id", order.getId());
+            map.put("value", order.getName());
             result.add(map);
         }
         return R.ok(result);
@@ -139,7 +188,8 @@
                 , getHostId()
                 , role.judgeLeader() ? String.valueOf(user.getDeptId()) : null
                 , user.getId()
-                , condition);
+                , condition
+                , 0);
         List<KeyValueVo> vos = new ArrayList<>();
         page.getRecords().forEach(item -> vos.add(new KeyValueVo(item.getName(), item.getId())));
         return R.ok().add(vos);
@@ -231,6 +281,24 @@
         return R.ok("娣诲姞鎴愬姛");
     }
 
+    @RequestMapping(value = "/order/followers/add/json")
+    @ManagerAuth
+    @Transactional
+    public R cstmrFollowersAddJson(@RequestBody() Map map) {
+        long cstmrId = Long.valueOf(String.valueOf(map.get("orderId")));
+        long followerIds = Long.valueOf(String.valueOf(map.get("followerIds")));
+        if (Cools.isEmpty(cstmrId, followerIds)) {
+            return R.parse(BaseRes.PARAM);
+        }
+        OrderFoll orderFoll = new OrderFoll();
+        orderFoll.setOrderId(cstmrId);
+        orderFoll.setUserId(followerIds);
+        if (!orderFollService.insert(orderFoll)) {
+            throw new CoolException("娣诲姞澶辫触锛岃鑱旂郴绠$悊鍛�");
+        }
+        return R.ok("娣诲姞鎴愬姛");
+    }
+
     @RequestMapping(value = "/order/followers/remove/auth")
     @ManagerAuth
     public R orderFollowersRemove(@RequestParam("orderId") Long orderId,

--
Gitblit v1.9.1