Browse Source

风险分析对象

master
liwenxuan 9 months ago
parent
commit
3e96a7aaea
  1. 4
      pom.xml
  2. 2
      src/main/java/com/hxjt/dataupload/DataUploadApplication.java
  3. 21
      src/main/java/com/hxjt/dataupload/jobhandler/demo/MyJobHandler.java
  4. 113
      src/main/java/com/hxjt/dataupload/jobhandler/doubleprevent/FxfxdxJobHandler.java
  5. 13
      src/main/java/com/hxjt/dataupload/mapper/FxfxdxMapper.java
  6. 162
      src/main/java/com/hxjt/dataupload/model/entity/doubleprevent/Fxfxdx.java
  7. 13
      src/main/java/com/hxjt/dataupload/service/FxfxdxService.java
  8. 23
      src/main/java/com/hxjt/dataupload/service/impl/FxfxdxServiceImpl.java
  9. 45
      src/main/java/com/hxjt/dataupload/utils/HttpUtils.java
  10. 4
      src/main/resources/application-dev.yml
  11. 2
      src/main/resources/application.yml
  12. 54
      src/main/resources/mapper/FxfxdxMapper.xml

4
pom.xml

@ -52,11 +52,11 @@
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency> -->
<dependency>
<!--<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
</dependency>-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>

2
src/main/java/com/hxjt/dataupload/DataUploadApplication.java

@ -6,7 +6,7 @@ import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.annotation.EnableScheduling;
@SpringBootApplication
@EnableScheduling
//@EnableScheduling
@EnableAsync
public class DataUploadApplication {

21
src/main/java/com/hxjt/dataupload/jobhandler/doubleprevent/MyJobHandler.java → src/main/java/com/hxjt/dataupload/jobhandler/demo/MyJobHandler.java

@ -1,6 +1,7 @@
package com.hxjt.dataupload.jobhandler.doubleprevent;
package com.hxjt.dataupload.jobhandler.demo;
import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.context.XxlJobHelper;
import com.xxl.job.core.handler.annotation.XxlJob;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -24,13 +25,27 @@ public class MyJobHandler {
private Logger log = LoggerFactory.getLogger(MyJobHandler.class);
@XxlJob(value = "demoJobHandler",init = "init",destroy = "destroy")
public ReturnT<String> execute(String param){
/*public ReturnT<String> execute(String param){
String jobParam = XxlJobHelper.getJobParam();
XxlJobHelper.log("执行日志:"+jobParam);
System.out.println(jobParam);
log.info("小滴课堂 execute 任务触发成功:"+LocalDateTime.now());
return ReturnT.SUCCESS;
}*/
public void execute(String param){
String jobParam = XxlJobHelper.getJobParam();
XxlJobHelper.log("执行日志:"+jobParam);
System.out.println(jobParam);
log.info("V2小滴课堂 execute 任务触发成功:"+LocalDateTime.now());
//XxlJobHelper.handleFail("自定义错误,任务执行失败");
XxlJobHelper.handleSuccess("任务执行成功");
//return ReturnT.SUCCESS;
}

113
src/main/java/com/hxjt/dataupload/jobhandler/doubleprevent/FxfxdxJobHandler.java

@ -0,0 +1,113 @@
package com.hxjt.dataupload.jobhandler.doubleprevent;
import com.alibaba.fastjson.JSONObject;
import com.hxjt.dataupload.model.entity.doubleprevent.Fxfxdx;
import com.hxjt.dataupload.service.FxfxdxService;
import com.hxjt.dataupload.utils.HttpUtils;
import com.hxjt.dataupload.utils.JsonData;
import com.xxl.job.core.context.XxlJobHelper;
import com.xxl.job.core.handler.annotation.XxlJob;
import org.apache.http.protocol.HTTP;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.io.IOException;
import java.util.ArrayList;
@Component
public class FxfxdxJobHandler {
private Logger log = LoggerFactory.getLogger(FxfxdxJobHandler.class);
@Autowired
FxfxdxService fxfxdxService;
@XxlJob(value = "FxfxdxJobHandler", init = "init", destroy = "destroy")
public void execute(String param) {
ArrayList<Fxfxdx> fxfxdxs = fxfxdxService.getFxfxdxs();
ArrayList<Fxfxdx> zdwxys = fxfxdxService.getZdwxys();
for (int i = 0; i < fxfxdxs.size(); i++) {
String HAZARD_NAME = fxfxdxs.get(i).getFengxianfenxiduixian();
for (int j = 0; j < zdwxys.size(); j++) {
String DANGESOURCE_NAME = zdwxys.get(j).getZhongdaweixianyuanmi();
switch (HAZARD_NAME) {
case "重大危险源甲醇中间储存":
if (DANGESOURCE_NAME.equals("甲醇中间储存单元")) {
fxfxdxs.get(i).setZhongdaweixianyuanmi(DANGESOURCE_NAME);
fxfxdxs.get(i).setZhongdaweixianyuande(zdwxys.get(j).getZhongdaweixianyuande());
}
break;
case "重大危险源化产油库":
if (DANGESOURCE_NAME.equals("化产油库区")) {
fxfxdxs.get(i).setZhongdaweixianyuanmi(DANGESOURCE_NAME);
fxfxdxs.get(i).setZhongdaweixianyuande(zdwxys.get(j).getZhongdaweixianyuande());
}
break;
case "重大危险源甲醇储罐":
if (DANGESOURCE_NAME.equals("甲醇储存单元")) {
fxfxdxs.get(i).setZhongdaweixianyuanmi(DANGESOURCE_NAME);
fxfxdxs.get(i).setZhongdaweixianyuande(zdwxys.get(j).getZhongdaweixianyuande());
}
break;
case "重大危险源空分站":
if (DANGESOURCE_NAME.equals("空分站单元")) {
fxfxdxs.get(i).setZhongdaweixianyuanmi(DANGESOURCE_NAME);
fxfxdxs.get(i).setZhongdaweixianyuande(zdwxys.get(j).getZhongdaweixianyuande());
}
break;
case "重大危险源气柜储存":
if (DANGESOURCE_NAME.equals("气柜")) {
fxfxdxs.get(i).setZhongdaweixianyuanmi(DANGESOURCE_NAME);
fxfxdxs.get(i).setZhongdaweixianyuande(zdwxys.get(j).getZhongdaweixianyuande());
}
break;
case "重大危险源粗苯蒸馏":
if (DANGESOURCE_NAME.equals("粗苯蒸馏单元")) {
fxfxdxs.get(i).setZhongdaweixianyuanmi(DANGESOURCE_NAME);
fxfxdxs.get(i).setZhongdaweixianyuande(zdwxys.get(j).getZhongdaweixianyuande());
}
break;
}
}
if(fxfxdxs.get(i).getShifouweizhongdaweix().equals("是")){
fxfxdxs.get(i).setZhongdaweixianyuande(fxfxdxs.get(i).getZhongdaweixianyuande().substring(0,2));
}
//System.out.println(fxfxdxs.get(i).toString());
}
for (int i = 0; i < fxfxdxs.size(); i++) {
String company = fxfxdxs.get(i).getQiyemingcheng();
String url = "https://www.ny-fxfk.com/space-ningyanghuagongchany/sapi/qpaas/tiga/dys/keyAuthentication/fengxianfenxiduixian/v1/fengxianfenxiduixian";
switch (company) {
case "山东恒信高科能源有限公司":
case "恒信中碳氢能源科技(山东)有限公司":
JSONObject jsonObject = (JSONObject) JSONObject.toJSON(fxfxdxs.get(i));
String post = null;
try {
post = HttpUtils.sendDataUpload(url, jsonObject, HTTP.UTF_8, "avRdnP4OxPigMalwzipa9F643CF443BE2F93");
//System.out.println("post:"+post.toString());
} catch (IOException e) {
e.printStackTrace();
XxlJobHelper.handleFail("任务执行失败"+e.getMessage());
}
break;
//System.out.println("post:"+post1.toString());
}
}
}
private void init() {
log.info("init 方法调用成功");
}
private void destroy() {
log.info("destroy 方法调用成功");
}
}

13
src/main/java/com/hxjt/dataupload/mapper/FxfxdxMapper.java

@ -0,0 +1,13 @@
package com.hxjt.dataupload.mapper;
import com.hxjt.dataupload.model.entity.doubleprevent.Fxfxdx;
import org.apache.ibatis.annotations.Mapper;
import java.util.ArrayList;
@Mapper
public interface FxfxdxMapper {
ArrayList<Fxfxdx> getFxfxdxs();
ArrayList<Fxfxdx> getZdwxys();
}

162
src/main/java/com/hxjt/dataupload/model/entity/doubleprevent/Fxfxdx.java

@ -0,0 +1,162 @@
package com.hxjt.dataupload.model.entity.doubleprevent;
import org.springframework.stereotype.Repository;
@Repository
public class Fxfxdx {
//企业名称
private String qiyemingcheng;
//信用代码
private String qiyebianma;
//企业编码
private String weixianhuaxuepindeng;
//风险分析对象名称
private String fengxianfenxiduixian;
//风险分析对象编码
private String fengxianfenxiduixia1;
//责任部门
private String zerenbumen;
//责任人
private String zerenren;
//是否为重大危险源
private String shifouweizhongdaweix;
//---重大危险源名称,是否为重大危险源=是时必填
private String zhongdaweixianyuanmi;
//---重大危险源等级,是否为重大危险源=是时必填
//需传枚举值:一级、二级、 三级、四级
private String zhongdaweixianyuande;
//创建人
private String jiluren;
//创建时间
private String jilushijian;
public String getQiyemingcheng() {
return qiyemingcheng;
}
public void setQiyemingcheng(String qiyemingcheng) {
this.qiyemingcheng = qiyemingcheng;
}
public String getQiyebianma() {
return qiyebianma;
}
public void setQiyebianma(String qiyebianma) {
this.qiyebianma = qiyebianma;
}
public String getWeixianhuaxuepindeng() {
return weixianhuaxuepindeng;
}
public void setWeixianhuaxuepindeng(String weixianhuaxuepindeng) {
this.weixianhuaxuepindeng = weixianhuaxuepindeng;
}
public String getFengxianfenxiduixian() {
return fengxianfenxiduixian;
}
public void setFengxianfenxiduixian(String fengxianfenxiduixian) {
this.fengxianfenxiduixian = fengxianfenxiduixian;
}
public String getFengxianfenxiduixia1() {
return fengxianfenxiduixia1;
}
public void setFengxianfenxiduixia1(String fengxianfenxiduixia1) {
this.fengxianfenxiduixia1 = fengxianfenxiduixia1;
}
public String getZerenbumen() {
return zerenbumen;
}
public void setZerenbumen(String zerenbumen) {
this.zerenbumen = zerenbumen;
}
public String getZerenren() {
return zerenren;
}
public void setZerenren(String zerenren) {
this.zerenren = zerenren;
}
public String getShifouweizhongdaweix() {
return shifouweizhongdaweix;
}
public void setShifouweizhongdaweix(String shifouweizhongdaweix) {
this.shifouweizhongdaweix = shifouweizhongdaweix;
}
public String getZhongdaweixianyuanmi() {
return zhongdaweixianyuanmi;
}
public void setZhongdaweixianyuanmi(String zhongdaweixianyuanmi) {
this.zhongdaweixianyuanmi = zhongdaweixianyuanmi;
}
public String getZhongdaweixianyuande() {
return zhongdaweixianyuande;
}
public void setZhongdaweixianyuande(String zhongdaweixianyuande) {
this.zhongdaweixianyuande = zhongdaweixianyuande;
}
public String getJiluren() {
return jiluren;
}
public void setJiluren(String jiluren) {
this.jiluren = jiluren;
}
public String getJilushijian() {
return jilushijian;
}
public void setJilushijian(String jilushijian) {
this.jilushijian = jilushijian;
}
@Override
public String toString() {
return "Fxfxdx{" +
"qiyemingcheng='" + qiyemingcheng + '\'' +
", qiyebianma='" + qiyebianma + '\'' +
", weixianhuaxuepindeng='" + weixianhuaxuepindeng + '\'' +
", fengxianfenxiduixian='" + fengxianfenxiduixian + '\'' +
", fengxianfenxiduixia1='" + fengxianfenxiduixia1 + '\'' +
", zerenbumen='" + zerenbumen + '\'' +
", zerenren='" + zerenren + '\'' +
", shifouweizhongdaweix='" + shifouweizhongdaweix + '\'' +
", zhongdaweixianyuanmi='" + zhongdaweixianyuanmi + '\'' +
", zhongdaweixianyuande='" + zhongdaweixianyuande + '\'' +
", jiluren='" + jiluren + '\'' +
", jilushijian='" + jilushijian + '\'' +
'}';
}
}

13
src/main/java/com/hxjt/dataupload/service/FxfxdxService.java

@ -0,0 +1,13 @@
package com.hxjt.dataupload.service;
import com.hxjt.dataupload.model.entity.doubleprevent.Fxfxdx;
import java.util.ArrayList;
public interface FxfxdxService {
ArrayList<Fxfxdx> getFxfxdxs();
ArrayList<Fxfxdx> getZdwxys();
}

23
src/main/java/com/hxjt/dataupload/service/impl/FxfxdxServiceImpl.java

@ -0,0 +1,23 @@
package com.hxjt.dataupload.service.impl;
import com.hxjt.dataupload.mapper.FxfxdxMapper;
import com.hxjt.dataupload.model.entity.doubleprevent.Fxfxdx;
import com.hxjt.dataupload.service.FxfxdxService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
@Service
public class FxfxdxServiceImpl implements FxfxdxService {
@Autowired
FxfxdxMapper fxfxdxMapper;
@Override
public ArrayList<Fxfxdx> getFxfxdxs() {
return fxfxdxMapper.getFxfxdxs();
}
@Override
public ArrayList<Fxfxdx> getZdwxys() {
return fxfxdxMapper.getZdwxys();
}
}

45
src/main/java/com/hxjt/dataupload/utils/HttpUtils.java

@ -241,6 +241,51 @@ public class HttpUtils {
return body;
}
/**
* 发送post请求
* @param url 路径
* @param jsonObject 参数(json类型)
* @param encoding 编码格式
* @return
* @throws ParseException
* @throws IOException
*/
public static String sendDataUpload(String url, JSONObject jsonObject, String encoding, String keyAuthentication) throws ParseException, IOException{
String body = "";
//创建httpclient对象
CloseableHttpClient client = HttpClients.createDefault();
//创建post方式请求对象
HttpPost httpPost = new HttpPost(url);
//装填参数
StringEntity s = new StringEntity(jsonObject.toString(), "utf-8");
s.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,
"application/json"));
//设置参数到请求对象中
httpPost.setEntity(s);
// System.out.println("请求参数:"+nvps.toString());
//设置header信息
//指定报文头【Content-type】、【User-Agent】
httpPost.setHeader("Content-type", "application/json");
httpPost.setHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
httpPost.setHeader("entId","ningyanghuagongchany");
httpPost.setHeader("keyAuthentication",keyAuthentication);
System.out.println("请求地址:"+url);
//执行请求操作,并拿到结果(同步阻塞)
CloseableHttpResponse response = client.execute(httpPost);
//获取结果实体
org.apache.http.HttpEntity entity = response.getEntity();
if (entity != null) {
//按指定编码转换结果实体为String类型
body = EntityUtils.toString(entity, encoding);
}
EntityUtils.consume(entity);
//释放链接
response.close();
return body;
}

4
src/main/resources/application-dev.yml

@ -66,8 +66,10 @@ xxl:
#[选填]执行器IP :默认为空表示自动获取IP(即springboot容器的ip和端口,可以自动获取,也可以指定),多网卡时可手动设置指定IP,该IP不会绑定Host仅作为通讯实用;地址信息用于 "执行器注册" 和 "调度中心请求并触发任务",
ip:
# [选填]执行器端口号:小于等于0则自动获取;默认端口为9999,单机部署多个执行器时,注意要配置不同执行器端口;
port: 9999
port: 9992
#执行器日志文件存储路径,需要对该路径拥有读写权限;为空则使用默认路径
logpath: ./data/logs/xxl-job/executor
#执行器日志保存天数
logretentiondays: 30
#server:
#port: 8114

2
src/main/resources/application.yml

@ -2,4 +2,4 @@ spring:
profiles:
active: dev
server:
port: 8113
port: 8112

54
src/main/resources/mapper/FxfxdxMapper.xml

@ -0,0 +1,54 @@
<?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.hxjt.dataupload.mapper.FxfxdxMapper">
<select id="getFxfxdxs" resultType="com.hxjt.dataupload.model.entity.doubleprevent.Fxfxdx">
select
(case
when a.ORGANID = '309_ORG' then '山东恒信高科能源有限公司'
else '恒信中碳氢能源科技(山东)有限公司'
end) as qiyemingcheng,
(case
when a.ORGANID = '309_ORG' then '91370921328482832M'
else '91370921MA94AF5H3N'
end) as qiyebianma,
(case
when a.ORGANID = '309_ORG' then '370910170'
else '370980326'
end) as weixianhuaxuepindeng,
a.name as fengxianfenxiduixian,
a.code as fengxianfenxiduixia1,
b.ORGANNAME as zerenbumen,
c.EMPNAME as zerenren,
(case
when BIGDANGER = 'Y' then '是'
else '否'
end) as shifouweizhongdaweix,
d.ACCOUNTDESC as jiluren,
FORMAT(a.CREASTAMP,
'yyyy-MM-dd HH:mm:ss')as jilushijian,
a.ORGANID as comanyFlag
from
ISM_HAZARD a
left join PF_ORGAN b on
a.fdutydeptid = b.id
left join PF_EMPLOYEE c on
a.FDUTYID = c.id
left join PF_ACCOUNT d on
a.CREATOR = d.id
where
a.ISDELETE = 'N'
</select>
<select id="getZdwxys" resultType="com.hxjt.dataupload.model.entity.doubleprevent.Fxfxdx">
select a.name as zhongdaweixianyuanmi,b.RISKGRADE as zhongdaweixianyuande
from
ISM_DANGESOURCE a left join ISM_DSRISKGRADE b on
a.dslevel = b.id
</select>
</mapper>
Loading…
Cancel
Save