From 08d010dbfd161f2b8d015972ca14d32548d2f9b9 Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期四, 23 十一月 2023 08:09:41 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/crm/manager/controller/BusinessTripController.java |   34 +++++++++++++++++++++++++++-------
 1 files changed, 27 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/zy/crm/manager/controller/BusinessTripController.java b/src/main/java/com/zy/crm/manager/controller/BusinessTripController.java
index 5ec6e3d..fb2281d 100644
--- a/src/main/java/com/zy/crm/manager/controller/BusinessTripController.java
+++ b/src/main/java/com/zy/crm/manager/controller/BusinessTripController.java
@@ -56,7 +56,7 @@
         EntityWrapper<BusinessTrip> wrapper = new EntityWrapper<>();
         excludeTrash(param);
         convert(param, wrapper);
-//        wrapper.or().eq("member_id",getUserId());
+        wrapper.or().eq("member_id",getUserId());
         if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
         return R.ok(businessTripService.selectPage(new Page<>(curr, limit), wrapper));
     }
@@ -92,7 +92,13 @@
             }
         }
         if (!signUserId && !signDeptId){
-            wrapper.eq("user_id", getUserId());
+            if (getRole().getId()==1){
+                wrapper.or().eq("host_id",1);
+            }else if (getRole().getId()==2){
+                wrapper.eq("dept_id",getDeptId());
+            }else {
+                wrapper.eq("user_id", getUserId());
+            }
         }
         if (signHostId){
             wrapper.or().eq("host_id",1);
@@ -100,7 +106,7 @@
     }
 
     @RequestMapping(value = "/businessTrip/add/auth")
-    @ManagerAuth
+    @ManagerAuth(memo = "娣诲姞鍑哄樊鐢宠")
     public R add(BusinessTrip businessTrip) {
         if (Cools.isEmpty(businessTrip)){
             return R.error();
@@ -142,16 +148,23 @@
         businessTrip.setStatus(0);
         businessTrip.setSettle(1);
 
-        User manager = userService.getDeptManager(getHostId(), getUser().getDeptId());        // 鑾峰彇閮ㄩ棬棰嗗
+        User manager = new User();
+        try{
+            manager = userService.getDeptManager(getHostId(), getUser().getDeptId());        // 鑾峰彇閮ㄩ棬棰嗗
+        }catch (Exception e){
+            manager = getUser();
+        }
 
         businessTrip.setSettleMsg(JSON.toJSONString(SettleDto.initBusiness(manager,getUser())));
+
+        businessTrip.setMemberId(manager.getId());
 
         businessTripService.insert(businessTrip);
         return R.ok();
     }
 
 	@RequestMapping(value = "/businessTrip/update/auth")
-	@ManagerAuth
+	@ManagerAuth(memo = "鏇存柊鍑哄樊鐢宠")
     public R update(BusinessTrip businessTrip){
         if (Cools.isEmpty(businessTrip) || null==businessTrip.getId()){
             return R.error();
@@ -189,7 +202,7 @@
     }
 
     @RequestMapping(value = "/businessTrip/delete/auth")
-    @ManagerAuth
+    @ManagerAuth(memo = "鍒犻櫎鍑哄樊鐢宠")
     public R delete(@RequestParam(value="ids[]") Long[] ids){
          for (Long id : ids){
             businessTripService.deleteById(id);
@@ -245,7 +258,12 @@
             case 1:
                 // 鏈儴闂ㄧ粡鐞嗗鏍�
                 User user = userService.selectById(businessTrip.getUserId());
-                User manager = userService.getDeptManager(getHostId(), user.getDeptId());
+                User manager = new User();
+                try{
+                    manager = userService.getDeptManager(getHostId(), getUser().getDeptId());        // 鑾峰彇閮ㄩ棬棰嗗
+                }catch (Exception e){
+                    manager = user;
+                }
                 if (manager.getId().equals(getUserId())) {
 
                     // 淇敼 settle 姝ラ鏁版嵁
@@ -268,8 +286,10 @@
 
                     // 淇敼瑙勫垝鍗曠姸鎬�
                     businessTrip.setSettle(2);  // 鐢宠閫氳繃
+                    businessTrip.setStatus(1);
                     businessTrip.setUpdateId(getUserId());
                     businessTrip.setUpdateTime(now);
+                    businessTrip.setMemberId(businessTrip.getUserId());
                     if (!businessTripService.updateById(businessTrip)) {
                         throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
                     }

--
Gitblit v1.9.1