diff --git a/src/main/java/com/biutag/supervision/job/Job.java b/src/main/java/com/biutag/supervision/job/Job.java index 5c263e2..d1b30e3 100644 --- a/src/main/java/com/biutag/supervision/job/Job.java +++ b/src/main/java/com/biutag/supervision/job/Job.java @@ -128,262 +128,18 @@ public class Job { // 每天一次 23:30:00 //todo 维权信息 // @Scheduled(cron = "0 30 23 * * ?") - public void testFun() throws ParseException { + public void rights() throws ParseException { log.info("rights--------------------"); log.info("维权信息抓取中---------------------"); // 维权 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - Date startTime = sdf.parse("2025-01-01 00:00:00"); - Date endTime = sdf.parse("2025-12-30 00:00:00"); - - List shrxxList = dwdAsjZfbaShrxxService.list(startTime,endTime); - - if(CollectionUtil.isEmpty(shrxxList)){ - log.info("时间范围内无受害人信息"); - return; - } - - log.info("数据:{}条", shrxxList.size()); +// Date startTime = sdf.parse("2025-01-01 00:00:00"); +// Date endTime = sdf.parse("2025-12-30 00:00:00"); - List zjList = shrxxList.stream().map(s->s.getZj()).toList(); - List tXsshrxxbs = tXsshrxxbService.getListAllByZjs(zjList); - if(CollectionUtil.isEmpty(tXsshrxxbs)){ - log.info("未找到受伤民辅警"); - return; - } - log.info("受害人信息数量数据:{}条", tXsshrxxbs.size()); - Map ajjbxxMap = new HashMap<>(); - tXsshrxxbs.forEach(item -> { - RpcApplySupervise rpcApply = new RpcApplySupervise(); - RpcApply apply=new RpcApply(); - apply.setRpcId(item.getZj()); - apply.setNumber(item.getAjbh()); - - apply.setType("1"); - rpcApply.setRpcId(item.getZj()); - rpcApply.setCrtTime(LocalDateTime.now()); - rpcApply.setUptTime(LocalDateTime.now()); - // 姓名 - rpcApply.setApplicantEmpName(item.getXm()); - - // 受害日期 - if (Objects.nonNull(item.getShrq())) { - rpcApply.setHappenTime(item.getShrq().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime()); - apply.setHappenTime(item.getShrq().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime()); - } - // 案件编号 - rpcApply.setCaseNumber(item.getAjbh()); - // 受害人警号 - SupPolice police = policeService.getByIdCode(item.getGmsfhm()); - if (Objects.nonNull(police)) { - // 警号 - apply.setApplicantEmpNo(police.getEmpNo()); - rpcApply.setApplicantEmpNo(police.getEmpNo()); - - RpcPerson person = new RpcPerson(); - person.setRpcId(item.getZj()); - if(ObjectUtil.isNotEmpty(police)){ - person.setJob(police.getJobType()); + Date startTime = Date.from(LocalDateTime.now().minusDays(1).withHour(0).withMinute(0).withSecond(0).withNano(0).atZone(ZoneId.systemDefault()).toInstant()); + Date endTime = Date.from(LocalDateTime.now().minusDays(1).withHour(23).withMinute(59).withSecond(59).atZone(ZoneId.systemDefault()).toInstant()); - } - person.setEmpNo(rpcApply.getApplicantEmpNo()); - person.setName(police.getName()); - apply.setApplicantEmpName(police.getName()); - if(!police.getOrgId().isEmpty()){ - person.setDepartId(police.getOrgId()); - apply.setDepartId(police.getOrgId()); - SupDepart departs = departService.getOne(new LambdaQueryWrapper().eq(SupDepart::getId,police.getOrgId())); - person.setDepartName(departs.getShortName()); - apply.setDepartName(departs.getShortName()); - } - rpcPersonService.saveOrUpdate(person); - } - - if (StrUtil.isNotBlank(item.getAjbh())) { - DwdAsjZfbaAjjbxx ajjbxx = new DwdAsjZfbaAjjbxx(); - if(ajjbxxMap != null && ajjbxxMap.containsKey(item.getAjbh())){ - ajjbxx = ajjbxxMap.get(item.getAjbh()); - }else{ - ajjbxx = dwdAsjZfbaAjjbxxMapper.selectByAjbh(item.getAjbh()); - ajjbxxMap.put(item.getAjbh(),ajjbxx); - } - //案件信息 - apply.setFactReason(ajjbxx.getJyaq()); - apply.setIncidentLinkName(ajjbxx.getAjlbmc()); - - - - //获取办案人id - if(StrUtil.isNotEmpty(ajjbxx.getBar1id())){ - DwdRyZfbaBaryxx dwdRyZfbaBaryxx = dwdRyZfbaBaryxxService.selectDataById(ajjbxx.getBar1id()); - if(ObjectUtil.isNotEmpty(dwdRyZfbaBaryxx)){ - SupPolice policeData = policeService.getByIdCode(dwdRyZfbaBaryxx.getZjhm()); - if(ObjectUtil.isNotEmpty(policeData)){ - rpcApply.setInputEmpNo(policeData.getEmpNo()); - }else{ - log.info("身份证:"+dwdRyZfbaBaryxx.getZjhm()+"未找到"); - } - - } - log.info("没有相关案件基本信息"); - - } - if(StrUtil.isNotBlank(ajjbxx.getAjmc())){ - rpcApply.setCaseName(ajjbxx.getAjmc()); - } - //获取办理单位进行处理 - if(StrUtil.isNotEmpty(ajjbxx.getBadwidmc())){ - String unitName = ajjbxx.getBadwidmc(); - log.info("单位名称:",ajjbxx.getBadwidmc()); - if(!unitName.contains("长沙市公安局")){ - unitName = unitName.split("湖南省")[1]; - } - SupDepart supDepart=supDepartMapper.selectOne(new LambdaQueryWrapper().eq(SupDepart::getName,unitName)); - if(ObjectUtil.isNotEmpty(supDepart)){ - rpcApply.setHandleDepartId(supDepart.getId()); - rpcApply.setHandleDepartName(supDepart.getShortName()); - } - //获取二级单位的信息 - String statisticsGroupName = null; - final String CHANGSHA_POLICE = "长沙市公安局"; - // 判断是否为非长沙市公安局 - if (unitName != null && !unitName.contains(CHANGSHA_POLICE)) { - // 非长沙市公安局 - String badwidmc = ajjbxx.getBadwidmc(); - if (badwidmc != null && !badwidmc.isEmpty()) { - // 优化字符串处理,使用indexOf代替split以提高性能 - int juIndex = badwidmc.indexOf('局'); - if (juIndex > 0) { - String beforeJu = badwidmc.substring(0, juIndex); - int shengIndex = beforeJu.indexOf('省'); - if (shengIndex > 0 && shengIndex < beforeJu.length() - 1) { - String afterSheng = beforeJu.substring(shengIndex + 1); - statisticsGroupName = "湖南省长沙市公安局" + afterSheng + "局"; - } else { - log.info("无法分割'省'或'省'后没有有效内容: {}", beforeJu); - } - } else { - log.info("无法在{}中找到'局'字", badwidmc); - } - } else { - log.info("获取到的办案单位名称为空或null"); - } - } - - SupDepart groupDept= supDepartMapper.selectOne(new LambdaQueryWrapper().eq(SupDepart::getName,statisticsGroupName)); - if(ObjectUtil.isNotEmpty(groupDept)){ - rpcApply.setSecondDepartId(groupDept.getId()); - } - } - log.info("单位信息处理完毕"); - // 案件信息 - rpcApply.setFactReason(ajjbxx.getJyaq()); - if ("刑事".equals(ajjbxx.getAjbzmc())) { - rpcApply.setInfringerHandle("刑事追究"); - rpcApply.setCaseType("1"); - apply.setInfringerHandle("刑事追究"); - } - if ("行政".equals(ajjbxx.getAjbzmc())) { - rpcApply.setInfringerHandle("行政处罚"); - rpcApply.setCaseType("2"); - apply.setInfringerHandle("行政处罚"); - } - rpcApply.setCaseCategory(ajjbxx.getAjlbmc()); - } - // 申请类型 - rpcApply.setType(RpcApplyTypeEnum.RIGHTS_PROTECTION.getValue()); - // 已办结 - rpcApply.setRpcStatus(ComfortStatus.completed.name()); - // 数据来源 - rpcApply.setSource("gbase"); - rpcApplySuperviseService.saveOrUpdate(rpcApply); - //受害人列表 - rpcApplyPersonService.remove(new LambdaQueryWrapper().eq(RpcApplyPerson::getRpcId,item.getZj())); - RpcApplyPerson rpcApplyPerson= new RpcApplyPerson(); - rpcApplyPerson.setRpcId(item.getZj()); - rpcApplyPerson.setType(RpcApplyTypeEnum.RIGHTS_PROTECTION.getValue()); - //受伤程度屏蔽 -// if(StrUtil.isNotBlank(item.getShcdmc())){ -// rpcApplyPerson.setInjurySeverity(item.getShcdmc()); -// } - rpcApplyPerson.setCreatTime(LocalDateTime.now()); - rpcApplyPerson.setUdpTime(LocalDateTime.now()); - rpcApplyPerson.setId(IdUtil.fastSimpleUUID()); - //身份证 - rpcApplyPerson.setIdCode(item.getGmsfhm()); - //受到侵权形式 -// rpcApplyPerson.setFormsOfTort(item.getShxsmc()); - rpcApplyPerson.setEmpName(item.getXm()); - if(StrUtil.isNotEmpty(item.getXbmc())){ - rpcApplyPerson.setGender("1".equals(item.getXbmc())?"男":"女"); - } - - if(Objects.nonNull(police)){ - rpcApply.setApplicantEmpNo(police.getEmpNo()); - } - rpcApplyPerson.setRpcId(item.getZj()); - - - //警员身份 - if(ObjectUtil.isNotEmpty(police)){ - rpcApplyPerson.setEmpType(police.getJobType()); - - } - rpcApplyPerson.setEmpNo(rpcApply.getApplicantEmpNo()); - - //存储受害人信息 - rpcApplyPersonService.saveOrUpdate(rpcApplyPerson); - - - - - - - //存储犯人信息 - List wfrwfxxes = dwdAsjZfbaWfrwfxxMapper.selectList(new LambdaQueryWrapper().eq(DwdAsjZfbaWfrwfxx::getAjbh,item.getAjbh())); - if (ArrayUtil.isNotEmpty(wfrwfxxes)){ - String result = wfrwfxxes.stream() - .filter(obj -> obj.getXm() != null && !obj.getXm().isEmpty()) - .map(DwdAsjZfbaWfrwfxx::getXm) - .collect(Collectors.joining("、")); - String clfss = wfrwfxxes.stream() - .filter(obj -> obj.getClfs() != null && !obj.getClfs().isEmpty()) - .map(DwdAsjZfbaWfrwfxx::getClfs) - .collect(Collectors.joining(";")); - apply.setInfringerName(result); - apply.setInfringerHandle(clfss); - wfrwfxxes.forEach(x->{ - rpcInfringerResultService.remove(new LambdaQueryWrapper().eq(RpcInfringerResult::getRpcId,item.getZj())); - RpcInfringerResult rpcInfringerResult =new RpcInfringerResult(); - rpcInfringerResult.setId(IdUtil.fastSimpleUUID()); - rpcInfringerResult.setRpcId(item.getZj()); - rpcInfringerResult.setTortName(x.getXm()); - rpcInfringerResult.setDefendHandleWayName(x.getClfs()); - //身份证 - rpcInfringerResult.setIdCode(x.getZjhm()); - //性别 - if(StrUtil.isNotEmpty(x.getXbmc())){ - rpcInfringerResult.setGender( x.getXbmc().split("性")[0]); - } - //保存犯人信息 - rpcInfringerResultService.saveOrUpdate(rpcInfringerResult); - }); - } - rpcApplyService.saveOrUpdate(apply); - }); - - log.info("录入完成-------------"); - } - - //todo 维权信息 - public void rights() throws ParseException { - log.info("rights--------------------"); - log.info("维权信息抓取中---------------------"); - // 维权 - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - Date startTime = sdf.parse("2025-01-01 00:00:00"); - Date endTime = sdf.parse("2025-12-30 00:00:00"); List shrxxList = dwdAsjZfbaShrxxService.list(startTime,endTime); if(CollectionUtil.isEmpty(shrxxList)){ log.info("时间范围内无受害人信息");