| | |
| | | package com.ruoyi.project.tr.specialCheck.Test;
|
| | |
|
| | | import com.alibaba.fastjson.JSON;
|
| | | import com.alibaba.fastjson.JSONArray;
|
| | | import com.alibaba.fastjson.JSONObject;
|
| | | import com.ruoyi.project.tr.riskList.service.IRiskListService;
|
| | | import com.ruoyi.project.tr.specialCheck.domin.DownloadDTO.*;
|
| | | import com.ruoyi.project.tr.specialCheck.domin.TbBaseCheckItem;
|
| | | import com.ruoyi.project.tr.specialCheck.domin.TbBaseCheckScore;
|
| | | import com.ruoyi.project.tr.specialCheck.domin.TbBaseCheckTask;
|
| | | import com.ruoyi.project.tr.specialCheck.domin.TbCheckConfig;
|
| | | import com.ruoyi.project.tr.specialCheck.mapper.*;
|
| | | import org.bouncycastle.crypto.engines.AESFastEngine;
|
| | | import org.bouncycastle.crypto.modes.GCMBlockCipher;
|
| | | import org.bouncycastle.crypto.params.AEADParameters;
|
| | | import org.bouncycastle.crypto.params.KeyParameter;
|
| | | import org.slf4j.Logger;
|
| | | import org.slf4j.LoggerFactory;
|
| | | import org.springframework.beans.factory.annotation.Autowired;
|
| | | import org.springframework.stereotype.Component;
|
| | | import org.springframework.transaction.annotation.Transactional;
|
| | |
|
| | | import java.io.*;
|
| | | import java.net.HttpURLConnection;
|
| | | import java.net.URL;
|
| | | import java.nio.charset.StandardCharsets;
|
| | | import java.text.SimpleDateFormat;
|
| | | import java.time.format.DateTimeFormatter;
|
| | | import java.util.*;
|
| | |
|
| | | @Component
|
| | | public class SpecialCheckTaskDownload {
|
| | |
|
| | | private final Logger logger = LoggerFactory.getLogger(this.getClass());
|
| | |
|
| | | @Autowired
|
| | | private TbBaseCheckCompanyMapper companyTbRepository;
|
| | | @Autowired
|
| | | private TbBaseCheckItemMapper itemTbRepository;
|
| | | @Autowired
|
| | | private TbBaseCheckScoreMapper scoreTbRepository;
|
| | | @Autowired
|
| | | private TbBaseCheckTaskMapper taskTbRepository;
|
| | | @Autowired
|
| | | private TbSpecialCheckTaskLogMapper taskSpecialLogMapper;
|
| | | @Autowired
|
| | | private IRiskListService riskListService;
|
| | | @Autowired
|
| | | private TbCheckConfigMapper configMapper;
|
| | |
|
| | | String token = "GT6gGJV7JV";
|
| | | String key = "Bv+NeBolwqg2Pbc1yVwrZA==";
|
| | | String iv = "4QC9V8eAiB7tdlgBkMsTAw==";
|
| | |
|
| | | public static final int MAC_BIT_SIZE = 128;
|
| | |
|
| | | public static String encrypt(String plainText, byte[] key, byte[] iv) {
|
| | | String sr;
|
| | | try {
|
| | | byte[] plainBytes = plainText.getBytes(StandardCharsets.UTF_8);
|
| | | GCMBlockCipher cipher = new GCMBlockCipher(new
|
| | | AESFastEngine());
|
| | | AEADParameters parameters =
|
| | | new AEADParameters(new KeyParameter(key),
|
| | | MAC_BIT_SIZE, iv, null);
|
| | | cipher.init(true, parameters);
|
| | | byte[] encryptedBytes = new
|
| | | byte[cipher.getOutputSize(plainBytes.length)];
|
| | | int retLen = cipher.processBytes(plainBytes, 0, plainBytes.length,
|
| | | encryptedBytes, 0);
|
| | | cipher.doFinal(encryptedBytes, retLen);
|
| | | sr = Base64.getEncoder().encodeToString(encryptedBytes);
|
| | | } catch (Exception ex) {
|
| | | throw new RuntimeException(ex.getMessage());
|
| | | }
|
| | | return sr;
|
| | | }
|
| | |
|
| | |
|
| | | @Transactional
|
| | | // @Scheduled(cron = "0 0 23 * * ?") //每天晚上23点执行一次0 0 22,23 * * ?
|
| | | // @Scheduled(cron = "0 0 22,23 * * ?") //每天晚上22、23点执行一次
|
| | | // @Scheduled(cron = "0 0/1 * * * ? ") // 分钟
|
| | | // @Scheduled(cron = "0 0/20 * * * ? ") // 分钟
|
| | | // @Scheduled(cron = "0/5 * * * * ?")
|
| | | public void execReportDateSchedule() throws UnsupportedEncodingException {
|
| | | logger.info("【####】拉取专项检查数据开始...");
|
| | |
|
| | | HttpURLConnection con = null;
|
| | | BufferedReader buffer = null;
|
| | | int responseCode = 200;
|
| | |
|
| | | DateTimeFormatter dateFormatCheckData = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
| | | DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:MM:ss");
|
| | |
|
| | | Date date = new Date();
|
| | | //格式化时间,作为token的时间戳
|
| | | SimpleDateFormat tokenDate= new SimpleDateFormat("yyyyMMddHHmmssSSS");
|
| | | String formatDate = tokenDate.format(date);
|
| | |
|
| | | logger.info("【token时间】" + formatDate);
|
| | |
|
| | | /**
|
| | | * 1
|
| | | * */
|
| | | logger.info("【####】拉取专项任务数据开始...");
|
| | | TbCheckConfig specialCheckConfig = configMapper.getSpecialCheckConfig();
|
| | | if (specialCheckConfig.getStatus() == 2){
|
| | |
|
| | | StringBuffer specialCheckBuffer = null;
|
| | |
|
| | | //上报数据
|
| | | try {
|
| | | URL url = new URL("http://120.71.182.198:9999/v1/data/receive/getCheckTask");
|
| | | //得到连接对象
|
| | | con = (HttpURLConnection) url.openConnection();
|
| | | //设置请求类型
|
| | | con.setRequestMethod("POST");
|
| | | //允许写出
|
| | | con.setDoOutput(true);
|
| | | //允许读入
|
| | | con.setDoInput(true);
|
| | | //不使用缓存
|
| | | con.setUseCaches(false);
|
| | | con.setInstanceFollowRedirects(true);
|
| | | //设置请求头
|
| | | con.setRequestProperty("X-Access-Token",token+formatDate.toString());
|
| | | //设置Content-Type,此处根据实际情况确定
|
| | | con.setRequestProperty("Content-Type", "application/json;charset=utf8");
|
| | |
|
| | | OutputStream os = con.getOutputStream();
|
| | |
|
| | | //本段日志,测试成功后,可注释掉
|
| | | if (responseCode == HttpURLConnection.HTTP_OK) {
|
| | | //得到响应流
|
| | | InputStream inputStream = con.getInputStream();
|
| | | //将响应流转换成字符串
|
| | | specialCheckBuffer = new StringBuffer();
|
| | | String line;
|
| | | buffer = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
|
| | | while ((line = buffer.readLine()) != null) {
|
| | | specialCheckBuffer.append(line);
|
| | | }
|
| | | // logger.info("result:" + unitResultBuffer.toString());
|
| | | System.out.println("result:" + specialCheckBuffer.toString());
|
| | | }
|
| | |
|
| | | } catch (Exception e) {
|
| | | e.printStackTrace();
|
| | | }
|
| | |
|
| | | //接收返回值,保存返回值
|
| | | TbBaseCheckTaskDownloadBO checkTaskDownloadDTO = JSONObject.parseObject(specialCheckBuffer.toString(), TbBaseCheckTaskDownloadBO.class);
|
| | | //接收返回值,保存返回值
|
| | | CheckTaskData tasks = JSONObject.parseObject(checkTaskDownloadDTO.getData(), CheckTaskData.class);
|
| | | if (tasks.getCheckTaskLists().size() > 0){
|
| | | for (TbBaseCheckTask checkTask : tasks.getCheckTaskLists()) {
|
| | | checkTask.setStatus(1);
|
| | | int insert = taskTbRepository.insert(checkTask);
|
| | | }
|
| | | }
|
| | |
|
| | | logger.info("【专项检查任务】-读取任务结果:" + checkTaskDownloadDTO.getCode());
|
| | | System.out.println("【专项检查任务】-读取任务完成");
|
| | | }else {
|
| | | System.out.println("【专项检查任务】- 不读取任务");
|
| | | }
|
| | |
|
| | | /**
|
| | | * 2
|
| | | * */
|
| | | logger.info("【####】拉取检查项数据开始...");
|
| | | if (specialCheckConfig.getStatus() == 2){
|
| | |
|
| | | StringBuffer specialCheckBuffer = null;
|
| | |
|
| | | ItemDownloadRespDTO itemDownloadRespDTO = new ItemDownloadRespDTO();
|
| | | TbBaseCheckTask baseCheckTask = taskTbRepository.getBaseCheckTaskByStatus(date);
|
| | | Page page = new Page();
|
| | | page.setCurrent(String.valueOf(1));
|
| | | page.setSize(String.valueOf(1000));
|
| | |
|
| | | itemDownloadRespDTO.setTaskId(baseCheckTask.getId());
|
| | | itemDownloadRespDTO.setPage(page);
|
| | | //加密请求数据
|
| | | String AESReportUnitDate = encrypt(JSONObject.toJSONString(itemDownloadRespDTO), key.getBytes(), iv.getBytes());
|
| | | //上报数据
|
| | | try {
|
| | | URL url = new URL("http://120.71.182.198:9999/v1/data/receive/getCheckItem");
|
| | | //得到连接对象
|
| | | con = (HttpURLConnection) url.openConnection();
|
| | | //设置请求类型
|
| | | con.setRequestMethod("POST");
|
| | | //允许写出
|
| | | con.setDoOutput(true);
|
| | | //允许读入
|
| | | con.setDoInput(true);
|
| | | //不使用缓存
|
| | | con.setUseCaches(false);
|
| | | con.setInstanceFollowRedirects(true);
|
| | | //设置请求头
|
| | | con.setRequestProperty("X-Access-Token",token+formatDate.toString());
|
| | | //设置Content-Type,此处根据实际情况确定
|
| | | con.setRequestProperty("Content-Type", "application/json;charset=utf8");
|
| | |
|
| | | OutputStream os = con.getOutputStream();
|
| | | Map paraMap = new HashMap();
|
| | | paraMap.put("data", AESReportUnitDate); /**封装数据*/
|
| | | System.out.println("【【加密请求体】】" + JSONArray.toJSON(paraMap).toString());
|
| | | //组装入参,设置请求体
|
| | | os.write(JSON.toJSONString(paraMap).getBytes());
|
| | |
|
| | | //本段日志,测试成功后,可注释掉
|
| | | if (responseCode == HttpURLConnection.HTTP_OK) {
|
| | | //得到响应流
|
| | | InputStream inputStream = con.getInputStream();
|
| | | //将响应流转换成字符串
|
| | | specialCheckBuffer = new StringBuffer();
|
| | | String line;
|
| | | buffer = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
|
| | | while ((line = buffer.readLine()) != null) {
|
| | | specialCheckBuffer.append(line);
|
| | | }
|
| | | // logger.info("result:" + unitResultBuffer.toString());
|
| | | System.out.println("result:" + specialCheckBuffer.toString());
|
| | | }
|
| | |
|
| | | } catch (Exception e) {
|
| | | e.printStackTrace();
|
| | | }
|
| | |
|
| | | //接收返回值,保存返回值
|
| | | ItemDownloadRespBO itemDownloadRespBO = JSONObject.parseObject(specialCheckBuffer.toString(), ItemDownloadRespBO.class);
|
| | | //接收返回值,保存返回值
|
| | | CheckItemData itemData = JSONObject.parseObject(itemDownloadRespBO.getData(), CheckItemData.class);
|
| | | if (itemData.getItemLists().size() > 0){
|
| | | for (TbBaseCheckItem item : itemData.getItemLists()) {
|
| | | item.setStatus(1);
|
| | | int insert = itemTbRepository.insert(item);
|
| | | }
|
| | | }
|
| | |
|
| | | taskTbRepository.updateStatusById(baseCheckTask.getId());
|
| | |
|
| | | logger.info("【专项任务检查项】-读取检查项结果:" + itemDownloadRespBO.getCode());
|
| | | System.out.println("【专项任务检查项】-读取检查项完成");
|
| | | }else {
|
| | | System.out.println("【专项任务检查项】- 不读取检查项");
|
| | | }
|
| | |
|
| | | /**
|
| | | * 3
|
| | | * */
|
| | | logger.info("【####】拉取评分细则开始...");
|
| | | if (specialCheckConfig.getStatus() == 2){
|
| | |
|
| | | StringBuffer specialCheckBuffer = null;
|
| | |
|
| | | ScoreDownloadRespDTO scoreDownloadRespDTO = new ScoreDownloadRespDTO();
|
| | | TbBaseCheckItem baseItemByStatus = itemTbRepository.getBaseItemByStatus(date);
|
| | | Page page = new Page();
|
| | | page.setCurrent(String.valueOf(1));
|
| | | page.setSize(String.valueOf(1000));
|
| | |
|
| | | scoreDownloadRespDTO.setTaskId(baseItemByStatus.getTaskId());
|
| | | scoreDownloadRespDTO.setCheckItemId(baseItemByStatus.getId());
|
| | | scoreDownloadRespDTO.setPage(page);
|
| | | //加密请求数据
|
| | | String AESReportUnitDate = encrypt(JSONObject.toJSONString(scoreDownloadRespDTO), key.getBytes(), iv.getBytes());
|
| | | //上报数据
|
| | | try {
|
| | | URL url = new URL("http://120.71.182.198:9999/v1/data/receive/getCheckItem");
|
| | | //得到连接对象
|
| | | con = (HttpURLConnection) url.openConnection();
|
| | | //设置请求类型
|
| | | con.setRequestMethod("POST");
|
| | | //允许写出
|
| | | con.setDoOutput(true);
|
| | | //允许读入
|
| | | con.setDoInput(true);
|
| | | //不使用缓存
|
| | | con.setUseCaches(false);
|
| | | con.setInstanceFollowRedirects(true);
|
| | | //设置请求头
|
| | | con.setRequestProperty("X-Access-Token",token+formatDate.toString());
|
| | | //设置Content-Type,此处根据实际情况确定
|
| | | con.setRequestProperty("Content-Type", "application/json;charset=utf8");
|
| | |
|
| | | OutputStream os = con.getOutputStream();
|
| | | Map paraMap = new HashMap();
|
| | | paraMap.put("data", AESReportUnitDate); /**封装数据*/
|
| | | System.out.println("【【加密请求体】】" + JSONArray.toJSON(paraMap).toString());
|
| | | //组装入参,设置请求体
|
| | | os.write(JSON.toJSONString(paraMap).getBytes());
|
| | |
|
| | | //本段日志,测试成功后,可注释掉
|
| | | if (responseCode == HttpURLConnection.HTTP_OK) {
|
| | | //得到响应流
|
| | | InputStream inputStream = con.getInputStream();
|
| | | //将响应流转换成字符串
|
| | | specialCheckBuffer = new StringBuffer();
|
| | | String line;
|
| | | buffer = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
|
| | | while ((line = buffer.readLine()) != null) {
|
| | | specialCheckBuffer.append(line);
|
| | | }
|
| | | // logger.info("result:" + unitResultBuffer.toString());
|
| | | System.out.println("result:" + specialCheckBuffer.toString());
|
| | | }
|
| | |
|
| | | } catch (Exception e) {
|
| | | e.printStackTrace();
|
| | | }
|
| | |
|
| | | //接收返回值,保存返回值
|
| | | ScoreDownloadRespBO scoreDownloadRespBO = JSONObject.parseObject(specialCheckBuffer.toString(), ScoreDownloadRespBO.class);
|
| | | //接收返回值,保存返回值
|
| | | CheckScoreData scoreData = JSONObject.parseObject(scoreDownloadRespBO.getData(), CheckScoreData.class);
|
| | | if (scoreData.getScoreLists().size() > 0){
|
| | | for (TbBaseCheckScore score : scoreData.getScoreLists()) {
|
| | | int insert = scoreTbRepository.insert(score);
|
| | | }
|
| | |
|
| | | }
|
| | | itemTbRepository.updateStatusById(baseItemByStatus.getId());
|
| | |
|
| | | logger.info("【评分细则】-读取结果:" + scoreDownloadRespBO.getCode());
|
| | | System.out.println("【评分细则】-读取完成");
|
| | | }else {
|
| | | System.out.println("【评分细则】- 不读取");
|
| | | }
|
| | |
|
| | |
|
| | | }
|
| | | }
|
| | | package com.ruoyi.project.tr.specialCheck.Test; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.ruoyi.project.tr.riskList.service.IRiskListService; |
| | | import com.ruoyi.project.tr.specialCheck.domin.DownloadDTO.*; |
| | | import com.ruoyi.project.tr.specialCheck.domin.TbBaseCheckItem; |
| | | import com.ruoyi.project.tr.specialCheck.domin.TbBaseCheckScore; |
| | | import com.ruoyi.project.tr.specialCheck.domin.TbBaseCheckTask; |
| | | import com.ruoyi.project.tr.specialCheck.domin.TbCheckConfig; |
| | | import com.ruoyi.project.tr.specialCheck.mapper.*; |
| | | import org.bouncycastle.crypto.engines.AESFastEngine; |
| | | import org.bouncycastle.crypto.modes.GCMBlockCipher; |
| | | import org.bouncycastle.crypto.params.AEADParameters; |
| | | import org.bouncycastle.crypto.params.KeyParameter; |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Component; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.io.*; |
| | | import java.net.HttpURLConnection; |
| | | import java.net.URL; |
| | | import java.nio.charset.StandardCharsets; |
| | | import java.text.SimpleDateFormat; |
| | | import java.time.format.DateTimeFormatter; |
| | | import java.util.*; |
| | | |
| | | @Component |
| | | public class SpecialCheckTaskDownload { |
| | | |
| | | private final Logger logger = LoggerFactory.getLogger(this.getClass()); |
| | | |
| | | @Autowired |
| | | private TbBaseCheckCompanyMapper companyTbRepository; |
| | | @Autowired |
| | | private TbBaseCheckItemMapper itemTbRepository; |
| | | @Autowired |
| | | private TbBaseCheckScoreMapper scoreTbRepository; |
| | | @Autowired |
| | | private TbBaseCheckTaskMapper taskTbRepository; |
| | | @Autowired |
| | | private TbSpecialCheckTaskLogMapper taskSpecialLogMapper; |
| | | @Autowired |
| | | private IRiskListService riskListService; |
| | | @Autowired |
| | | private TbCheckConfigMapper configMapper; |
| | | |
| | | String token = "GT6gGJV7JV"; |
| | | String key = "Bv+NeBolwqg2Pbc1yVwrZA=="; |
| | | String iv = "4QC9V8eAiB7tdlgBkMsTAw=="; |
| | | |
| | | public static final int MAC_BIT_SIZE = 128; |
| | | |
| | | public static String encrypt(String plainText, byte[] key, byte[] iv) { |
| | | String sr; |
| | | try { |
| | | byte[] plainBytes = plainText.getBytes(StandardCharsets.UTF_8); |
| | | GCMBlockCipher cipher = new GCMBlockCipher(new |
| | | AESFastEngine()); |
| | | AEADParameters parameters = |
| | | new AEADParameters(new KeyParameter(key), |
| | | MAC_BIT_SIZE, iv, null); |
| | | cipher.init(true, parameters); |
| | | byte[] encryptedBytes = new |
| | | byte[cipher.getOutputSize(plainBytes.length)]; |
| | | int retLen = cipher.processBytes(plainBytes, 0, plainBytes.length, |
| | | encryptedBytes, 0); |
| | | cipher.doFinal(encryptedBytes, retLen); |
| | | sr = Base64.getEncoder().encodeToString(encryptedBytes); |
| | | } catch (Exception ex) { |
| | | throw new RuntimeException(ex.getMessage()); |
| | | } |
| | | return sr; |
| | | } |
| | | |
| | | |
| | | @Transactional |
| | | // @Scheduled(cron = "0 0 23 * * ?") //每天晚上23点执行一次0 0 22,23 * * ? |
| | | // @Scheduled(cron = "0 0 22,23 * * ?") //每天晚上22、23点执行一次 |
| | | // @Scheduled(cron = "0 0/1 * * * ? ") // 分钟 |
| | | // @Scheduled(cron = "0 0/20 * * * ? ") // 分钟 |
| | | // @Scheduled(cron = "0/5 * * * * ?") |
| | | public void execReportDateSchedule() throws UnsupportedEncodingException { |
| | | logger.info("【####】拉取专项检查数据开始..."); |
| | | |
| | | HttpURLConnection con = null; |
| | | BufferedReader buffer = null; |
| | | int responseCode = 200; |
| | | |
| | | DateTimeFormatter dateFormatCheckData = DateTimeFormatter.ofPattern("yyyy-MM-dd"); |
| | | DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:MM:ss"); |
| | | |
| | | Date date = new Date(); |
| | | //格式化时间,作为token的时间戳 |
| | | SimpleDateFormat tokenDate= new SimpleDateFormat("yyyyMMddHHmmssSSS"); |
| | | String formatDate = tokenDate.format(date); |
| | | |
| | | logger.info("【token时间】" + formatDate); |
| | | |
| | | /** |
| | | * 1 |
| | | * */ |
| | | logger.info("【####】拉取专项任务数据开始..."); |
| | | TbCheckConfig specialCheckConfig = configMapper.getSpecialCheckConfig(); |
| | | if (specialCheckConfig.getStatus() == 2){ |
| | | |
| | | StringBuffer specialCheckBuffer = null; |
| | | |
| | | //上报数据 |
| | | try { |
| | | URL url = new URL("http://120.71.182.198:9999/v1/data/receive/getCheckTask"); |
| | | //得到连接对象 |
| | | con = (HttpURLConnection) url.openConnection(); |
| | | //设置请求类型 |
| | | con.setRequestMethod("POST"); |
| | | //允许写出 |
| | | con.setDoOutput(true); |
| | | //允许读入 |
| | | con.setDoInput(true); |
| | | //不使用缓存 |
| | | con.setUseCaches(false); |
| | | con.setInstanceFollowRedirects(true); |
| | | //设置请求头 |
| | | con.setRequestProperty("X-Access-Token",token+formatDate.toString()); |
| | | //设置Content-Type,此处根据实际情况确定 |
| | | con.setRequestProperty("Content-Type", "application/json;charset=utf8"); |
| | | |
| | | OutputStream os = con.getOutputStream(); |
| | | |
| | | //本段日志,测试成功后,可注释掉 |
| | | if (responseCode == HttpURLConnection.HTTP_OK) { |
| | | //得到响应流 |
| | | InputStream inputStream = con.getInputStream(); |
| | | //将响应流转换成字符串 |
| | | specialCheckBuffer = new StringBuffer(); |
| | | String line; |
| | | buffer = new BufferedReader(new InputStreamReader(inputStream, "UTF-8")); |
| | | while ((line = buffer.readLine()) != null) { |
| | | specialCheckBuffer.append(line); |
| | | } |
| | | // logger.info("result:" + unitResultBuffer.toString()); |
| | | System.out.println("result:" + specialCheckBuffer.toString()); |
| | | } |
| | | |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | |
| | | //接收返回值,保存返回值 |
| | | TbBaseCheckTaskDownloadBO checkTaskDownloadDTO = JSONObject.parseObject(specialCheckBuffer.toString(), TbBaseCheckTaskDownloadBO.class); |
| | | //接收返回值,保存返回值 |
| | | CheckTaskData tasks = JSONObject.parseObject(checkTaskDownloadDTO.getData(), CheckTaskData.class); |
| | | if (tasks.getCheckTaskLists().size() > 0){ |
| | | for (TbBaseCheckTask checkTask : tasks.getCheckTaskLists()) { |
| | | checkTask.setStatus(1); |
| | | int insert = taskTbRepository.insert(checkTask); |
| | | } |
| | | } |
| | | |
| | | logger.info("【专项检查任务】-读取任务结果:" + checkTaskDownloadDTO.getCode()); |
| | | System.out.println("【专项检查任务】-读取任务完成"); |
| | | }else { |
| | | System.out.println("【专项检查任务】- 不读取任务"); |
| | | } |
| | | |
| | | /** |
| | | * 2 |
| | | * */ |
| | | logger.info("【####】拉取检查项数据开始..."); |
| | | if (specialCheckConfig.getStatus() == 2){ |
| | | |
| | | StringBuffer specialCheckBuffer = null; |
| | | |
| | | ItemDownloadRespDTO itemDownloadRespDTO = new ItemDownloadRespDTO(); |
| | | TbBaseCheckTask baseCheckTask = taskTbRepository.getBaseCheckTaskByStatus(date); |
| | | Page page = new Page(); |
| | | page.setCurrent(String.valueOf(1)); |
| | | page.setSize(String.valueOf(1000)); |
| | | |
| | | itemDownloadRespDTO.setTaskId(baseCheckTask.getId()); |
| | | itemDownloadRespDTO.setPage(page); |
| | | //加密请求数据 |
| | | String AESReportUnitDate = encrypt(JSONObject.toJSONString(itemDownloadRespDTO), key.getBytes(), iv.getBytes()); |
| | | //上报数据 |
| | | try { |
| | | URL url = new URL("http://120.71.182.198:9999/v1/data/receive/getCheckItem"); |
| | | //得到连接对象 |
| | | con = (HttpURLConnection) url.openConnection(); |
| | | //设置请求类型 |
| | | con.setRequestMethod("POST"); |
| | | //允许写出 |
| | | con.setDoOutput(true); |
| | | //允许读入 |
| | | con.setDoInput(true); |
| | | //不使用缓存 |
| | | con.setUseCaches(false); |
| | | con.setInstanceFollowRedirects(true); |
| | | //设置请求头 |
| | | con.setRequestProperty("X-Access-Token",token+formatDate.toString()); |
| | | //设置Content-Type,此处根据实际情况确定 |
| | | con.setRequestProperty("Content-Type", "application/json;charset=utf8"); |
| | | |
| | | OutputStream os = con.getOutputStream(); |
| | | Map paraMap = new HashMap(); |
| | | paraMap.put("data", AESReportUnitDate); /**封装数据*/ |
| | | System.out.println("【【加密请求体】】" + JSONArray.toJSON(paraMap).toString()); |
| | | //组装入参,设置请求体 |
| | | os.write(JSON.toJSONString(paraMap).getBytes()); |
| | | |
| | | //本段日志,测试成功后,可注释掉 |
| | | if (responseCode == HttpURLConnection.HTTP_OK) { |
| | | //得到响应流 |
| | | InputStream inputStream = con.getInputStream(); |
| | | //将响应流转换成字符串 |
| | | specialCheckBuffer = new StringBuffer(); |
| | | String line; |
| | | buffer = new BufferedReader(new InputStreamReader(inputStream, "UTF-8")); |
| | | while ((line = buffer.readLine()) != null) { |
| | | specialCheckBuffer.append(line); |
| | | } |
| | | // logger.info("result:" + unitResultBuffer.toString()); |
| | | System.out.println("result:" + specialCheckBuffer.toString()); |
| | | } |
| | | |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | |
| | | //接收返回值,保存返回值 |
| | | ItemDownloadRespBO itemDownloadRespBO = JSONObject.parseObject(specialCheckBuffer.toString(), ItemDownloadRespBO.class); |
| | | //接收返回值,保存返回值 |
| | | CheckItemData itemData = JSONObject.parseObject(itemDownloadRespBO.getData(), CheckItemData.class); |
| | | if (itemData.getItemLists().size() > 0){ |
| | | for (TbBaseCheckItem item : itemData.getItemLists()) { |
| | | item.setStatus(1); |
| | | int insert = itemTbRepository.insert(item); |
| | | } |
| | | } |
| | | |
| | | taskTbRepository.updateStatusById(baseCheckTask.getId()); |
| | | |
| | | logger.info("【专项任务检查项】-读取检查项结果:" + itemDownloadRespBO.getCode()); |
| | | System.out.println("【专项任务检查项】-读取检查项完成"); |
| | | }else { |
| | | System.out.println("【专项任务检查项】- 不读取检查项"); |
| | | } |
| | | |
| | | /** |
| | | * 3 |
| | | * */ |
| | | logger.info("【####】拉取评分细则开始..."); |
| | | if (specialCheckConfig.getStatus() == 2){ |
| | | |
| | | StringBuffer specialCheckBuffer = null; |
| | | |
| | | ScoreDownloadRespDTO scoreDownloadRespDTO = new ScoreDownloadRespDTO(); |
| | | TbBaseCheckItem baseItemByStatus = itemTbRepository.getBaseItemByStatus(date); |
| | | Page page = new Page(); |
| | | page.setCurrent(String.valueOf(1)); |
| | | page.setSize(String.valueOf(1000)); |
| | | |
| | | scoreDownloadRespDTO.setTaskId(baseItemByStatus.getTaskId()); |
| | | scoreDownloadRespDTO.setCheckItemId(baseItemByStatus.getId()); |
| | | scoreDownloadRespDTO.setPage(page); |
| | | //加密请求数据 |
| | | String AESReportUnitDate = encrypt(JSONObject.toJSONString(scoreDownloadRespDTO), key.getBytes(), iv.getBytes()); |
| | | //上报数据 |
| | | try { |
| | | URL url = new URL("http://120.71.182.198:9999/v1/data/receive/getCheckItem"); |
| | | //得到连接对象 |
| | | con = (HttpURLConnection) url.openConnection(); |
| | | //设置请求类型 |
| | | con.setRequestMethod("POST"); |
| | | //允许写出 |
| | | con.setDoOutput(true); |
| | | //允许读入 |
| | | con.setDoInput(true); |
| | | //不使用缓存 |
| | | con.setUseCaches(false); |
| | | con.setInstanceFollowRedirects(true); |
| | | //设置请求头 |
| | | con.setRequestProperty("X-Access-Token",token+formatDate.toString()); |
| | | //设置Content-Type,此处根据实际情况确定 |
| | | con.setRequestProperty("Content-Type", "application/json;charset=utf8"); |
| | | |
| | | OutputStream os = con.getOutputStream(); |
| | | Map paraMap = new HashMap(); |
| | | paraMap.put("data", AESReportUnitDate); /**封装数据*/ |
| | | System.out.println("【【加密请求体】】" + JSONArray.toJSON(paraMap).toString()); |
| | | //组装入参,设置请求体 |
| | | os.write(JSON.toJSONString(paraMap).getBytes()); |
| | | |
| | | //本段日志,测试成功后,可注释掉 |
| | | if (responseCode == HttpURLConnection.HTTP_OK) { |
| | | //得到响应流 |
| | | InputStream inputStream = con.getInputStream(); |
| | | //将响应流转换成字符串 |
| | | specialCheckBuffer = new StringBuffer(); |
| | | String line; |
| | | buffer = new BufferedReader(new InputStreamReader(inputStream, "UTF-8")); |
| | | while ((line = buffer.readLine()) != null) { |
| | | specialCheckBuffer.append(line); |
| | | } |
| | | // logger.info("result:" + unitResultBuffer.toString()); |
| | | System.out.println("result:" + specialCheckBuffer.toString()); |
| | | } |
| | | |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | |
| | | //接收返回值,保存返回值 |
| | | ScoreDownloadRespBO scoreDownloadRespBO = JSONObject.parseObject(specialCheckBuffer.toString(), ScoreDownloadRespBO.class); |
| | | //接收返回值,保存返回值 |
| | | CheckScoreData scoreData = JSONObject.parseObject(scoreDownloadRespBO.getData(), CheckScoreData.class); |
| | | if (scoreData.getScoreLists().size() > 0){ |
| | | for (TbBaseCheckScore score : scoreData.getScoreLists()) { |
| | | int insert = scoreTbRepository.insert(score); |
| | | } |
| | | |
| | | } |
| | | itemTbRepository.updateStatusById(baseItemByStatus.getId()); |
| | | |
| | | logger.info("【评分细则】-读取结果:" + scoreDownloadRespBO.getCode()); |
| | | System.out.println("【评分细则】-读取完成"); |
| | | }else { |
| | | System.out.println("【评分细则】- 不读取"); |
| | | } |
| | | |
| | | |
| | | } |
| | | } |