接警信息Task

develop
Angel 10 months ago
parent 09cdd8ee92
commit 2fdcbb7759

@ -4,17 +4,18 @@ sydzSwitch=false
oncesCounts=10000
syfwSwitch=false
syrkSwitch=true
syrkSwitch=false
jksbSwitch=false
cjxxSwitch=true
cjxxSwitch=false
zdrySwitch=false
cyrySwitch=true
cyrySwitch=false
JjxxSwitch=false
#------------------------?????----------------------------
NewNsydwSwitch=false
metaImpUserSwitch=false
NewNalarminfoSwitch=true

@ -1,5 +1,6 @@
package com.ssf.mysqloracletest.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
@ -16,641 +17,769 @@ public class JcjJjxxViewMysql implements Serializable {
/**
*
*/
@TableField(value = "JJBH")
private String JJBH;
/**
*
*/
@TableField(value = "JJDBH")
private String JJDBH;
/**
*
*/
@TableField(value = "PJDBH")
private String PJDBH;
/**
*
*/
@TableField(value = "GLJJDBH")
private String GLJJDBH;
/**
*
*/
@TableField(value = "JJLYH")
private String JJLYH;
/**
*
*/
@TableField(value = "PJLYH")
private String PJLYH;
/**
*
*/
@TableField(value = "LDGBH")
private String LDGBH;
/**
*
*/
@TableField(value = "JJYXM")
private String JJYXM;
/**
*
*/
@TableField(value = "PJYXM")
private String PJYXM;
/**
*
*/
@TableField(value = "LHLBDM")
private String LHLBDM;
/**
*
*/
@TableField(value = "BJDHSJ")
private String BJDHSJ;
/**
*
*/
@TableField(value = "BJDH")
private String BJDH;
/**
*
*/
@TableField(value = "BJDHHM")
private String BJDHHM;
/**
*
*/
@TableField(value = "BJDHDZ")
private String BJDHDZ;
/**
*
*/
@TableField(value = "THSC")
private String THSC;
/**
*
*/
@TableField(value = "BJR")
private String BJR;
/**
*
*/
@TableField(value = "BJRXB")
private String BJRXB;
/**
*
*/
@TableField(value = "LXDH")
private String LXDH;
/**
*
*/
@TableField(value = "BJXS")
private String BJXS;
/**
*
*/
@TableField(value = "BJLX ")
private String BJLX;
/**
*
*/
@TableField(value = "SFDD")
private String SFDD;
/**
*
*/
@TableField(value = "BJNR")
private String BJNR;
/**
*
*/
@TableField(value = "BCJJNR")
private String BCJJNR;
/**
*
*/
@TableField(value = "SJCPH")
private String SJCPH;
/**
*
*/
@TableField(value = "CLLX")
private String CLLX;
/**
*
*/
@TableField(value = "SYQX")
private String SYQX;
/**
*
*/
@TableField(value = "CLQX")
private String CLQX;
/**
*
*/
@TableField(value = "HZDJ")
private String HZDJ;
/**
*
*/
@TableField(value = "SFZDDW")
private String SFZDDW;
/**
*
*/
@TableField(value = "ZDDWBM")
private String ZDDWBM;
/**
*
*/
@TableField(value = "JZLB")
private String JZLB;
/**
*
*/
@TableField(value = "JZJG")
private String JZJG;
/**
*
*/
@TableField(value = "QHCS")
private String QHCS;
/**
*
*/
@TableField(value = "BZWQK")
private String BZWQK;
/**
*
*/
@TableField(value = "BLQK")
private String BLQK;
/**
*
*/
@TableField(value = "SFBW")
private String SFBW;
/**
*
*/
@TableField(value = "RSWXZ")
private String RSWXZ;
/**
*
*/
@TableField(value = "YFWXWZ")
private String YFWXWZ;
/**
*
*/
@TableField(value = "YWBZXL")
private String YWBZXL;
/**
*
*/
@TableField(value = "YFTY")
private String YFTY;
/**
*
*/
@TableField(value = "YWBKRY")
private String YWBKRY;
/**
*
*/
@TableField(value = "GIS_X")
private String GIS_X;
/**
*
*/
@TableField(value = "GIS_Y")
private String GIS_Y;
/**
*
*/
@TableField(value = "SFZXXS")
private String SFZXXS;
/**
*
*/
@TableField(value = "BJTDYY")
private String BJTDYY;
/**
*
*/
@TableField(value = "PJSJ")
private String PJSJ;
/**
*
*/
@TableField(value = "BJCJYJ")
private String BJCJYJ;
/**
*
*/
@TableField(value = "EJDDSJ")
private String EJDDSJ;
/**
*
*/
@TableField(value = "EJJSSJ")
private String EJJSSJ;
/**
*
*/
@TableField(value = "EJXFSJ")
private String EJXFSJ;
/**
*
*/
@TableField(value = "EJJSR")
private String EJJSR;
/**
*
*/
@TableField(value = "EJJSRXM")
private String EJJSRXM;
/**
*
*/
@TableField(value = "EJJSDW")
private String EJJSDW;
/**
*
*/
@TableField(value = "EJJSDWMC")
private String EJJSDWMC;
/**
*
*/
@TableField(value = "SJDDSJ")
private String SJDDSJ;
/**
*
*/
@TableField(value = "SJJSSJ")
private String SJJSSJ;
/**
*
*/
@TableField(value = "SJJSR")
private String SJJSR;
/**
*
*/
@TableField(value = "SJJSRXM")
private String SJJSRXM;
/**
*
*/
@TableField(value = "SJJSD")
private String SJJSD;
/**
*
*/
@TableField(value = "SJJSDWMC")
private String SJJSDWMC;
/**
*
*/
@TableField(value = "CJBS")
private String CJBS;
/**
*
*/
@TableField(value = "DJDW")
private String DJDW;
/**
*
*/
@TableField(value = "DJR")
private String DJR;
/**
*
*/
@TableField(value = "DJSJ")
private String DJSJ;
/**
*
*/
@TableField(value = "XGR")
private String XGR;
/**
*
*/
@TableField(value = "XGSJ")
private String XGSJ;
/**
*
*/
@TableField(value = "XGDW")
private String XGDW;
/**
*
*/
@TableField(value = "DJRXM")
private String DJRXM;
/**
*
*/
@TableField(value = "DJDWMC")
private String DJDWMC;
/**
*
*/
@TableField(value = "XGRXM")
private String XGRXM;
/**
*
*/
@TableField(value = "XGDWMC")
private String XGDWMC;
/**
*
*/
@TableField(value = "JJRQSJ")
private String JJRQSJ;
/**
*
*/
@TableField(value = "JJDW")
private String JJDW;
/**
*
*/
@TableField(value = "JJDWMC")
private String JJDWMC;
/**
*
*/
@TableField(value = "JJR")
private String JJR;
/**
*
*/
@TableField(value = "JJRXM")
private String JJRXM;
/**
*
*/
@TableField(value = "YJDW")
private String YJDW;
/**
*
*/
@TableField(value = "YJSJ")
private String YJSJ;
/**
*
*/
@TableField(value = "YJSM")
private String YJSM;
/**
*
*/
@TableField(value = "YJR")
private String YJR;
/**
*
*/
@TableField(value = "JJXZQH")
private String JJXZQH;
/**
*
*/
@TableField(value = "JJGXDW")
private String JJGXDW;
/**
*
*/
@TableField(value = "FKYQ")
private String FKYQ;
/**
*
*/
@TableField(value = "SFYFDX")
private String SFYFDX;
/**
*
*/
@TableField(value = "JJDXNR")
private String JJDXNR;
/**
*
*/
@TableField(value = "JJDXSJ")
private String JJDXSJ;
/**
*
*/
@TableField(value = "SBSJ")
private String SBSJ;
/**
*
*/
@TableField(value = "SBNR")
private String SBNR;
/**
*
*/
@TableField(value = "CDCLBM")
private String CDCLBM;
/**
*
*/
@TableField(value = "JJLX")
private String JJLX;
/**
*
*/
@TableField(value = "ZDYJR")
private String ZDYJR;
/**
*
*/
@TableField(value = "ZDYJDW")
private String ZDYJDW;
/**
*
*/
@TableField(value = "ZDYJSJ")
private String ZDYJSJ;
/**
*
*/
@TableField(value = "ZDYJSM")
private String ZDYJSM;
/**
*
*/
@TableField(value = "SFBDDH")
private String SFBDDH;
/**
*
*/
@TableField(value = "SFPJ")
private String SFPJ;
/**
*
*/
@TableField(value = "SFFK")
private String SFFK;
/**
*
*/
@TableField(value = "BJRXBMC")
private String BJRXBMC;
/**
*
*/
@TableField(value = "BJXSMC")
private String BJXSMC;
/**
*
*/
@TableField(value = "BJLXMC")
private String BJLXMC;
/**
*
*/
@TableField(value = "CLLXMC")
private String CLLXMC;
/**
*
*/
@TableField(value = "HZDJMC")
private String HZDJMC;
/**
*
*/
@TableField(value = "SFZDDWMC")
private String SFZDDWMC;
/**
*
*/
@TableField(value = "JZLBMC")
private String JZLBMC;
/**
*
*/
@TableField(value = "JZJGMC")
private String JZJGMC;
/**
*
*/
@TableField(value = "QHCSMC")
private String QHCSMC;
/**
*
*/
@TableField(value = "YFWXWZMC")
private String YFWXWZMC;
/**
*
*/
@TableField(value = "YWBZXLMC")
private String YWBZXLMC;
/**
*
*/
@TableField(value = "YFTYMC")
private String YFTYMC;
/**
*
*/
@TableField(value = "YWBKRYMC")
private String YWBKRYMC;
/**
*
*/
@TableField(value = "SFZXXSMC")
private String SFZXXSMC;
/**
*
*/
@TableField(value = "SJJSDMC")
private String SJJSDMC;
/**
*
*/
@TableField(value = "CJBSMC")
private String CJBSMC;
/**
*
*/
@TableField(value = "YJDWMC")
private String YJDWMC;
/**
*
*/
@TableField(value = "JJXZQHMC")
private String JJXZQHMC;
/**
*
*/
@TableField(value = "JJGXDWMC")
private String JJGXDWMC;
/**
*
*/
@TableField(value = "ZDYJRXM")
private String ZDYJRXM;
/**
*
*/
@TableField(value = "ZDYJDWMC")
private String ZDYJDWMC;
/**
*
*/
@TableField(value = "SFBDDHMC")
private String SFBDDHMC;
/**
*
*/
@TableField(value = "SFPJMC")
private String SFPJMC;
/**
*
*/
@TableField(value = "SFFKMC")
private String SFFKMC;
/**
*
*/
@TableField(value = "LHLBDMMC")
private String LHLBDMMC;
/**
*
*/
@TableField(value = "WS_RKSJ")
private String WS_RKSJ;
/**
*
*/
@TableField(value = "WS_XGSJ")
private String WS_XGSJ;
/**
*
*/
@TableField(value = "WS_YXX")
private String WS_YXX;
/**
*
*/
@TableField(value = "RYWKSJ")
private String RYWKSJ;
/**
*
*/
@TableField(value = "JDZB")
private String JDZB;
/**
*
*/
@TableField(value = "WDZB")
private String WDZB;
}

@ -1,16 +1,9 @@
package com.ssf.mysqloracletest.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
/**
*
* @TableName jcj_jjxx_view
*/
@TableName(value ="jcj_jjxx_view")
@Data
public class JcjJjxxViewOracle implements Serializable {
/**

@ -0,0 +1,109 @@
package com.ssf.mysqloracletest.domain;
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 java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;
/**
*
* @TableName meta_alarm_info
*/
@TableName(value ="meta_alarm_info")
@Data
public class MetaAlarmInfo implements Serializable {
/**
*
*/
@TableId(type = IdType.AUTO)
private Long id;
private String alarmCode;
/**
*
*/
private String policeReceiverName;
/**
*
*/
private String alarmResponseUnit;
/**
*
*/
private String alarmResponseTime;
/**
*
*/
private String alarmResponseContent;
/**
*
*/
private String alarmResponseTypeName;
/**
*
*/
private String informantName;
/**
*
*/
private String informantPhone;
/**
*
*/
private String informantTime;
/**
*
*/
private String alarmAddress;
/**
*
*/
private BigDecimal longitude;
/**
*
*/
private BigDecimal latitude;
/**
*
*/
private Date createTime;
/**
*
*/
private Integer createBy;
/**
*
*/
private Date updateTime;
/**
*
*/
private Integer updateBy;
/**
* 0:,1:
*/
private Integer isActive;
// @TableField(exist = false)
// private static final long serialVersionUID = 1L;
}

@ -1,27 +1,13 @@
package com.ssf.mysqloracletest.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql;
import com.ssf.mysqloracletest.domain.JcjJjxxViewOracle;
import com.ssf.mysqloracletest.domain.TJksbglOracle;
import org.apache.ibatis.annotations.Mapper;
import com.ssf.mysqloracletest.domain.VSySydzOracle;
import java.util.List;
import java.util.Map;
/**
* @author 10503
* @description jcj_jjxx_viewMapper
* @createDate 2023-11-29 16:13:53
* @Entity com.ssf.mysqloracletest.domain.JcjJjxxView
*/
@Mapper
public interface JcjJjxxViewOracleMapper {
public int countJjxx();
public List<JcjJjxxViewOracle> getJjxxList(Map map);
}

@ -0,0 +1,12 @@
package com.ssf.mysqloracletest.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql;
public interface JcjJxxViewMysqlMapper extends BaseMapper<JcjJjxxViewMysql> {
public JcjJjxxViewMysql selectJcjJxxByJJBH(String JJBH);
public int insertJjxx(JcjJjxxViewMysql bean);
public int updateJjxxByJJBH(JcjJjxxViewMysql bean);
}

@ -0,0 +1,18 @@
package com.ssf.mysqloracletest.mapper;
import com.ssf.mysqloracletest.domain.MetaAlarmInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @author 10503
* @description meta_alarm_info()Mapper
* @createDate 2023-12-01 14:48:34
* @Entity com.ssf.mysqloracletest.domain.MetaAlarmInfo
*/
public interface MetaAlarmInfoMapper extends BaseMapper<MetaAlarmInfo> {
}

@ -8,7 +8,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
* @description jcj_jjxx_viewService
* @createDate 2023-11-29 16:13:53
*/
public interface JcjJjxxViewMysqlService {
public interface JcjJjxxViewMysqlService extends IService<JcjJjxxViewMysql>{
public JcjJjxxViewMysql selectJcjJxxByJJBH(String JJBH);
public int insertJjxx(JcjJjxxViewMysql bean);

@ -0,0 +1,13 @@
package com.ssf.mysqloracletest.service;
import com.ssf.mysqloracletest.domain.MetaAlarmInfo;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* @author 10503
* @description meta_alarm_info()Service
* @createDate 2023-12-01 14:48:34
*/
public interface MetaAlarmInfoService extends IService<MetaAlarmInfo> {
}

@ -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.JcjJjxxViewMysql;
import com.ssf.mysqloracletest.mapper.JcjJxxViewMysqlMapper;
import com.ssf.mysqloracletest.service.JcjJjxxViewMysqlService;
import com.ssf.mysqloracletest.mapper.JcjJjxxViewMysqlMapper;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@ -16,8 +16,8 @@ import org.springframework.stereotype.Service;
@Service
@DS("mysql")
@RequiredArgsConstructor
public class JcjJjxxViewMysqlServiceImpl implements JcjJjxxViewMysqlService {
private final JcjJjxxViewMysqlMapper jcxxMapper;
public class JcjJjxxViewMysqlServiceImpl extends ServiceImpl<JcjJxxViewMysqlMapper,JcjJjxxViewMysql> implements JcjJjxxViewMysqlService {
private final JcjJxxViewMysqlMapper jcxxMapper;
@Override

@ -0,0 +1,23 @@
package com.ssf.mysqloracletest.service.impl;
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 lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
/**
* @author 10503
* @description meta_alarm_info()Service
* @createDate 2023-12-01 14:48:34
*/
@Service
@RequiredArgsConstructor
public class MetaAlarmInfoServiceImpl extends ServiceImpl<MetaAlarmInfoMapper, MetaAlarmInfo> implements MetaAlarmInfoService{
}

@ -0,0 +1,150 @@
package com.ssf.mysqloracletest.task;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.ssf.mysqloracletest.domain.JcjJjxxViewMysql;
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;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
/**
*
*/
@Component
public class AlarmInfoTask {
private static final Logger logger = LoggerFactory.getLogger(AlarmInfoTask.class);
@Resource
private JcjJjxxViewMysqlService jjxxViewMysqlService;
@Resource
private MetaAlarmInfoService alarmInfoService;
final int oncesCounts = NumKit.checkInt(ConfigParam.oncesCounts) == 0 ? 10000 : NumKit.checkInt(ConfigParam.oncesCounts);
private boolean NjjxxTag = false;
/**
*
* //
*/
@Scheduled(initialDelay = 100, fixedDelay = 3000)
public void transNjjxx() {
if (NjjxxTag) {
return;
}
if (!"true".equals(ConfigParam.NewNalarminfoSwitch)) {
return;
}
try {
int countNjjxx = jjxxViewMysqlService.count();
logger.info("countNjjxx:" + countNjjxx);
if (countNjjxx > 0) {
NjjxxTag = true;
int count = countNjjxx / oncesCounts;
CountDownLatch latch = new CountDownLatch(count);
ExecutorService NjjxxPool = Executors.newFixedThreadPool(50);
for (int i = 0; i <= count; i++) {
Map NjjxxMap = new HashMap();
NjjxxMap.put("rowStart", i * oncesCounts);
NjjxxMap.put("rowEnd", (i + 1) * oncesCounts);
NjjxxPool.submit(() -> {
try {
List<JcjJjxxViewMysql> Njjxxs = jjxxViewMysqlService.lambdaQuery().list();
for (JcjJjxxViewMysql Njjxx : Njjxxs) {
MetaAlarmInfo alarmInfo = new MetaAlarmInfo();
//设置目标字段的值
//alarm_code<-----JJBH 接警编号
alarmInfo.setAlarmCode(Njjxx.getJJBH());
//police_receiver_name<-----JJRXM接警人姓名
alarmInfo.setPoliceReceiverName(Njjxx.getJJRXM());
//alarm_response_time<-----JJRQSJ接警日期时间
alarmInfo.setAlarmResponseTime(Njjxx.getJJRQSJ());
//alarm_response_content<-----BJNR接警报警内容
alarmInfo.setAlarmResponseContent(Njjxx.getBJNR());
//informant_name<-----BJR接警报警人
alarmInfo.setInformantName(Njjxx.getBJR());
//informant_time<-----BJDHSJ接警报警时间
alarmInfo.setInformantTime(Njjxx.getBJDHSJ());
//informant_phone<-----LXDH接警报警人联系电话
alarmInfo.setInformantPhone(Njjxx.getLXDH());
//alarm_response_type<-----BJLXMC报警类型名称
alarmInfo.setAlarmResponseTypeName(Njjxx.getBJLXMC());
//alarm_address<-----SFDD接警事发地址
alarmInfo.setAlarmAddress(Njjxx.getSFDD());
//alarm_response_unit<-----JJDWMC接警单位名称
alarmInfo.setAlarmResponseUnit(Njjxx.getJJDWMC());
if (Njjxx != null && Njjxx.getWDZB() != null && Njjxx.getJDZB() != null) {
//转换类型
BigDecimal WDZBDecimal = new BigDecimal(Njjxx.getWDZB());
BigDecimal JDZBDecimal = new BigDecimal(Njjxx.getJDZB());
//longitude(经度)<-----JDZB经度坐标
alarmInfo.setLongitude(JDZBDecimal);
//latitude(纬度)<-----WDZB纬度坐标
alarmInfo.setLatitude(WDZBDecimal);
} else {
//longitude(经度)<-----JDZB经度坐标
alarmInfo.setLongitude(null);
//latitude(纬度)<-----WDZB纬度坐标
alarmInfo.setLatitude(null);
}
//确定一个数据是否唯一
MetaAlarmInfo one = alarmInfoService.lambdaQuery().eq(MetaAlarmInfo::getId, Njjxx.getJJBH()).one();
if (one == null) {
alarmInfoService.save(alarmInfo);
logger.info("Njjxx-" + Njjxx.getJJBH() + ":插入成功");
} else {
alarmInfoService.update(new QueryWrapper<>(alarmInfo));
logger.info("Njjxx-" + Njjxx.getJJBH() + ":更新成功");
}
}
} catch (Exception e) {
logger.info("Njjxxs:" + StringKit.getTrace(e));
}
latch.countDown();
});
logger.info("NjjxxMap数据总量:" + countNjjxx + "," + "当前处理下标:" + NjjxxMap.get("rowStart") + "/" + NjjxxMap.get("rowEnd"));
}
try {
// Wait for all threads to complete
latch.await();
} catch (InterruptedException e) {
e.printStackTrace();
}
// 关闭线程池
NjjxxPool.shutdown();
}
} catch (Exception e) {
logger.info(StringKit.getTrace(e));
}
}
}

@ -0,0 +1,150 @@
package com.ssf.mysqloracletest.task;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.ssf.mysqloracletest.domain.MetaActualUnitInfo;
import com.ssf.mysqloracletest.domain.VSySydwmMysql;
import com.ssf.mysqloracletest.service.MetaActualUnitInfoService;
import com.ssf.mysqloracletest.service.VSySydwMysqlService;
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;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
/**
*
*/
@Component
public class UnitInfoTask {
private static final Logger logger = LoggerFactory.getLogger(UnitInfoTask.class);
@Resource
private VSySydwMysqlService vSySydwMysqlService;
@Resource
private MetaActualUnitInfoService metaActualUnitInfoService;
final int oncesCounts = NumKit.checkInt(ConfigParam.oncesCounts) == 0 ? 10000 : NumKit.checkInt(ConfigParam.oncesCounts);
private boolean NsydwTag = false;
/**
*
* //
*/
@Scheduled(initialDelay = 100, fixedDelay = 3000)
public void transNsydw() {
if (NsydwTag) {
return;
}
if (!"true".equals(ConfigParam.NewNsydwSwitch)) {
return;
}
try {
int countNsydw = vSySydwMysqlService.count();
logger.info("countNsydw:" + countNsydw);
if (countNsydw > 0) {
NsydwTag = true;
int count = countNsydw / oncesCounts;
CountDownLatch latch = new CountDownLatch(count);
ExecutorService NsydwPool = Executors.newFixedThreadPool(50);
for (int i = 0; i <= count; i++) {
Map NsydwMap = new HashMap();
NsydwMap.put("rowStart", i * oncesCounts);
NsydwMap.put("rowEnd", (i + 1) * oncesCounts);
NsydwPool.submit(() -> {
try {
List<VSySydwmMysql> Nsydws = vSySydwMysqlService.lambdaQuery().list();
for (VSySydwmMysql Nsydw : Nsydws) {
MetaActualUnitInfo unitInfo = new MetaActualUnitInfo();
int unit = Integer.parseInt(Nsydw.getDWZT());
BigDecimal XDecimal = new BigDecimal(Nsydw.getX());
BigDecimal YDecimal = new BigDecimal(Nsydw.getY());
//设置目标字段的值
//IDid----->unit_id(单位ID)
unitInfo.setUnitId(Nsydw.getID());
//DWMC单位名称----->unit_name(单位名称)
unitInfo.setUintName(Nsydw.getDWMC());
//DZ地址----->unit_address(单位地址)
unitInfo.setUintAddress(Nsydw.getDZ());
//LXDH联系电话----->phone(联系电话)
unitInfo.setPhone(Nsydw.getLXDH());
//PCSBM派出所编码----->police_station_code(派出所代码)
unitInfo.setPoliceStationCode(Nsydw.getPCSBM());
//PCSMC派出所名称----->police_station_name(派出所名称)
unitInfo.setPoliceStationName(Nsydw.getPCSMC());
//JWQBM警务区编码----->police_district_code(警务区编码)
unitInfo.setPoliceDistrictCode(Nsydw.getJWQBM());
//JWQMC警务区名称----->police_district_code(警务区名称)
unitInfo.setPoliceDistrictCode(Nsydw.getDWMC());
//DWZT单位状态 1有效----->unit_state(单位状态 1有效)
unitInfo.setUnitState(unit);
//X经度----->longitude(经度)
unitInfo.setLongitude(XDecimal);
//Y纬度----->latitude(纬度)
unitInfo.setLatitude(YDecimal);
//DWLXMC单位类型名称----->unit_type_name(单位类型名称)
unitInfo.setUnitTypeName(Nsydw.getDWLXMC());
//FRZJHM法人证件号码----->legal_person_id_card
unitInfo.setLegalPersonIdCard(Nsydw.getFRZJHM());
//FRXM法人姓名----->legal_person(企业法定代表人)
unitInfo.setLegalPerson(Nsydw.getFRXM());
//YSBZK_RKSJ入库时间----->meta_create_time(元数据创建时间)
unitInfo.setMetaCreateTime(Nsydw.getYSBZK_RKSJ());
//YSBZK_GXSJ更新时间----->meta_update_time(元数据更新时间)
unitInfo.setMetaUpdateTime(Nsydw.getYSBZK_GXSJ());
//确定一个数据是否唯一
MetaActualUnitInfo one = metaActualUnitInfoService.lambdaQuery().eq(MetaActualUnitInfo::getUnitId,Nsydw.getID()).one();
if (one == null) {
metaActualUnitInfoService.save(unitInfo);
logger.info("Nsydw-" + Nsydw.getID() + ":插入成功");
} else {
metaActualUnitInfoService.update(new QueryWrapper<>(unitInfo));
logger.info("Nsydw-" + Nsydw.getID() + ":更新成功");
}
}
} catch (Exception e) {
logger.info("Nsydws:" + StringKit.getTrace(e));
}
latch.countDown();
});
logger.info("NsydwMap数据总量:" + countNsydw + "," + "当前处理下标:" + NsydwMap.get("rowStart") + "/" + NsydwMap.get("rowEnd"));
}
try {
// Wait for all threads to complete
latch.await();
} catch (InterruptedException e) {
e.printStackTrace();
}
// 关闭线程池
NsydwPool.shutdown();
}
} catch (Exception e) {
logger.info(StringKit.getTrace(e));
}
}
}

@ -2,7 +2,7 @@
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ssf.mysqloracletest.mapper.JcjJjxxViewMysqlMapper">
<mapper namespace="com.ssf.mysqloracletest.mapper.JcjJxxViewMysqlMapper">
<resultMap id="BaseResultMap" type="com.ssf.mysqloracletest.domain.JcjJjxxViewMysql">
<result property="JJBH" column="JJBH" jdbcType="VARCHAR"/>

Loading…
Cancel
Save