101captain
2021-12-23 5a8a90c095280fbd2106869ecd2bad10e01a57a6
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActFourMemberServiceImpl.java
@@ -2,24 +2,40 @@
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.enums.PopulCultureLevelEnum;
import com.panzhihua.common.enums.PopulMarriageEnum;
import com.panzhihua.common.enums.PopulPoliticalOutlookEnum;
import com.panzhihua.common.enums.PopulRelationEnum;
import com.panzhihua.common.model.dtos.property.CommonPage;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.ComActFourMemberVO;
import com.panzhihua.common.model.vos.community.*;
import com.panzhihua.common.model.vos.partybuilding.ComPbMemberVO;
import com.panzhihua.common.model.vos.user.AdministratorsUserVO;
import com.panzhihua.common.model.vos.user.ComHouseMemberVo;
import com.panzhihua.common.model.vos.user.ComMngHouseVo;
import com.panzhihua.common.service.partybuilding.PartyBuildingService;
import com.panzhihua.common.service.user.UserService;
import com.panzhihua.service_community.dao.ComMngBuildingDAO;
import com.panzhihua.common.utlis.AgeUtils;
import com.panzhihua.common.utlis.StringUtils;
import com.panzhihua.service_community.dao.*;
import com.panzhihua.service_community.entity.ComActCommittee;
import com.panzhihua.service_community.entity.ComActFourMember;
import com.panzhihua.service_community.dao.ComActFourMemberDao;
import com.panzhihua.service_community.model.dos.ComMngBuildingDO;
import com.panzhihua.service_community.model.dos.ComMngPopulationDO;
import com.panzhihua.service_community.model.dos.ComMngPopulationHouseUserDO;
import com.panzhihua.service_community.model.dos.ComPbMemberDO;
import com.panzhihua.service_community.service.ComActFourMemberService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
@@ -38,18 +54,44 @@
    private ComMngBuildingDAO comMngBuildingDAO;
    @Resource
    private UserService userService;
    @Resource
    private ComMngPopulationDAO comMngPopulationDAO;
    @Resource
    private ComPbMemberDAO comPbMemberDAO;
    @Resource
    private ComMngPopulationHouseUserDAO comMngPopulationHouseUserDAO;
    @Resource
    private ComMngPopulationHouseDAO comMngPopulationHouseDAO;
    @Override
    public R pageList(CommonPage commonPage) {
        return R.ok(comActFourMemberDao.pageList(new Page(commonPage.getPage(),commonPage.getSize()),commonPage));
        IPage<ComActFourMemberVO> comActFourMemberVOIPage=comActFourMemberDao.pageList(new Page(commonPage.getPage(),commonPage.getSize()),commonPage);
        if(!comActFourMemberVOIPage.getRecords().isEmpty()){
            comActFourMemberVOIPage.getRecords().forEach(comActFourMemberVO -> {
                if(comActFourMemberVO.getJurisdictionContent()!=null){
                    comActFourMemberVO.setJurisdictionContentList(JSON.parseArray(comActFourMemberVO.getJurisdictionContent(),String.class));
                }
            });
        }
        return R.ok(comActFourMemberVOIPage);
    }
    @Override
    public R insert(ComActFourMemberVO comActFourMemberVO) {
        if(comActFourMemberVO!=null&&comActFourMemberVO.getJurisdiction()!=null){
            if(comActFourMemberDao.selectCount(new QueryWrapper<ComActFourMember>().lambda().eq(ComActFourMember::getIdCard,comActFourMemberVO.getIdCard()))>0){
                return R.fail("身份证号重复");
            }
            ComActFourMember comActFourMember=new ComActFourMember();
            List<String> jurisdictionList=comMngBuildingDAO.find(comActFourMemberVO.getJurisdiction());
            List<String> jurisdictionList=new ArrayList<>();
            List<String> jurisdictionList1=comMngBuildingDAO.find(comActFourMemberVO.getJurisdiction());
            List<String> jurisdictionList2=comMngBuildingDAO.findByVillage(comActFourMemberVO.getJurisdiction());
            if(!jurisdictionList1.isEmpty()){
                jurisdictionList.addAll(jurisdictionList1);
            }
            if(!jurisdictionList2.isEmpty()){
                jurisdictionList.addAll(jurisdictionList2);
            }
            if(!jurisdictionList.isEmpty()&&jurisdictionList.size()==jurisdictionList.stream().distinct().collect(Collectors.toList()).size()){
                comActFourMember.setJurisdictionContent(JSON.toJSONString(jurisdictionList));
                AdministratorsUserVO administratorsUserVO=new AdministratorsUserVO();
                BeanUtils.copyProperties(comActFourMemberVO,administratorsUserVO);
                administratorsUserVO.setType(3);
@@ -58,6 +100,7 @@
                    comActFourMemberVO.setUserId(Long.parseLong(r.getData().toString()));
                    comActFourMemberVO.setCreateTime(DateUtil.date());
                    BeanUtils.copyProperties(comActFourMemberVO,comActFourMember);
                    comActFourMember.setJurisdictionContent(JSON.toJSONString(jurisdictionList));
                    this.comActFourMemberDao.insert(comActFourMember);
                    return R.ok();
                }
@@ -154,4 +197,76 @@
    public R get(Integer id) {
        return R.ok(comActFourMemberDao.getById(id));
    }
    @Override
    public R selectByMember(CommonPage commonPage) {
        IPage<ComMngPopulationNoSecretVO> comMngPopulationDOIPage=this.comMngPopulationDAO.query(new Page<ComMngPopulationDO>(commonPage.getPage(),commonPage.getSize()),commonPage);
        if (!comMngPopulationDOIPage.getRecords().isEmpty()) {
            comMngPopulationDOIPage.getRecords().forEach(populDO -> {
                if (StringUtils.isNotEmpty(populDO.getBirthday())) {
                    populDO.setAge(AgeUtils.getAgeFromBirthTimes(populDO.getBirthday()));
                }
            });
        }
        return R.ok(comMngPopulationDOIPage);
    }
    @Override
    public R selectById(Long id) {
        FourMemberDetailVO fourMemberDetailVO=new FourMemberDetailVO();
        ComMngPopulationDO comMngPopulationDO = comMngPopulationDAO.selectById(id);
        if (ObjectUtils.isEmpty(comMngPopulationDO)) {
            return R.fail("用户信息不存在");
        }
        // if(StringUtils.isNotEmpty(comMngPopulationDO.getBirthday())){//计算年龄
        // comMngPopulationDO.setAge(AgeUtils.getAgeFromBirthTimes(comMngPopulationDO.getBirthday()));
        // }
        ComMngPopulationNoSecretVO comMngPopulationVO = new ComMngPopulationNoSecretVO();
        BeanUtils.copyProperties(comMngPopulationDO, comMngPopulationVO);
        // 查询户主关系信息
        // List<ComHouseMemberVo> comMngFamilyInfoVOS =
        // populationDAO.listHouseMermberByUserId(comMngPopulationDO.getHouseId(),comMngPopulationDO.getId());
        // if (!comMngFamilyInfoVOS.isEmpty()) {
        // comMngPopulationVO.setComMngFamilyInfoVOS(comMngFamilyInfoVOS);
        // }
        // 查询户主关系信息
        List<ComHouseMemberVo> comMngFamilyInfoVOS = comMngPopulationDAO.listHouseMermberByPopuId(comMngPopulationDO.getId());
        if (!comMngFamilyInfoVOS.isEmpty()) {
            for (ComHouseMemberVo comHouseMemberVo : comMngFamilyInfoVOS) {
                comHouseMemberVo.setAge(AgeUtils.getAgeFromBirthTimes(comHouseMemberVo.getBirthDay()));
            }
            comMngPopulationVO.setComMngFamilyInfoVOS(comMngFamilyInfoVOS);
        }
        // 设置户主关系
        List<ComMngPopulationHouseUserDO> comMngPopulationHouseUserDOS =
                comMngPopulationHouseUserDAO.selectList((new QueryWrapper<ComMngPopulationHouseUserDO>().lambda()
                        .eq(ComMngPopulationHouseUserDO::getPopulId, id)));
        if (!comMngPopulationHouseUserDOS.isEmpty()) {
            comMngPopulationVO
                    .setRelation(comMngPopulationHouseUserDOS.get(comMngPopulationHouseUserDOS.size() - 1).getRelation());
        }
        // 设置年龄
        if (StringUtils.isNotEmpty(comMngPopulationVO.getBirthday())) {
            comMngPopulationVO.setAge(AgeUtils.getAgeFromBirthTimes(comMngPopulationVO.getBirthday()));
        }
        // 查询当前用户房屋信息
        List<ComMngHouseVo> houseList = comMngPopulationHouseDAO.getPopulHouseListByPopulId(id);
        if (!houseList.isEmpty()) {
            houseList.forEach(house -> {
            });
            comMngPopulationVO.setHouseList(houseList);
        }
        if(comMngPopulationVO!=null&&StringUtils.isNotEmpty(comMngPopulationVO.getCardNoStr())){
            fourMemberDetailVO.setComMngPopulationVO(comMngPopulationVO);
            ComPbMemberVO comPbMemberDO=comPbMemberDAO.selectById(comMngPopulationVO.getCardNoStr());
            if(comPbMemberDO!=null){
                fourMemberDetailVO.setPartyBuildingMemberVO(comPbMemberDO);
            }
        }
        return R.ok(fourMemberDetailVO);
    }
}