From 867caeae0bd2353c6cc9e79d7504efff303587c9 Mon Sep 17 00:00:00 2001
From: jiaosong <jiaosong6760@dingtalk.com>
Date: 星期二, 24 十月 2023 17:22:50 +0800
Subject: [PATCH] # 财务管理 修改

---
 server/services/src/main/resources/mappers/SystemUserMapper.xml                             |    2 +-
 server/services/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java |    4 ++--
 server/services/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java             |    7 ++++++-
 server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java   |    7 +++++--
 server/platform/src/main/java/com/doumee/config/shiro/ShiroRealm.java                       |    4 ++++
 server/services/src/main/java/com/doumee/service/business/impl/PricingParamServiceImpl.java |    4 ++--
 6 files changed, 20 insertions(+), 8 deletions(-)

diff --git a/server/platform/src/main/java/com/doumee/config/shiro/ShiroRealm.java b/server/platform/src/main/java/com/doumee/config/shiro/ShiroRealm.java
index b824008..4faf509 100644
--- a/server/platform/src/main/java/com/doumee/config/shiro/ShiroRealm.java
+++ b/server/platform/src/main/java/com/doumee/config/shiro/ShiroRealm.java
@@ -26,6 +26,7 @@
 
 import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * 鑷畾涔塕ealm锛屽鐞嗚璇佸拰鏉冮檺
@@ -82,6 +83,9 @@
         if(user == null){
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璐﹀彿鎴栧瘑鐮佷笉姝g‘锛�");
         }
+        if(Objects.equals(user.getStatus(),Constants.ONE)){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛宸茶绂佺敤锛岃鑱旂郴绠$悊鍛�");
+        }
         // 鑾峰彇鐧诲綍鐢ㄦ埛淇℃伅
         List<SystemRole> roles = systemRoleService.findByUserId(user.getId());
         List<SystemPermission> permissions = systemPermissionService.findByUserId(user.getId());
diff --git a/server/services/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java b/server/services/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java
index a3f1165..48b89f5 100644
--- a/server/services/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java
+++ b/server/services/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java
@@ -20,6 +20,7 @@
 import com.doumee.service.system.SystemPositionUserService;
 import com.doumee.service.system.SystemUserRoleService;
 import com.doumee.service.system.SystemUserService;
+import com.google.common.base.Objects;
 import org.apache.commons.lang3.RandomStringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.shiro.SecurityUtils;
@@ -117,7 +118,7 @@
         queryUserDto.setUsername(systemUser.getMobile());
         SystemUser user = systemUserService.findOne(queryUserDto);
         if (user != null) {
-            throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鐢ㄦ埛鍚嶅凡瀛樺湪");
+            throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鎵嬫満鍙风爜宸插瓨鍦�");
         }
          // 楠岃瘉宸ュ彿
         if (StringUtils.isNotBlank(systemUser.getEmpNo())) {
@@ -165,6 +166,7 @@
     public void updateById(CreateSystemUserDTO systemUser) {
         // 楠岃瘉鐢ㄦ埛鍚�
         SystemUser queryUserDto = new SystemUser();
+        queryUserDto.setId(systemUser.getId());
         queryUserDto.setUsername(systemUser.getUsername());
         queryUserDto.setDeleted(Constants.ZERO);
         SystemUser user = systemUserService.findOne(queryUserDto);
@@ -182,6 +184,9 @@
                 throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "宸ュ彿宸插瓨鍦�");
             }
         }
+        if ("admin".equals(user.getUsername()) && Objects.equal(systemUser.getStatus(),1)){
+            throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "瓒呯骇绠$悊鍛樿处鍙蜂笉鍏佽绂佺敤");
+        }
         // 淇敼鐢ㄦ埛
         systemUserService.updateById(systemUser);
         // 璁剧疆閮ㄩ棬
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
index 2a55636..1b492b7 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
@@ -394,6 +394,8 @@
     @Transactional(rollbackFor = {Exception.class,BusinessException.class})
     @Override
     public void closeGoodsorder( Goodsorder goodsorder ,int type ) {
+
+        LoginUserInfo principal = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
         List<MemberRides> memberRides = getMemberRidesForClose(goodsorder.getId());
         //榛樿缁撶畻涓烘娂閲戦噾棰�
         BigDecimal closeMoney = new BigDecimal(0.00);
@@ -441,6 +443,7 @@
             refundDTO.setTotalAmount(goodsorder.getMoney());
             refundDTO.setMemberId(goodsorder.getMemberId());
             refundDTO.setReason(Constants.REFUND_TYPE.get(type).getName());
+            refundDTO.setCreator(principal.getId());
             refundDTO.setType(type);
             Refund refund = wxMiniUtilService.wxRefund(refundDTO);
             update.setCloseId(refund.getId());
@@ -529,7 +532,7 @@
         BigDecimal refundMoney = total == null?new BigDecimal(0):Constants.formatDecimalNum(total.getMoney());
         //鍙��鍓╀綑 鍗曚綅鍏�
         BigDecimal canBalance =Constants.translateMoney(Constants.formatDecimalNum(goodsorder.getMoney()).subtract(refundMoney));
-        if(canBalance.compareTo(money) > Constants.ZERO){
+        if(canBalance.compareTo(money) >= Constants.ZERO){
             RefundDTO refundDTO = new RefundDTO();
             refundDTO.setOrderId(orderId);
             refundDTO.setCanBalance(canBalance);
@@ -565,7 +568,7 @@
         BigDecimal reduce =  total!=null?Constants.formatDecimalNum(total.getMoney()):new BigDecimal(0);
         goodsorderCanBanlanceDTO.setHasRefundMoney(Constants.translateMoney(reduce));
 
-        BigDecimal subtract = Constants.translateMoney(goodsorder.getMoney()).subtract(goodsorderCanBanlanceDTO.getCloseMoney()).subtract(goodsorderCanBanlanceDTO.getHasRefundMoney());
+        BigDecimal subtract = Constants.translateMoney(goodsorder.getMoney()).subtract(goodsorderCanBanlanceDTO.getHasRefundMoney());
         goodsorderCanBanlanceDTO.setCanBanlanceMoney(subtract.compareTo(new BigDecimal("0")) > 0 ? subtract : new BigDecimal("0"));
         return goodsorderCanBanlanceDTO;
     }
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/PricingParamServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/PricingParamServiceImpl.java
index 53664f0..d7d1f1f 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/PricingParamServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/PricingParamServiceImpl.java
@@ -118,9 +118,9 @@
                 throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"璇ュ畾浠锋柟妗堜笅娌℃湁閰嶇疆浠锋牸");
             }
             List<String> collect = pricingDetails.stream().map(s -> s.getBikeTypeId()).collect(Collectors.toList());
-            boolean b = baseParams.stream().map(s -> s.getId()).anyMatch(s -> collect.contains(s));
+            boolean b = baseParams.stream().map(s -> s.getId()).allMatch(s -> collect.contains(s));
 
-            if (b){
+            if (!b){
                 throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"璇ュ畾浠锋柟妗堜笅娌℃湁閰嶇疆瀹屾暣");
             }
             PricingParam pricingParam1 = new PricingParam();
diff --git a/server/services/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java b/server/services/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java
index 54931bf..53a5c43 100644
--- a/server/services/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java
@@ -142,13 +142,13 @@
             String jasonStr = MiniProgrammeDTO.toUnderlineJSONString(miniProgrammeDTO);
             JSONObject parse = (JSONObject) JSONObject.parse(jasonStr);
             parse.entrySet().forEach(s->{
-                if (StringUtils.isNotBlank((String)s.getValue())){
+//                if (StringUtils.isNotBlank((String)s.getValue())){
                     UpdateWrapper<SystemDictData> wrapper = new UpdateWrapper<>();
                     wrapper.lambda()
                             .eq(SystemDictData::getLabel,s.getKey().toUpperCase())
                             .set(SystemDictData::getCode,s.getValue());
                     systemDictDataMapper.update(null,wrapper);
-                }
+//                }
             });
         } catch (JsonProcessingException e) {
             throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀛楀吀鍊艰В鏋愭湁璇�");
diff --git a/server/services/src/main/resources/mappers/SystemUserMapper.xml b/server/services/src/main/resources/mappers/SystemUserMapper.xml
index 4e3503d..f8b1665 100644
--- a/server/services/src/main/resources/mappers/SystemUserMapper.xml
+++ b/server/services/src/main/resources/mappers/SystemUserMapper.xml
@@ -63,7 +63,7 @@
     select
     distinct
     usr.id, usr.birthday, usr.email, usr.emp_no, usr.mobile, usr.avatar, usr.username, usr.realname, usr.sex, usr.fixed, usr.create_time, usr.update_time,
-    usr.nickname,
+    usr.nickname,usr.status,
     create_user.id create_user_id, create_user.username create_user_name,
     update_user.id updete_user_id, update_user.username update_user_name
     from "system_user" usr

--
Gitblit v1.9.3