package com.fzzy.api.timer;
|
|
import com.fzzy.api.Constant;
|
import com.fzzy.api.entity.*;
|
import com.fzzy.api.utils.DateUtil;
|
import com.fzzy.api.view.repository.*;
|
import com.fzzy.otherview.sh2023.pr.SHApi1115PR;
|
import com.fzzy.push.sh2023.dto.SH2023Api1115;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.scheduling.annotation.Scheduled;
|
import org.springframework.stereotype.Component;
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* @Description 上海省平台接口-定时统计(数据相符性数据)
|
* @Author CZT
|
* @Date 2024/6/28 16:38
|
*/
|
@Slf4j
|
@Component(ApiSH2023Scheduled.BEAN_ID)
|
public class ApiSH2023Scheduled {
|
public static final String BEAN_ID = "api.apiSH2023Scheduled";
|
|
@Autowired
|
private Api1101Rep api1101Rep;
|
@Autowired
|
private Api1102Rep api1102Rep;
|
@Autowired
|
private Api1105Rep api1105Rep;
|
@Autowired
|
private Api1202Rep api1202Rep;
|
@Autowired
|
private Api1205Rep api1205Rep;
|
@Autowired
|
private Api1208Rep api1208Rep;
|
@Autowired
|
private SHApi1115PR shApi1115PR;
|
/**
|
* 每天晚上10点定时统计数据相符性
|
*/
|
@Scheduled(cron = "0 0 22 * * ? ")
|
public void scheduled() {
|
|
log.info("------->>>>>>>>>>上海省平台接口,系统定时统计数据相符性");
|
|
List<Api1102> allApi1102 = api1102Rep.findAll();
|
|
if (null == allApi1102 || allApi1102.isEmpty()){
|
return;
|
}
|
|
Date exeDate = new Date();
|
|
for (Api1102 api1102 : allApi1102) {
|
|
exeCount(api1102, exeDate);
|
|
}
|
}
|
|
/**
|
* 统计数据相符性
|
* @param api1102
|
* @param exeDate
|
*/
|
private void exeCount(Api1102 api1102, Date exeDate) {
|
|
SH2023Api1115 sh2023Api1115 = new SH2023Api1115();
|
//库区代码和名称
|
sh2023Api1115.setKqdm(api1102.getKqdm());
|
sh2023Api1115.setKqmc(api1102.getKqmc());
|
//上级单位名称
|
Api1101 api1101 = api1101Rep.findData(api1102.getKqdm().substring(0, 18));
|
if(null != api1101){
|
sh2023Api1115.setSjdwmc(api1101.getDwmc());
|
}
|
//仓房数,廒间数
|
sh2023Api1115.setCfs(api1102.getCfs() + "");
|
sh2023Api1115.setAjs(api1102.getAjs() + "");
|
//货位数
|
List<Api1105> api1105List = api1105Rep.findPushData(api1102.getKqdm());
|
Double sum = 0.0;
|
if(null != api1105List && api1105List.size() > 0){
|
sh2023Api1115.setHws(api1105List.size() + "");
|
for (Api1105 api1105 : api1105List) {
|
List<Api1208> dataOne = api1208Rep.getDataOne(api1105.getHwdm(), exeDate);
|
if(null != dataOne){
|
sum += dataOne.get(0).getJjsl();
|
}
|
}
|
}
|
//入库条数
|
List<Api1202> api1202List = api1202Rep.getDataByYwrq(api1102.getKqdm(), DateUtil.getYearFirst(exeDate), exeDate);
|
if(null != api1202List && api1202List.size() > 0){
|
sh2023Api1115.setRkts(api1202List.size() + "");
|
}
|
//出库条数
|
List<Api1205> api1205List = api1205Rep.getDataByYwrq(api1102.getKqdm(), DateUtil.getYearFirst(exeDate), exeDate);
|
if(null != api1205List && api1205List.size() > 0){
|
sh2023Api1115.setCkts(api1205List.size() + "");
|
}
|
|
//库存量
|
sh2023Api1115.setKcsl(sum/1000 + "");
|
//库存条数
|
List<Api1208> api1208List = api1208Rep.findPushDataByTime(api1102.getKqdm(), DateUtil.getYearFirst(exeDate), exeDate);
|
if(null != api1208List && api1208List.size() > 0){
|
sh2023Api1115.setKcts(api1208List.size() + "");
|
}
|
|
sh2023Api1115.setSclqajs(api1102.getAjs() + "");
|
sh2023Api1115.setSccntxajs(api1102.getAjs() + "");
|
|
sh2023Api1115.setSjtjsj(exeDate);
|
sh2023Api1115.setCzbz(Constant.CZBZ_I);
|
sh2023Api1115.setZhgxsj(exeDate);
|
|
shApi1115PR.saveData(sh2023Api1115);
|
}
|
|
}
|