作者 王勇

功能基本完善

... ... @@ -8,7 +8,7 @@ spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: oracle.jdbc.OracleDriver
url: jdbc:oracle:thin:@192.168.1.4:10068:CGODW
url: jdbc:oracle:thin:@192.168.1.2:10068:CGODW
username: CGOETL
password: 1q2w3e4r
... ... @@ -39,13 +39,13 @@ mybatis:
type-aliases-package: com.sunyo.wlpt.data.warehouse.domain
# \u65E5\u5FD7\u6253\u5370
#logging:
# config: config/logback-dev.xml
# level:
# com.sunyo.wlpt.data.warehouse.mapper: debug
#logback:
# appname: data-warehouse
# logdir: ./log
logging:
config: config/logback-dev.xml
level:
com.sunyo.wlpt.data.warehouse.mapper: debug
logback:
appname: data-warehouse
logdir: ./log
#eureka client
... ...
package com.sunyo.wlpt.data.warehouse.feign;
import com.sunyo.wlpt.data.warehouse.commons.ResultExitData;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.Date;
import java.util.List;
/**
* @author 子诚
* Description:
* 时间:2020/5/25 9:48
*/
//@Component
//@FeignClient(value = "cgonms-provide", fallback = GetCgoNmsFeignHystrix.class)
public interface GetCgoNmsFeign {
/**
* 根据航班日期、航班号,获取出出港业务统计数据
*
* @param flightDate 航班日期
* @param flightNo 航班号
* @return {@link ResultExitData}
*/
@GetMapping("/cgonms/getInfo")
public List<ResultExitData> getData(
@RequestParam(value = "flightDate", required = false) Date flightDate,
@RequestParam(value = "flightNo", required = false) String flightNo);
}
package com.sunyo.wlpt.data.warehouse.feign;
import com.sunyo.wlpt.data.warehouse.commons.ResultExitData;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
/**
* @author 子诚
* Description:GetCgoNmsFeign的熔断器
* 时间:2020/5/25 9:48
*/
@Service
public class GetCgoNmsFeignHystrix implements GetCgoNmsFeign{
/**
* 熔断器方法
*
* @param flightDate 航班日期
* @param flightNo 航班号
* @return
*/
@Override
public List<ResultExitData> getData(Date flightDate, String flightNo) {
System.out.println("与 新舱单服务 断开连接");
return null;
}
}
package com.sunyo.wlpt.data.warehouse.schedule;
import org.quartz.*;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* @author 子诚
* Description:Quartz定时配置类
* 时间:2020/5/25 9:40
*/
@Configuration
public class QuartzConfig {
/**
* 指定具体的定时任务类.
*
* @return
*/
@Bean
public JobDetail uploadTaskDetail() {
return JobBuilder.newJob(QuartzTask.class).withIdentity("QuartzTask").storeDurably().build();
}
@Bean
public Trigger uploadTaskTrigger() {
/**
* 这里设定触发执行的方式
* 每天4点执行任务
*/
CronScheduleBuilder scheduleBuilder = CronScheduleBuilder.cronSchedule("0 0 4 * * ?");
// 返回任务触发器
return TriggerBuilder.newTrigger().forJob(uploadTaskDetail())
.withIdentity("QuartzTask")
.withSchedule(scheduleBuilder)
.build();
}
}
package com.sunyo.wlpt.data.warehouse.schedule;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.scheduling.quartz.QuartzJobBean;
import java.util.Calendar;
import java.util.Date;
/**
* @author 子诚
* Description:定时任务类
* 时间:2020/5/25 9:38
*/
public class QuartzTask extends QuartzJobBean {
/**
* 创建需要被定时执行的方法
*
* @param jobExecutionContext
* @throws JobExecutionException
*/
@Override
protected void executeInternal(JobExecutionContext jobExecutionContext) throws JobExecutionException {
//每天凌晨四点查询昨天的数据
}
/**
* 返回昨天.
*
* @param today
* @return
*/
public Date yesterday(Date today) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(today);
calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) - 1);
return calendar.getTime();
}
}