From d1abd1ef9c4b33d4c0fe9c15a43996b2f9f67048 Mon Sep 17 00:00:00 2001
From: whywhyo <1511349576@qq.com>
Date: 星期三, 19 七月 2023 20:38:35 +0800
Subject: [PATCH] 4577

---
 zhang-content/src/main/java/com/ruoyi/service/impl/ZAuthorityServiceImpl.java |   71 +++++++++++++++++++++++++++++++++++
 1 files changed, 71 insertions(+), 0 deletions(-)

diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZAuthorityServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZAuthorityServiceImpl.java
index 4fe8289..9feb3d5 100644
--- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZAuthorityServiceImpl.java
+++ b/zhang-content/src/main/java/com/ruoyi/service/impl/ZAuthorityServiceImpl.java
@@ -5,11 +5,18 @@
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.domain.ZAuthority;
+import com.ruoyi.domain.ZfCode;
+import com.ruoyi.domain.ZfFamily;
+import com.ruoyi.domain.dto.AuthorityDto;
 import com.ruoyi.mapper.ZAuthorityMapper;
 import com.ruoyi.service.ZAuthorityService;
+import com.ruoyi.service.ZfCodeService;
+import com.ruoyi.service.ZfFamilyService;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * @Author Jinquan_Ou
@@ -19,6 +26,13 @@
  **/
 @Service
 public class ZAuthorityServiceImpl extends ServiceImpl<ZAuthorityMapper, ZAuthority> implements ZAuthorityService {
+
+    @Resource
+    private ZfFamilyService zfFamilyService;
+
+    @Resource
+    private ZfCodeService zfCodeService;
+
     /**
      * 鏌ヨ褰撳墠鐢ㄦ埛鐨勬潈闄�
      */
@@ -32,4 +46,61 @@
 
         return list(lqw);
     }
+
+    @Override
+    public AuthorityDto getByCondition(AuthorityDto authorityDto) {
+        SysUser user = SecurityUtils.getLoginUser().getUser();
+        Long userId = user.getUserId();
+
+        String familyName = authorityDto.getFamilyName();
+        String modelName = authorityDto.getModelName();
+
+        //鏍规嵁瀹跺涵鐨勫悕瀛楁煡鍑哄搴殑id
+        Long familyId = zfFamilyService.getByName(familyName).getId();
+
+        //鏍规嵁妯″潡鐨勫悕瀛楁煡鍑哄搴旂殑鏉冮檺鐮�
+        List<ZfCode> zfCodeList = zfCodeService.likeGetByName(modelName);
+        List<Long> allCodeList = zfCodeList.stream().map(ZfCode::getCode).collect(Collectors.toList());//鏉冮檺鐮佹暟缁�
+
+
+        //鎵惧埌瀵瑰簲瀹跺涵瀵瑰簲妯″潡鐨勬潈闄愭暟缁�
+        LambdaQueryWrapper<ZAuthority> lqw = new LambdaQueryWrapper<>();
+        lqw.eq(ZAuthority::getFid,familyId)
+                .eq(ZAuthority::getUid,userId)
+                .in(ZAuthority::getAuthority,allCodeList);
+        List<ZAuthority> authorityList = list(lqw);
+
+        List<Long> codeList = authorityList.stream().map(ZAuthority::getAuthority).collect(Collectors.toList());//鐪熸鎷ユ湁鏉冮檺鐨勬潈闄愮爜鏁扮粍
+        List<String> nameList = zfCodeService.getNameByCode(codeList);
+
+        AuthorityDto resultData = new AuthorityDto();
+        nameList.forEach(name ->{
+            if(name.contains("鏌ョ湅")){
+                resultData.setSearch(1);
+            }else if(name.contains("鍒犻櫎")){
+                resultData.setDelete(1);
+            }else if(name.contains("娣诲姞")){
+                resultData.setInsert(1);
+            }else if(name.contains("淇敼")){
+                resultData.setUpdate(1);
+            }
+        });
+
+        resultData.setModelName(modelName);
+        resultData.setFamilyName(familyName);
+
+        return resultData;
+
+
+
+    }
+
+    @Override
+    public List<String> getAuthorityFamilyName() {
+        List<ZAuthority> authorityList = getAuthority();
+        List<Long> familyIds = authorityList.stream().map(ZAuthority::getFid).distinct().collect(Collectors.toList());
+        List<ZfFamily> familyList = zfFamilyService.listByIds(familyIds);
+        return familyList.stream().map(ZfFamily::getName).distinct().collect(Collectors.toList());
+    }
+
 }

--
Gitblit v1.9.1