zqy
5 天以前 b02beccf4567068cb47a3f1181a00039456c872d
zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.domain.AjaxResult;
@@ -10,13 +11,11 @@
import com.ruoyi.common.utils.MapUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.uuid.UUID;
import com.ruoyi.domain.*;
import com.ruoyi.domain.dto.*;
import com.ruoyi.mapper.ZInfoUserMapper;
import com.ruoyi.service.ZInfoUserService;
import com.ruoyi.service.ZfFamilyService;
import com.ruoyi.service.ZfRelationService;
import com.ruoyi.service.ZfRoleService;
import com.ruoyi.service.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -26,7 +25,6 @@
import javax.annotation.Resource;
import java.util.*;
import java.util.stream.Collectors;
/**
 * <p>
 *  服务实现类
@@ -51,6 +49,33 @@
    @Resource
    private ZfRoleService zfRoleService;
    @Resource
    private ZfClanService zfClanService;
    /** 使相同用户名+电话号码相同的用户对应的uaid同步*/
    @Override
    public void setUaidSame(String phone, String username,String uniqueId){
        UpdateWrapper<ZInfoUser> wrapper = new UpdateWrapper<>();
        wrapper.eq(phone!=null,"phone_number", phone)
                .eq(username!=null,"old_name",username)
                .set("uaid",uniqueId );
        this.update(null, wrapper); // 执行更新
    }
    @Override
    public void setSpouseOnly(Long spouse){
        UpdateWrapper<ZInfoUser> wrapper = new UpdateWrapper<>();
        System.out.println("{{{{{{{{{{{{{"+spouse);
        wrapper.eq("spouse_id", spouse)  // 使用字符串字段名
                .set("spouse_id", null);     // 直接设置字段值
        this.update(null, wrapper); // 执行更新
    }
    @Override
    public AjaxResult selectInfoList(ZInfoUser zInfoUser, Integer pageNum, Integer pageSize) {
@@ -84,6 +109,20 @@
    }
    @Override
    public List<ZInfoUser> findByUaidToFaid(String usid) {
        if(usid!=null) {
            ZInfoUser zInfoUser = new ZInfoUser();
            zInfoUser.setUaid(usid);
            LambdaQueryWrapper<ZInfoUser> lqw = buildCondition(zInfoUser);
            List<ZInfoUser> ls =  list(lqw);
          //  System.out.println(ls.size()+":==========sdfs55dfsdf");
            return ls;
        }else {
            return new ArrayList<>();
        }
    }
    @Override
    public List<ZInfoUser> selectByClanId(Integer clanId) {
        ZInfoUser zInfoUser = new ZInfoUser();
        zInfoUser.setClanId(clanId);
@@ -100,22 +139,25 @@
//    }
    @Override
    public AjaxResult findInfoUserNameAClan(String nickName)
    public AjaxResult findUserNameAClan(List<String> nickNames)
    {
        List<ZfShareOther> shareOtherClans = new ArrayList<>();
        for (String nickName:nickNames) {
        ZInfoUser zInfoUser = new ZInfoUser();
        zInfoUser.setNickName(nickName);
        LambdaQueryWrapper<ZInfoUser> lqw = buildCondition(zInfoUser);
        List<ZInfoUser> zInfoUsers = list(lqw);
        List<ShareOtherClan> shareOtherClans = new ArrayList<>();
        for (ZInfoUser zInfoUser1: zInfoUsers) {
            ShareOtherClan shareOtherClan = new ShareOtherClan();
            shareOtherClan.setNickName(zInfoUser1.getNickName());
            ZfShareOther shareOtherClan = new ZfShareOther();
            shareOtherClan.setUserName(zInfoUser1.getNickName());
            shareOtherClan.setUserId(zInfoUser1.getUserId().intValue());
            shareOtherClan.setClanId(zInfoUser1.getClanId());
            shareOtherClan.setClanName(zfClanService.getById(zInfoUser1.getClanId()).getClanName());
            shareOtherClans.add(shareOtherClan);
        }
        }}
        return AjaxResult.success(shareOtherClans);
    }
@@ -170,8 +212,10 @@
        lqw.like(StringUtils.isNotEmpty(zInfoUser.getUnit()), ZInfoUser::getUnit, zInfoUser.getUnit());
        lqw.like(zInfoUser.getSex() != null, ZInfoUser::getSex, zInfoUser.getSex());
        lqw.like(zInfoUser.getMaritalStatus() != null, ZInfoUser::getMaritalStatus, zInfoUser.getMaritalStatus());
        lqw.like(zInfoUser.getBirth() != null, ZInfoUser::getBirth, zInfoUser.getBirth());
        lqw.le(zInfoUser.getBirth() != null, ZInfoUser::getBirth, zInfoUser.getBirth());
        lqw.like(zInfoUser.getClanId() != null, ZInfoUser::getClanId, zInfoUser.getClanId());
        lqw.eq(zInfoUser.getUaid() !=null, ZInfoUser::getUaid, zInfoUser.getUaid());
        return lqw;
    }
@@ -181,6 +225,7 @@
        LambdaQueryWrapper<ZInfoUser> lambdaQueryWrapper = buildCondition(zInfoUser);
        List<ZInfoUser> list = list(lambdaQueryWrapper);
        log.info("返回的数据为:{}", list);
        return list;
    }
@@ -446,8 +491,8 @@
        ZInfoUser zInfoUser = new ZInfoUser();
        BeanUtils.copyProperties(genealogy, zInfoUser);
        LambdaQueryWrapper<ZInfoUser> lqw = new LambdaQueryWrapper<>();
        lqw.eq(zInfoUser.getSex() != null, ZInfoUser::getSex, zInfoUser.getSex());
        lqw.like(StringUtils.isNotEmpty(zInfoUser.getNickName()), ZInfoUser::getNickName, zInfoUser.getNickName());
//        lqw.eq(zInfoUser.getSex() != null, ZInfoUser::getSex, zInfoUser.getSex());
//        lqw.like(StringUtils.isNotEmpty(zInfoUser.getNickName()), ZInfoUser::getNickName, zInfoUser.getNickName());
//        lqw.between(zInfoUser.getBirth() != null, ZInfoUser::getBirth, zInfoUser.getBirth(),zInfoUser.getBirth());
        lqw.eq(zInfoUser.getClanId()!=null, ZInfoUser::getClanId,zInfoUser.getClanId());
        List<ZInfoUser> allPeopleList = list(lqw);
@@ -515,29 +560,26 @@
        userList.clear();
        List<ZInfoUser> treeList = (List<ZInfoUser>) listWithTreeByCondition(100, genealogy).get("data");
        recursionFindUser(treeList);
      //  System.out.println(userList);
       // System.out.println("---------------");
        List<Genealogy> allData = userList.stream().map(
                zInfoUser -> {
                    Genealogy newGenealogy = new Genealogy();
                    BeanUtils.copyProperties(zInfoUser, newGenealogy);
                    if (zInfoUser.getSpouseId() != null) {
                        ZInfoUser spouse = getById(zInfoUser.getSpouseId());
                List<Genealogy> allData = userList.stream().map(
                        zInfoUser -> {
                            Genealogy newGenealogy = new Genealogy();
                            BeanUtils.copyProperties(zInfoUser, newGenealogy);
                        Genealogy spouseInfo = new Genealogy();
                        BeanUtils.copyProperties(spouse,spouseInfo);
                        newGenealogy.setSpouse(spouseInfo);
                        spouseInfo.setIdentity(newGenealogy.getIdentity());
                        spouseInfo.setSpouseName(zInfoUser.getNickName());
                        newGenealogy.setSpouseName(spouse.getNickName());
                    }
                    System.out.println(newGenealogy);
                    return newGenealogy;
                }
                            if (zInfoUser.getSpouseId() != null) {
                                ZInfoUser spouse = getById(zInfoUser.getSpouseId());
                                Genealogy spouseInfo = new Genealogy();
                                BeanUtils.copyProperties(spouse,spouseInfo);
                                newGenealogy.setSpouse(spouseInfo);
                                spouseInfo.setIdentity(newGenealogy.getIdentity());
                                spouseInfo.setSpouseName(zInfoUser.getNickName());
                                newGenealogy.setSpouseName(spouse.getNickName());
                            }
                            System.out.println(newGenealogy);
                            return newGenealogy;
                        }
        ).collect(Collectors.toList());
      //  System.out.println(allData);
     //   System.out.println("999999999988888888888++++++++++++++++++++++");
        List<Genealogy> collect = allData.stream()
                .distinct()
                .filter((data)-> data.getIsMyFamily() == 1)
@@ -545,18 +587,13 @@
                .collect(Collectors.toList());
        List<Genealogy> resultData = new ArrayList<>();
        for (int i = (pageNum - 1) * pageSize; i < pageNum * pageSize + pageSize; i++) {
            if (i >= collect.size()) {
                break;
            }
            resultData.add(collect.get(i));
        }
     //   System.out.println(resultData);
      //  System.out.println("999999999988888888888++++++++++++++++++++++");
//
//
        //对result做一个条件筛选
        Iterator<Genealogy> it = resultData.iterator();
        Iterator<Genealogy> it = collect.iterator();
        while(it.hasNext()){
            Genealogy data = it.next();
@@ -596,10 +633,12 @@
            }
            if(genealogy.getBirth()!=null){
                if(data.getBirth().compareTo(genealogy.getBirth())!=0){
                    it.remove();
                    continue;
                if(data.getBirth()!=null) {
                    if (data.getBirth().compareTo(genealogy.getBirth()) != 0) {
                        it.remove();
                    }
                }
                else it.remove();
            }
        }
@@ -635,10 +674,17 @@
//            }
//
//        }
        for (int i = (pageNum - 1) * pageSize; i < pageNum * pageSize; i++) {
            if (i >= collect.size()) {
                break;
            }
            System.out.println(i+"//////"+collect.get(i));
            resultData.add(collect.get(i));
        }
        HashMap<String, Object> resultMap = new HashMap<>();
        resultMap.put("data", resultData);
        resultMap.put("total", resultData.size());
        resultMap.put("total", collect.size());
        resultMap.put("pageNum", pageNum);
        resultMap.put("pageSize", pageSize);
@@ -705,29 +751,25 @@
    public ZInfoUser getInfoById(Long userId) {
        ZInfoUser user = getInfoBysysId(userId);
        if(user!=null)
        {
            Long familyId = user.getFamilyId();
          //  System.out.println("dddddddddddddddddddd");
            if(user.getRoleId()==null)
                user.setRoleId(3L);
            String roleName = zfRoleService.getById(user.getRoleId()).getName();
            user.setRoleName(roleName);
//            System.out.println("dddddddddddddddddddd");
//            System.out.println(familyId);
//            if(familyId!=null&&familyId!=-1)
//            {
//                String familyName = zfFamilyService.getById(familyId).getName();
//                user.setFamilyName(familyName);
//            }
        }
        else{
            //查询sys_user表
        if(user==null) {
            //利用userId查询
            LambdaQueryWrapper<ZInfoUser> lqw = new LambdaQueryWrapper<>();
            lqw.eq(ZInfoUser::getUserId, userId);
            List<ZInfoUser> list = list(lqw);
            if(list.size()>0)
                user = list.get(0);
            else
                return null;
        }
        Long familyId = user.getFamilyId();
        //  System.out.println("dddddddddddddddddddd");
        if(user.getRoleId()==null)
            user.setRoleId(3L);
        String roleName = zfRoleService.getById(user.getRoleId()).getName();
        user.setRoleName(roleName);
        return user;
    }
@@ -786,6 +828,8 @@
    }
    private void recursionFindUser(List<ZInfoUser> treeList) {
        if (treeList == null || treeList.isEmpty()) {
            return;