| | |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | import com.panzhihua.common.model.dtos.community.elder.ElderAuthStatisticHeaderDTO; |
| | | import com.panzhihua.common.model.dtos.community.elder.PageElderAuthStatisticDTO; |
| | | import com.panzhihua.common.model.dtos.community.elder.SignElderAuthStatisticDTO; |
| | | import com.panzhihua.common.model.vos.elders.ComEldersAuthHistoryVO; |
| | | import com.panzhihua.common.model.vos.elders.ComEldersAuthStatisticVO; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | private ComEldersAuthStatisticsMapper comEldersAuthStatisticsMapper; |
| | | @Resource |
| | | private ComActDAO comActDAO; |
| | | @Resource |
| | | private ComElderAuthRecordsDAO comElderAuthRecordsDAO; |
| | | @Resource |
| | | private ComElderAuthElderliesDAO comElderAuthElderliesDAO; |
| | | @Resource |
| | | private ComPensionAuthHistoryRecordMapper comPensionAuthHistoryRecordMapper; |
| | | @Resource |
| | | private ComPensionAuthRecordDAO comPensionAuthRecordDAO; |
| | | @Resource |
| | | private ComPensionAuthPensionerDAO comPensionAuthPensionerDAO; |
| | | |
| | | @Value("${domain.aesKey:}") |
| | | private String aesKey; |
| | |
| | | public R communityAuthType(EldersAuthTypeQueryDTO eldersAuthTypeQueryDTO) { |
| | | Long communityId = eldersAuthTypeQueryDTO.getCommunityId(); |
| | | List<SysConfDO> confDOList = sysConfDao.selectList(new LambdaQueryWrapper<SysConfDO>() |
| | | .eq(SysConfDO::getCommunityId, communityId).eq(SysConfDO::getCode,"ELDER_AUTH_TYPE").orderByDesc(SysConfDO::getCreateAt)); |
| | | .eq(SysConfDO::getCommunityId, communityId).eq(SysConfDO::getCode,"ELDER_AUTH_TYPE_" + communityId).orderByDesc(SysConfDO::getCreateAt)); |
| | | if (confDOList == null || confDOList.size() == 0) { |
| | | SysConfDO sysConfDO = new SysConfDO(); |
| | | sysConfDO.setCode("ELDER_AUTH_TYPE"); |
| | | sysConfDO.setCode("ELDER_AUTH_TYPE_" + communityId); |
| | | sysConfDO.setName("高龄认证类型"); |
| | | sysConfDO.setValue(2 + "");// 核验类型(1.视频认证 2.人脸核验) |
| | | sysConfDO.setDescription("高龄认证默认添加的核验类型"); |
| | |
| | | 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)); |
| | | .eq(SysConfDO::getCode, "ELDER_AUTH_TYPE_" + communityId).orderByDesc(SysConfDO::getCreateAt)); |
| | | if (authConf != null && authConf.size() > 0) { |
| | | SysConfDO first = authConf.get(0); |
| | | first.setValue(type + ""); |
| | |
| | | } |
| | | |
| | | /** |
| | | * 检测上月所有视频认证记录,取最后一条记录为认证成功记录 |
| | | * 身份认证定时任务 |
| | | * @return 执行结果 |
| | | */ |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R timedTaskEldersRecordAuthJobHandler(){ |
| | | Date nowDate = new Date(); |
| | | //查询所有启用中社区 |
| | | List<ComActDO> actList = comActDAO.selectList(new QueryWrapper<ComActDO>().lambda().eq(ComActDO::getState,0)); |
| | | |
| | | actList.forEach(act -> { |
| | | //查询社区上月所有视频认证 |
| | | List<ComEldersAuthHistoryVO> authList = eldersAuthDAO.getEldersAuthRecords(act.getCommunityId()); |
| | | authList.forEach(auth -> { |
| | | if(auth.getUserId() != null){ |
| | | ComEldersAuthHistoryRecordDO authHistoryRecordDO = new ComEldersAuthHistoryRecordDO(); |
| | | authHistoryRecordDO.setCommunityId(auth.getCommunityId()); |
| | | authHistoryRecordDO.setCreateAt(auth.getCreateAt()); |
| | | authHistoryRecordDO.setAuthId(auth.getId()); |
| | | authHistoryRecordDO.setUserId(auth.getUserId()); |
| | | authHistoryRecordDO.setBrithday(auth.getBirthday()); |
| | | authHistoryRecordDO.setDomicile(auth.getDomicile()); |
| | | authHistoryRecordDO.setIdCard(auth.getIdCard()); |
| | | authHistoryRecordDO.setName(auth.getName()); |
| | | authHistoryRecordDO.setIsAuth(1); |
| | | try { |
| | | Integer age = IdcardUtil.getAgeByIdCard(auth.getIdCard()); |
| | | authHistoryRecordDO.setAge(age); |
| | | }catch (Exception e){ |
| | | log.error("年龄转换失败"); |
| | | } |
| | | comEldersAuthHistoryRecordMapper.insert(authHistoryRecordDO); |
| | | } |
| | | }); |
| | | //高龄认证本期期数 |
| | | String elderAuthPeriod = DateUtils.getCurrentDateString_YYYY_MM(); |
| | | //养老认证本期期数 |
| | | String pensionAuthPeriod = DateUtils.getCurrentDateString_YYYY(); |
| | | |
| | | //查询所有老人信息并加入到老人认证历史记录表中,如果不存在则新增,存在则不做操作 |
| | | List<ComElderAuthElderliesDO> authElderliesList = comElderAuthElderliesDAO.getAuthElderLiesList(); |
| | | authElderliesList.forEach(authElderlies -> { |
| | | //查询高龄认证记录 |
| | | ComEldersAuthHistoryRecordDO authHistoryRecordDO = comEldersAuthHistoryRecordMapper.selectOne(new QueryWrapper<ComEldersAuthHistoryRecordDO>().lambda() |
| | | .eq(ComEldersAuthHistoryRecordDO::getElderliesId,authElderlies.getId()) |
| | | .eq(ComEldersAuthHistoryRecordDO::getAuthPeriod,elderAuthPeriod)); |
| | | if(authHistoryRecordDO == null){ |
| | | authHistoryRecordDO = new ComEldersAuthHistoryRecordDO(); |
| | | BeanUtils.copyProperties(authElderlies,authHistoryRecordDO); |
| | | authHistoryRecordDO.setIsAuth(ComEldersAuthHistoryRecordDO.isAuth.no); |
| | | authHistoryRecordDO.setElderliesId(authElderlies.getId()); |
| | | authHistoryRecordDO.setAuthPeriod(elderAuthPeriod); |
| | | authHistoryRecordDO.setCreateAt(nowDate); |
| | | authHistoryRecordDO.setBrithday(IdcardUtil.getBirthByIdCard(authElderlies.getIdCard())); |
| | | authHistoryRecordDO.setAge(IdcardUtil.getAgeByIdCard(authElderlies.getIdCard())); |
| | | comEldersAuthHistoryRecordMapper.insert(authHistoryRecordDO); |
| | | } |
| | | }); |
| | | |
| | | //查询所有养老人员信息并加入到老人认证历史记录表中,如果不存在则新增,存在则不做操作 |
| | | List<ComPensionAuthPensionerDO> pensionAuthPensionerList = comPensionAuthPensionerDAO.getAuthPensionList(); |
| | | pensionAuthPensionerList.forEach(authPension -> { |
| | | //查询养老认证记录 |
| | | ComPensionAuthHistoryRecordDO pensionAuthDO = comPensionAuthHistoryRecordMapper.selectOne(new QueryWrapper<ComPensionAuthHistoryRecordDO>().lambda() |
| | | .eq(ComPensionAuthHistoryRecordDO::getElderliesId,authPension.getId()) |
| | | .eq(ComPensionAuthHistoryRecordDO::getAuthPeriod,pensionAuthPeriod)); |
| | | if(pensionAuthDO == null){ |
| | | pensionAuthDO = new ComPensionAuthHistoryRecordDO(); |
| | | BeanUtils.copyProperties(authPension,pensionAuthDO); |
| | | pensionAuthDO.setIsAuth(ComPensionAuthHistoryRecordDO.isAuth.no); |
| | | pensionAuthDO.setElderliesId(authPension.getId()); |
| | | pensionAuthDO.setAuthPeriod(pensionAuthPeriod); |
| | | pensionAuthDO.setCreateAt(nowDate); |
| | | pensionAuthDO.setBrithday(IdcardUtil.getBirthByIdCard(authPension.getIdCard())); |
| | | pensionAuthDO.setAge(IdcardUtil.getAgeByIdCard(authPension.getIdCard())); |
| | | comPensionAuthHistoryRecordMapper.insert(pensionAuthDO); |
| | | } |
| | | }); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @Override |
| | | public R setAuthType(Long communityId, Integer type){ |
| | | List<SysConfDO> authConf = |
| | | sysConfDao.selectList(new LambdaQueryWrapper<SysConfDO>().eq(SysConfDO::getCommunityId, communityId) |
| | | .eq(SysConfDO::getCode, "ELDER_AUTH_TYPE_" + communityId).orderByDesc(SysConfDO::getCreateAt)); |
| | | if (authConf != null && authConf.size() > 0) { |
| | | SysConfDO first = authConf.get(0); |
| | | first.setValue(type + ""); |
| | | int updated = sysConfDao.updateById(first); |
| | | if (updated == 1) { |
| | | return R.ok(); |
| | | } |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | @Override |
| | | public R getAuthType(EldersAuthTypeQueryDTO eldersAuthTypeQueryDTO){ |
| | | Long communityId = eldersAuthTypeQueryDTO.getCommunityId(); |
| | | List<SysConfDO> confDOList = sysConfDao.selectList(new LambdaQueryWrapper<SysConfDO>() |
| | | .eq(SysConfDO::getCommunityId, communityId).eq(SysConfDO::getCode,"ELDER_AUTH_TYPE_" + communityId).orderByDesc(SysConfDO::getCreateAt)); |
| | | if (confDOList == null || confDOList.size() == 0) { |
| | | SysConfDO sysConfDO = new SysConfDO(); |
| | | sysConfDO.setCode("ELDER_AUTH_TYPE_" + communityId); |
| | | sysConfDO.setName("高龄认证类型"); |
| | | sysConfDO.setValue(2 + "");// 核验类型(1.视频认证 2.人脸核验) |
| | | sysConfDO.setDescription("高龄认证默认添加的核验类型"); |
| | | sysConfDO.setCommunityId(communityId); |
| | | sysConfDO.setCreateBy(eldersAuthTypeQueryDTO.getUserId()); |
| | | int inserted = sysConfDao.insert(sysConfDO); |
| | | if (inserted != 1) { |
| | | throw new ServiceException("添加高龄认证默认添加的核验类型失败"); |
| | | } |
| | | confDOList = sysConfDao.selectList(new LambdaQueryWrapper<SysConfDO>() |
| | | .eq(SysConfDO::getCommunityId, communityId) |
| | | .orderByDesc(SysConfDO::getCreateAt)); |
| | | } |
| | | if (confDOList != null && confDOList.size() > 0) { |
| | | SysConfDO latest = confDOList.get(0); |
| | | SysConfVO sysConfVO = new SysConfVO(); |
| | | BeanUtils.copyProperties(latest, sysConfVO); |
| | | return R.ok(sysConfVO.getValue()); |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | /** |
| | | * 高龄认证统计-分页查询 |
| | | * @param pageElderAuthStatisticDTO 请求参数 |
| | | * @return 高龄认证统计列表 |
| | | */ |
| | | @Override |
| | | public R pageAuthStatisticAdmin(PageElderAuthStatisticDTO pageElderAuthStatisticDTO){ |
| | | IPage<ComEldersAuthStatisticVO> authStatisticPage = comEldersAuthHistoryRecordMapper.pageAuthStatisticAdmin( |
| | | new Page(pageElderAuthStatisticDTO.getPageNum(),pageElderAuthStatisticDTO.getPageSize()),pageElderAuthStatisticDTO); |
| | | authStatisticPage.getRecords().forEach(authStatistic -> { |
| | | authStatistic.setAge(IdcardUtil.getAgeByIdCard(authStatistic.getIdCard())); |
| | | authStatistic.setBirthday(IdcardUtil.getBirth(authStatistic.getIdCard())); |
| | | }); |
| | | return R.ok(authStatisticPage); |
| | | } |
| | | |
| | | /** |
| | | * 高龄认证统计-标记 |
| | | * @param signElderAuthStatisticDTO 请求参数 |
| | | * @return 标记结果 |
| | | */ |
| | | @Override |
| | | public R signAuthStatisticAdmin(SignElderAuthStatisticDTO signElderAuthStatisticDTO){ |
| | | ComEldersAuthHistoryRecordDO authHistoryRecordDO = comEldersAuthHistoryRecordMapper.selectById(signElderAuthStatisticDTO.getId()); |
| | | if(authHistoryRecordDO == null){ |
| | | return R.fail("未查询到该记录"); |
| | | } |
| | | authHistoryRecordDO.setMark(signElderAuthStatisticDTO.getMark()); |
| | | if(comEldersAuthHistoryRecordMapper.updateById(authHistoryRecordDO) > 0){ |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 高龄认证统计-统计表头数据 |
| | | * @param statisticHeaderDTO 请求参数 |
| | | * @return 统计表头数据 |
| | | */ |
| | | @Override |
| | | public R getAuthHeaderStatisticAdmin(ElderAuthStatisticHeaderDTO statisticHeaderDTO){ |
| | | return R.ok(comEldersAuthHistoryRecordMapper.getAuthHeaderStatisticAdmin(statisticHeaderDTO)); |
| | | } |
| | | } |