From 3d2d6106807c842b05f76204bc8229f57ae72a5c Mon Sep 17 00:00:00 2001 From: sjh Date: Fri, 25 Oct 2024 09:02:40 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=BB=BA=E6=A8=A1=E5=9E=8B3=E3=80=814?= =?UTF-8?q?=EF=BC=9A=E6=89=A7=E6=B3=95=E5=8A=9E=E6=A1=88=E5=9C=BA=E6=89=80?= =?UTF-8?q?=E7=99=BB=E8=AE=B0=E6=97=B6=E9=95=BF=E8=B6=85=E6=97=B6=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E7=9B=91=E7=9D=A3=E6=A8=A1=E5=9E=8B=E3=80=81=E7=96=91?= =?UTF-8?q?=E4=BC=BC=E6=BC=8F=E7=99=BB=E6=89=A7=E6=B3=95=E5=8A=9E=E6=A1=88?= =?UTF-8?q?=E5=9C=BA=E6=89=80=E9=97=AE=E9=A2=98=E7=9B=91=E7=9D=A3=E6=A8=A1?= =?UTF-8?q?=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/BusinessDepartService.java | 10 ++++ .../supervision/service/ModelClueService.java | 56 +++++++++++++++++-- 2 files changed, 60 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/biutag/supervision/service/BusinessDepartService.java b/src/main/java/com/biutag/supervision/service/BusinessDepartService.java index 281048d..9bc429d 100644 --- a/src/main/java/com/biutag/supervision/service/BusinessDepartService.java +++ b/src/main/java/com/biutag/supervision/service/BusinessDepartService.java @@ -70,6 +70,16 @@ public class BusinessDepartService extends ServiceImpl { List modelClues = new ArrayList<>(); if (modelId == 2) { // 2号模型:行政、刑事案件受立案不及时问题监督模型 return getModelCluesForModel2(modelClues); + } else if (modelId == 4) { // 4号模型:疑似漏登执法办案场所问题监督模型 + List> maps = modelClueDataMapper.selectByUniqueKeys(sql); + for (Map data : maps) { + ModelClue modelClue = new ModelClue(); + modelClue.setData(JSONObject.toJSONString(maps)); + modelClue.setStatus(0); + modelClue.setInvolveDepartId((String) data.get("involve_depart_id")); + modelClue.setInvolveDepartName((String) data.get("involve_depart_name")); + modelClue.setThingDesc("在" + getNowTime() + "之前的1个月内," + data.get("involve_depart_name") + + "的总警情数为" + data.get("zjjs") + + ",执法场所登记数为" + data.get("zfcsdjs") + + ",每100起警情执法场所登记比例为" + data.get("bl") + + ",低于全市平均值(" + data.get("avg_percentage") + + "%),疑似漏登执法办案场所。"); + modelClues.add(modelClue); + } + return modelClues; } else { modelClues = modelClueDataMapper.selectDataByDynamicSql(sql); } List uniqueKeys = modelClues.stream().map(ModelClue::getUniqueKey).filter(k -> k != null && !k.isEmpty()).toList(); - List oldUniqueKeys = this.listObjs(new LambdaQueryWrapper().select(ModelClue::getUniqueKey).eq(ModelClue::getStatus, 0), String::valueOf); + List oldUniqueKeys = this.listObjs(new LambdaQueryWrapper().select(ModelClue::getUniqueKey).eq(ModelClue::getStatus, 0).eq(ModelClue::getModelId, modelId), String::valueOf); List changeStatusIds = oldUniqueKeys.stream().filter(item -> !uniqueKeys.contains(item)).toList(); if (!changeStatusIds.isEmpty()) { modelClueMapper.update(null, new LambdaUpdateWrapper().in(ModelClue::getUniqueKey, changeStatusIds).set(ModelClue::getStatus, 1)); @@ -221,6 +238,21 @@ public class ModelClueService extends ServiceImpl { + ",当前案件状态为“" + data.get("AJZTmc") + "”,已经超过" + "30" + "日仍未受理。案件详情:" + thingDesc); + } else if (modelId == 3) { // 3号模型:执法办案场所登记时长超时问题监督模型 + if (data.get("lksj") != null && !data.get("lksj").equals("")) { + modelClue.setThingDesc("姓名" + data.get("xm") + + ",身份证号" + data.get("zjhm") + + ",于" + formatStringDate((String) data.get("djsj")) + + "登记进入" + data.get("csmc") + + ",离开时间为" + formatStringDate((String) data.get("lksj")) + + ",超过了48小时。"); + } else { + modelClue.setThingDesc("姓名" + data.get("xm") + + ",身份证号" + data.get("zjhm") + + ",于" + formatStringDate((String) data.get("djsj")) + + "登记进入" + data.get("csmc") + + ",没有离开时间。"); + } } break; } @@ -245,7 +277,7 @@ public class ModelClueService extends ServiceImpl { modelClue.setData(JSONObject.toJSONString(data)); modelClue.setStatus(0); modelClue.setThingDesc("该" + data.get("jqxzmc") - + "案件 接警单编号为" + data.get("jjdbh") + + "警情接警单编号为" + data.get("jjdbh") + ",报案时间为" + getDateString(data.get("bjsj")) + ",没有匹配到立案时间,受立案不及时。"); break; @@ -269,11 +301,11 @@ public class ModelClueService extends ServiceImpl { modelClue.setData(JSONObject.toJSONString(data)); modelClue.setStatus(0); modelClue.setThingDesc("该" + data.get("jqxzmc") - + "案件 编号为" + data.get("ajbh") - + ",接警单编号为" + data.get("jjdbh") + + "警情接警单编号为" + data.get("jjdbh") + ",报案时间为" + getDateString(data.get("bjsj")) - + ",立案时间为" + data.get("lasj") - + ",立案时间与报案时间超过7天,受立案不及时。"); + + ",案件编号为" + data.get("ajbh") + + ",立案时间为" + formatStringDate((String) data.get("lasj")) + + ",报案时间与立案时间超过7天,受立案不及时。"); break; } } @@ -345,4 +377,16 @@ public class ModelClueService extends ServiceImpl { return originalFieldName; } + public static String formatStringDate(String date) { + DateTimeFormatter inputFormatter = DateTimeFormatter.ofPattern("yyyyMMddHHmmss"); + DateTimeFormatter outputFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + LocalDateTime dateTime = LocalDateTime.parse(date, inputFormatter); + return dateTime.format(outputFormatter); + } + + public static String getNowTime() { + LocalDateTime now = LocalDateTime.now(); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + return now.format(formatter); + } }