Commit 18fbfb36 by wukaiqiang

新增报表配置功能

parent 7f4310c9
...@@ -13,6 +13,7 @@ dependencies { ...@@ -13,6 +13,7 @@ dependencies {
compile "com.beecode:bcp.org:${aminoVersion}" compile "com.beecode:bcp.org:${aminoVersion}"
compile "com.beecode:bap2.department:${aminoVersion}" compile "com.beecode:bap2.department:${aminoVersion}"
compile "com.beecode:bap2.staff:${aminoVersion}" compile "com.beecode:bap2.staff:${aminoVersion}"
compile "com.beecode:bap2.sysconfig:${aminoVersion}"
compile 'com.deepoove:poi-tl:1.5.0' compile 'com.deepoove:poi-tl:1.5.0'
compile project(":inz.common") compile project(":inz.common")
......
...@@ -12,4 +12,5 @@ public interface AdvancePaymentBalanceSumDao { ...@@ -12,4 +12,5 @@ public interface AdvancePaymentBalanceSumDao {
UUID save(KObject entity); UUID save(KObject entity);
List<Map<String, Object>> getAllRelevantData(String startDate,String nowDate,boolean flag); List<Map<String, Object>> getAllRelevantData(String startDate,String nowDate,boolean flag);
List<AdvancePaymentBalanceSum> queryAdvancePaymentBalanceSumByConditions(String dealYear,String regionalCompany); List<AdvancePaymentBalanceSum> queryAdvancePaymentBalanceSumByConditions(String dealYear,String regionalCompany);
void deleteDetails();
} }
...@@ -3,7 +3,9 @@ package com.xyst.dinas.statistics.scheduler; ...@@ -3,7 +3,9 @@ package com.xyst.dinas.statistics.scheduler;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Calendar; import java.util.Calendar;
import java.util.Date; import java.util.Date;
import java.util.Optional;
import org.json.JSONObject;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.BeansException; import org.springframework.beans.BeansException;
...@@ -13,6 +15,8 @@ import com.beecode.amino.core.Amino; ...@@ -13,6 +15,8 @@ import com.beecode.amino.core.Amino;
import com.beecode.bap.scheduler.core.Task; import com.beecode.bap.scheduler.core.Task;
import com.beecode.bap.scheduler.core.TaskContext; import com.beecode.bap.scheduler.core.TaskContext;
import com.beecode.bap.scheduler.service.ScheduleService; import com.beecode.bap.scheduler.service.ScheduleService;
import com.beecode.bap.sysconfig.SysConfig;
import com.beecode.bap.sysconfig.service.SysConfigService;
import com.xyst.dinas.statistics.service.AdvancePaymentBalanceSumService; import com.xyst.dinas.statistics.service.AdvancePaymentBalanceSumService;
public class AdvancePaymentBalanceSumSchedulerTask implements Task { public class AdvancePaymentBalanceSumSchedulerTask implements Task {
...@@ -21,14 +25,17 @@ public class AdvancePaymentBalanceSumSchedulerTask implements Task { ...@@ -21,14 +25,17 @@ public class AdvancePaymentBalanceSumSchedulerTask implements Task {
public ScheduleService scheduleService; public ScheduleService scheduleService;
@Autowired @Autowired
public AdvancePaymentBalanceSumService advancePaymentBalanceSumService; public AdvancePaymentBalanceSumService advancePaymentBalanceSumService;
@Autowired
public SysConfigService sysConfigService;
@Override @Override
public void execute(TaskContext context) { public void execute(TaskContext context) {
logger.info("预付款与结余汇总调度开始执行!!!!"); logger.info("预付款与结余汇总调度开始执行!!!!");
AdvancePaymentBalanceSumService advancePaymentBalanceSumService= null; AdvancePaymentBalanceSumService advancePaymentBalanceSumService = null;
try { try {
advancePaymentBalanceSumService = Amino.getApplicationContext().getBean(AdvancePaymentBalanceSumService.class); advancePaymentBalanceSumService = Amino.getApplicationContext()
.getBean(AdvancePaymentBalanceSumService.class);
} catch (BeansException e) { } catch (BeansException e) {
logger.error("启动预付款与结余汇总的调度任务失败,没有获取到SalesSummaryService实现类对象"); logger.error("启动预付款与结余汇总的调度任务失败,没有获取到SalesSummaryService实现类对象");
return; return;
...@@ -37,10 +44,22 @@ public class AdvancePaymentBalanceSumSchedulerTask implements Task { ...@@ -37,10 +44,22 @@ public class AdvancePaymentBalanceSumSchedulerTask implements Task {
logger.error("启动预付款与结余汇总的调度任务失败,没有获取到SalesSummaryService实现类对象"); logger.error("启动预付款与结余汇总的调度任务失败,没有获取到SalesSummaryService实现类对象");
return; return;
} }
generateAdvancePaymentBalanceSum (advancePaymentBalanceSumService); generateAdvancePaymentBalanceSum(advancePaymentBalanceSumService);
} }
public void generateAdvancePaymentBalanceSum(AdvancePaymentBalanceSumService advancePaymentBalanceSumService){ private JSONObject getConfig() {
Optional<SysConfig> optional = sysConfigService.get("bill", "billAnalyseConfig");
if(optional.isPresent()){
return new JSONObject(optional.get().getValue().toString());
}
return null;
}
public void generateAdvancePaymentBalanceSum(AdvancePaymentBalanceSumService advancePaymentBalanceSumService) {
JSONObject config = getConfig();
boolean isValid = config.optBoolean("isValid", false);
String startDate = config.getString("startDate");
SimpleDateFormat dateTime = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat dateTime = new SimpleDateFormat("yyyy-MM-dd");
Date thenTime = new Date(); Date thenTime = new Date();
Date beforeTime = new Date(); Date beforeTime = new Date();
...@@ -49,27 +68,36 @@ public class AdvancePaymentBalanceSumSchedulerTask implements Task { ...@@ -49,27 +68,36 @@ public class AdvancePaymentBalanceSumSchedulerTask implements Task {
calendar.setTime(thenTime);// 把当前时间赋给日历 calendar.setTime(thenTime);// 把当前时间赋给日历
calendar.add(Calendar.DAY_OF_MONTH, -1); // 设置为前一天 calendar.add(Calendar.DAY_OF_MONTH, -1); // 设置为前一天
beforeTime = calendar.getTime(); // 得到前一天的时间 beforeTime = calendar.getTime(); // 得到前一天的时间
String dateBefore = dateTime.format(beforeTime);
String yearEnd = getYearEnd(); String yearEnd = getYearEnd();
String dateBefore;
if ( isValid ) {
dateBefore = startDate;
}else {
dateBefore = dateTime.format(beforeTime);
}
boolean lastYearFlag = false; boolean lastYearFlag = false;
if (yearEnd == dateBefore) { if (yearEnd == dateBefore) {
lastYearFlag = true; lastYearFlag = true;
} }
boolean flag = advancePaymentBalanceSumService.generateAdvancePaymentBalanceSumByDate(dateBefore,dateNow,lastYearFlag); boolean flag = advancePaymentBalanceSumService.generateAdvancePaymentBalanceSumByDate(dateBefore, dateNow,
if(flag) { lastYearFlag);
if (flag) {
logger.info("预付款与结余汇总调度执行成功!!!!"); logger.info("预付款与结余汇总调度执行成功!!!!");
}else { } else {
logger.info("预付款与结余汇总调度执行失败!!!!"); logger.info("预付款与结余汇总调度执行失败!!!!");
} }
} }
public String getYearEnd(){ public String getYearEnd() {
Calendar calendar = Calendar.getInstance(); Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.MONTH,calendar.getActualMaximum(Calendar.MONTH)); calendar.set(Calendar.MONTH, calendar.getActualMaximum(Calendar.MONTH));
calendar.set(Calendar.DAY_OF_MONTH,calendar.getActualMaximum(Calendar.DAY_OF_MONTH)); calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
Date currYearLast = calendar.getTime(); Date currYearLast = calendar.getTime();
return new SimpleDateFormat("yyyy-MM-dd").format(currYearLast); return new SimpleDateFormat("yyyy-MM-dd").format(currYearLast);
} }
} }
...@@ -41,9 +41,9 @@ public class AdvancePaymentBalanceSumSchedulerTaskRegister implements ServiceIn ...@@ -41,9 +41,9 @@ public class AdvancePaymentBalanceSumSchedulerTaskRegister implements ServiceIn
} }
TaskDetail taskDetail = new TaskDetail(Advance_Payment_Balance_Sum_Scheduler_Task,AdvancePaymentBalanceSumSchedulerTask.class.getName()); TaskDetail taskDetail = new TaskDetail(Advance_Payment_Balance_Sum_Scheduler_Task,AdvancePaymentBalanceSumSchedulerTask.class.getName());
scheduleService.scheduleTask(taskDetail, "0 0 1/23 * * ? *"); //scheduleService.scheduleTask(taskDetail, "0 0 1/23 * * ? *");
//测试使用 没分钟执行一次 //测试使用 没分钟执行一次
//scheduleService.scheduleTask(taskDetail, "0 0/5 * * * ? *"); scheduleService.scheduleTask(taskDetail, "0 0/1 * * * ? *");
logger.info("预付款与结余汇总自动创建任务初始化成功!"); logger.info("预付款与结余汇总自动创建任务初始化成功!");
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment