develop
parent
65b11a3eec
commit
f9fbf8ecc3
@ -0,0 +1,111 @@
|
||||
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.util.Date;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 非法狩猎人员信息表
|
||||
* @TableName meta_hunters_info
|
||||
*/
|
||||
@TableName(value ="meta_hunters_info")
|
||||
@Data
|
||||
public class MetaHuntersInfo implements Serializable {
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 姓名
|
||||
*/
|
||||
private String hunterName;
|
||||
|
||||
/**
|
||||
* 性别
|
||||
*/
|
||||
private String sex;
|
||||
|
||||
/**
|
||||
* 联系方式
|
||||
*/
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 证件号码
|
||||
*/
|
||||
private String idCard;
|
||||
|
||||
/**
|
||||
* 户籍所属辖区
|
||||
*/
|
||||
private String houseHoldRegister;
|
||||
|
||||
/**
|
||||
* 户籍地址详情
|
||||
*/
|
||||
private String houseHoldAddress;
|
||||
|
||||
/**
|
||||
* 现住地详址
|
||||
*/
|
||||
private String habitationAddress;
|
||||
|
||||
/**
|
||||
* 涉案情况
|
||||
*/
|
||||
private String caseSituation;
|
||||
|
||||
/**
|
||||
* 案件处理情况
|
||||
*/
|
||||
private String caseHandlingSituation;
|
||||
|
||||
/**
|
||||
* 管控状态
|
||||
*/
|
||||
private Integer controlStatus;
|
||||
|
||||
/**
|
||||
* 数据有效性
|
||||
*/
|
||||
private Integer dataStatus;
|
||||
|
||||
/**
|
||||
* 登记时间
|
||||
*/
|
||||
private String registrationTime;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
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;
|
||||
}
|
@ -0,0 +1,60 @@
|
||||
package com.ssf.mysqloracletest.domain;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class SlryOracle {
|
||||
private String RYJBXXIDR;
|
||||
private String XM;
|
||||
private String XMPY;
|
||||
private String YWXM;
|
||||
private String CYM;
|
||||
private String XB;
|
||||
private String CSRQ;
|
||||
private String ZJLX;
|
||||
private String ZJHM;
|
||||
private String GJ;
|
||||
private String HYZK;
|
||||
private String ZC;
|
||||
private String MZ;
|
||||
private String JG;
|
||||
private String CH;
|
||||
private String ZJXY;
|
||||
private String ZZMM;
|
||||
private String WHCD;
|
||||
private String BYZK;
|
||||
private String RYSF;
|
||||
private String ZYLB;
|
||||
private String ZWBH;
|
||||
private String DNABH;
|
||||
private String QTZJLX;
|
||||
private String QTZJHM;
|
||||
private String GZDW;
|
||||
private String HJDQH;
|
||||
private String HJDXZ;
|
||||
private String HJDZRQ;
|
||||
private String HJDZRQDM;
|
||||
private String XZDQH;
|
||||
private String XZDXZ;
|
||||
private String XZDZRQ;
|
||||
private String XZDZRQDM;
|
||||
private String ZDRYLBBJ;
|
||||
private String GXDWMC;
|
||||
private String GXDWDM;
|
||||
private String GXZRRXM;
|
||||
private String GXZRRSFZH;
|
||||
private String GXZRRSJHM;
|
||||
private String SSSAQK;
|
||||
private String BDJCLQK;
|
||||
private String BZXX;
|
||||
private String SJHM;
|
||||
private String GKZT;
|
||||
private String YXX;
|
||||
private String RYLY;
|
||||
private String DJRXM;
|
||||
private String DJRSFZH;
|
||||
private String DJRDWMC;
|
||||
private String DJRDWDM;
|
||||
private String DJSJ;
|
||||
private String ZXCKSJ;
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
package com.ssf.mysqloracletest.mapper;
|
||||
|
||||
import com.ssf.mysqloracletest.domain.MetaHuntersInfo;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
* @author 10503
|
||||
* @description 针对表【meta_hunters_info(非法狩猎人员信息表)】的数据库操作Mapper
|
||||
* @createDate 2023-12-08 23:11:18
|
||||
* @Entity com.ssf.mysqloracletest.domain.MetaHuntersInfo
|
||||
*/
|
||||
@Mapper
|
||||
public interface MetaHuntersInfoMapper extends BaseMapper<MetaHuntersInfo> {
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -0,0 +1,15 @@
|
||||
package com.ssf.mysqloracletest.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.ssf.mysqloracletest.domain.SlryOracle;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Mapper
|
||||
public interface SlryOracleMapper extends BaseMapper<SlryOracle> {
|
||||
public int countSlry();
|
||||
|
||||
public List<SlryOracle> getSlryList(Map map);
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
package com.ssf.mysqloracletest.service;
|
||||
|
||||
import com.ssf.mysqloracletest.domain.MetaHuntersInfo;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
* @author 10503
|
||||
* @description 针对表【meta_hunters_info(非法狩猎人员信息表)】的数据库操作Service
|
||||
* @createDate 2023-12-08 23:11:18
|
||||
*/
|
||||
public interface MetaHuntersInfoService extends IService<MetaHuntersInfo> {
|
||||
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
package com.ssf.mysqloracletest.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ssf.mysqloracletest.domain.SlryOracle;
|
||||
import com.ssf.mysqloracletest.domain.VSwryGjxxOracle;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public interface SlryOracleService extends IService<SlryOracle> {
|
||||
public int countSwry();
|
||||
|
||||
public List<SlryOracle> getSlryList(Map map);
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
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.MetaHuntersInfo;
|
||||
import com.ssf.mysqloracletest.service.MetaHuntersInfoService;
|
||||
import com.ssf.mysqloracletest.mapper.MetaHuntersInfoMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* @author 10503
|
||||
* @description 针对表【meta_hunters_info(非法狩猎人员信息表)】的数据库操作Service实现
|
||||
* @createDate 2023-12-08 23:11:18
|
||||
*/
|
||||
@Service
|
||||
@DS("mysql")
|
||||
public class MetaHuntersInfoServiceImpl extends ServiceImpl<MetaHuntersInfoMapper, MetaHuntersInfo>
|
||||
implements MetaHuntersInfoService{
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -0,0 +1,33 @@
|
||||
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.SlryOracle;
|
||||
import com.ssf.mysqloracletest.mapper.SlryOracleMapper;
|
||||
import com.ssf.mysqloracletest.service.SlryOracleService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Service
|
||||
@DS("oracleSydz")
|
||||
public class SlryOracleServiceImpl extends ServiceImpl<SlryOracleMapper, SlryOracle>
|
||||
implements SlryOracleService {
|
||||
|
||||
@Resource
|
||||
private SlryOracleMapper oracleMapper;
|
||||
|
||||
@Override
|
||||
public int countSwry() {
|
||||
return oracleMapper.countSlry();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SlryOracle> getSlryList(Map map) {
|
||||
return oracleMapper.getSlryList(map);
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,121 @@
|
||||
package com.ssf.mysqloracletest.task;
|
||||
|
||||
import cn.hutool.core.date.DateField;
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.io.FileUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.ssf.mysqloracletest.domain.*;
|
||||
import com.ssf.mysqloracletest.service.*;
|
||||
import com.ssf.mysqloracletest.utils.ConfigParam;
|
||||
import com.ssf.mysqloracletest.utils.NumKit;
|
||||
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.io.File;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
import java.util.concurrent.CountDownLatch;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Executors;
|
||||
|
||||
/**
|
||||
* 用户数据接入
|
||||
*/
|
||||
@Component
|
||||
@RequiredArgsConstructor
|
||||
public class SlryOracleTask {
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(SlryOracleTask.class);
|
||||
|
||||
private final SlryOracleService slryOracleService;
|
||||
|
||||
private final MetaHuntersInfoService huntersInfoService;
|
||||
final int oncesCounts = NumKit.checkInt(ConfigParam.oncesCounts) == 0 ? 1000 : NumKit.checkInt(ConfigParam.oncesCounts);
|
||||
|
||||
|
||||
/**
|
||||
* 连云港 对接海康平台获取人员基础数据
|
||||
* //
|
||||
*/
|
||||
@Scheduled(initialDelay = 100, fixedDelay = 3000)
|
||||
public void transSwry() {
|
||||
|
||||
if (!"true".equals(ConfigParam.SlryOracleSwitch)) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
try {
|
||||
int countSlry = slryOracleService.countSwry();
|
||||
CountDownLatch latch = new CountDownLatch(countSlry);
|
||||
ExecutorService cjxxPool = Executors.newFixedThreadPool(5);
|
||||
|
||||
for (int i = 0; i <= countSlry; i++) {
|
||||
Map slryMap = new HashMap();
|
||||
slryMap.put("rowStart", i * oncesCounts);
|
||||
slryMap.put("rowEnd", (i + 1) * oncesCounts);
|
||||
cjxxPool.submit(() -> {
|
||||
try {
|
||||
List<SlryOracle> slryList = slryOracleService.getSlryList(slryMap);
|
||||
for (SlryOracle slry : slryList) {
|
||||
MetaHuntersInfo metaHuntersInfo = new MetaHuntersInfo();
|
||||
metaHuntersInfo.setHunterName(slry.getXM());
|
||||
metaHuntersInfo.setSex(slry.getXB());
|
||||
metaHuntersInfo.setPhone(slry.getSJHM());
|
||||
metaHuntersInfo.setIdCard(slry.getZJHM());
|
||||
metaHuntersInfo.setHouseHoldRegister(slry.getHJDQH());
|
||||
metaHuntersInfo.setHouseHoldAddress(slry.getHJDXZ());
|
||||
metaHuntersInfo.setHabitationAddress(slry.getXZDXZ());
|
||||
metaHuntersInfo.setCaseSituation(slry.getSSSAQK());
|
||||
metaHuntersInfo.setCaseHandlingSituation(slry.getBDJCLQK());
|
||||
metaHuntersInfo.setControlStatus(Integer.parseInt(slry.getGKZT()));
|
||||
metaHuntersInfo.setDataStatus(Integer.parseInt(slry.getYXX()));
|
||||
//确定一个数据是否唯一
|
||||
MetaHuntersInfo one = huntersInfoService.lambdaQuery().eq(MetaHuntersInfo::getIdCard, slry.getZJHM()).one();
|
||||
if (one == null) {
|
||||
boolean save = huntersInfoService.save(metaHuntersInfo);
|
||||
if (save) {
|
||||
logger.info("Swry-" + slry.getZJHM() + ":插入成功");
|
||||
}
|
||||
} else {
|
||||
UpdateWrapper<MetaHuntersInfo> wrapper = new UpdateWrapper<>();
|
||||
wrapper.eq("id_card", slry.getZJHM());
|
||||
boolean update = huntersInfoService.update(metaHuntersInfo, wrapper);
|
||||
if (update) {
|
||||
logger.info("Swry-" + slry.getZJHM() + ":更新成功");
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
logger.info("cjxxs:" + e.getMessage());
|
||||
}
|
||||
latch.countDown();
|
||||
});
|
||||
logger.info("cjxxMap数据总量:" + countSlry + "," + "当前处理下标:" + slryMap.get("rowStart") + "/" + slryMap.get("rowEnd"));
|
||||
}
|
||||
|
||||
try {
|
||||
// Wait for all threads to complete
|
||||
latch.await();
|
||||
} catch (InterruptedException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
// 关闭线程池
|
||||
cjxxPool.shutdown();
|
||||
} catch (
|
||||
Exception e) {
|
||||
logger.info(StringKit.getTrace(e));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,83 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.ssf.mysqloracletest.mapper.SlryOracleMapper">
|
||||
|
||||
<select id="countSlry" resultType="int">
|
||||
select count(*)
|
||||
from SYX_JWSZPT.T_SLRY_RYJBYY
|
||||
</select>
|
||||
|
||||
<resultMap id="BaseResultMap" type="com.ssf.mysqloracletest.domain.SlryOracle">
|
||||
<result property="RYJBXXIDR" column="GJXXID" jdbcType="VARCHAR"/>
|
||||
<result property="XM" column="XM" jdbcType="VARCHAR"/>
|
||||
<result property="XMPY" column="XMPY" jdbcType="VARCHAR"/>
|
||||
<result property="YWXM" column="YWXM" jdbcType="VARCHAR"/>
|
||||
<result property="CYM" column="CYM" jdbcType="VARCHAR"/>
|
||||
<result property="XB" column="XB" jdbcType="VARCHAR"/>
|
||||
<result property="CSRQ" column="CSRQ" jdbcType="VARCHAR"/>
|
||||
<result property="ZJLX" column="ZJLX" jdbcType="VARCHAR"/>
|
||||
<result property="ZJHM" column="ZJHM" jdbcType="VARCHAR"/>
|
||||
<result property="GJ" column="GJ" jdbcType="VARCHAR"/>
|
||||
<result property="HYZK" column="HYZK" jdbcType="VARCHAR"/>
|
||||
<result property="ZC" column="ZC" jdbcType="VARCHAR"/>
|
||||
<result property="MZ" column="MZ" jdbcType="VARCHAR"/>
|
||||
<result property="JG" column="JG" jdbcType="VARCHAR"/>
|
||||
<result property="CH" column="CH" jdbcType="VARCHAR"/>
|
||||
<result property="ZJXY" column="ZJXY" jdbcType="VARCHAR"/>
|
||||
<result property="ZZMM" column="ZZMM" jdbcType="VARCHAR"/>
|
||||
<result property="WHCD" column="WHCD" jdbcType="VARCHAR"/>
|
||||
<result property="BYZK" column="BYZK" jdbcType="VARCHAR"/>
|
||||
<result property="RYSF" column="RYSF" jdbcType="VARCHAR"/>
|
||||
<result property="ZYLB" column="ZYLB" jdbcType="VARCHAR"/>
|
||||
<result property="ZWBH" column="ZWBH" jdbcType="VARCHAR"/>
|
||||
<result property="DNABH" column="DNABH" jdbcType="VARCHAR"/>
|
||||
<result property="QTZJLX" column="QTZJLX" jdbcType="VARCHAR"/>
|
||||
<result property="QTZJHM" column="QTZJHM" jdbcType="VARCHAR"/>
|
||||
<result property="GZDW" column="GZDW" jdbcType="VARCHAR"/>
|
||||
<result property="HJDQH" column="HJDQH" jdbcType="VARCHAR"/>
|
||||
<result property="HJDXZ" column="HJDXZ" jdbcType="VARCHAR"/>
|
||||
<result property="HJDZRQ" column="HJDZRQ" jdbcType="VARCHAR"/>
|
||||
<result property="HJDZRQDM" column="HJDZRQDM" jdbcType="VARCHAR"/>
|
||||
<result property="XZDQH" column="XZDQH" jdbcType="VARCHAR"/>
|
||||
<result property="XZDXZ" column="XZDXZ" jdbcType="VARCHAR"/>
|
||||
<result property="XZDZRQ" column="XZDZRQ" jdbcType="VARCHAR"/>
|
||||
<result property="XZDZRQDM" column="XZDZRQDM" jdbcType="VARCHAR"/>
|
||||
<result property="ZDRYLBBJ" column="ZDRYLBBJ" jdbcType="VARCHAR"/>
|
||||
<result property="GXDWMC" column="GXDWMC" jdbcType="VARCHAR"/>
|
||||
<result property="GXDWDM" column="GXDWDM" jdbcType="VARCHAR"/>
|
||||
<result property="GXZRRXM" column="GXZRRXM" jdbcType="VARCHAR"/>
|
||||
<result property="GXZRRSFZH" column="GXZRRSFZH" jdbcType="VARCHAR"/>
|
||||
<result property="GXZRRSJHM" column="GXZRRSJHM" jdbcType="VARCHAR"/>
|
||||
<result property="SSSAQK" column="SSSAQK" jdbcType="VARCHAR"/>
|
||||
<result property="BDJCLQK" column="BDJCLQK" jdbcType="VARCHAR"/>
|
||||
<result property="BZXX" column="BZXX" jdbcType="VARCHAR"/>
|
||||
<result property="SJHM" column="SJHM" jdbcType="VARCHAR"/>
|
||||
<result property="GKZT" column="GKZT" jdbcType="VARCHAR"/>
|
||||
<result property="YXX" column="YXX" jdbcType="VARCHAR"/>
|
||||
<result property="RYLY" column="RYLY" jdbcType="VARCHAR"/>
|
||||
<result property="DJRXM" column="DJRXM" jdbcType="VARCHAR"/>
|
||||
<result property="DJRSFZH" column="DJRSFZH" jdbcType="VARCHAR"/>
|
||||
<result property="DJRDWMC" column="DJRDWMC" jdbcType="VARCHAR"/>
|
||||
<result property="DJRDWDM" column="DJRDWDM" jdbcType="VARCHAR"/>
|
||||
<result property="DJSJ" column="DJSJ" jdbcType="VARCHAR"/>
|
||||
<result property="ZXCKSJ" column="ZXCKSJ" jdbcType="VARCHAR"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="getSlryList" parameterType="java.util.Map" resultMap="BaseResultMap">
|
||||
SELECT t2.*
|
||||
FROM (SELECT ROWNUM rn, t1.* FROM (SELECT * FROM SYX_JWSZPT.T_SLRY_RYJBYY) t1 WHERE ROWNUM<![CDATA[ <= ]]> ${rowEnd}) t2
|
||||
WHERE t2.rn <![CDATA[ >= ]]> ${rowStart}
|
||||
</select>
|
||||
|
||||
<!-- <select id="getSwryListByTime" parameterType="java.util.Map" resultMap="BaseResultMap">-->
|
||||
<!-- SELECT * FROM SYX_JWSZPT.V_SWRY_GJXX where GJSJ <![CDATA[ >= ]]> #{maxTime} and GJSJ <![CDATA[ <= ]]> #{minTime}-->
|
||||
<!-- </select>-->
|
||||
|
||||
<!-- <select id="getRealTimeRecording" parameterType="java.util.Map" resultMap="BaseResultMap">-->
|
||||
<!-- SELECT * FROM SYX_JWSZPT.V_SWRY_GJXX where GJSJ >#{maxTime}-->
|
||||
<!-- </select>-->
|
||||
|
||||
|
||||
</mapper>
|
Loading…
Reference in new issue