From ab06f7043e4192556c4d9881b0430bcb6cc75f50 Mon Sep 17 00:00:00 2001 From: whywhyo <1511349576@qq.com> Date: 星期三, 03 五月 2023 23:28:02 +0800 Subject: [PATCH] 完成家根网 --- zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java | 72 +++++++++++++++++++++++++++++++++++- 1 files changed, 70 insertions(+), 2 deletions(-) diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java index 93b18ec..ca62533 100644 --- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java +++ b/zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java @@ -250,6 +250,7 @@ } + private void checkAuthorization(String familyId, String destinationFamilyId,boolean flag) { String text=null; if(flag){ @@ -283,8 +284,6 @@ return familyId; } - - private String getFinalStr(String destinationFamilyId, List<String> authorityList) { String authorityListStr = authorityList.stream().collect(Collectors.joining(" ", "{", "}")); String finalStr= destinationFamilyId +authorityListStr; //3{2007 1988 1004} @@ -292,4 +291,73 @@ } + /** + * 鑾峰彇瀹舵牴缃� + * @return + */ + @Override + public AjaxResult listWithTree() { + + List<ZInfoUser> allPeopleList = list(); + List<ZInfoUser> result = null; + try { + result = allPeopleList.stream().filter(people -> people.getUserId()!=1&&(people.getFatherId() == 0||people.getMomId()==0)) + .map(people -> { + people.setChildList(fillChildren(people, allPeopleList)); + return people; + }).collect(Collectors.toList()); + } catch (NullPointerException e) { + throw new RuntimeException("鎮ㄥ湪鍔犲叆鎴愬憳鐨勬椂鍊欐病鏈夋寚瀹氳鎴愬憳鐨勭埗浜叉垨鑰呮瘝浜�"); + } + return AjaxResult.success(result); + + } + + /** + * 涓轰簡瀹舵牴缃戙�佹柊澧炴垨鑰呬慨鏀圭埗瀛愬叧绯� + * @param fatherId + * @param motherId + * @return + */ + @Override + public AjaxResult addParent(Long fatherId, Long motherId) { + SysUser user = SecurityUtils.getLoginUser().getUser(); + Long userId = user.getUserId(); + LambdaQueryWrapper<ZInfoUser> zInfoUserLambdaQueryWrapper = new LambdaQueryWrapper<>(); + zInfoUserLambdaQueryWrapper.eq(ZInfoUser::getUserId,userId); + ZInfoUser zInfoUser = getOne(zInfoUserLambdaQueryWrapper); + + zInfoUser.setFatherId(fatherId); + zInfoUser.setMomId(motherId); + + updateById(zInfoUser); + return AjaxResult.success(); + } + + @Override + public AjaxResult listAllExceptAdmin() { + List<ZInfoUser> collect = list().stream().filter(zInfoUser -> zInfoUser.getUserId() != 1).collect(Collectors.toList()); + return AjaxResult.success(collect); + + } + + /** + * 閫掑綊绠楁硶 + * @param people + * @param allPeopleList + * @return + */ + private List<ZInfoUser> fillChildren(ZInfoUser people, List<ZInfoUser> allPeopleList) { + return allPeopleList.stream().filter( + one -> one.getFatherId() == people.getUserId() || one.getMomId() == people.getUserId() + ).map( + one -> { + one.setChildList(fillChildren(one, allPeopleList)); + return one; + } + ).collect(Collectors.toList()); + + } + + } -- Gitblit v1.9.1