From 8ce9378a4b062fbaace1661a9af9e17b67424f9d Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期一, 28 八月 2023 16:51:08 +0800
Subject: [PATCH] #出差审批完善

---
 src/main/java/com/zy/crm/manager/controller/ReimburseOnlineController.java |   55 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 50 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/zy/crm/manager/controller/ReimburseOnlineController.java b/src/main/java/com/zy/crm/manager/controller/ReimburseOnlineController.java
index 336ced3..c2cc912 100644
--- a/src/main/java/com/zy/crm/manager/controller/ReimburseOnlineController.java
+++ b/src/main/java/com/zy/crm/manager/controller/ReimburseOnlineController.java
@@ -98,8 +98,8 @@
         excludeTrash(param);
         convert(param, wrapper);
         allLike(ReimburseOnline.class, param.keySet(), wrapper, condition);
-        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
         wrapper.or().eq("member_id",getUserId());
+        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
         return R.ok(reimburseOnlineService.selectPage(new Page<>(curr, limit), wrapper));
     }
 
@@ -141,7 +141,7 @@
         }
     }
     @RequestMapping(value = "/reimburseOnline/from/add/auth")
-    @ManagerAuth(memo = "鎶ラ攢")
+    @ManagerAuth(memo = "娣诲姞鎶ラ攢鍗�")
     @Transactional
     public R formAdd(@RequestBody ReimburseOnlineDomainParam param){
         long planId = 0;
@@ -176,7 +176,7 @@
         reimburseOnline.setSettleMsg(JSON.toJSONString(SettleDto.initPriQuote(reimburseOnline, manager,president3,president4,president5,president6,getUser())));
         Map<String, Object> map = new HashMap<>();
         map.put("title","闈為」鐩瀷鎶ラ攢");
-        map.put("reimburseId",param.getReimburseId());
+        map.put("reimburseId",reimburseOnline.getPlanId$());
         map.put("docType",param.getDocType());
         map.put("orderNo",param.getOrderNo());
         map.put("templateName",param.getTemplateName());
@@ -196,16 +196,61 @@
     }
 
     @RequestMapping(value = "/reimburseOnline/from/modify/auth")
+    @ManagerAuth(memo = "淇敼鎶ラ攢鍗�")
     @Transactional
     public R formModify(@RequestBody ReimburseOnlineDomainParam param){
-        System.out.println(param);
+
+        long planId = 0;
+        if (!param.getTemplateName().equals("闈為」鐩瀷鎶ラ攢")){
+            if (Cools.isEmpty(param.getOrderNo())){
+                return R.error("淇敼澶辫触锛�"+param.getTemplateName()+"闇�瑕佸叧鑱旈」鐩彿");
+            }
+            String[] split = param.getOrderNo().split("---");
+            planId = Long.parseLong(split[1]);
+        }
+        Date now = new Date();
+        ReimburseOnline reimburseOnline = reimburseOnlineService.selectById(param.getReimburseId());
+
+        if (!reimburseOnline.getSettle().equals(0)){
+            return R.error("淇敼澶辫触锛佹彁浜や箣鍚庣姝慨鏀癸紒");
+        }
+        if (!reimburseOnline.getUserId().equals(getUserId())){
+            return R.error("闈炲垱寤轰汉鍛樼姝慨鏀癸紒");
+        }
+
+
+        reimburseOnline.setCheckData(param.getCheckData());
+        reimburseOnline.setTemplateName(param.getTemplateName());
+        reimburseOnline.setItemId(planId);
+        reimburseOnline.setUpdateTime(new Date());
+
+        Map<String, Object> map = new HashMap<>();
+        map.put("title",reimburseOnline.getPlanId$());
+        map.put("reimburseId",param.getReimburseId());
+        map.put("docType",param.getDocType());
+        map.put("orderNo",param.getOrderNo());
+        map.put("templateName",param.getTemplateName());
+        map.put("checkData",param.getCheckData());
+        reimburseOnline.setForm(JSON.toJSONString(map));
+
+        if (!reimburseOnlineService.updateById(reimburseOnline)){
+            return R.error("鏇存柊鎶ラ攢涓绘。澶辫触");
+        }
+
+        reimburseOnlineDetlService.delete(new EntityWrapper<ReimburseOnlineDetl>().eq("order_id",reimburseOnline.getId()));
+
+        for (ReimburseOnlineDetl reimburseOnlineDetl:param.getReimburseOnlineDetls()){
+            reimburseOnlineDetl.setOrderId(reimburseOnline.getId());
+            reimburseOnlineDetlService.insert(reimburseOnlineDetl);
+        }
+
         return R.ok();
     }
 
     @RequestMapping(value = "/reimburseOnline/detl/all/auth")
     @Transactional
     public R head(@RequestParam Integer reimburseId){
-        List<ReimburseOnlineDetl> reimburseOnlineDetls = reimburseOnlineDetlService.selectList(new EntityWrapper<ReimburseOnlineDetl>().eq("reimburse_id", reimburseId));
+        List<ReimburseOnlineDetl> reimburseOnlineDetls = reimburseOnlineDetlService.selectList(new EntityWrapper<ReimburseOnlineDetl>().eq("order_id", reimburseId));
         return R.ok().add(reimburseOnlineDetls);
     }
 

--
Gitblit v1.9.1