xda há 3 anos atrás
pai
commit
d970fcd620

+ 1 - 1
pom.xml

@@ -159,7 +159,7 @@
     </dependencyManagement>
 
     <build>
-        <finalName>winhc-receivables-service</finalName>
+        <finalName>repal-service</finalName>
         <plugins>
             <plugin>
                 <groupId>org.springframework.boot</groupId>

+ 3 - 1
src/main/java/com/winhc/repal/annotation/RolePermission.java

@@ -1,5 +1,7 @@
 package com.winhc.repal.annotation;
 
+import com.winhc.repal.enums.PermissionEnum;
+
 import java.lang.annotation.*;
 
 /**
@@ -20,6 +22,6 @@ public @interface RolePermission {
     /**
      * 权限code
      */
-    String permission();
+    PermissionEnum permission();
 
 }

+ 1 - 1
src/main/java/com/winhc/repal/aspect/ControllerAspect.java

@@ -97,7 +97,7 @@ public class ControllerAspect {
                         throw new CommonException(CodeMsg.FAILED, "没有相关权限");
                     }
                 } else {
-                    if (!repalRolePermissionService.checkUserPermission(UserContextUtil.getUser().getUserId(), ((RolePermission)a).permission())) {
+                    if (!repalRolePermissionService.checkUserPermission(UserContextUtil.getUser().getUserId(), ((RolePermission)a).permission().getCode())) {
                         LOGGER.error("user permission error, ======>>>>>>userId:[{}], ======>>>>>>permissionCode:[{}]", UserContextUtil.getUser().getUserId(), ((RolePermission)a).permission());
                         throw new CommonException(CodeMsg.FAILED, "没有相关权限");
                     }

+ 3 - 0
src/main/java/com/winhc/repal/controller/RepalBookController.java

@@ -3,6 +3,8 @@ package com.winhc.repal.controller;
 import com.winhc.common.base.BeanResponse;
 import com.winhc.common.enums.CodeMsg;
 
+import com.winhc.repal.annotation.RolePermission;
+import com.winhc.repal.enums.PermissionEnum;
 import com.winhc.repal.model.dto.DeleteRepalBillDTO;
 import com.winhc.repal.model.dto.DeleteRepalBookDTO;
 import com.winhc.repal.model.vo.RepalBookHomeVO;
@@ -42,6 +44,7 @@ public class RepalBookController {
 
     @ApiOperation("删除账本")
     @RequestMapping(value = "/deleteRepalBook", method = RequestMethod.POST)
+    @RolePermission(permission = PermissionEnum.BOOK_MANAGER)
     public BeanResponse<Boolean> deleteRepalBook(@RequestBody DeleteRepalBookDTO dto) {
         return BeanResponse.success(CodeMsg.SUCCESS, repalBookService.deleteRepalBook(dto));
     }

+ 1 - 1
src/main/java/com/winhc/repal/enums/PermissionEnum.java

@@ -26,7 +26,7 @@ public enum PermissionEnum {
     ADD_SUPPLY("ADD_SUPPLY", "添加供应商"),
     UPDATE_SUPPLY("UPDATE_SUPPLY", "编辑供应商信息"),
     QUERY_ALL_URGE("QUERY_ALL_URGE", "查看全部催款信息"),
-    URGE_BILL("URGE_BILL", "URGE_BILL");
+    URGE_BILL("URGE_BILL", "催款操作");
 
 
 

+ 13 - 1
src/main/java/com/winhc/repal/repository/RepalBookMapper.java

@@ -3,6 +3,7 @@ package com.winhc.repal.repository;
 import com.winhc.repal.entity.RepalBook;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.winhc.repal.model.vo.RepalBookInfoVO;
+import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;
@@ -16,7 +17,18 @@ import java.util.List;
 public interface RepalBookMapper extends BaseMapper<RepalBook> {
 
 
-    List<RepalBookInfoVO> getRepalBookInfoList(Long repalGroupId);
+    /**
+     * 获取账本count和name
+     * @param repalGroupId repalGroupId
+     * @param receivableFlag receivableFlag
+     * @param receiptFlag receiptFlag
+     * @return java.util.List<com.winhc.repal.model.vo.RepalBookInfoVO>
+     * @author xda
+     * @date 2022/5/5 13:56
+     */
+    List<RepalBookInfoVO> getRepalBookInfoList(@Param("repalGroupId") Long repalGroupId,
+                                               @Param("receivableFlag") Boolean receivableFlag,
+                                               @Param("receiptFlag") Boolean receiptFlag);
 
 
 }

+ 16 - 3
src/main/java/com/winhc/repal/service/impl/RepalBookServiceImpl.java

@@ -6,17 +6,22 @@ import com.winhc.common.enums.CodeMsg;
 import com.winhc.common.exception.CommonException;
 import com.winhc.repal.entity.RepalBook;
 import com.winhc.repal.enums.DeletedStatusEnum;
+import com.winhc.repal.enums.PermissionEnum;
 import com.winhc.repal.model.dto.DeleteRepalBookDTO;
 import com.winhc.repal.model.vo.RepalBookHomeVO;
 import com.winhc.repal.model.vo.RepalBookInfoVO;
 import com.winhc.repal.repository.RepalBookMapper;
 import com.winhc.repal.service.RepalBillService;
 import com.winhc.repal.service.RepalBookService;
+import com.winhc.repal.service.RepalRolePermissionService;
+import com.winhc.repal.util.UserContextUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.util.ArrayList;
 import java.util.List;
+import java.util.Set;
 
 /**
  * @description RepalBook 接口实现类
@@ -32,6 +37,9 @@ public class RepalBookServiceImpl extends ServiceImpl<RepalBookMapper, RepalBook
     @Autowired
     private RepalBillService repalBillService;
 
+    @Autowired
+    private RepalRolePermissionService repalRolePermissionService;
+
     @Override
     public RepalBookHomeVO getRepalHomeDetail(Long repalGroupId) {
         RepalBookHomeVO vo = new RepalBookHomeVO();
@@ -41,7 +49,6 @@ public class RepalBookServiceImpl extends ServiceImpl<RepalBookMapper, RepalBook
     @Override
     @Transactional(rollbackFor = Exception.class)
     public Boolean deleteRepalBook(DeleteRepalBookDTO dto) {
-        // todo 权限校验 操作日志
         int count = this.count(Wrappers.lambdaQuery(RepalBook.class)
                 .eq(RepalBook::getRepalGroupId, dto.getRepalGroupId())
                 .eq(RepalBook::getDeleted, DeletedStatusEnum.NORMAL.getCode()));
@@ -60,7 +67,13 @@ public class RepalBookServiceImpl extends ServiceImpl<RepalBookMapper, RepalBook
 
     @Override
     public List<RepalBookInfoVO> getRepalBookInfoList(Long repalBookGroupId) {
-        // 管理员 or 普通权限 todo
-        return repalBookMapper.getRepalBookInfoList(repalBookGroupId);
+        Set<String> codeSet = repalRolePermissionService.getUserPermissionCodeSet(UserContextUtil.getUser().getUserId());
+        boolean receivableFlag = codeSet.contains(PermissionEnum.QUERY_ALL_RECEIVABLE.getCode());
+        boolean receiptFlag = codeSet.contains(PermissionEnum.QUERY_ALL_RECEIPT.getCode());
+        if (receivableFlag && receiptFlag) {
+            // 查看全部
+            //repalBookMapper.getRepalBookInfoList(repalBookGroupId);
+        }
+        return new ArrayList<>();
     }
 }

+ 15 - 3
src/main/resources/mapper/RepalBookMapper.xml

@@ -2,13 +2,25 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.winhc.repal.repository.RepalBookMapper">
 
-    <select id="getRepalBookInfoList" parameterType="java.lang.Long" resultType="com.winhc.repal.model.vo.RepalBookInfoVO">
+    <select id="getRepalBookInfoList" resultType="com.winhc.repal.model.vo.RepalBookInfoVO">
         SELECT tmp.repalBookId, tmp.repalBookName, SUM(tmp.repalBillId) AS repalBillCount FROM
         (SELECT repalBook.ID AS repalBookId, repalBook.REPAL_BOOK_NAME AS repalBookName, repalBill.ID AS repalBillId FROM REPAL_BILL AS repalBill
         LEFT JOIN REPAL_RESPONSIBLE_PERSON AS rPerson ON repalBill.ID = rPerson.REPAL_BILL_ID
         LEFT JOIN REPAL_BOOK AS repalBook ON repalBill.REPAL_GROUP_ID = repalBook.ID
-        WHERE repalBill.REPAL_GROUP_ID = #{repalGroupId} AND repalBill.DELETED = 0)
-        AS tmp GROUP BY tmp.repalBookId, tmp.repalBookName
+        WHERE repalBill.REPAL_GROUP_ID = #{repalGroupId} AND
+            <if test="!receivableFlag or !receiptFlag">
+                <if test="!receivableFlag">
+                    (repalBill.REPAL_BILL_TYPE = )
+                </if>
+
+
+
+
+            </if>
+              repalBill.DELETED = 0)
+        AS tmp
+        GROUP BY tmp.repalBookId, tmp.repalBookName
+        ORDER BY tmp.repalBookId DESC
     </select>