| | |
| | | package com.panzhihua.service_community.service.impl; |
| | | |
| | | import cn.hutool.core.util.IdcardUtil; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | |
| | | import com.panzhihua.common.model.helper.AESUtil; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.community.*; |
| | | import com.panzhihua.common.model.vos.community.EldersAuthDetailsVO; |
| | | import com.panzhihua.common.model.vos.community.EldersAuthFeedbackVO; |
| | | import com.panzhihua.common.model.vos.community.EldersAuthVO; |
| | | import com.panzhihua.common.model.vos.elders.ComElderAuthUserAppVO; |
| | | import com.panzhihua.common.model.vos.partybuilding.ComEldersAuthHistoryExcelVO; |
| | | import com.panzhihua.common.model.vos.user.SysUserVO; |
| | | import com.panzhihua.common.utlis.AgeUtils; |
| | | import com.panzhihua.common.utlis.DateUtils; |
| | | import com.panzhihua.common.utlis.IdCard; |
| | | import com.panzhihua.common.utlis.StringUtils; |
| | | import com.panzhihua.service_community.dao.*; |
| | | import com.panzhihua.service_community.model.dos.*; |
| | | import com.panzhihua.service_community.service.EldersAuthService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import javax.annotation.Resource; |
| | | import javax.crypto.BadPaddingException; |
| | | import javax.crypto.IllegalBlockSizeException; |
| | | import javax.crypto.NoSuchPaddingException; |
| | | import java.io.UnsupportedEncodingException; |
| | | import java.security.InvalidKeyException; |
| | | import java.security.NoSuchAlgorithmException; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import cn.hutool.core.util.IdcardUtil; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | |
| | | /** |
| | | * @auther lyq |
| | |
| | | |
| | | /** |
| | | * 新增高龄认证 |
| | | * |
| | | * @param eldersAuthAddDTO |
| | | * @return 新增结果 |
| | | */ |
| | |
| | | |
| | | /** |
| | | * 修改高龄认证 |
| | | * |
| | | * @param eldersAuthEditDTO |
| | | * @return 维护结果 |
| | | */ |
| | |
| | | |
| | | /** |
| | | * 分页查找高龄认证 |
| | | * |
| | | * @param pageEldersAuthDTO |
| | | * @return 维护结果 |
| | | */ |
| | |
| | | |
| | | /** |
| | | * 删除高龄认证 |
| | | * |
| | | * @param EldersAuthDeleteDTO |
| | | * @return 平台用户信息 |
| | | */ |
| | |
| | | |
| | | /** |
| | | * 查询高龄认证详细信息 |
| | | * @param id 高龄认证 id |
| | | * |
| | | * @param id |
| | | * 高龄认证 id |
| | | * @return 查找结果 |
| | | */ |
| | | public R<EldersAuthDetailsVO> eldersAuthDetails(Long id){ |
| | |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 新增高龄认证社区反馈 |
| | | * |
| | | * @param eldersAuthFeedbackAddDTO |
| | | * @return 新增结果 |
| | | */ |
| | |
| | | Long familyUserId = eldersAuthDO.getFamilyUserId(); |
| | | ComEldersAuthUserDO comEldersAuthUserDO = comEldersAuthUserMapper.selectById(familyUserId); |
| | | /** |
| | | ComEldersAuthUserDO comEldersAuthUserDOToUpdate = new ComEldersAuthUserDO(); |
| | | |
| | | comEldersAuthUserDOToUpdate.setId(comEldersAuthUserDO.getId()); |
| | | comEldersAuthUserDOToUpdate.setIsAuth(2);//是否已认证(1.是 2.否) |
| | | int updatedEAU = comEldersAuthUserMapper.updateById(comEldersAuthUserDOToUpdate); |
| | | if(updatedEAU!=1){ |
| | | throw new ServiceException("更新认证记录状态失败"); |
| | | } |
| | | * ComEldersAuthUserDO comEldersAuthUserDOToUpdate = new ComEldersAuthUserDO(); |
| | | * |
| | | * comEldersAuthUserDOToUpdate.setId(comEldersAuthUserDO.getId()); |
| | | * comEldersAuthUserDOToUpdate.setIsAuth(2);//是否已认证(1.是 2.否) int updatedEAU = |
| | | * comEldersAuthUserMapper.updateById(comEldersAuthUserDOToUpdate); if(updatedEAU!=1){ throw new |
| | | * ServiceException("更新认证记录状态失败"); } |
| | | */ |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 查找高龄认证导出数据 |
| | | * |
| | | * @param pageEldersAuthDTO |
| | | * @return 维护结果 |
| | | */ |
| | |
| | | Page page = new Page<>(); |
| | | page.setSize(pageComEldersRecordsDTO.getPageSize()); |
| | | page.setCurrent(pageComEldersRecordsDTO.getPageNum()); |
| | | List<ComEldersAuthRecordVO> eldersAuthDOList = eldersAuthDAO.selectEldersRecordByPage(page, pageComEldersRecordsDTO); |
| | | List<ComEldersAuthRecordVO> eldersAuthDOList = |
| | | eldersAuthDAO.selectEldersRecordByPage(page, pageComEldersRecordsDTO); |
| | | return R.ok(eldersAuthDOList); |
| | | } |
| | | |
| | |
| | | String communityName = eldersAuthDAO.selectCommunityNameByAuth(id); |
| | | comEldersAuthElderlyDetailsVO.setCommunityName(communityName); |
| | | |
| | | List<EldersAuthFeedbackDO> eldersAuthFeedbackDOList = eldersAuthFeedbackDAO.selectList(new LambdaQueryWrapper<EldersAuthFeedbackDO>().eq(EldersAuthFeedbackDO::getAuthId, id)); |
| | | List<EldersAuthFeedbackDO> eldersAuthFeedbackDOList = eldersAuthFeedbackDAO |
| | | .selectList(new LambdaQueryWrapper<EldersAuthFeedbackDO>().eq(EldersAuthFeedbackDO::getAuthId, id)); |
| | | List<EldersAuthFeedbackVO> eldersAuthFeedbackVOList = new ArrayList<>(); |
| | | eldersAuthFeedbackDOList.forEach(edo ->{ |
| | | EldersAuthFeedbackVO eldersAuthFeedbackVO = new EldersAuthFeedbackVO(); |
| | |
| | | @Override |
| | | public R communityAuthType(EldersAuthTypeQueryDTO eldersAuthTypeQueryDTO) { |
| | | Long communityId = eldersAuthTypeQueryDTO.getCommunityId(); |
| | | List<SysConfDO> confDOList = |
| | | sysConfDao.selectList(new LambdaQueryWrapper<SysConfDO>().eq(SysConfDO::getCommunityId, communityId) |
| | | .orderByDesc(SysConfDO::getCreateAt)); |
| | | List<SysConfDO> confDOList = sysConfDao.selectList(new LambdaQueryWrapper<SysConfDO>() |
| | | .eq(SysConfDO::getCommunityId, communityId).orderByDesc(SysConfDO::getCreateAt)); |
| | | if(confDOList==null || confDOList.size()==0){ |
| | | SysConfDO sysConfDO = new SysConfDO(); |
| | | sysConfDO.setCode("ELDER_AUTH_TYPE"); |
| | |
| | | if(inserted!=1){ |
| | | throw new ServiceException("添加高龄认证默认添加的核验类型失败"); |
| | | } |
| | | confDOList = |
| | | sysConfDao.selectList(new LambdaQueryWrapper<SysConfDO>().eq(SysConfDO::getCommunityId, eldersAuthTypeQueryDTO.getOperUserId()) |
| | | confDOList = sysConfDao.selectList(new LambdaQueryWrapper<SysConfDO>() |
| | | .eq(SysConfDO::getCommunityId, eldersAuthTypeQueryDTO.getOperUserId()) |
| | | .orderByDesc(SysConfDO::getCreateAt)); |
| | | } |
| | | if(confDOList!=null && confDOList.size()>0){ |
| | |
| | | |
| | | /** |
| | | * 人脸核验新增高龄认证记录 |
| | | * @param authGetResultDTO 请求参数 |
| | | * |
| | | * @param authGetResultDTO |
| | | * 请求参数 |
| | | * @return 新增结果 |
| | | */ |
| | | @Override |
| | |
| | | this.baseMapper.insert(eldersAuthDO); |
| | | |
| | | //认证成功 添加认证记录 |
| | | List<ComEldersAuthHistoryRecordDO> authHistoryRecordDOList = comEldersAuthHistoryRecordMapper.selectList(new QueryWrapper<ComEldersAuthHistoryRecordDO>() |
| | | .lambda().eq(ComEldersAuthHistoryRecordDO::getIdCard,eldersAuthDO.getIdCard()).ge(ComEldersAuthHistoryRecordDO::getCreateAt, DateUtils.getFirstDayOfMonth())); |
| | | List<ComEldersAuthHistoryRecordDO> authHistoryRecordDOList = |
| | | comEldersAuthHistoryRecordMapper.selectList(new QueryWrapper<ComEldersAuthHistoryRecordDO>().lambda() |
| | | .eq(ComEldersAuthHistoryRecordDO::getIdCard, eldersAuthDO.getIdCard()) |
| | | .ge(ComEldersAuthHistoryRecordDO::getCreateAt, DateUtils.getFirstDayOfMonth())); |
| | | if(authHistoryRecordDOList.isEmpty()){ |
| | | ComEldersAuthHistoryRecordDO authHistoryRecordDO = new ComEldersAuthHistoryRecordDO(); |
| | | authHistoryRecordDO.setUserId(authGetResultDTO.getAuthUserId()); |
| | |
| | | |
| | | /** |
| | | * 高龄认证分页接口 |
| | | * @param authPageDTO 请求参数 |
| | | * |
| | | * @param authPageDTO |
| | | * 请求参数 |
| | | * @return 查询结果 |
| | | */ |
| | | @Override |
| | |
| | | String idCard = userVO.getIdCard(); |
| | | userVO.setIdCard(AESUtil.encrypt128(userVO.getIdCard(), aesKey)); |
| | | //查询当前用户是否已存在用户关联中 |
| | | ComEldersAuthUserDO oldAuthUserDO = comEldersAuthUserMapper.selectOne(new QueryWrapper<ComEldersAuthUserDO>().lambda() |
| | | ComEldersAuthUserDO oldAuthUserDO = |
| | | comEldersAuthUserMapper.selectOne(new QueryWrapper<ComEldersAuthUserDO>().lambda() |
| | | .eq(ComEldersAuthUserDO::getIdCard, userVO.getIdCard())); |
| | | if(oldAuthUserDO == null){ |
| | | //查询老人库是否存在当前用户信息 |
| | | ComEldersAuthElderlyDO authElderlyDO = comEldersAuthElderlyMapper.selectOne(new QueryWrapper<ComEldersAuthElderlyDO>().lambda() |
| | | ComEldersAuthElderlyDO authElderlyDO = |
| | | comEldersAuthElderlyMapper.selectOne(new QueryWrapper<ComEldersAuthElderlyDO>().lambda() |
| | | .eq(ComEldersAuthElderlyDO::getIdCard,userVO.getIdCard())); |
| | | if(authElderlyDO != null){ |
| | | ComEldersAuthUserDO authUserDO = new ComEldersAuthUserDO(); |
| | |
| | | } |
| | | } |
| | | |
| | | IPage<ComElderAuthUserAppVO> authUserAppVOIPage = comEldersAuthUserMapper.findByPage(new Page(authPageDTO.getPageNum(),authPageDTO.getPageSize()),authPageDTO.getUserId()); |
| | | IPage<ComElderAuthUserAppVO> authUserAppVOIPage = comEldersAuthUserMapper |
| | | .findByPage(new Page(authPageDTO.getPageNum(), authPageDTO.getPageSize()), authPageDTO.getUserId()); |
| | | if(!authUserAppVOIPage.getRecords().isEmpty()){ |
| | | authUserAppVOIPage.getRecords().forEach(authUser -> { |
| | | |
| | | if(authUser.getIsAuth().equals(ComEldersAuthUserDO.isAuth.yes)){ |
| | | List<EldersAuthDO> authDOS = eldersAuthDAO.selectList(new QueryWrapper<EldersAuthDO>().lambda() |
| | | .eq(EldersAuthDO::getFamilyUserId,authUser.getElderId()).orderByDesc(EldersAuthDO::getCreateAt)); |
| | | .eq(EldersAuthDO::getFamilyUserId, authUser.getElderId()) |
| | | .orderByDesc(EldersAuthDO::getCreateAt)); |
| | | if(!authDOS.isEmpty()){ |
| | | EldersAuthDO authDO = authDOS.get(0); |
| | | if(authDO.getType().equals(1)){//视频认证 |
| | | Integer count = eldersAuthFeedbackDAO.selectCount(new QueryWrapper<EldersAuthFeedbackDO>().lambda() |
| | | .eq(EldersAuthFeedbackDO::getAuthId,authDO.getId())); |
| | | Integer count = eldersAuthFeedbackDAO.selectCount(new QueryWrapper<EldersAuthFeedbackDO>() |
| | | .lambda().eq(EldersAuthFeedbackDO::getAuthId, authDO.getId())); |
| | | if(count > 0){ |
| | | authUser.setIsFeedback(1); |
| | | } |
| | |
| | | |
| | | /** |
| | | * 添加高龄老人接口 |
| | | * @param authUserAddAppDTO 请求参数 |
| | | * |
| | | * @param authUserAddAppDTO |
| | | * 请求参数 |
| | | * @return 添加结果 |
| | | */ |
| | | @Override |
| | | public R addEldersByApp(ComEldersAuthUserAddAppDTO authUserAddAppDTO){ |
| | | |
| | | ComEldersAuthUserDO authUserDO = comEldersAuthUserMapper.selectOne(new QueryWrapper<ComEldersAuthUserDO>().lambda() |
| | | .eq(ComEldersAuthUserDO::getIdCard,authUserAddAppDTO.getIdCard())); |
| | | ComEldersAuthUserDO authUserDO = comEldersAuthUserMapper.selectOne(new QueryWrapper<ComEldersAuthUserDO>() |
| | | .lambda().eq(ComEldersAuthUserDO::getIdCard, authUserAddAppDTO.getIdCard())); |
| | | if(authUserDO != null){ |
| | | return R.fail("当前老人已存在"); |
| | | } |
| | |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | ComEldersAuthElderlyDO authElderlyDO = comEldersAuthElderlyMapper.selectOne(new QueryWrapper<ComEldersAuthElderlyDO>().lambda() |
| | | .eq(ComEldersAuthElderlyDO::getIdCard, encryptedIdCard)); |
| | | ComEldersAuthElderlyDO authElderlyDO = comEldersAuthElderlyMapper.selectOne( |
| | | new QueryWrapper<ComEldersAuthElderlyDO>().lambda().eq(ComEldersAuthElderlyDO::getIdCard, encryptedIdCard)); |
| | | if(authElderlyDO == null){ |
| | | return R.fail("未在系统找到相符的高龄老人!请检查信息是否正确,或联系社区工作人员"); |
| | | } |
| | |
| | | |
| | | /** |
| | | * 修改高龄老人接口 |
| | | * @param authUserAddAppDTO 请求参数 |
| | | * |
| | | * @param authUserAddAppDTO |
| | | * 请求参数 |
| | | * @return 修改结果 |
| | | */ |
| | | @Override |
| | |
| | | Page page = new Page(); |
| | | page.setCurrent(pageEldersAuthElderlyDTO.getPageNum()); |
| | | page.setSize(pageEldersAuthElderlyDTO.getPageSize()); |
| | | IPage<ComEldersAuthRecordForCommunityVO> ipage = eldersAuthDAO.selectCommunityEldersRecordByPage(page, pageEldersAuthElderlyDTO); |
| | | IPage<ComEldersAuthRecordForCommunityVO> ipage = |
| | | eldersAuthDAO.selectCommunityEldersRecordByPage(page, pageEldersAuthElderlyDTO); |
| | | return R.ok(ipage); |
| | | } |
| | | |
| | | @Override |
| | | public R setCommunityAuthType(Long communityId, Integer type) { |
| | | List<SysConfDO> authConf = |
| | | sysConfDao.selectList(new LambdaQueryWrapper<SysConfDO>() |
| | | .eq(SysConfDO::getCommunityId, communityId) |
| | | .eq(SysConfDO::getCode, "ELDER_AUTH_TYPE") |
| | | .orderByDesc(SysConfDO::getCreateAt)); |
| | | sysConfDao.selectList(new LambdaQueryWrapper<SysConfDO>().eq(SysConfDO::getCommunityId, communityId) |
| | | .eq(SysConfDO::getCode, "ELDER_AUTH_TYPE").orderByDesc(SysConfDO::getCreateAt)); |
| | | if(authConf!=null && authConf.size()>0){ |
| | | SysConfDO first = authConf.get(0); |
| | | first.setValue(type+""); |
| | |
| | | |
| | | @Override |
| | | public R getAuthHistoryList(PageEldersAuthHistoryDTO pageEldersAuthElderlyDTO){ |
| | | return R.ok(comEldersAuthStatisticsMapper.findByPage(new Page(pageEldersAuthElderlyDTO.getPageNum(),pageEldersAuthElderlyDTO.getPageSize()),pageEldersAuthElderlyDTO)); |
| | | return R.ok(comEldersAuthStatisticsMapper.findByPage( |
| | | new Page(pageEldersAuthElderlyDTO.getPageNum(), pageEldersAuthElderlyDTO.getPageSize()), |
| | | pageEldersAuthElderlyDTO)); |
| | | } |
| | | |
| | | public R getAuthHistoryExport(PageEldersAuthHistoryDTO pageEldersAuthElderlyDTO){ |
| | | Date startTime = DateUtils.getYearMonthStart(pageEldersAuthElderlyDTO.getYear(),pageEldersAuthElderlyDTO.getMonth()); |
| | | Date endTime = DateUtils.getYearMonthEnd(pageEldersAuthElderlyDTO.getYear(),pageEldersAuthElderlyDTO.getMonth()); |
| | | Date startTime = |
| | | DateUtils.getYearMonthStart(pageEldersAuthElderlyDTO.getYear(), pageEldersAuthElderlyDTO.getMonth()); |
| | | Date endTime = |
| | | DateUtils.getYearMonthEnd(pageEldersAuthElderlyDTO.getYear(), pageEldersAuthElderlyDTO.getMonth()); |
| | | |
| | | List<ComEldersAuthHistoryRecordDO> userList = comEldersAuthHistoryRecordMapper.selectList(new QueryWrapper<ComEldersAuthHistoryRecordDO>().lambda() |
| | | List<ComEldersAuthHistoryRecordDO> userList = |
| | | comEldersAuthHistoryRecordMapper.selectList(new QueryWrapper<ComEldersAuthHistoryRecordDO>().lambda() |
| | | .eq(ComEldersAuthHistoryRecordDO::getCommunityId,pageEldersAuthElderlyDTO.getCommunityId()) |
| | | .ge(ComEldersAuthHistoryRecordDO::getCreateAt,startTime).le(ComEldersAuthHistoryRecordDO::getCreateAt,endTime)); |
| | | .ge(ComEldersAuthHistoryRecordDO::getCreateAt, startTime) |
| | | .le(ComEldersAuthHistoryRecordDO::getCreateAt, endTime)); |
| | | |
| | | List<ComEldersAuthHistoryExcelVO> authHistoryExcelVOS = new ArrayList<>(); |
| | | userList.forEach(user -> { |