From af29c0d213a18b0151e5d5478feb4c7c953a3723 Mon Sep 17 00:00:00 2001 From: hanrenchun Date: Thu, 14 Dec 2023 16:22:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A5=E5=A4=84=E8=AD=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/JcjCjxxViewOracle.java | 1 - .../domain/JcjJjxxViewMysql.java | 3 +- .../mysqloracletest/domain/MetaAlarmInfo.java | 35 ++++- .../domain/MetaHandleAlarmInfo.java | 30 +++- .../mapper/JcjCjxxViewMysqlMapper.java | 1 - .../mapper/JcjCjxxViewOracleMapper.java | 1 + .../mapper/JcjJjxxViewOracleMapper.java | 2 +- .../mapper/MetaAlarmInfoMapper.java | 2 +- .../mapper/MetaHandleAlarmInfoMapper.java | 2 +- .../service/JcjCjxxViewMysqlService.java | 2 - .../service/JcjJjxxViewMysqlService.java | 2 +- .../service/MetaAlarmInfoService.java | 2 +- .../service/MetaHandleAlarmInfoService.java | 2 +- .../impl/JcjCjxxViewMysqlServiceImpl.java | 1 - .../impl/JcjJjxxViewOracleServiceImpl.java | 3 - .../impl/MetaAlarmInfoServiceImpl.java | 2 +- .../impl/MetaHandleAlarmInfoServiceImpl.java | 2 +- .../mysqloracletest/task/AlarmInfoTask.java | 21 +-- .../ssf/mysqloracletest/task/JcjCjxxTask.java | 4 +- .../ssf/mysqloracletest/task/JcjJjxxTask.java | 4 - .../task/MetaHandleAlarmTask.java | 141 ++++++++++++++++++ 21 files changed, 222 insertions(+), 41 deletions(-) create mode 100644 src/main/java/com/ssf/mysqloracletest/task/MetaHandleAlarmTask.java diff --git a/src/main/java/com/ssf/mysqloracletest/domain/JcjCjxxViewOracle.java b/src/main/java/com/ssf/mysqloracletest/domain/JcjCjxxViewOracle.java index c51f22a..1a9fb18 100644 --- a/src/main/java/com/ssf/mysqloracletest/domain/JcjCjxxViewOracle.java +++ b/src/main/java/com/ssf/mysqloracletest/domain/JcjCjxxViewOracle.java @@ -1,6 +1,5 @@ package com.ssf.mysqloracletest.domain; -import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.io.Serializable; diff --git a/src/main/java/com/ssf/mysqloracletest/domain/JcjJjxxViewMysql.java b/src/main/java/com/ssf/mysqloracletest/domain/JcjJjxxViewMysql.java index 3078daa..373b11a 100644 --- a/src/main/java/com/ssf/mysqloracletest/domain/JcjJjxxViewMysql.java +++ b/src/main/java/com/ssf/mysqloracletest/domain/JcjJjxxViewMysql.java @@ -3,11 +3,10 @@ package com.ssf.mysqloracletest.domain; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; import java.io.Serializable; -import lombok.Data; - /** * @TableName jcj_jjxx_view */ diff --git a/src/main/java/com/ssf/mysqloracletest/domain/MetaAlarmInfo.java b/src/main/java/com/ssf/mysqloracletest/domain/MetaAlarmInfo.java index 0549066..0a6b65c 100644 --- a/src/main/java/com/ssf/mysqloracletest/domain/MetaAlarmInfo.java +++ b/src/main/java/com/ssf/mysqloracletest/domain/MetaAlarmInfo.java @@ -4,10 +4,11 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; -import lombok.Data; /** * 接警信息表 @@ -22,71 +23,103 @@ public class MetaAlarmInfo implements Serializable { @TableId(type = IdType.AUTO) private Long id; + @TableField(value = "alarm_code") private String alarmCode; /** * 接警人姓名 */ + @TableField(value = "police_receiver_name") private String policeReceiverName; /** * 接警单位 */ + @TableField(value = "alarm_response_unit") private String alarmResponseUnit; /** * 接警时间 */ + @TableField(value = "alarm_response_time") private String alarmResponseTime; /** * 报警内容 */ + @TableField(value = "alarm_response_content") private String alarmResponseContent; /** * 报警类型名称 */ + @TableField(value = "alarm_response_type_name") private String alarmResponseTypeName; /** * 报警人姓名 */ + @TableField(value = "informant_name") private String informantName; /** * 报警人联系方式 */ + @TableField(value = "informant_phone") private String informantPhone; /** * 报警时间 */ + @TableField(value = "informant_time") private String informantTime; /** * 接警事发地址 */ + @TableField(value = "alarm_address") private String alarmAddress; /** * 经度 */ + @TableField(value = "longitude") private BigDecimal longitude; /** * 纬度 */ + @TableField(value = "latitude") private BigDecimal latitude; /** * 创建时间 */ + @TableField(value = "create_time") private Date createTime; + /** + * 创建者 + */ + @TableField(value = "create_by") + private Integer createBy; + + /** + * 更新时间 + */ + @TableField(value = "update_time") + private Date updateTime; + + /** + * 更新者 + */ + @TableField(value = "update_by") + private Integer updateBy; + /** * 0:不活跃,1:活跃 */ + @TableField(value = "is_active") private Integer isActive; // @TableField(exist = false) diff --git a/src/main/java/com/ssf/mysqloracletest/domain/MetaHandleAlarmInfo.java b/src/main/java/com/ssf/mysqloracletest/domain/MetaHandleAlarmInfo.java index 860d5f5..3e4100f 100644 --- a/src/main/java/com/ssf/mysqloracletest/domain/MetaHandleAlarmInfo.java +++ b/src/main/java/com/ssf/mysqloracletest/domain/MetaHandleAlarmInfo.java @@ -4,9 +4,10 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + import java.io.Serializable; import java.util.Date; -import lombok.Data; /** * 处警信息表 @@ -24,51 +25,78 @@ public class MetaHandleAlarmInfo implements Serializable { /** * 警情编码 */ + @TableField(value = "alarm_code") private String alarmCode; /** * 处警单位名称 */ + @TableField(value = "handle_alarm_unit") private String handleAlarmUnit; /** * 处警时间 */ + @TableField(value = "handle_alarm_time") private String handleAlarmTime; /** * 处警简要警情 */ + @TableField(value = "handle_alarm_content") private String handleAlarmContent; /** * 处警详细地点 */ + @TableField(value = "handle_alarm_address") private String handleAlarmAddress; /** * 处警人姓名 */ + @TableField(value = "handle_alarm_user") private String handleAlarmUser; /** * 处境人姓名和编码 */ + @TableField(value = "handle_alarm_user_code") private String handleAlarmUserCode; /** * 处警结果 */ + @TableField(value = "handle_alarm_result") private String handleAlarmResult; /** * 创建时间 */ + @TableField(value = "create_time") private Date createTime; + /** + * 创建者 + */ + @TableField(value = "create_by") + private Integer createBy; + + /** + * 更新时间 + */ + @TableField(value = "update_time") + private Date updateTime; + + /** + * 更新者 + */ + @TableField(value = "update_by") + private Integer updateBy; /** * 0:不活跃,1:活跃 */ + @TableField(value = "is_active") private Integer isActive; @TableField(exist = false) diff --git a/src/main/java/com/ssf/mysqloracletest/mapper/JcjCjxxViewMysqlMapper.java b/src/main/java/com/ssf/mysqloracletest/mapper/JcjCjxxViewMysqlMapper.java index 458aa29..8ea65a0 100644 --- a/src/main/java/com/ssf/mysqloracletest/mapper/JcjCjxxViewMysqlMapper.java +++ b/src/main/java/com/ssf/mysqloracletest/mapper/JcjCjxxViewMysqlMapper.java @@ -2,7 +2,6 @@ package com.ssf.mysqloracletest.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql; -import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql; import org.apache.ibatis.annotations.Mapper; /** diff --git a/src/main/java/com/ssf/mysqloracletest/mapper/JcjCjxxViewOracleMapper.java b/src/main/java/com/ssf/mysqloracletest/mapper/JcjCjxxViewOracleMapper.java index 497e189..bad760a 100644 --- a/src/main/java/com/ssf/mysqloracletest/mapper/JcjCjxxViewOracleMapper.java +++ b/src/main/java/com/ssf/mysqloracletest/mapper/JcjCjxxViewOracleMapper.java @@ -3,6 +3,7 @@ package com.ssf.mysqloracletest.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ssf.mysqloracletest.domain.JcjCjxxViewOracle; import org.apache.ibatis.annotations.Mapper; + import java.util.List; import java.util.Map; diff --git a/src/main/java/com/ssf/mysqloracletest/mapper/JcjJjxxViewOracleMapper.java b/src/main/java/com/ssf/mysqloracletest/mapper/JcjJjxxViewOracleMapper.java index 6891ac4..f2cf97a 100644 --- a/src/main/java/com/ssf/mysqloracletest/mapper/JcjJjxxViewOracleMapper.java +++ b/src/main/java/com/ssf/mysqloracletest/mapper/JcjJjxxViewOracleMapper.java @@ -8,7 +8,7 @@ import java.util.List; import java.util.Map; @Mapper -public interface JcjJjxxViewOracleMapper extends BaseMapper { +public interface JcjJjxxViewOracleMapper extends BaseMapper { public int countJjxx(); public List getJjxxList(Map map); diff --git a/src/main/java/com/ssf/mysqloracletest/mapper/MetaAlarmInfoMapper.java b/src/main/java/com/ssf/mysqloracletest/mapper/MetaAlarmInfoMapper.java index d6a6387..685557e 100644 --- a/src/main/java/com/ssf/mysqloracletest/mapper/MetaAlarmInfoMapper.java +++ b/src/main/java/com/ssf/mysqloracletest/mapper/MetaAlarmInfoMapper.java @@ -1,7 +1,7 @@ package com.ssf.mysqloracletest.mapper; -import com.ssf.mysqloracletest.domain.MetaAlarmInfo; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ssf.mysqloracletest.domain.MetaAlarmInfo; import org.apache.ibatis.annotations.Mapper; /** diff --git a/src/main/java/com/ssf/mysqloracletest/mapper/MetaHandleAlarmInfoMapper.java b/src/main/java/com/ssf/mysqloracletest/mapper/MetaHandleAlarmInfoMapper.java index d35213d..65ac7f5 100644 --- a/src/main/java/com/ssf/mysqloracletest/mapper/MetaHandleAlarmInfoMapper.java +++ b/src/main/java/com/ssf/mysqloracletest/mapper/MetaHandleAlarmInfoMapper.java @@ -1,7 +1,7 @@ package com.ssf.mysqloracletest.mapper; -import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo; import org.apache.ibatis.annotations.Mapper; /** diff --git a/src/main/java/com/ssf/mysqloracletest/service/JcjCjxxViewMysqlService.java b/src/main/java/com/ssf/mysqloracletest/service/JcjCjxxViewMysqlService.java index 2f0f096..d74201d 100644 --- a/src/main/java/com/ssf/mysqloracletest/service/JcjCjxxViewMysqlService.java +++ b/src/main/java/com/ssf/mysqloracletest/service/JcjCjxxViewMysqlService.java @@ -2,8 +2,6 @@ package com.ssf.mysqloracletest.service; import com.baomidou.mybatisplus.extension.service.IService; import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql; -import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql; -import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql; /** * @author 28758 diff --git a/src/main/java/com/ssf/mysqloracletest/service/JcjJjxxViewMysqlService.java b/src/main/java/com/ssf/mysqloracletest/service/JcjJjxxViewMysqlService.java index ec2e244..b485a53 100644 --- a/src/main/java/com/ssf/mysqloracletest/service/JcjJjxxViewMysqlService.java +++ b/src/main/java/com/ssf/mysqloracletest/service/JcjJjxxViewMysqlService.java @@ -1,7 +1,7 @@ package com.ssf.mysqloracletest.service; -import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql; import com.baomidou.mybatisplus.extension.service.IService; +import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql; /** * @author 10503 diff --git a/src/main/java/com/ssf/mysqloracletest/service/MetaAlarmInfoService.java b/src/main/java/com/ssf/mysqloracletest/service/MetaAlarmInfoService.java index f80e28f..cb7de64 100644 --- a/src/main/java/com/ssf/mysqloracletest/service/MetaAlarmInfoService.java +++ b/src/main/java/com/ssf/mysqloracletest/service/MetaAlarmInfoService.java @@ -1,7 +1,7 @@ package com.ssf.mysqloracletest.service; -import com.ssf.mysqloracletest.domain.MetaAlarmInfo; import com.baomidou.mybatisplus.extension.service.IService; +import com.ssf.mysqloracletest.domain.MetaAlarmInfo; /** * @author 10503 diff --git a/src/main/java/com/ssf/mysqloracletest/service/MetaHandleAlarmInfoService.java b/src/main/java/com/ssf/mysqloracletest/service/MetaHandleAlarmInfoService.java index f24e401..935dc74 100644 --- a/src/main/java/com/ssf/mysqloracletest/service/MetaHandleAlarmInfoService.java +++ b/src/main/java/com/ssf/mysqloracletest/service/MetaHandleAlarmInfoService.java @@ -1,7 +1,7 @@ package com.ssf.mysqloracletest.service; -import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo; import com.baomidou.mybatisplus.extension.service.IService; +import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo; /** * @author 28758 diff --git a/src/main/java/com/ssf/mysqloracletest/service/impl/JcjCjxxViewMysqlServiceImpl.java b/src/main/java/com/ssf/mysqloracletest/service/impl/JcjCjxxViewMysqlServiceImpl.java index c8cbc05..0189f89 100644 --- a/src/main/java/com/ssf/mysqloracletest/service/impl/JcjCjxxViewMysqlServiceImpl.java +++ b/src/main/java/com/ssf/mysqloracletest/service/impl/JcjCjxxViewMysqlServiceImpl.java @@ -3,7 +3,6 @@ package com.ssf.mysqloracletest.service.impl; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql; -import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql; import com.ssf.mysqloracletest.mapper.JcjCjxxViewMysqlMapper; import com.ssf.mysqloracletest.service.JcjCjxxViewMysqlService; import lombok.RequiredArgsConstructor; diff --git a/src/main/java/com/ssf/mysqloracletest/service/impl/JcjJjxxViewOracleServiceImpl.java b/src/main/java/com/ssf/mysqloracletest/service/impl/JcjJjxxViewOracleServiceImpl.java index 24dd003..f69315d 100644 --- a/src/main/java/com/ssf/mysqloracletest/service/impl/JcjJjxxViewOracleServiceImpl.java +++ b/src/main/java/com/ssf/mysqloracletest/service/impl/JcjJjxxViewOracleServiceImpl.java @@ -2,11 +2,8 @@ package com.ssf.mysqloracletest.service.impl; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql; import com.ssf.mysqloracletest.domain.JcjJjxxViewOracle; import com.ssf.mysqloracletest.mapper.JcjJjxxViewOracleMapper; -import com.ssf.mysqloracletest.mapper.JcjJxxViewMysqlMapper; -import com.ssf.mysqloracletest.service.JcjJjxxViewMysqlService; import com.ssf.mysqloracletest.service.JcjJjxxViewOracleService; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; diff --git a/src/main/java/com/ssf/mysqloracletest/service/impl/MetaAlarmInfoServiceImpl.java b/src/main/java/com/ssf/mysqloracletest/service/impl/MetaAlarmInfoServiceImpl.java index 20dfca5..6fe8583 100644 --- a/src/main/java/com/ssf/mysqloracletest/service/impl/MetaAlarmInfoServiceImpl.java +++ b/src/main/java/com/ssf/mysqloracletest/service/impl/MetaAlarmInfoServiceImpl.java @@ -3,8 +3,8 @@ package com.ssf.mysqloracletest.service.impl; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ssf.mysqloracletest.domain.MetaAlarmInfo; -import com.ssf.mysqloracletest.service.MetaAlarmInfoService; import com.ssf.mysqloracletest.mapper.MetaAlarmInfoMapper; +import com.ssf.mysqloracletest.service.MetaAlarmInfoService; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; diff --git a/src/main/java/com/ssf/mysqloracletest/service/impl/MetaHandleAlarmInfoServiceImpl.java b/src/main/java/com/ssf/mysqloracletest/service/impl/MetaHandleAlarmInfoServiceImpl.java index 27e5fec..1e149cc 100644 --- a/src/main/java/com/ssf/mysqloracletest/service/impl/MetaHandleAlarmInfoServiceImpl.java +++ b/src/main/java/com/ssf/mysqloracletest/service/impl/MetaHandleAlarmInfoServiceImpl.java @@ -3,8 +3,8 @@ package com.ssf.mysqloracletest.service.impl; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo; -import com.ssf.mysqloracletest.service.MetaHandleAlarmInfoService; import com.ssf.mysqloracletest.mapper.MetaHandleAlarmInfoMapper; +import com.ssf.mysqloracletest.service.MetaHandleAlarmInfoService; import org.springframework.stereotype.Service; /** diff --git a/src/main/java/com/ssf/mysqloracletest/task/AlarmInfoTask.java b/src/main/java/com/ssf/mysqloracletest/task/AlarmInfoTask.java index aad22fe..b59061c 100644 --- a/src/main/java/com/ssf/mysqloracletest/task/AlarmInfoTask.java +++ b/src/main/java/com/ssf/mysqloracletest/task/AlarmInfoTask.java @@ -7,6 +7,7 @@ import com.ssf.mysqloracletest.domain.MetaAlarmInfo; import com.ssf.mysqloracletest.service.JcjJjxxViewMysqlService; import com.ssf.mysqloracletest.service.MetaAlarmInfoService; import com.ssf.mysqloracletest.utils.ConfigParam; +import com.ssf.mysqloracletest.utils.NumKit; import com.ssf.mysqloracletest.utils.StringKit; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -15,7 +16,6 @@ import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import javax.annotation.Resource; -import java.math.BigDecimal; import java.util.List; import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorService; @@ -82,6 +82,7 @@ public class AlarmInfoTask { JcjJjxxViewMysql jjxxViewMysqlCp = new JcjJjxxViewMysql(); try { BeanUtils.copyProperties(bean, jjxxViewMysqlCp); + JcjJjxxViewMysql jwd = jjxxViewMysqlService.selectJcjJxxByJJBH(bean.getJJBH()); MetaAlarmInfo alarmInfo = new MetaAlarmInfo(); //设置目标字段的值 //alarm_code<-----JJBH 接警编号 @@ -105,23 +106,15 @@ public class AlarmInfoTask { //alarm_response_unit<-----JJDWMC接警单位名称 alarmInfo.setAlarmResponseUnit(jjxxViewMysqlCp.getJJDWMC()); - if (jjxxViewMysqlCp.getWDZB() != null) { - //转换类型 - BigDecimal WDZBDecimal = new BigDecimal(jjxxViewMysqlCp.getWDZB()); - //latitude(纬度)<-----WDZB纬度坐标 - alarmInfo.setLatitude(WDZBDecimal); - } else { + if (jwd.getGIS_Y() != null) { + //latitude(纬度)<-----WDZB纬度坐标 - alarmInfo.setLatitude(null); + alarmInfo.setLatitude(NumKit.checkBigDecimal(jwd.getGIS_Y())); } - if (jjxxViewMysqlCp.getJDZB() != null) { - BigDecimal JDZBDecimal = new BigDecimal(jjxxViewMysqlCp.getJDZB()); - //longitude(经度)<-----JDZB经度坐标 - alarmInfo.setLatitude(JDZBDecimal); - } else { + if (jwd.getGIS_X() != null) { //longitude(经度)<-----JDZB经度坐标 - alarmInfo.setLongitude(null); + alarmInfo.setLongitude(NumKit.checkBigDecimal(jwd.getGIS_X())); } boolean b = alarmInfoService.save(alarmInfo); diff --git a/src/main/java/com/ssf/mysqloracletest/task/JcjCjxxTask.java b/src/main/java/com/ssf/mysqloracletest/task/JcjCjxxTask.java index 5100199..d0127d0 100644 --- a/src/main/java/com/ssf/mysqloracletest/task/JcjCjxxTask.java +++ b/src/main/java/com/ssf/mysqloracletest/task/JcjCjxxTask.java @@ -3,7 +3,6 @@ package com.ssf.mysqloracletest.task; import cn.hutool.core.io.FileUtil; import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql; import com.ssf.mysqloracletest.domain.JcjCjxxViewOracle; -import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql; import com.ssf.mysqloracletest.service.JcjCjxxViewMysqlService; import com.ssf.mysqloracletest.service.JcjCjxxViewOracleService; import com.ssf.mysqloracletest.utils.ConfigParam; @@ -17,7 +16,6 @@ import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.io.File; -import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.*; import java.util.concurrent.CountDownLatch; @@ -165,7 +163,7 @@ public class JcjCjxxTask { //1 去mysql查出当前最大时间 JcjCjxxViewMysql cjxxViewMysql = cjxxMysqlService.selectRecordOrderByRksj(); //2 用得到的最大时间去oracle 查询大于这个时间的记录 - List list = cjxxOracleService.getRealTimeRecording(cjxxViewMysql.getCJSJ()); + List list = cjxxOracleService.getRealTimeRecording(cjxxViewMysql.getWS_RKSJ()); //3 解析入库 for (JcjCjxxViewOracle cjxx : list) { JcjCjxxViewMysql sBean = new JcjCjxxViewMysql(); diff --git a/src/main/java/com/ssf/mysqloracletest/task/JcjJjxxTask.java b/src/main/java/com/ssf/mysqloracletest/task/JcjJjxxTask.java index a268934..52a5061 100644 --- a/src/main/java/com/ssf/mysqloracletest/task/JcjJjxxTask.java +++ b/src/main/java/com/ssf/mysqloracletest/task/JcjJjxxTask.java @@ -118,10 +118,6 @@ public class JcjJjxxTask { return; } - if (!"true".equals(ConfigParam.JjxxSwitch)) { - return; - } - //1 去mysql查出当前最大时间 JcjJjxxViewMysql jcjJjxxViewMysql = jcjJjxxViewMysqlService.selectRecordOrderByRksj(); //2 用得到的最大时间去oracle 查询大于这个时间的记录 diff --git a/src/main/java/com/ssf/mysqloracletest/task/MetaHandleAlarmTask.java b/src/main/java/com/ssf/mysqloracletest/task/MetaHandleAlarmTask.java new file mode 100644 index 0000000..54dfcc9 --- /dev/null +++ b/src/main/java/com/ssf/mysqloracletest/task/MetaHandleAlarmTask.java @@ -0,0 +1,141 @@ +package com.ssf.mysqloracletest.task; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql; +import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo; +import com.ssf.mysqloracletest.service.JcjCjxxViewMysqlService; +import com.ssf.mysqloracletest.service.MetaHandleAlarmInfoService; +import com.ssf.mysqloracletest.utils.ConfigParam; +import com.ssf.mysqloracletest.utils.StringKit; +import lombok.RequiredArgsConstructor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.BeanUtils; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +import java.util.List; +import java.util.concurrent.CountDownLatch; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +/** + * 用户数据接入 + */ +@Component +@RequiredArgsConstructor +public class MetaHandleAlarmTask { + + private static final Logger logger = LoggerFactory.getLogger(MetaHandleAlarmTask.class); + + private final MetaHandleAlarmInfoService metaHandleAlarmInfoService; + private final JcjCjxxViewMysqlService jcjCjxxViewMysqlService; + + @Scheduled(initialDelay = 100, fixedDelay = 3000) + public void transcjxx() { + + + if (!"true".equals(ConfigParam.metaHandleAlarmSwitch)) { + return; + } + + + try { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.isNull("status"); + Page page = new Page<>(1, 1000); + List resultList = jcjCjxxViewMysqlService.page(page, queryWrapper).getRecords(); + CountDownLatch latch = new CountDownLatch(resultList.size()); +// ExecutorService cjxxPool = Executors.newFixedThreadPool(5); + + for (JcjCjxxViewMysql bean : resultList) { +// cjxxPool.submit(() -> { + cleanCjxx(bean); + latch.countDown(); +// }); + } + + + try { + // Wait for all threads to complete + latch.await(); + } catch (InterruptedException e) { + e.printStackTrace(); + } + // 关闭线程池 +// cjxxPool.shutdown(); + + } catch (Exception e) { + logger.info(StringKit.getTrace(e)); + } + } + + private void cleanCjxx(JcjCjxxViewMysql bean) { + JcjCjxxViewMysql cjxx = new JcjCjxxViewMysql(); + try { + BeanUtils.copyProperties(bean, cjxx); + MetaHandleAlarmInfo metaHandleAlarmInfo = new MetaHandleAlarmInfo(); + metaHandleAlarmInfo.setAlarmCode(cjxx.getJJBH()); + metaHandleAlarmInfo.setHandleAlarmUnit(cjxx.getCJDWMC()); + metaHandleAlarmInfo.setHandleAlarmTime(cjxx.getCJSJ()); + metaHandleAlarmInfo.setHandleAlarmContent(cjxx.getCLJGNR()); + metaHandleAlarmInfo.setHandleAlarmAddress(cjxx.getCJXXDD()); + if (!containsChinese(cjxx.getCJR())) { + metaHandleAlarmInfo.setHandleAlarmUser(cjxx.getCJRHZXS()); + metaHandleAlarmInfo.setHandleAlarmUserCode(cjxx.getCJR()); + }else { + String s = extractChinese(cjxx.getCJR()); + String s1 = extractNonChinese(cjxx.getCJR()); + String substring = s1.substring(0, s1.length() - 1); + if (cjxx.getCJRHZXS()!=null) { + metaHandleAlarmInfo.setHandleAlarmUser(cjxx.getCJRHZXS() +","+ s); + }else { + metaHandleAlarmInfo.setHandleAlarmUser(s); + } + metaHandleAlarmInfo.setHandleAlarmUserCode(substring); + } + metaHandleAlarmInfo.setHandleAlarmResult(cjxx.getCJJGMC()); + boolean save = metaHandleAlarmInfoService.save(metaHandleAlarmInfo); + if (save) { + cjxx.setStatus("1"); + jcjCjxxViewMysqlService.updateCjxxById(cjxx); + } + } catch (Exception e) { + logger.info(StringKit.getTrace(e)); + cjxx.setStatus("2"); + jcjCjxxViewMysqlService.updateCjxxById(cjxx); + } + + } + + private static boolean containsChinese(String str) { + Pattern pattern = Pattern.compile("[\u4e00-\u9fa5]"); + Matcher matcher = pattern.matcher(str); + return matcher.find(); + } + + // 提取字符串中的中文 + private static String extractChinese(String str) { + Pattern pattern = Pattern.compile("[\u4e00-\u9fa5]"); + Matcher matcher = pattern.matcher(str); + + StringBuilder chineseCharacters = new StringBuilder(); + while (matcher.find()) { + chineseCharacters.append(matcher.group()); + } + return chineseCharacters.toString(); + } + + private static String extractNonChinese(String str) { + Pattern pattern = Pattern.compile("[^\u4e00-\u9fa5]"); + Matcher matcher = pattern.matcher(str); + + StringBuilder nonChineseCharacters = new StringBuilder(); + while (matcher.find()) { + nonChineseCharacters.append(matcher.group()); + } + + return nonChineseCharacters.toString(); + } +}