From 86d65e6f837ff14b090ffc3312c013987b6f67d8 Mon Sep 17 00:00:00 2001
From: zqy <2522236926@qq.com>
Date: 星期二, 14 十月 2025 21:59:13 +0800
Subject: [PATCH] 荣誉 新增两个字段的查询
---
zhang-content/src/main/java/com/ruoyi/service/impl/ZAuthorityServiceImpl.java | 182 +++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 173 insertions(+), 9 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 50cf44e..e28ff97 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,12 +5,12 @@
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.SecurityUtils;
-import com.ruoyi.domain.ZAuthority;
-import com.ruoyi.domain.ZInfoUser;
-import com.ruoyi.domain.ZfCode;
-import com.ruoyi.domain.ZfFamily;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.domain.*;
import com.ruoyi.domain.dto.AuthorityDto;
import com.ruoyi.domain.dto.AuthorityDto2;
+import com.ruoyi.domain.dto.AuthorityDtoWithName;
+import com.ruoyi.domain.dto.EmpowerDto;
import com.ruoyi.mapper.ZAuthorityMapper;
import com.ruoyi.service.ZAuthorityService;
import com.ruoyi.service.ZInfoUserService;
@@ -20,7 +20,7 @@
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
-import java.util.List;
+import java.util.*;
import java.util.stream.Collectors;
/**
@@ -51,9 +51,9 @@
public List<ZAuthority> getAuthority() {
SysUser user = SecurityUtils.getLoginUser().getUser();
Long userId = user.getUserId();
-
+ ZInfoUser zInfoUser = zInfoUserService.getInfoBysysId(userId);
LambdaQueryWrapper<ZAuthority> lqw = new LambdaQueryWrapper<>();
- lqw.eq(ZAuthority::getUid,userId);
+ lqw.eq(ZAuthority::getUid,zInfoUser.getUserId());
return list(lqw);
}
@@ -62,12 +62,13 @@
public AuthorityDto getByCondition(AuthorityDto authorityDto) {
SysUser user = SecurityUtils.getLoginUser().getUser();
Long userId = user.getUserId();
-
+ Integer clanId = user.getClanId();
String familyName = authorityDto.getFamilyName();
String modelName = authorityDto.getModelName();
//鏍规嵁瀹跺涵鐨勫悕瀛楁煡鍑哄搴殑id
- Long familyId = zfFamilyService.getByName(familyName).getId();
+ // Integer clanId = 0;
+ Long familyId = zfFamilyService.getByName(familyName, clanId).getId();
//鏍规嵁妯″潡鐨勫悕瀛楁煡鍑哄搴旂殑鏉冮檺鐮�
List<ZfCode> zfCodeList = zfCodeService.likeGetByName(modelName);
@@ -196,4 +197,167 @@
}
+ @Override
+ public AjaxResult getOtherAuthority(AuthorityDto authorityDto) {
+
+ SysUser user = SecurityUtils.getLoginUser().getUser();
+ Long userId = user.getUserId();
+ ZInfoUser myself = zInfoUserService.getById(userId);
+
+ //鏌ョ湅褰撳墠鐢ㄦ埛鏄笉鏄鐞嗗憳
+ if(myself.getRoleId()!=1 && myself.getRoleId()!=2){
+ throw new RuntimeException("浣犱笉鏄搴鐞嗗憳锛屾病鏈夋潈闄愭搷浣�");
+ }
+
+ //鍙兘绠$悊鑷繁瀹跺涵鐨勬潈闄�
+ Long fid = myself.getFamilyId();
+
+
+ //鏍规嵁瀹跺涵鐨勫悕瀛楁煡鍑哄搴殑id
+// ZfFamily family = zfFamilyService.getByName(authorityDto.getFamilyName());
+// Long fid = family.getId();
+
+ //寰楀埌瑕佹悳绱㈢殑妯″潡鍚嶅瓧
+ String modelName = authorityDto.getModelName();
+
+ //鏍规嵁妯″潡鐨勫悕瀛楁煡鍑哄搴旂殑鏉冮檺鐮�
+ 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,fid).in(ZAuthority::getAuthority,allCodeList);
+ List<ZAuthority> resultData = zAuthorityService.list(lqw);
+
+
+ //鎷垮埌鏈夊叧鐢ㄦ埛鐨刬d鍜屽搴旂殑鏉冮檺鐮佹暟缁�
+ HashMap<Long, ArrayList<Long>> userAuthMap = new HashMap<>();
+ resultData.forEach(authority->{
+ if(userAuthMap.get(authority.getUid()) == null){
+ ArrayList<Long> codeList = new ArrayList<>();
+ codeList.add(authority.getAuthority());
+ userAuthMap.put(authority.getUid(),codeList);
+ }else {
+ userAuthMap.get(authority.getUid()).add(authority.getAuthority());
+ }
+ });
+
+
+ List<AuthorityDtoWithName> returnData = new ArrayList<>();
+
+ for (Long uid : userAuthMap.keySet()) {
+ ArrayList<Long> authCodeList = userAuthMap.get(uid);
+ List<String> authNameList = zfCodeService.getNameByCode(authCodeList);
+
+ AuthorityDto oneAuth = new AuthorityDto();
+ authNameList.forEach(name ->{
+ if(name.contains("鏌ョ湅")){
+ oneAuth.setSearch(1);
+ }else if(name.contains("鍒犻櫎")){
+ oneAuth.setDelete(1);
+ }else if(name.contains("娣诲姞")){
+ oneAuth.setInsert(1);
+ }else if(name.contains("淇敼")){
+ oneAuth.setUpdate(1);
+ }
+ });
+ oneAuth.setModelName(modelName);
+ oneAuth.setFamilyName(zfFamilyService.getById(fid).getName());
+
+ AuthorityDtoWithName authorityDtoWithName = new AuthorityDtoWithName();
+ authorityDtoWithName.setName(zInfoUserService.getInfoById(uid).getNickName());
+ authorityDtoWithName.setUserId(uid);
+ authorityDtoWithName.setAuthorityInfo(oneAuth);
+ returnData.add(authorityDtoWithName);
+ }
+
+ return AjaxResult.success(returnData);
+
+ }
+ private LambdaQueryWrapper<ZAuthority> uniqueCondition(ZAuthority zAuthority) {
+ LambdaQueryWrapper<ZAuthority> lqw = new LambdaQueryWrapper<>();
+ lqw.eq(zAuthority.getUid()!=null,ZAuthority::getUid,zAuthority.getUid());
+ lqw.eq(zAuthority.getFid()!=null,ZAuthority::getFid,zAuthority.getFid());
+
+ lqw.eq(zAuthority.getAuthority()!=null,ZAuthority::getAuthority,zAuthority.getAuthority());
+
+ return lqw;
+ }
+ public void addData(ZAuthority za)
+ {
+ //鍒ゆ柇鏄惁閲嶅鎺堟潈
+ LambdaQueryWrapper<ZAuthority> lqw = uniqueCondition(za);
+ List<ZAuthority> list = list(lqw);
+ //
+ if(list.size()>0){
+ throw new RuntimeException("璇峰嬁鏂板閲嶅鏁版嵁");
+ }
+ zAuthorityService.save(za);
+
+ }
+ public AjaxResult saveZa(EmpowerDto zAuthority)
+ {
+ // boolean bl = zAuthorityService.saveOrUpdate(zAuthority);
+ Long [] uids = zAuthority.getUids();
+ Long [] authoritys = zAuthority.getAuthoritys();
+ for(Long uid : uids)
+ for(Long auri: authoritys)
+ {
+ ZAuthority za = new ZAuthority();
+ za.setAuthority(auri);
+ za.setFid(zAuthority.getFid());
+ za.setUid(uid);
+ addData(za);
+ System.out.println(za);
+ }
+ // Long []
+ // if(bl)
+ return AjaxResult.success("鏉冮檺鏂板鎴愬姛!");
+ // else
+ // return AjaxResult.error("鏉冮檺鏂板澶辫触锛�");
+
+ }
+
+ @Override
+ public AjaxResult deleteZa(EmpowerDto empowerDto) {
+ Long [] uids = empowerDto.getUids();
+ Long [] authoritys = empowerDto.getAuthoritys();
+ for(Long uid : uids)
+ for(Long auri: authoritys)
+ {
+
+ LambdaQueryWrapper<ZAuthority> lqw = new LambdaQueryWrapper<>();
+ lqw.eq(ZAuthority::getFid,empowerDto.getFid())
+ .eq(ZAuthority::getAuthority, auri)
+ .eq(ZAuthority::getUid, uid);
+ System.out.println("11111111111111111111"+list(lqw));
+ zAuthorityService.remove(lqw);
+ // addData(za);
+ }
+ return AjaxResult.success("鏉冮檺鏀跺洖鎴愬姛!");
+
+ }
+
+ @Override
+ public AjaxResult listByFidAid(ZAuthority zAuthority) {
+ //鎵惧埌瀵瑰簲瀹跺涵浠ュ強鏉冮檺妯″潡瀵瑰簲鐨勭敤鎴�
+ LambdaQueryWrapper<ZAuthority> lqw = new LambdaQueryWrapper<>();
+ lqw.eq(ZAuthority::getFid,zAuthority.getFid())
+ .eq(ZAuthority::getAuthority, zAuthority.getAuthority());
+
+ List<ZAuthority> authorityList = list(lqw);
+
+ List<Long> allUserListId = authorityList.stream().map(ZAuthority::getUid).collect(Collectors.toList());//鎺堟潈鐢ㄦ埛鏁扮粍鏁扮粍
+
+
+ LambdaQueryWrapper<ZInfoUser> lq = new LambdaQueryWrapper<>();
+ List<ZInfoUser> userInfo = new ArrayList<>();
+ if(allUserListId.size()!=0) {
+ lq.in(ZInfoUser::getUserId, allUserListId);
+
+ userInfo = zInfoUserService.list(lq);
+ }
+ // Map<Long, String> usi = userInfo.stream().collect(Collectors.toMap(ZInfoUser::getUserId,ZInfoUser::getNickName));
+ return AjaxResult.success(userInfo);
+ }
}
--
Gitblit v1.9.1