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 equipMap = new HashMap(); List 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 equipMap = new HashMap(); List 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 equipMap = new HashMap(); List 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("局放监测数据定时任务结束"); } }