|
@@ -15,6 +15,7 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
|
|
+import java.text.ParseException;
|
|
import java.text.SimpleDateFormat;
|
|
import java.text.SimpleDateFormat;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
|
|
|
|
@@ -49,9 +50,12 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
/**
|
|
/**
|
|
* 施工进度统计
|
|
* 施工进度统计
|
|
*/
|
|
*/
|
|
- public void setConstructionProgress(){
|
|
|
|
|
|
+ public void setConstructionProgress(String initTime){
|
|
ZdszBigscreenBo zdszBigscreenBo = new ZdszBigscreenBo();
|
|
ZdszBigscreenBo zdszBigscreenBo = new ZdszBigscreenBo();
|
|
String time = getPreviousDay();
|
|
String time = getPreviousDay();
|
|
|
|
+ if(initTime != null){
|
|
|
|
+ time = initTime;
|
|
|
|
+ }
|
|
// time = "2024-05-21";
|
|
// time = "2024-05-21";
|
|
zdszBigscreenBo.setTime(time);
|
|
zdszBigscreenBo.setTime(time);
|
|
String[] times = time.split("-");
|
|
String[] times = time.split("-");
|
|
@@ -71,7 +75,10 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public Map getConstructionProgress(ZdszBigscreenBo zdszBigscreenBo){
|
|
public Map getConstructionProgress(ZdszBigscreenBo zdszBigscreenBo){
|
|
- setConstructionProgress();
|
|
|
|
|
|
+ String time = zdszBigscreenBo.getTime();
|
|
|
|
+ if(time != null && time.equals(new SimpleDateFormat("yyyy-MM-dd").format(new Date()))){
|
|
|
|
+ setConstructionProgress(time);
|
|
|
|
+ }
|
|
clearTime(zdszBigscreenBo);
|
|
clearTime(zdszBigscreenBo);
|
|
List<Map> list = bigscreenMapper.getConstructionProgress(zdszBigscreenBo);
|
|
List<Map> list = bigscreenMapper.getConstructionProgress(zdszBigscreenBo);
|
|
int size = list.size();
|
|
int size = list.size();
|
|
@@ -107,9 +114,12 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
/**
|
|
/**
|
|
* 工程状态统计
|
|
* 工程状态统计
|
|
*/
|
|
*/
|
|
- public void setProjectStatus(){
|
|
|
|
|
|
+ public void setProjectStatus(String initTime){
|
|
ZdszBigscreenBo zdszBigscreenBo = new ZdszBigscreenBo();
|
|
ZdszBigscreenBo zdszBigscreenBo = new ZdszBigscreenBo();
|
|
String time = getPreviousDay();
|
|
String time = getPreviousDay();
|
|
|
|
+ if(initTime != null){
|
|
|
|
+ time = initTime;
|
|
|
|
+ }
|
|
zdszBigscreenBo.setTime(time);
|
|
zdszBigscreenBo.setTime(time);
|
|
|
|
|
|
// LambdaQueryWrapper<ZEngineeringIndustry> zEngineeringIndustryBoLambdaQueryWrapper = new LambdaQueryWrapper<ZEngineeringIndustry>();
|
|
// LambdaQueryWrapper<ZEngineeringIndustry> zEngineeringIndustryBoLambdaQueryWrapper = new LambdaQueryWrapper<ZEngineeringIndustry>();
|
|
@@ -127,7 +137,10 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
@Override
|
|
@Override
|
|
public Map getProjectStatus(ZdszBigscreenBo zdszBigscreenBo){
|
|
public Map getProjectStatus(ZdszBigscreenBo zdszBigscreenBo){
|
|
clearTime(zdszBigscreenBo);
|
|
clearTime(zdszBigscreenBo);
|
|
- setProjectStatus();
|
|
|
|
|
|
+ String time = zdszBigscreenBo.getTime();
|
|
|
|
+ if(time != null && time.equals(new SimpleDateFormat("yyyy-MM-dd").format(new Date()))){
|
|
|
|
+ setProjectStatus(time);
|
|
|
|
+ }
|
|
List<Map> list = bigscreenMapper.getProjectStatus(zdszBigscreenBo);
|
|
List<Map> list = bigscreenMapper.getProjectStatus(zdszBigscreenBo);
|
|
int size = list.size();
|
|
int size = list.size();
|
|
switch (size){
|
|
switch (size){
|
|
@@ -154,9 +167,12 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
/**
|
|
/**
|
|
* 今日施工数
|
|
* 今日施工数
|
|
*/
|
|
*/
|
|
- public void setCountEngineering(){
|
|
|
|
|
|
+ public void setCountEngineering(String initTime){
|
|
ZdszBigscreenBo zdszBigscreenBo = new ZdszBigscreenBo();
|
|
ZdszBigscreenBo zdszBigscreenBo = new ZdszBigscreenBo();
|
|
String time = getPreviousDay();
|
|
String time = getPreviousDay();
|
|
|
|
+ if(initTime != null){
|
|
|
|
+ time = initTime;
|
|
|
|
+ }
|
|
String[] times = time.split("-");
|
|
String[] times = time.split("-");
|
|
zdszBigscreenBo.setTime(time);
|
|
zdszBigscreenBo.setTime(time);
|
|
zdszBigscreenBo.setInfo("z_engineering_info_" + times[0] + "_" + times[1]); // z_engineering_info_2024_03
|
|
zdszBigscreenBo.setInfo("z_engineering_info_" + times[0] + "_" + times[1]); // z_engineering_info_2024_03
|
|
@@ -174,7 +190,10 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
@Override
|
|
@Override
|
|
public Map getCountEngineering(ZdszBigscreenBo zdszBigscreenBo){
|
|
public Map getCountEngineering(ZdszBigscreenBo zdszBigscreenBo){
|
|
clearTime(zdszBigscreenBo);
|
|
clearTime(zdszBigscreenBo);
|
|
- setCountEngineering();
|
|
|
|
|
|
+ String time = zdszBigscreenBo.getTime();
|
|
|
|
+ if(time != null && time.equals(new SimpleDateFormat("yyyy-MM-dd").format(new Date()))){
|
|
|
|
+ setCountEngineering(time);
|
|
|
|
+ }
|
|
List<Map> list = bigscreenMapper.getCountEngineering(zdszBigscreenBo);
|
|
List<Map> list = bigscreenMapper.getCountEngineering(zdszBigscreenBo);
|
|
int size = list.size();
|
|
int size = list.size();
|
|
switch (size){
|
|
switch (size){
|
|
@@ -207,9 +226,12 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
/**
|
|
/**
|
|
* 今日使用人数
|
|
* 今日使用人数
|
|
*/
|
|
*/
|
|
- public void setCountPerson(){
|
|
|
|
|
|
+ public void setCountPerson(String initTime){
|
|
ZdszBigscreenBo zdszBigscreenBo = new ZdszBigscreenBo();
|
|
ZdszBigscreenBo zdszBigscreenBo = new ZdszBigscreenBo();
|
|
String time = getPreviousDay();
|
|
String time = getPreviousDay();
|
|
|
|
+ if(initTime != null){
|
|
|
|
+ time = initTime;
|
|
|
|
+ }
|
|
zdszBigscreenBo.setTime(time);
|
|
zdszBigscreenBo.setTime(time);
|
|
Map map = new HashMap();
|
|
Map map = new HashMap();
|
|
map.put("time", time); // 创建时间
|
|
map.put("time", time); // 创建时间
|
|
@@ -224,7 +246,10 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
@Override
|
|
@Override
|
|
public Map getCountPerson(ZdszBigscreenBo zdszBigscreenBo){
|
|
public Map getCountPerson(ZdszBigscreenBo zdszBigscreenBo){
|
|
clearTime(zdszBigscreenBo);
|
|
clearTime(zdszBigscreenBo);
|
|
- setCountPerson();
|
|
|
|
|
|
+ String time = zdszBigscreenBo.getTime();
|
|
|
|
+ if(time != null && time.equals(new SimpleDateFormat("yyyy-MM-dd").format(new Date()))){
|
|
|
|
+ setCountPerson(time);
|
|
|
|
+ }
|
|
List<Map> list = bigscreenMapper.getCountPerson(zdszBigscreenBo);
|
|
List<Map> list = bigscreenMapper.getCountPerson(zdszBigscreenBo);
|
|
int size = list.size();
|
|
int size = list.size();
|
|
switch (size){
|
|
switch (size){
|
|
@@ -257,9 +282,12 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
/**
|
|
/**
|
|
* 地图施工数据分布
|
|
* 地图施工数据分布
|
|
*/
|
|
*/
|
|
- public void setConstructionMap(){
|
|
|
|
|
|
+ public void setConstructionMap(String initTime){
|
|
ZdszBigscreenBo zdszBigscreenBo = new ZdszBigscreenBo();
|
|
ZdszBigscreenBo zdszBigscreenBo = new ZdszBigscreenBo();
|
|
String time = getPreviousDay();
|
|
String time = getPreviousDay();
|
|
|
|
+ if(initTime != null){
|
|
|
|
+ time = initTime;
|
|
|
|
+ }
|
|
// time = "2024-03-10";
|
|
// time = "2024-03-10";
|
|
zdszBigscreenBo.setTime(time);
|
|
zdszBigscreenBo.setTime(time);
|
|
String[] times = time.split("-");
|
|
String[] times = time.split("-");
|
|
@@ -286,7 +314,10 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
@Override
|
|
@Override
|
|
public Map getConstructionMap(ZdszBigscreenBo zdszBigscreenBo){
|
|
public Map getConstructionMap(ZdszBigscreenBo zdszBigscreenBo){
|
|
clearTime(zdszBigscreenBo);
|
|
clearTime(zdszBigscreenBo);
|
|
- setConstructionMap();
|
|
|
|
|
|
+ String time = zdszBigscreenBo.getTime();
|
|
|
|
+ if(time != null && time.equals(new SimpleDateFormat("yyyy-MM-dd").format(new Date()))){
|
|
|
|
+ setConstructionMap(time);
|
|
|
|
+ }
|
|
Map<String, List<SysDictData>> sysDictMap = RedisUtils.getCacheMap("sys_dict");
|
|
Map<String, List<SysDictData>> sysDictMap = RedisUtils.getCacheMap("sys_dict");
|
|
List<SysDictData> dictDataList = sysDictMap.get("district");
|
|
List<SysDictData> dictDataList = sysDictMap.get("district");
|
|
List<Map> list = bigscreenMapper.getConstructionMap(zdszBigscreenBo);
|
|
List<Map> list = bigscreenMapper.getConstructionMap(zdszBigscreenBo);
|
|
@@ -349,10 +380,13 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
/**
|
|
/**
|
|
* 各个区今日施工数
|
|
* 各个区今日施工数
|
|
*/
|
|
*/
|
|
- public void setConstructionNew(){
|
|
|
|
|
|
+ public void setConstructionNew(String initTime){
|
|
ZdszBigscreenBo zdszBigscreenBo = new ZdszBigscreenBo();
|
|
ZdszBigscreenBo zdszBigscreenBo = new ZdszBigscreenBo();
|
|
String time = getPreviousDay();
|
|
String time = getPreviousDay();
|
|
- time = "2024-03-10";
|
|
|
|
|
|
+ if(initTime != null){
|
|
|
|
+ time = initTime;
|
|
|
|
+ }
|
|
|
|
+// time = "2024-03-10";
|
|
zdszBigscreenBo.setTime(time);
|
|
zdszBigscreenBo.setTime(time);
|
|
String[] times = time.split("-");
|
|
String[] times = time.split("-");
|
|
zdszBigscreenBo.setInfo("z_engineering_info_" + times[0] + "_" + times[1]); // z_engineering_info_2024_03
|
|
zdszBigscreenBo.setInfo("z_engineering_info_" + times[0] + "_" + times[1]); // z_engineering_info_2024_03
|
|
@@ -376,7 +410,10 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
@Override
|
|
@Override
|
|
public Map getConstructionNew(ZdszBigscreenBo zdszBigscreenBo){
|
|
public Map getConstructionNew(ZdszBigscreenBo zdszBigscreenBo){
|
|
clearTime(zdszBigscreenBo);
|
|
clearTime(zdszBigscreenBo);
|
|
- setConstructionNew();
|
|
|
|
|
|
+ String time = zdszBigscreenBo.getTime();
|
|
|
|
+ if(time != null && time.equals(new SimpleDateFormat("yyyy-MM-dd").format(new Date()))){
|
|
|
|
+ setConstructionNew(time);
|
|
|
|
+ }
|
|
Map<String, List<SysDictData>> sysDictMap = RedisUtils.getCacheMap("sys_dict");
|
|
Map<String, List<SysDictData>> sysDictMap = RedisUtils.getCacheMap("sys_dict");
|
|
List<SysDictData> dictDataList = sysDictMap.get("district");
|
|
List<SysDictData> dictDataList = sysDictMap.get("district");
|
|
List<Map> list = bigscreenMapper.getConstructionNew(zdszBigscreenBo);
|
|
List<Map> list = bigscreenMapper.getConstructionNew(zdszBigscreenBo);
|
|
@@ -439,9 +476,12 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
/**
|
|
/**
|
|
* 各个区今日旧改施工数
|
|
* 各个区今日旧改施工数
|
|
*/
|
|
*/
|
|
- public void setConstructionOld(){
|
|
|
|
|
|
+ public void setConstructionOld(String initTime){
|
|
ZdszBigscreenBo zdszBigscreenBo = new ZdszBigscreenBo();
|
|
ZdszBigscreenBo zdszBigscreenBo = new ZdszBigscreenBo();
|
|
String time = getPreviousDay();
|
|
String time = getPreviousDay();
|
|
|
|
+ if(initTime != null){
|
|
|
|
+ time = initTime;
|
|
|
|
+ }
|
|
String[] times = time.split("-");
|
|
String[] times = time.split("-");
|
|
zdszBigscreenBo.setTime(time);
|
|
zdszBigscreenBo.setTime(time);
|
|
// zdszBigscreenBo.setTime("2024-08-05");
|
|
// zdszBigscreenBo.setTime("2024-08-05");
|
|
@@ -462,8 +502,12 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
}
|
|
}
|
|
@Override
|
|
@Override
|
|
public Map getConstructionOld(ZdszBigscreenBo zdszBigscreenBo){
|
|
public Map getConstructionOld(ZdszBigscreenBo zdszBigscreenBo){
|
|
|
|
+// batchInitData("2024-08-01");
|
|
clearTime(zdszBigscreenBo);
|
|
clearTime(zdszBigscreenBo);
|
|
- setConstructionOld();
|
|
|
|
|
|
+ String time = zdszBigscreenBo.getTime();
|
|
|
|
+ if(time != null && time.equals(new SimpleDateFormat("yyyy-MM-dd").format(new Date()))){
|
|
|
|
+ setConstructionOld(time);
|
|
|
|
+ }
|
|
Map<String, List<SysDictData>> sysDictMap = RedisUtils.getCacheMap("sys_dict");
|
|
Map<String, List<SysDictData>> sysDictMap = RedisUtils.getCacheMap("sys_dict");
|
|
List<SysDictData> dictDataList = sysDictMap.get("district");
|
|
List<SysDictData> dictDataList = sysDictMap.get("district");
|
|
List<Map> list = bigscreenMapper.getConstructionOld(zdszBigscreenBo);
|
|
List<Map> list = bigscreenMapper.getConstructionOld(zdszBigscreenBo);
|
|
@@ -576,14 +620,45 @@ public class ZdszBigscreenServiceImpl implements IZdszBigscreenService {
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public void bigscreenAutoQueryYesterdayData(){
|
|
|
|
- setConstructionProgress(); // 施工进度统计
|
|
|
|
- setProjectStatus(); // 工程状态统计
|
|
|
|
- setCountEngineering(); // 今日施工数
|
|
|
|
- setCountPerson(); // 今日使用人数
|
|
|
|
- setConstructionMap(); // 地图施工数据分布
|
|
|
|
- setConstructionOld(); // 各个区今日旧改施工数
|
|
|
|
- setConstructionNew(); // 各个区今日施工数
|
|
|
|
|
|
+ public void bigscreenAutoQueryYesterdayData(String initTime){
|
|
|
|
+ setConstructionProgress(initTime); // 施工进度统计
|
|
|
|
+ setProjectStatus(initTime); // 工程状态统计
|
|
|
|
+ setCountEngineering(initTime); // 今日施工数
|
|
|
|
+ setCountPerson(initTime); // 今日使用人数
|
|
|
|
+ setConstructionMap(initTime); // 地图施工数据分布
|
|
|
|
+ setConstructionOld(initTime); // 各个区今日旧改施工数
|
|
|
|
+ setConstructionNew(initTime); // 各个区今日施工数
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ private void batchInitData(String startTime){
|
|
|
|
+ List<String> times = batchInitDateList(startTime);
|
|
|
|
+ for (String time: times) {
|
|
|
|
+ System.out.println("time=" + time);
|
|
|
|
+ bigscreenAutoQueryYesterdayData(time);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public List batchInitDateList(String startTime){
|
|
|
|
+ Date today = new Date();
|
|
|
|
+ List list = new ArrayList();
|
|
|
|
+ list.add(startTime);
|
|
|
|
+ while (!startTime.equals(new SimpleDateFormat("yyyy-MM-dd").format(today))){
|
|
|
|
+ list.add(getNextDay(startTime));
|
|
|
|
+ startTime = getNextDay(startTime);
|
|
|
|
+ }
|
|
|
|
+ return list;
|
|
|
|
+ }
|
|
|
|
+ public String getNextDay(String date){
|
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
|
+ try {
|
|
|
|
+ calendar.setTime(new SimpleDateFormat("yyyy-MM-dd").parse(date));
|
|
|
|
+ } catch (ParseException e) {
|
|
|
|
+ throw new RuntimeException(e);
|
|
|
|
+ }
|
|
|
|
+ // 将日期加一天
|
|
|
|
+ calendar.add(Calendar.DAY_OF_MONTH, 1);
|
|
|
|
+ // 获取后一天的日期
|
|
|
|
+ Date nextDay = calendar.getTime();
|
|
|
|
+ return new SimpleDateFormat("yyyy-MM-dd").format(nextDay);
|
|
|
|
+ }
|
|
}
|
|
}
|