master
hanrenchun 9 months ago
parent 1651f43db0
commit af29c0d213

@ -1,6 +1,5 @@
package com.ssf.mysqloracletest.domain; package com.ssf.mysqloracletest.domain;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;

@ -3,11 +3,10 @@ package com.ssf.mysqloracletest.domain;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import lombok.Data;
/** /**
* @TableName jcj_jjxx_view * @TableName jcj_jjxx_view
*/ */

@ -4,10 +4,11 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
import lombok.Data;
/** /**
* *
@ -22,71 +23,103 @@ public class MetaAlarmInfo implements Serializable {
@TableId(type = IdType.AUTO) @TableId(type = IdType.AUTO)
private Long id; private Long id;
@TableField(value = "alarm_code")
private String alarmCode; private String alarmCode;
/** /**
* *
*/ */
@TableField(value = "police_receiver_name")
private String policeReceiverName; private String policeReceiverName;
/** /**
* *
*/ */
@TableField(value = "alarm_response_unit")
private String alarmResponseUnit; private String alarmResponseUnit;
/** /**
* *
*/ */
@TableField(value = "alarm_response_time")
private String alarmResponseTime; private String alarmResponseTime;
/** /**
* *
*/ */
@TableField(value = "alarm_response_content")
private String alarmResponseContent; private String alarmResponseContent;
/** /**
* *
*/ */
@TableField(value = "alarm_response_type_name")
private String alarmResponseTypeName; private String alarmResponseTypeName;
/** /**
* *
*/ */
@TableField(value = "informant_name")
private String informantName; private String informantName;
/** /**
* *
*/ */
@TableField(value = "informant_phone")
private String informantPhone; private String informantPhone;
/** /**
* *
*/ */
@TableField(value = "informant_time")
private String informantTime; private String informantTime;
/** /**
* *
*/ */
@TableField(value = "alarm_address")
private String alarmAddress; private String alarmAddress;
/** /**
* *
*/ */
@TableField(value = "longitude")
private BigDecimal longitude; private BigDecimal longitude;
/** /**
* *
*/ */
@TableField(value = "latitude")
private BigDecimal latitude; private BigDecimal latitude;
/** /**
* *
*/ */
@TableField(value = "create_time")
private Date createTime; 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: * 0:,1:
*/ */
@TableField(value = "is_active")
private Integer isActive; private Integer isActive;
// @TableField(exist = false) // @TableField(exist = false)

@ -4,9 +4,10 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import lombok.Data;
/** /**
* *
@ -24,51 +25,78 @@ public class MetaHandleAlarmInfo implements Serializable {
/** /**
* *
*/ */
@TableField(value = "alarm_code")
private String alarmCode; private String alarmCode;
/** /**
* *
*/ */
@TableField(value = "handle_alarm_unit")
private String handleAlarmUnit; private String handleAlarmUnit;
/** /**
* *
*/ */
@TableField(value = "handle_alarm_time")
private String handleAlarmTime; private String handleAlarmTime;
/** /**
* *
*/ */
@TableField(value = "handle_alarm_content")
private String handleAlarmContent; private String handleAlarmContent;
/** /**
* *
*/ */
@TableField(value = "handle_alarm_address")
private String handleAlarmAddress; private String handleAlarmAddress;
/** /**
* *
*/ */
@TableField(value = "handle_alarm_user")
private String handleAlarmUser; private String handleAlarmUser;
/** /**
* *
*/ */
@TableField(value = "handle_alarm_user_code")
private String handleAlarmUserCode; private String handleAlarmUserCode;
/** /**
* *
*/ */
@TableField(value = "handle_alarm_result")
private String handleAlarmResult; private String handleAlarmResult;
/** /**
* *
*/ */
@TableField(value = "create_time")
private Date createTime; 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: * 0:,1:
*/ */
@TableField(value = "is_active")
private Integer isActive; private Integer isActive;
@TableField(exist = false) @TableField(exist = false)

@ -2,7 +2,6 @@ package com.ssf.mysqloracletest.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql; import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql;
import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
/** /**

@ -3,6 +3,7 @@ package com.ssf.mysqloracletest.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ssf.mysqloracletest.domain.JcjCjxxViewOracle; import com.ssf.mysqloracletest.domain.JcjCjxxViewOracle;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;

@ -8,7 +8,7 @@ import java.util.List;
import java.util.Map; import java.util.Map;
@Mapper @Mapper
public interface JcjJjxxViewOracleMapper extends BaseMapper<JcjJjxxViewOracle> { public interface JcjJjxxViewOracleMapper extends BaseMapper<JcjJjxxViewOracle> {
public int countJjxx(); public int countJjxx();
public List<JcjJjxxViewOracle> getJjxxList(Map map); public List<JcjJjxxViewOracle> getJjxxList(Map map);

@ -1,7 +1,7 @@
package com.ssf.mysqloracletest.mapper; package com.ssf.mysqloracletest.mapper;
import com.ssf.mysqloracletest.domain.MetaAlarmInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ssf.mysqloracletest.domain.MetaAlarmInfo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
/** /**

@ -1,7 +1,7 @@
package com.ssf.mysqloracletest.mapper; package com.ssf.mysqloracletest.mapper;
import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
/** /**

@ -2,8 +2,6 @@ package com.ssf.mysqloracletest.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql; import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql;
import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql;
import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql;
/** /**
* @author 28758 * @author 28758

@ -1,7 +1,7 @@
package com.ssf.mysqloracletest.service; package com.ssf.mysqloracletest.service;
import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql;
/** /**
* @author 10503 * @author 10503

@ -1,7 +1,7 @@
package com.ssf.mysqloracletest.service; package com.ssf.mysqloracletest.service;
import com.ssf.mysqloracletest.domain.MetaAlarmInfo;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.ssf.mysqloracletest.domain.MetaAlarmInfo;
/** /**
* @author 10503 * @author 10503

@ -1,7 +1,7 @@
package com.ssf.mysqloracletest.service; package com.ssf.mysqloracletest.service;
import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo;
/** /**
* @author 28758 * @author 28758

@ -3,7 +3,6 @@ package com.ssf.mysqloracletest.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql; import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql;
import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql;
import com.ssf.mysqloracletest.mapper.JcjCjxxViewMysqlMapper; import com.ssf.mysqloracletest.mapper.JcjCjxxViewMysqlMapper;
import com.ssf.mysqloracletest.service.JcjCjxxViewMysqlService; import com.ssf.mysqloracletest.service.JcjCjxxViewMysqlService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;

@ -2,11 +2,8 @@ package com.ssf.mysqloracletest.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql;
import com.ssf.mysqloracletest.domain.JcjJjxxViewOracle; import com.ssf.mysqloracletest.domain.JcjJjxxViewOracle;
import com.ssf.mysqloracletest.mapper.JcjJjxxViewOracleMapper; 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 com.ssf.mysqloracletest.service.JcjJjxxViewOracleService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;

@ -3,8 +3,8 @@ package com.ssf.mysqloracletest.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ssf.mysqloracletest.domain.MetaAlarmInfo; import com.ssf.mysqloracletest.domain.MetaAlarmInfo;
import com.ssf.mysqloracletest.service.MetaAlarmInfoService;
import com.ssf.mysqloracletest.mapper.MetaAlarmInfoMapper; import com.ssf.mysqloracletest.mapper.MetaAlarmInfoMapper;
import com.ssf.mysqloracletest.service.MetaAlarmInfoService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;

@ -3,8 +3,8 @@ package com.ssf.mysqloracletest.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo; import com.ssf.mysqloracletest.domain.MetaHandleAlarmInfo;
import com.ssf.mysqloracletest.service.MetaHandleAlarmInfoService;
import com.ssf.mysqloracletest.mapper.MetaHandleAlarmInfoMapper; import com.ssf.mysqloracletest.mapper.MetaHandleAlarmInfoMapper;
import com.ssf.mysqloracletest.service.MetaHandleAlarmInfoService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
/** /**

@ -7,6 +7,7 @@ import com.ssf.mysqloracletest.domain.MetaAlarmInfo;
import com.ssf.mysqloracletest.service.JcjJjxxViewMysqlService; import com.ssf.mysqloracletest.service.JcjJjxxViewMysqlService;
import com.ssf.mysqloracletest.service.MetaAlarmInfoService; import com.ssf.mysqloracletest.service.MetaAlarmInfoService;
import com.ssf.mysqloracletest.utils.ConfigParam; import com.ssf.mysqloracletest.utils.ConfigParam;
import com.ssf.mysqloracletest.utils.NumKit;
import com.ssf.mysqloracletest.utils.StringKit; import com.ssf.mysqloracletest.utils.StringKit;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
@ -15,7 +16,6 @@ import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.List; import java.util.List;
import java.util.concurrent.CountDownLatch; import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ExecutorService; import java.util.concurrent.ExecutorService;
@ -82,6 +82,7 @@ public class AlarmInfoTask {
JcjJjxxViewMysql jjxxViewMysqlCp = new JcjJjxxViewMysql(); JcjJjxxViewMysql jjxxViewMysqlCp = new JcjJjxxViewMysql();
try { try {
BeanUtils.copyProperties(bean, jjxxViewMysqlCp); BeanUtils.copyProperties(bean, jjxxViewMysqlCp);
JcjJjxxViewMysql jwd = jjxxViewMysqlService.selectJcjJxxByJJBH(bean.getJJBH());
MetaAlarmInfo alarmInfo = new MetaAlarmInfo(); MetaAlarmInfo alarmInfo = new MetaAlarmInfo();
//设置目标字段的值 //设置目标字段的值
//alarm_code<-----JJBH 接警编号 //alarm_code<-----JJBH 接警编号
@ -105,23 +106,15 @@ public class AlarmInfoTask {
//alarm_response_unit<-----JJDWMC接警单位名称 //alarm_response_unit<-----JJDWMC接警单位名称
alarmInfo.setAlarmResponseUnit(jjxxViewMysqlCp.getJJDWMC()); alarmInfo.setAlarmResponseUnit(jjxxViewMysqlCp.getJJDWMC());
if (jjxxViewMysqlCp.getWDZB() != null) { if (jwd.getGIS_Y() != null) {
//转换类型
BigDecimal WDZBDecimal = new BigDecimal(jjxxViewMysqlCp.getWDZB());
//latitude(纬度)<-----WDZB纬度坐标
alarmInfo.setLatitude(WDZBDecimal);
} else {
//latitude(纬度)<-----WDZB纬度坐标 //latitude(纬度)<-----WDZB纬度坐标
alarmInfo.setLatitude(null); alarmInfo.setLatitude(NumKit.checkBigDecimal(jwd.getGIS_Y()));
} }
if (jjxxViewMysqlCp.getJDZB() != null) { if (jwd.getGIS_X() != null) {
BigDecimal JDZBDecimal = new BigDecimal(jjxxViewMysqlCp.getJDZB());
//longitude(经度)<-----JDZB经度坐标
alarmInfo.setLatitude(JDZBDecimal);
} else {
//longitude(经度)<-----JDZB经度坐标 //longitude(经度)<-----JDZB经度坐标
alarmInfo.setLongitude(null); alarmInfo.setLongitude(NumKit.checkBigDecimal(jwd.getGIS_X()));
} }
boolean b = alarmInfoService.save(alarmInfo); boolean b = alarmInfoService.save(alarmInfo);

@ -3,7 +3,6 @@ package com.ssf.mysqloracletest.task;
import cn.hutool.core.io.FileUtil; import cn.hutool.core.io.FileUtil;
import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql; import com.ssf.mysqloracletest.domain.JcjCjxxViewMysql;
import com.ssf.mysqloracletest.domain.JcjCjxxViewOracle; import com.ssf.mysqloracletest.domain.JcjCjxxViewOracle;
import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql;
import com.ssf.mysqloracletest.service.JcjCjxxViewMysqlService; import com.ssf.mysqloracletest.service.JcjCjxxViewMysqlService;
import com.ssf.mysqloracletest.service.JcjCjxxViewOracleService; import com.ssf.mysqloracletest.service.JcjCjxxViewOracleService;
import com.ssf.mysqloracletest.utils.ConfigParam; import com.ssf.mysqloracletest.utils.ConfigParam;
@ -17,7 +16,6 @@ import org.springframework.stereotype.Component;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.io.File; import java.io.File;
import java.text.DateFormat;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
import java.util.concurrent.CountDownLatch; import java.util.concurrent.CountDownLatch;
@ -165,7 +163,7 @@ public class JcjCjxxTask {
//1 去mysql查出当前最大时间 //1 去mysql查出当前最大时间
JcjCjxxViewMysql cjxxViewMysql = cjxxMysqlService.selectRecordOrderByRksj(); JcjCjxxViewMysql cjxxViewMysql = cjxxMysqlService.selectRecordOrderByRksj();
//2 用得到的最大时间去oracle 查询大于这个时间的记录 //2 用得到的最大时间去oracle 查询大于这个时间的记录
List<JcjCjxxViewOracle> list = cjxxOracleService.getRealTimeRecording(cjxxViewMysql.getCJSJ()); List<JcjCjxxViewOracle> list = cjxxOracleService.getRealTimeRecording(cjxxViewMysql.getWS_RKSJ());
//3 解析入库 //3 解析入库
for (JcjCjxxViewOracle cjxx : list) { for (JcjCjxxViewOracle cjxx : list) {
JcjCjxxViewMysql sBean = new JcjCjxxViewMysql(); JcjCjxxViewMysql sBean = new JcjCjxxViewMysql();

@ -118,10 +118,6 @@ public class JcjJjxxTask {
return; return;
} }
if (!"true".equals(ConfigParam.JjxxSwitch)) {
return;
}
//1 去mysql查出当前最大时间 //1 去mysql查出当前最大时间
JcjJjxxViewMysql jcjJjxxViewMysql = jcjJjxxViewMysqlService.selectRecordOrderByRksj(); JcjJjxxViewMysql jcjJjxxViewMysql = jcjJjxxViewMysqlService.selectRecordOrderByRksj();
//2 用得到的最大时间去oracle 查询大于这个时间的记录 //2 用得到的最大时间去oracle 查询大于这个时间的记录

@ -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<JcjCjxxViewMysql> queryWrapper = new QueryWrapper<>();
queryWrapper.isNull("status");
Page<JcjCjxxViewMysql> page = new Page<>(1, 1000);
List<JcjCjxxViewMysql> 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();
}
}
Loading…
Cancel
Save