Merge remote-tracking branch 'origin/test_screen' into test_screen
| | |
| | | |
| | | /** |
| | | * 新增高龄认证 |
| | | * @param {classNameFirstLower}AddDTO 添加高龄认证传递对象 |
| | | * @param eldersAuthAddByFamilyDTO 添加高龄认证传递对象 |
| | | * @return 新增结果 |
| | | */ |
| | | @PostMapping("/addByFamily") |
| | | @ApiOperation(value = "通过家庭成员新增高龄认证", response = R.class) |
| | | @ApiOperation(value = "新增高龄认证", response = R.class) |
| | | R addByFamily(@RequestBody EldersAuthAddByFamilyDTO eldersAuthAddByFamilyDTO){ |
| | | eldersAuthAddByFamilyDTO.setSumitUserId(getUserId()); |
| | | eldersAuthAddByFamilyDTO.setUserId(getUserId()); |
| | |
| | | return R.ok(result); |
| | | }else{ |
| | | log.error("查询老人信息失败,错误信息:" + isOk.getMsg()); |
| | | return R.fail("查询老人信息失败"); |
| | | return isOk; |
| | | } |
| | | } |
| | | |
| | |
| | | List<T> repeatEles = new ArrayList<T>(); |
| | | for (T t : datas) { |
| | | if (set.contains(t)) { |
| | | repeatEles.add(t); |
| | | if(!repeatEles.contains(t)) { |
| | | repeatEles.add(t); |
| | | } |
| | | } else { |
| | | set.add(t); |
| | | } |
| | |
| | | throw new ServiceException("身份证号错误"); |
| | | } |
| | | |
| | | eldersAuthElderlyExcelVO.setBirthday(DateUtils.getDateStringYMD(IdcardUtil.getBirthDate(eldersAuthElderlyExcelVO.getIdCard()))); |
| | | eldersAuthElderlyExcelVO.setLevel(EldersAuthLevelEnum.getCode(IdcardUtil.getAgeByIdCard(eldersAuthElderlyExcelVO.getIdCard()))); |
| | | String idCard = eldersAuthElderlyExcelVO.getIdCard(); |
| | | if(idCard!=null && idCard.contains("x")){ |
| | | idCard = idCard.replaceAll("x", "X"); |
| | | } |
| | | eldersAuthElderlyExcelVO.setIdCard(idCard); |
| | | |
| | | eldersAuthElderlyExcelVO.setBirthday(DateUtils.getDateStringYMD(IdcardUtil.getBirthDate(idCard))); |
| | | eldersAuthElderlyExcelVO.setLevel(EldersAuthLevelEnum.getCode(IdcardUtil.getAgeByIdCard(idCard))); |
| | | |
| | | list.add(eldersAuthElderlyExcelVO); |
| | | // 达到BATCH_COUNT了,需要去存储一次数据库,防止数据几万条数据在内存,容易OOM |
| | | if(list.size() >= BATCH_COUNT){ |
| | |
| | | import org.hibernate.validator.constraints.Length; |
| | | |
| | | import javax.validation.constraints.Max; |
| | | import javax.validation.constraints.Min; |
| | | import javax.validation.constraints.NotNull; |
| | | import javax.validation.constraints.Pattern; |
| | | import java.util.Date; |
| | |
| | | private Integer dangerLevel; |
| | | |
| | | @Max(9999999999L) |
| | | @Min(value = 0, message = "死亡人数不能为负数") |
| | | @ApiModelProperty(value = "死亡人数", hidden = false, example = "1", required = true) |
| | | @NotNull(message = "死亡人数不能为空") |
| | | private Integer deathsNumber; |
| | | |
| | | @Max(9999999999L) |
| | | @Min(value = 0, message = "受伤人数不能为负数") |
| | | @ApiModelProperty(value = "受伤人数", hidden = false, example = "1", required = true) |
| | | @NotNull(message = "受伤人数不能为空") |
| | | private Integer injuriesNumber; |
| | |
| | | @NotNull |
| | | private Long id; |
| | | |
| | | @Length(max=255) |
| | | @Length(max=500, message = "办理意见不能超过500个字") |
| | | @ApiModelProperty(value = "办理意见", hidden = false, example = "",required = true) |
| | | @NotNull |
| | | private String processResult; |
| | |
| | | @ApiModelProperty(value = "本月是否已认证(1.是 2.否)") |
| | | private Integer isAuth; |
| | | |
| | | @ApiModelProperty(value = "是否健在",example = "1是,2否") |
| | | private Integer isExist; |
| | | |
| | | } |
| | |
| | | * 入党日期 |
| | | */ |
| | | @ExcelProperty(value = "入党日期" ,index = 3) |
| | | private Date joinTime; |
| | | private String joinTime; |
| | | /** |
| | | * 转正日期 |
| | | */ |
| | | @ExcelProperty(value = "转正日期" ,index = 4) |
| | | private Date employmentTime; |
| | | private String employmentTime; |
| | | /** |
| | | * 所属社区 |
| | | */ |
| | |
| | | |
| | | import lombok.extern.slf4j.Slf4j; |
| | | |
| | | import java.text.DateFormat; |
| | | import java.text.ParseException; |
| | | import java.text.SimpleDateFormat; |
| | | import java.time.*; |
| | |
| | | return newTime; |
| | | } |
| | | |
| | | public static boolean isValidDate(String str) { |
| | | boolean convertSuccess=true; |
| | | SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd"); |
| | | try { |
| | | format.setLenient(false); |
| | | format.parse(str); |
| | | } catch (ParseException e) { |
| | | convertSuccess=false; |
| | | } |
| | | return convertSuccess; |
| | | } |
| | | |
| | | public static Date toValidDate(String str) { |
| | | Date date = null; |
| | | SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd"); |
| | | try { |
| | | format.setLenient(false); |
| | | date = format.parse(str); |
| | | } catch (ParseException e) { |
| | | log.error("党员导入日期格式错误"); |
| | | date = new Date(); |
| | | } |
| | | return date; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 将日期对象格式化成yyyy-MM-dd格式的字符串 |
| | | * |
| | |
| | | |
| | | |
| | | public static void main(String[]args)throws Exception{ |
| | | isValidDate("2020/12/4"); |
| | | // Date date= new Date(); |
| | | // Date after = new Date(); |
| | | // System.out.println(calTimeDifference(date,after)); |
| | |
| | | } |
| | | |
| | | @PostMapping("/eldersauth/addByFamilyUser") |
| | | @Transactional(rollbackFor = Exception.class) |
| | | R addByFamilyUser(@RequestBody EldersAuthAddByFamilyDTO eldersAuthAddByFamilyDTO){ |
| | | |
| | | ComEldersAuthUserDO authUserDO = comEldersAuthUserService.getById(eldersAuthAddByFamilyDTO.getFamilyUserId()); |
| | | if(authUserDO == null){ |
| | | return R.fail("未查询到老人信息"); |
| | | } |
| | | |
| | | Long elderId = authUserDO.getId(); |
| | | boolean canReAuthThisMonth = comEldersAuthUserService.checkReAuthAgain(elderId); |
| | | if(!canReAuthThisMonth){ |
| | | return R.fail("当月已认证,不能再次进行认证"); |
| | | } |
| | | |
| | | String idCard = authUserDO.getIdCard(); |
| | |
| | | eldersAuthDO.setBirthDay(birthDay); |
| | | int add = eldersAuthService.getBaseMapper().insert(eldersAuthDO); |
| | | if(add==1){ |
| | | //设置认证成功 |
| | | Long familyUserId = eldersAuthDO.getFamilyUserId(); |
| | | ComEldersAuthUserDO comEldersAuthUserDO = new ComEldersAuthUserDO(); |
| | | comEldersAuthUserDO.setId(familyUserId); |
| | | comEldersAuthUserDO.setIsAuth(1); |
| | | boolean updated = comEldersAuthUserService.updateById(comEldersAuthUserDO); |
| | | if(!updated){ |
| | | throw new ServiceException("添加认证失败,更新认证状态"); |
| | | } |
| | | //认证成功 添加认证记录 |
| | | List<ComEldersAuthHistoryRecordDO> authHistoryRecordDOList = comEldersAuthHistoryRecordMapper.selectList(new QueryWrapper<ComEldersAuthHistoryRecordDO>() |
| | | .lambda().eq(ComEldersAuthHistoryRecordDO::getIdCard,idCard).ge(ComEldersAuthHistoryRecordDO::getCreateAt, DateUtils.getFirstDayOfMonth())); |
| | |
| | | package com.panzhihua.service_community.api; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.panzhihua.common.exceptions.ServiceException; |
| | | import com.panzhihua.common.model.dtos.community.*; |
| | | import com.panzhihua.common.model.dtos.elders.ComEldersAuthGetResultDTO; |
| | |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.elders.ComElderAuthUserDetailVO; |
| | | import com.panzhihua.common.model.vos.community.SysConfVO; |
| | | import com.panzhihua.common.utlis.DateUtils; |
| | | import com.panzhihua.service_community.model.dos.ComEldersAuthUserDO; |
| | | import com.panzhihua.service_community.model.dos.EldersAuthDO; |
| | | import com.panzhihua.common.model.vos.community.ComEldersAuthElderlyDetailsVO; |
| | |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @ClasssName EldersAuthApi |
| | |
| | | @PostMapping("/getAuth") |
| | | public R getAuth(@RequestParam("authUserId") Long authUserId){ |
| | | ComEldersAuthUserDO authUserDO = comEldersAuthUserService.getById(authUserId); |
| | | |
| | | if(authUserDO == null){ |
| | | return R.fail("未查询到老人信息"); |
| | | } |
| | | if(authUserDO.getIsAuth().equals(ComEldersAuthUserDO.isAuth.yes)){ |
| | | return R.fail("该老人已认证"); |
| | | List<EldersAuthDO> eldersAuthDOList = eldersAuthService.list(new QueryWrapper<EldersAuthDO>() |
| | | .lambda().eq(EldersAuthDO::getType,2).ge(EldersAuthDO::getCreateAt, DateUtils.getFirstDayOfMonth())); |
| | | if(!eldersAuthDOList.isEmpty()){ |
| | | return R.fail("该老人已认证"); |
| | | } |
| | | } |
| | | ComElderAuthUserDetailVO authUserDetailVO = new ComElderAuthUserDetailVO(); |
| | | BeanUtils.copyProperties(authUserDO,authUserDetailVO); |
| | |
| | | |
| | | |
| | | Integer updateEldersAuthElderly(ComEldersAuthElderlyDO comEldersAuthElderlyDO); |
| | | |
| | | /** |
| | | * 根据老人库id删除绑定用户的关系 |
| | | * @param elderId 老人库老人id |
| | | */ |
| | | void deleteEldersAuthUserById(@Param("elderId") Long elderId); |
| | | } |
| | |
| | | IPage<ComElderAuthUserAppVO> findByPage(Page page,@Param("userId") Long userId); |
| | | |
| | | |
| | | /** |
| | | * 统计当月家庭老人 有效认证记录数 |
| | | * @param elderId |
| | | * @return |
| | | */ |
| | | int countCurrentMonthValidAuthRecord(@Param("elderId") Long elderId); |
| | | } |
| | |
| | | |
| | | |
| | | @Select("<script> " + |
| | | " SELECT t.id, t.yearMonth, au.`type`, DATE_FORMAT(au.CREATE_AT,'%Y-%m-%d') AS create_at,\n" + |
| | | " SELECT distinct t.id, t.yearMonth, au.`type`, DATE_FORMAT(au.CREATE_AT,'%Y-%m-%d') AS create_at,\n" + |
| | | " case " + |
| | | " when fed.id IS NOT NULL then true\n" + |
| | | " ELSE false " + |
| | |
| | | public interface ComEldersAuthUserService extends IService<ComEldersAuthUserDO> { |
| | | |
| | | |
| | | |
| | | /** |
| | | * 检查当月是否可再次进行认证 |
| | | * @param elderId |
| | | * @return |
| | | */ |
| | | boolean checkReAuthAgain(Long elderId); |
| | | } |
| | |
| | | List<ComEldersAuthElderlyDO> listNewDO = new ArrayList<>(); |
| | | List<ComEldersAuthElderlyDO> listUpdateDO = new ArrayList<>(); |
| | | list.forEach(e->{ |
| | | String idCardEncrypted = e.getIdCard(); |
| | | String idCardProto = e.getIdCard(); |
| | | if(idCardProto!=null && idCardProto.contains("x")){ |
| | | idCardProto = idCardProto.replaceAll("x", "X"); |
| | | } |
| | | String idCardEncrypted = idCardProto; |
| | | try { |
| | | idCardEncrypted = AESUtil.encrypt128(idCardEncrypted, aesKey); |
| | | } catch (Exception exp) { |
| | |
| | | |
| | | @Override |
| | | public R deleteEldersAuthElderly(Long id) { |
| | | this.baseMapper.deleteById(id); |
| | | return R.ok(); |
| | | if(this.baseMapper.deleteById(id) > 0){ |
| | | //删除用户关联的老人信息 |
| | | this.baseMapper.deleteEldersAuthUserById(id); |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | } |
| | |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | |
| | | /** |
| | | * 用户绑定老人关系 serviceImpl |
| | |
| | | @Service |
| | | public class ComEldersAuthUserServiceImpl extends ServiceImpl<ComEldersAuthUserMapper, ComEldersAuthUserDO> implements ComEldersAuthUserService { |
| | | |
| | | @Resource |
| | | private ComEldersAuthUserMapper comEldersAuthUserMapper; |
| | | |
| | | @Override |
| | | public boolean checkReAuthAgain(Long elderId) { |
| | | int validAuthRecord = comEldersAuthUserMapper.countCurrentMonthValidAuthRecord(elderId); |
| | | return validAuthRecord==0; |
| | | } |
| | | } |
| | |
| | | * @param eldersAuthFeedbackAddDTO |
| | | * @return 新增结果 |
| | | */ |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R addFeedback(EldersAuthFeedbackAddDTO eldersAuthFeedbackAddDTO){ |
| | | EldersAuthDO eldersAuthDO = eldersAuthDAO.selectById(eldersAuthFeedbackAddDTO.getAuthId()); |
| | | if(eldersAuthDO==null){ |
| | |
| | | eldersAuthFeedbackDO.setCreateAt(new Date()); |
| | | BeanUtils.copyProperties(eldersAuthFeedbackAddDTO, eldersAuthFeedbackDO); |
| | | if(eldersAuthFeedbackDAO.insert(eldersAuthFeedbackDO)>0){ |
| | | eldersAuthDO.setStatus("1"); |
| | | eldersAuthDO.setIdCard(null); |
| | | int updated = eldersAuthDAO.updateById(eldersAuthDO); |
| | | if(updated!=1){ |
| | | throw new ServiceException("更新认证记录状态失败"); |
| | | } |
| | | 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("更新认证记录状态失败"); |
| | | } |
| | | */ |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | |
| | | |
| | | if(authUser.getIsAuth().equals(ComEldersAuthUserDO.isAuth.yes)){ |
| | | List<EldersAuthDO> authDOS = eldersAuthDAO.selectList(new QueryWrapper<EldersAuthDO>().lambda() |
| | | .eq(EldersAuthDO::getSumitUserId,authPageDTO.getUserId()).orderByDesc(EldersAuthDO::getCreateAt)); |
| | | .eq(EldersAuthDO::getFamilyUserId,authUser.getElderId()).orderByDesc(EldersAuthDO::getCreateAt)); |
| | | if(!authDOS.isEmpty()){ |
| | | EldersAuthDO authDO = authDOS.get(0); |
| | | if(authDO.getType().equals(1)){//视频认证 |
| | |
| | | |
| | | </update> |
| | | |
| | | <delete id="deleteEldersAuthUserById"> |
| | | delete from com_elders_auth_user where big_age_id = #{elderId} |
| | | </delete> |
| | | |
| | | </mapper> |
| | |
| | | ceau.id_card, |
| | | ceau.relation, |
| | | ceau.is_auth, |
| | | ca.`name` AS communityName |
| | | ca.`name` AS communityName, |
| | | ae.is_exist |
| | | FROM |
| | | com_elders_auth_user AS ceau |
| | | LEFT JOIN com_act AS ca ON ca.community_id = ceau.community_id |
| | | LEFT JOIN com_elders_auth_elderly ae ON ceau.big_age_id = ae.id |
| | | where ceau.user_id = #{userId} |
| | | order by ceau.create_at desc |
| | | |
| | | |
| | | </select> |
| | | |
| | | <select id="countCurrentMonthValidAuthRecord" resultType="java.lang.Integer" > |
| | | SELECT COUNT(*) |
| | | FROM com_elders_auth |
| | | WHERE FAMILY_USER_ID = #{elderId} AND DATE_FORMAT(create_at, '%Y-%m') = DATE_FORMAT(NOW(), '%Y-%m') AND (`type` = 2 OR ( type=1 AND `STATUS` IS NULL) ) |
| | | </select> |
| | | |
| | | |
| | | </mapper> |
| | |
| | | if(easyPhotoDO.getHandleStatus().equals(ComActEasyPhotoDO.handleStatus.yes)){ |
| | | return R.fail("该随手拍已处理"); |
| | | } |
| | | if(easyPhotoDO.getIsReport().equals(ComActEasyPhotoDO.isReport.no)){ |
| | | return R.fail("该随手拍未上报社区"); |
| | | } |
| | | BeanUtils.copyProperties(photoHandleDTO,easyPhotoDO); |
| | | easyPhotoDO.setHandleStatus(ComActEasyPhotoDO.handleStatus.yes); |
| | | easyPhotoDO.setFeedbackAt(new Date()); |
| | |
| | | import com.panzhihua.common.model.vos.user.SysUserVO; |
| | | import com.panzhihua.common.service.community.CommunityService; |
| | | import com.panzhihua.common.service.user.UserService; |
| | | import com.panzhihua.common.utlis.DateUtils; |
| | | import com.panzhihua.common.utlis.RichTextUtil; |
| | | import com.panzhihua.common.utlis.SensitiveUtil; |
| | | import com.panzhihua.service_dangjian.dao.*; |
| | |
| | | comPbMemberDO.setOrgId(partyOrganizationVO.getId()); |
| | | comPbMemberDO.setCommunityId(partyOrganizationVO.getCommunityId()); |
| | | } |
| | | comPbMemberDO.setEmploymentTime(partyBuildingMemberExcelVO.getEmploymentTime()); |
| | | comPbMemberDO.setJoinTime(partyBuildingMemberExcelVO.getJoinTime()); |
| | | |
| | | if(!DateUtils.isValidDate(partyBuildingMemberExcelVO.getEmploymentTime())){ |
| | | throw new PartyBuildingMemberException("导入失败,您导入的数据中有转正日期格式错误,错误数据:" + partyBuildingMemberExcelVO.getEmploymentTime() + ",错误人名:" + partyBuildingMemberExcelVO.getName()); |
| | | } |
| | | |
| | | if(!DateUtils.isValidDate(partyBuildingMemberExcelVO.getJoinTime())){ |
| | | throw new PartyBuildingMemberException("导入失败,您导入的数据中有入党日期格式错误,错误数据:" + partyBuildingMemberExcelVO.getJoinTime() + ",错误人名:" + partyBuildingMemberExcelVO.getName()); |
| | | } |
| | | |
| | | Date employmentTime = DateUtils.toValidDate(partyBuildingMemberExcelVO.getEmploymentTime()); |
| | | Date joinTime = DateUtils.toValidDate(partyBuildingMemberExcelVO.getJoinTime()); |
| | | |
| | | comPbMemberDO.setEmploymentTime(employmentTime); |
| | | comPbMemberDO.setJoinTime(joinTime); |
| | | comPbMemberDO.setName(partyBuildingMemberExcelVO.getName()); |
| | | comPbMemberDO.setIdCard(partyBuildingMemberExcelVO.getIdCard()); |
| | | comPbMemberDOS.add(comPbMemberDO); |