| | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.google.common.base.Joiner; |
| | | import com.panzhihua.common.constants.Constants; |
| | | import com.panzhihua.common.enums.*; |
| | | import com.panzhihua.common.model.dtos.community.PageElderAuthRecordsDTO; |
| | | import com.panzhihua.common.model.dtos.community.elder.PageElderAuthStatisticDTO; |
| | | import com.panzhihua.common.model.helper.AESUtil; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.community.*; |
| | |
| | | @Resource |
| | | private ComElderAuthRecordsService comElderAuthRecordsService; |
| | | @Resource |
| | | private ComEldersAuthHistoryRecordMapper comEldersAuthHistoryRecordMapper; |
| | | @Resource |
| | | private ComActDAO comActDAO; |
| | | @Resource |
| | | private ComEldersAuthStatisticsMapper comEldersAuthStatisticsMapper; |
| | |
| | | @Override |
| | | public R detailElderAuthRecords(Long authRecordId) { |
| | | ComElderAuthRecordVO comElderAuthRecordVO = comElderAuthRecordsDAO.detailElderAuthRecords(authRecordId); |
| | | comElderAuthRecordVO.setNextIds(comElderAuthRecordsDAO.getNextIds(comElderAuthRecordVO.getCommunityId(),authRecordId)); |
| | | return R.ok(comElderAuthRecordVO); |
| | | } |
| | | |
| | |
| | | if (comElderAuthRecordsDO == null) { |
| | | return R.fail("未查询到高龄老人认证记录"); |
| | | } |
| | | BeanUtils.copyProperties(comElderAuthRecordVO, comElderAuthRecordsDO); |
| | | if (comElderAuthRecordVO.getApprovalStatus().equals(3)) { |
| | | comElderAuthRecordsDO.setAuthStatus(1); |
| | | if(!comElderAuthRecordsDO.getApprovalStatus().equals(ComElderAuthRecordsDO.approvalStatus.dsh)){ |
| | | return R.fail("该记录已审核,不可重复审核"); |
| | | } |
| | | comElderAuthRecordsDO.setApprovalDate(new Date()); |
| | | ComElderAuthElderliesDO authElderliesDO = comElderAuthElderliesDAO.selectById(comElderAuthRecordsDO.getElderliesId()); |
| | | if(authElderliesDO == null){ |
| | | return R.fail("未查询到老人信息"); |
| | | } |
| | | |
| | | Date nowDate = new Date(); |
| | | BeanUtils.copyProperties(comElderAuthRecordVO, comElderAuthRecordsDO); |
| | | comElderAuthRecordsDO.setApprovalDate(nowDate); |
| | | if (comElderAuthRecordVO.getApprovalStatus().equals(ComElderAuthRecordsDO.approvalStatus.tg)) { |
| | | comElderAuthRecordsDO.setAuthStatus(ComElderAuthRecordsDO.authStatus.yrz); |
| | | } |
| | | |
| | | int nub = comElderAuthRecordsDAO.updateById(comElderAuthRecordsDO); |
| | | if (nub < 1) { |
| | | return R.fail("审核失败"); |
| | |
| | | // 需要修改的认证记录集合 |
| | | List<ComElderAuthRecordsDO> updateList = new ArrayList<>(); |
| | | log.info("开始处理导入数据"); |
| | | |
| | | List<ComElderAuthRecordImportMistakeExcelVO> mistakes = new ArrayList<>(); |
| | | try { |
| | | // 查询所有人口数据放入HashMap中 |
| | |
| | | String key = population.getCardNo(); |
| | | populationMap.put(key, population); |
| | | }); |
| | | |
| | | Date nowDate = new Date(); |
| | | for (ComElderAuthRecordImportExcelVO vo : list) { |
| | | String cardNoAES = AESUtil.encrypt128(vo.getIdCard(), aesKey); |
| | | // 判断实有人口是否已存在 |
| | | log.info("开始查询实有人口是否已存在"); |
| | | ComMngPopulationDO populationDO = null; |
| | |
| | | if (null == comElderAuthElderliesDO) { |
| | | ComElderAuthRecordImportMistakeExcelVO mistake = new ComElderAuthRecordImportMistakeExcelVO(); |
| | | BeanUtils.copyProperties(vo, mistake); |
| | | setMistake(mistake, vo); |
| | | mistake.setMistake("该实有人口已存在,但本社区不存在高龄老人信息,请先导入高龄老人"); |
| | | mistake.setAuthDate(DateUtils.format(vo.getAuthDate(),DateUtils.yyyyMMdd_format)); |
| | | mistakes.add(mistake); |
| | |
| | | if (age < 80 || !comElderAuthElderliesDO.getIsRegister().equals(1) || !comElderAuthElderliesDO.getIsAlive().equals(1)) { |
| | | ComElderAuthRecordImportMistakeExcelVO mistake = new ComElderAuthRecordImportMistakeExcelVO(); |
| | | BeanUtils.copyProperties(vo, mistake); |
| | | setMistake(mistake, vo); |
| | | mistake.setMistake("该人口未满80岁,或者不健在,或者未做高龄老人登记"); |
| | | mistake.setAuthDate(DateUtils.format(vo.getAuthDate(),DateUtils.yyyyMMdd_format)); |
| | | mistakes.add(mistake); |
| | | }else { |
| | | |
| | | //满足认证条件,判断是否存在当期认证记录 |
| | | List<ComElderAuthRecordsDO> elderAuthRecordList = null; |
| | | ComElderAuthRecordsDO comElderAuthRecordsDO = null; |
| | | Date nowDate = new Date(); |
| | | // 获取当前年 |
| | | int year = DateUtils.getYear(nowDate); |
| | | // 获取当前月 |
| | | int month = DateUtils.getMonth(nowDate) + 1; |
| | | String authPeriod = ""; |
| | | if (month < 10) { |
| | | authPeriod = String.valueOf(year) + "0" + String.valueOf(month); |
| | | }else { |
| | | authPeriod = String.valueOf(year) + String.valueOf(month); |
| | | } |
| | | String authPeriod = vo.getAuthPeriod(); |
| | | elderAuthRecordList = comElderAuthRecordsDAO.selectList(new QueryWrapper<ComElderAuthRecordsDO>().lambda() |
| | | .eq(ComElderAuthRecordsDO::getElderliesId, comElderAuthElderliesDO.getId()) |
| | | .eq(ComElderAuthRecordsDO::getAuthPeriod, authPeriod).orderByDesc(ComElderAuthRecordsDO::getCreateAt)); |
| | |
| | | if (comElderAuthRecordsDO.getApprovalStatus().equals(ComElderAuthRecordsDO.approvalStatus.tg)) { |
| | | ComElderAuthRecordImportMistakeExcelVO mistake = new ComElderAuthRecordImportMistakeExcelVO(); |
| | | BeanUtils.copyProperties(vo, mistake); |
| | | setMistake(mistake, vo); |
| | | mistake.setMistake("该人口本期已认证通过,不能重复认证"); |
| | | mistake.setAuthDate(DateUtils.format(vo.getAuthDate(),DateUtils.yyyyMMdd_format)); |
| | | mistakes.add(mistake); |
| | | }else if (comElderAuthRecordsDO.getApprovalStatus().equals(ComElderAuthRecordsDO.approvalStatus.dsh)) { |
| | | comElderAuthRecordsDO.setSubmitUserId(userId); |
| | | comElderAuthRecordsDO.setApproverId(userId); |
| | | comElderAuthRecordsDO.setCommunityId(communityId); |
| | | comElderAuthRecordsDO.setApprovalStatus(ComElderAuthRecordsDO.approvalStatus.tg); |
| | | comElderAuthRecordsDO.setApprovalDate(new Date()); |
| | | comElderAuthRecordsDO.setAuthStatus(ComElderAuthRecordsDO.authStatus.yrz); |
| | | comElderAuthRecordsDO.setAuthMethod(ComElderAuthRecordsDO.authMethod.xxrz); |
| | | comElderAuthRecordsDO = updateElderAuthRecordsDO(vo, comElderAuthRecordsDO,userId,communityId,nowDate); |
| | | updateList.add(comElderAuthRecordsDO); |
| | | }else { |
| | | // 驳回状态,则新增 |
| | | comElderAuthRecordsDO = saveElderAuthRecordsDO(vo, comElderAuthElderliesDO, authPeriod, userId,communityId); |
| | | comElderAuthRecordsDO = saveElderAuthRecordsDO(vo, comElderAuthElderliesDO, authPeriod, userId,communityId,nowDate); |
| | | saveList.add(comElderAuthRecordsDO); |
| | | } |
| | | }else { |
| | | // 不存在记录,则新增 |
| | | comElderAuthRecordsDO = saveElderAuthRecordsDO(vo, comElderAuthElderliesDO, authPeriod, userId,communityId); |
| | | comElderAuthRecordsDO = saveElderAuthRecordsDO(vo, comElderAuthElderliesDO, authPeriod, userId,communityId,nowDate); |
| | | saveList.add(comElderAuthRecordsDO); |
| | | } |
| | | } |
| | |
| | | // 不存在实有人口,则新增 |
| | | ComElderAuthRecordImportMistakeExcelVO mistake = new ComElderAuthRecordImportMistakeExcelVO(); |
| | | BeanUtils.copyProperties(vo, mistake); |
| | | setMistake(mistake, vo); |
| | | mistake.setMistake("不存在该实有人口,请先导入实有人口信息"); |
| | | mistake.setAuthDate(DateUtils.format(vo.getAuthDate(),DateUtils.yyyyMMdd_format)); |
| | | mistakes.add(mistake); |
| | |
| | | } |
| | | |
| | | @Override |
| | | public R exportElderAuthRecordsStatistic(PageElderAuthRecordsDTO pageElderAuthRecordsDTO) { |
| | | public R exportElderAuthRecordsStatistic(PageElderAuthStatisticDTO pageElderAuthRecordsDTO) { |
| | | List<ComElderAuthRecordStatisticExcleVO> comElderAuthRecordStatisticExcleVOS = comElderAuthRecordsDAO.exportElderAuthRecordsStatistic(pageElderAuthRecordsDTO); |
| | | if (null != comElderAuthRecordStatisticExcleVOS && comElderAuthRecordStatisticExcleVOS.size() > 0) { |
| | | comElderAuthRecordStatisticExcleVOS.forEach(comElderAuthRecordStatisticExcleVO -> { |
| | |
| | | } |
| | | |
| | | private ComElderAuthRecordsDO updateElderAuthRecordsDO(ComElderAuthRecordImportExcelVO vo |
| | | , ComElderAuthRecordsDO comElderAuthRecordsDO, Long userId, Long communityId) { |
| | | , ComElderAuthRecordsDO comElderAuthRecordsDO, Long userId, Long communityId,Date date) { |
| | | BeanUtils.copyProperties(vo, comElderAuthRecordsDO); |
| | | comElderAuthRecordsDO.setSubmitUserId(userId); |
| | | comElderAuthRecordsDO.setApproverId(userId); |
| | | comElderAuthRecordsDO.setApprovalStatus(ComElderAuthRecordsDO.approvalStatus.tg); |
| | | comElderAuthRecordsDO.setApprovalDate(new Date()); |
| | | comElderAuthRecordsDO.setAuthStatus(ComElderAuthRecordsDO.authStatus.yrz); |
| | | comElderAuthRecordsDO.setCommunityId(communityId); |
| | | comElderAuthRecordsDO.setApprovalStatus(ComElderAuthRecordsDO.approvalStatus.tg); |
| | | comElderAuthRecordsDO.setApprovalDate(date); |
| | | comElderAuthRecordsDO.setAuthStatus(ComElderAuthRecordsDO.authStatus.yrz); |
| | | comElderAuthRecordsDO.setAuthMethod(ComElderAuthRecordsDO.authMethod.xxrz); |
| | | comElderAuthRecordsDO.setMark(vo.getMark()); |
| | | return comElderAuthRecordsDO; |
| | | } |
| | | |
| | | private ComElderAuthRecordsDO saveElderAuthRecordsDO(ComElderAuthRecordImportExcelVO vo |
| | | , ComElderAuthElderliesDO comElderAuthElderliesDO, String authPeriod, Long userId, Long communityId) { |
| | | , ComElderAuthElderliesDO comElderAuthElderliesDO, String authPeriod, Long userId, Long communityId,Date date) { |
| | | ComElderAuthRecordsDO comElderAuthRecordsDO = new ComElderAuthRecordsDO(); |
| | | BeanUtils.copyProperties(vo, comElderAuthRecordsDO); |
| | | comElderAuthRecordsDO.setId(Snowflake.getId()); |
| | |
| | | comElderAuthRecordsDO.setSubmitUserId(userId); |
| | | comElderAuthRecordsDO.setApproverId(userId); |
| | | comElderAuthRecordsDO.setApprovalStatus(ComElderAuthRecordsDO.approvalStatus.tg); |
| | | comElderAuthRecordsDO.setApprovalDate(new Date()); |
| | | comElderAuthRecordsDO.setApprovalDate(date); |
| | | comElderAuthRecordsDO.setAuthStatus(ComElderAuthRecordsDO.authStatus.yrz); |
| | | comElderAuthRecordsDO.setCommunityId(communityId); |
| | | comElderAuthRecordsDO.setAuthMethod(ComElderAuthRecordsDO.authMethod.xxrz); |
| | | comElderAuthRecordsDO.setMark(vo.getMark()); |
| | | comElderAuthRecordsDO.setCreateAt(date); |
| | | return comElderAuthRecordsDO; |
| | | } |
| | | |
| | | private void setMistake(ComElderAuthRecordImportMistakeExcelVO mvo, |
| | | ComElderAuthRecordImportExcelVO vo) { |
| | | mvo.setIsAlive(PopulHouseUseEnum.getCnDescByName(vo.getIsAlive())); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 判重方法 |