You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

131 lines
5.2 KiB
Java

package com.shxy.i2.serviceimpl;
import com.shxy.i2.Tool.AsyncMethod;
import com.shxy.i2.dao.*;
import com.shxy.i2.entity.*;
import com.shxy.i2.service.Webservcies;
import com.shxy.i2.service.XydlI2Service;
import lombok.extern.slf4j.Slf4j;
import org.apache.cxf.endpoint.Client;
import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
import org.apache.cxf.transport.http.HTTPConduit;
import org.apache.cxf.transports.http.configuration.HTTPClientPolicy;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List;
@Service
@Slf4j
@EnableAsync
public class WebServiceImpl implements Webservcies {
@Autowired
XydlI2Service xydlI2Service;
@Autowired
AsyncMethod asyncMethod;
@Autowired
private Niec_SensorsDao niec_sensorsDao;
private static String address = "http://10.238.71.98:18096/ppa/webservice/CAGAccessService?wsdl";
/**
* 上传cac数据
*/
@Override
public void uploadData() {
log.info("实时数据定时任务启动");
// 动态客户端
JaxWsDynamicClientFactory clientFactory = JaxWsDynamicClientFactory.newInstance();
log.info("实时数据 publicsecurity webService url : {}", address);
//根据WebServices接口地址创建client
Client client = clientFactory.createClient(address);
HTTPConduit conduit = (HTTPConduit) client.getConduit();
HTTPClientPolicy policy = new HTTPClientPolicy();
policy.setAllowChunking(false);
// 连接服务器超时时间 60秒
policy.setConnectionTimeout(60000);
// 等待服务器响应超时时间 60秒
policy.setReceiveTimeout(30000);
conduit.setClient(policy);
log.info("开始执行定时任务-查询数据库");
HashMap<Integer, Niec_Sensors> equipMap = new HashMap();
List<Niec_Sensors> niec_sensors = niec_sensorsDao.selectAll();
for (Niec_Sensors item : niec_sensors) {
equipMap.put(item.getId(), item);
}
xydlI2Service.upload_sf6_qtyl(client, equipMap);
xydlI2Service.upload_dcyw(client, equipMap);
xydlI2Service.upload_fhdlbx(client, equipMap);
xydlI2Service.upload_fhzxq(client, equipMap);
xydlI2Service.upload_sf6_qtsf(client, equipMap);
xydlI2Service.upload_tx(client, equipMap);
xydlI2Service.upload_ws(client, equipMap);
xydlI2Service.upload_dr_jyjc(client, equipMap);
xydlI2Service.upload_jsyhw_jyjc(client, equipMap);
xydlI2Service.upload_microclimate(client, equipMap);
xydlI2Service.upload_cnj(client, equipMap);
log.info("实时数据定时任务结束");
}
@Override
public void uploadyspData() {
log.info("油色谱数据定时任务启动");
// 动态客户端
JaxWsDynamicClientFactory clientFactory = JaxWsDynamicClientFactory.newInstance();
log.info("油色谱数据 publicsecurity webService url : {}", address);
//根据WebServices接口地址创建client
Client client = clientFactory.createClient(address);
HTTPConduit conduit = (HTTPConduit) client.getConduit();
HTTPClientPolicy policy = new HTTPClientPolicy();
policy.setAllowChunking(false);
// 连接服务器超时时间 60秒
policy.setConnectionTimeout(60000);
// 等待服务器响应超时时间 60秒
policy.setReceiveTimeout(60000);
conduit.setClient(policy);
log.info("开始执行定时任务-查询数据库");
HashMap<Integer, Niec_Sensors> equipMap = new HashMap();
List<Niec_Sensors> niec_sensors = niec_sensorsDao.selectAll();
for (Niec_Sensors item : niec_sensors) {
equipMap.put(item.getId(), item);
}
xydlI2Service.upload_ysp(client, equipMap);
log.info("油色谱数据定时任务结束");
}
@Override
public void uploadjfjcData() {
log.info("局放监测数据定时任务启动");
// 动态客户端
JaxWsDynamicClientFactory clientFactory = JaxWsDynamicClientFactory.newInstance();
log.info("局放监测数据 publicsecurity webService url : {}", address);
//根据WebServices接口地址创建client
Client client = clientFactory.createClient(address);
HTTPConduit conduit = (HTTPConduit) client.getConduit();
HTTPClientPolicy policy = new HTTPClientPolicy();
policy.setAllowChunking(false);
// 连接服务器超时时间 60秒
policy.setConnectionTimeout(60000);
// 等待服务器响应超时时间 60秒
policy.setReceiveTimeout(60000);
conduit.setClient(policy);
HashMap<Integer, Niec_Sensors> equipMap = new HashMap();
List<Niec_Sensors> niec_sensors = niec_sensorsDao.selectAll();
for (Niec_Sensors item : niec_sensors) {
equipMap.put(item.getId(), item);
}
xydlI2Service.upload_dlq_jbfd(client, equipMap);
xydlI2Service.upload_byq_jbfd(client, equipMap);
log.info("局放监测数据定时任务结束");
}
}