|
@@ -12,13 +12,9 @@ import com.gis.service.FodderService;
|
|
|
import com.gis.service.ReportService;
|
|
|
import com.gis.service.WorkService;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
-import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
-import tk.mybatis.mapper.entity.Condition;
|
|
|
|
|
|
-import javax.validation.constraints.NotBlank;
|
|
|
-import java.time.LocalDate;
|
|
|
import java.util.*;
|
|
|
|
|
|
|
|
@@ -51,179 +47,48 @@ public class ReportServiceImpl extends IBaseServiceImpl<ReportEntity, Long> impl
|
|
|
|
|
|
}
|
|
|
|
|
|
-// private List<Map> getTrent(ReportPo po){
|
|
|
-// StringBuilder builder = new StringBuilder();
|
|
|
-//
|
|
|
-//
|
|
|
-// String startTime = po.getStartTime();
|
|
|
-// String endTime = po.getEndTime();
|
|
|
-// String timeType = po.getTimeType();
|
|
|
-// String type = po.getPoType();
|
|
|
-// String infoType = po.getInfoType();
|
|
|
-// if (StrUtil.isBlank(infoType)){
|
|
|
-// infoType = "all";
|
|
|
-// }
|
|
|
-// if (StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)){
|
|
|
-//
|
|
|
-// if ("day".equals(timeType)){
|
|
|
-// builder.append("select DATE_FORMAT( day, '%Y-%m-%d' ) as groupKey, total as count, type from tb_report where is_delete=0 ");
|
|
|
-// builder.append(" and day between '").append(startTime).append("' and '").append(endTime).append("'");
|
|
|
-// builder.append(" and type='").append(type).append("'");
|
|
|
-// builder.append(" and info_type='").append(infoType).append("'");
|
|
|
-//
|
|
|
-// } else if ("week".equals(timeType)){
|
|
|
-// builder.append(" select groupKey, sum(total) as count,type from (");
|
|
|
-// builder.append(" select DATE_FORMAT(DATE_ADD(day,INTERVAL- (WEEKDAY(day)) day), '%Y-%m-%d' ) as groupKey, total,type from tb_report where is_delete=0 ");
|
|
|
-// builder.append(" and day between '").append(startTime).append("' and '").append(endTime).append("'");
|
|
|
-// builder.append(" and type='").append(type).append("'");
|
|
|
-// builder.append(" and info_type='").append(infoType).append("'");
|
|
|
-// builder.append(" ) as a group by groupKey");
|
|
|
-// } else {
|
|
|
-// builder.append(" select groupKey, sum(total) as count,type from (");
|
|
|
-// builder.append(" select DATE_FORMAT(day, '%Y-%m') as groupKey, total,type from tb_report where is_delete=0");
|
|
|
-// builder.append(" and day between '").append(startTime).append("' and '").append(endTime).append("'");
|
|
|
-// builder.append(" and type='").append(type).append("'");
|
|
|
-// builder.append(" and info_type='").append(infoType).append("'");
|
|
|
-// builder.append(" ) as a group by groupKey");
|
|
|
-// }
|
|
|
-//
|
|
|
-// } else {
|
|
|
-//
|
|
|
-// if ("day".equals(timeType)){ // 默认最近30天
|
|
|
-// builder.append("select DATE_FORMAT( day, '%Y-%m-%d' ) as groupKey, total as count, type from tb_report where is_delete=0 and DATE(day)>=DATE_SUB(CURDATE(), INTERVAL 30 DAY)");
|
|
|
-// builder.append(" and type='").append(type).append("'");
|
|
|
-// builder.append(" and info_type='").append(infoType).append("'");
|
|
|
-// } else if ("week".equals(timeType)){ // 默认最近半年
|
|
|
-// builder.append(" select groupKey, sum(total) as count,type from (");
|
|
|
-// builder.append(" select DATE_FORMAT(DATE_ADD(day,INTERVAL- (WEEKDAY(day)) day), '%Y-%m-%d' ) as groupKey, total,type from tb_report where is_delete=0 and DATE(day)>=DATE_SUB(CURDATE(), INTERVAL 200 DAY)");
|
|
|
-// builder.append(" and type='").append(type).append("'");
|
|
|
-// builder.append(" and info_type='").append(infoType).append("'");
|
|
|
-// builder.append(" ) as a group by groupKey");
|
|
|
-// } else { // 默认最近6个月
|
|
|
-// builder.append(" select groupKey, sum(total) as count,type from (");
|
|
|
-// builder.append(" select DATE_FORMAT(day, '%Y-%m') as groupKey, total,type from tb_report where is_delete=0");
|
|
|
-// builder.append( " and DATE(day) >= DATE_FORMAT(DATE_SUB( now(), INTERVAL 6 MONTH),'%Y-%m')");
|
|
|
-// builder.append(" and type='").append(type).append("'");
|
|
|
-// builder.append(" and info_type='").append(infoType).append("'");
|
|
|
-// builder.append(" ) as a group by groupKey");
|
|
|
-// }
|
|
|
-// }
|
|
|
-//
|
|
|
-//
|
|
|
-// builder.append(" order by groupKey desc");
|
|
|
-//
|
|
|
-// List<Map> res = entityMapper.listMapSql(builder.toString());
|
|
|
-// return res;
|
|
|
-// }
|
|
|
-//
|
|
|
-//
|
|
|
-// private List<ReportVo> getWorkTrent(ReportPo po){
|
|
|
-// StringBuilder builder = new StringBuilder();
|
|
|
-//
|
|
|
-//
|
|
|
-// String startTime = po.getStartTime();
|
|
|
-// String endTime = po.getEndTime();
|
|
|
-// String timeType = po.getTimeType();
|
|
|
-// String type = po.getPoType();
|
|
|
-// String infoType = po.getInfoType();
|
|
|
-// if (StrUtil.isBlank(infoType)){
|
|
|
-// infoType = "all";
|
|
|
-// }
|
|
|
-// if (StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)){
|
|
|
-//
|
|
|
-// if ("day".equals(timeType)){
|
|
|
-// builder.append("select DATE_FORMAT( day, '%Y-%m-%d' ) as groupKey, mix, pano, age, type from tb_report where is_delete=0 ");
|
|
|
-// builder.append(" and day between '").append(startTime).append("' and '").append(endTime).append("'");
|
|
|
-// builder.append(" and type='").append(type).append("'");
|
|
|
-// builder.append(" and info_type='").append(infoType).append("'");
|
|
|
-//
|
|
|
-// } else if ("week".equals(timeType)){
|
|
|
-// builder.append(" select groupKey, sum(mix) as mix,sum(age) as age,sum(pano) as pano,type from (");
|
|
|
-// builder.append(" select DATE_FORMAT(DATE_ADD(day,INTERVAL- (WEEKDAY(day)) day), '%Y-%m-%d' ) as groupKey, mix, pano, age,type from tb_report where is_delete=0 ");
|
|
|
-// builder.append(" and day between '").append(startTime).append("' and '").append(endTime).append("'");
|
|
|
-// builder.append(" and type='").append(type).append("'");
|
|
|
-// builder.append(" and info_type='").append(infoType).append("'");
|
|
|
-// builder.append(" ) as a group by groupKey");
|
|
|
-// } else {
|
|
|
-// builder.append(" select groupKey, sum(mix) as mix,sum(age) as age,sum(pano) as pano,type from (");
|
|
|
-// builder.append(" select DATE_FORMAT(day, '%Y-%m') as groupKey, mix,age, pano,type from tb_report where is_delete=0");
|
|
|
-// builder.append(" and day between '").append(startTime).append("' and '").append(endTime).append("'");
|
|
|
-// builder.append(" and type='").append(type).append("'");
|
|
|
-// builder.append(" and info_type='").append(infoType).append("'");
|
|
|
-// builder.append(" ) as a group by groupKey");
|
|
|
-// }
|
|
|
-//
|
|
|
-// } else {
|
|
|
-//
|
|
|
-// if ("day".equals(timeType)){ // 默认最近30天
|
|
|
-// builder.append("select DATE_FORMAT( day, '%Y-%m-%d' ) as groupKey, mix, pano, age, type from tb_report where is_delete=0 and DATE(day)>=DATE_SUB(CURDATE(), INTERVAL 30 DAY)");
|
|
|
-// builder.append(" and type='").append(type).append("'");
|
|
|
-// builder.append(" and info_type='").append(infoType).append("'");
|
|
|
-// } else if ("week".equals(timeType)){ // 默认最近半年
|
|
|
-// builder.append(" select groupKey, sum(mix) as mix,sum(age) as age,sum(pano) as pano,type from (");
|
|
|
-// builder.append(" select DATE_FORMAT(DATE_ADD(day,INTERVAL- (WEEKDAY(day)) day), '%Y-%m-%d' ) as groupKey, mix, pano, age,type from tb_report where is_delete=0 and DATE(day)>=DATE_SUB(CURDATE(), INTERVAL 200 DAY)");
|
|
|
-// builder.append(" and type='").append(type).append("'");
|
|
|
-// builder.append(" and info_type='").append(infoType).append("'");
|
|
|
-// builder.append(" ) as a group by groupKey");
|
|
|
-// } else { // 默认最近6个月
|
|
|
-// builder.append(" select groupKey, sum(mix) as mix,sum(age) as age,sum(pano) as pano,type from (");
|
|
|
-// builder.append(" select DATE_FORMAT(day, '%Y-%m') as groupKey, mix,age, pano,type from tb_report where is_delete=0");
|
|
|
-// builder.append( " and DATE(day) >= DATE_FORMAT(DATE_SUB( now(), INTERVAL 6 MONTH),'%Y-%m')");
|
|
|
-// builder.append(" and type='").append(type).append("'");
|
|
|
-// builder.append(" and info_type='").append(infoType).append("'");
|
|
|
-// builder.append(" ) as a group by groupKey");
|
|
|
-// }
|
|
|
-// }
|
|
|
-//
|
|
|
-//
|
|
|
-// builder.append(" order by groupKey desc");
|
|
|
-//
|
|
|
-// List<ReportVo> res = entityMapper.listReportVoSql(builder.toString());
|
|
|
-// return res;
|
|
|
-// }
|
|
|
-
|
|
|
-
|
|
|
- private List<Map> getTrent(ReportPo po){
|
|
|
+
|
|
|
+ private List<Map> getTrent(ReportPo po) {
|
|
|
|
|
|
String startTime = po.getStartTime();
|
|
|
String endTime = po.getEndTime();
|
|
|
String timeType = po.getTimeType();
|
|
|
String type = po.getPoType();
|
|
|
String infoType = po.getInfoType();
|
|
|
- if (StrUtil.isBlank(infoType)){
|
|
|
+ if (StrUtil.isBlank(infoType)) {
|
|
|
infoType = "all";
|
|
|
}
|
|
|
|
|
|
- String sqlStr ;
|
|
|
- if ("day".equals(timeType)){
|
|
|
- sqlStr = dayTrentSql(infoType, type, startTime, endTime);
|
|
|
+ String sqlStr;
|
|
|
+ if ("day".equals(timeType)) {
|
|
|
+ sqlStr = dayTrentSql(infoType, type, startTime, endTime);
|
|
|
|
|
|
- } else if ("week".equals(timeType)){
|
|
|
- sqlStr = weekTrentSql(infoType, type, startTime, endTime);
|
|
|
- } else {
|
|
|
- sqlStr = monthTrentSql(infoType, type, startTime, endTime);
|
|
|
- }
|
|
|
+ } else if ("week".equals(timeType)) {
|
|
|
+ sqlStr = weekTrentSql(infoType, type, startTime, endTime);
|
|
|
+ } else {
|
|
|
+ sqlStr = monthTrentSql(infoType, type, startTime, endTime);
|
|
|
+ }
|
|
|
|
|
|
List<Map> res = entityMapper.listMapSql(sqlStr);
|
|
|
return res;
|
|
|
}
|
|
|
|
|
|
|
|
|
- private List<ReportVo> getWorkTrent(ReportPo po){
|
|
|
+ private List<ReportVo> getWorkTrent(ReportPo po) {
|
|
|
String startTime = po.getStartTime();
|
|
|
String endTime = po.getEndTime();
|
|
|
String timeType = po.getTimeType();
|
|
|
String type = po.getPoType();
|
|
|
String infoType = po.getInfoType();
|
|
|
- if (StrUtil.isBlank(infoType)){
|
|
|
+ if (StrUtil.isBlank(infoType)) {
|
|
|
infoType = "all";
|
|
|
}
|
|
|
|
|
|
- String sqlStr ;
|
|
|
- if ("day".equals(timeType)){
|
|
|
+ String sqlStr;
|
|
|
+ if ("day".equals(timeType)) {
|
|
|
sqlStr = dayWorkTrentSql(infoType, type, startTime, endTime);
|
|
|
|
|
|
- } else if ("week".equals(timeType)){
|
|
|
+ } else if ("week".equals(timeType)) {
|
|
|
sqlStr = weekWorkTrentSql(infoType, type, startTime, endTime);
|
|
|
} else {
|
|
|
sqlStr = monthWorkTrentSql(infoType, type, startTime, endTime);
|
|
@@ -234,10 +99,10 @@ public class ReportServiceImpl extends IBaseServiceImpl<ReportEntity, Long> impl
|
|
|
return res;
|
|
|
}
|
|
|
|
|
|
- private String dayTrentSql(String infoType, String type, String startTime, String endTime){
|
|
|
+ private String dayTrentSql(String infoType, String type, String startTime, String endTime) {
|
|
|
StringBuilder builder = new StringBuilder();
|
|
|
builder.append("select DATE_FORMAT( day, '%Y-%m-%d' ) as groupKey, total as count, type from tb_report where is_delete=0 ");
|
|
|
- if (StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)){
|
|
|
+ if (StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)) {
|
|
|
builder.append(" and day between '").append(startTime).append("' and '").append(endTime).append("'");
|
|
|
} else {
|
|
|
builder.append(" and DATE(day)>=DATE_SUB(CURDATE(), INTERVAL 30 DAY)");
|
|
@@ -249,12 +114,12 @@ public class ReportServiceImpl extends IBaseServiceImpl<ReportEntity, Long> impl
|
|
|
return builder.toString();
|
|
|
}
|
|
|
|
|
|
- private String weekTrentSql(String infoType, String type, String startTime, String endTime){
|
|
|
+ private String weekTrentSql(String infoType, String type, String startTime, String endTime) {
|
|
|
StringBuilder builder = new StringBuilder();
|
|
|
builder.append(" select groupKey, sum(total) as count,type from (");
|
|
|
builder.append(" select DATE_FORMAT(DATE_ADD(day,INTERVAL- (WEEKDAY(day)) day), '%Y-%m-%d' ) as groupKey, total," +
|
|
|
" type from tb_report where is_delete=0 ");
|
|
|
- if (StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)){
|
|
|
+ if (StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)) {
|
|
|
builder.append(" and day between '").append(startTime).append("' and '").append(endTime).append("'");
|
|
|
} else {
|
|
|
builder.append(" and DATE(day)>=DATE_SUB(CURDATE(), INTERVAL 200 DAY)");
|
|
@@ -267,15 +132,15 @@ public class ReportServiceImpl extends IBaseServiceImpl<ReportEntity, Long> impl
|
|
|
return builder.toString();
|
|
|
}
|
|
|
|
|
|
- private String monthTrentSql(String infoType, String type, String startTime, String endTime){
|
|
|
+ private String monthTrentSql(String infoType, String type, String startTime, String endTime) {
|
|
|
StringBuilder builder = new StringBuilder();
|
|
|
builder.append(" select groupKey, sum(total) as count,type from (");
|
|
|
builder.append(" select DATE_FORMAT(day, '%Y-%m') as groupKey, total,type from tb_report where is_delete=0");
|
|
|
- if (StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)){
|
|
|
+ if (StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)) {
|
|
|
builder.append(" and day between '").append(startTime).append("' and '").append(endTime).append("'");
|
|
|
} else {
|
|
|
// 默认6个月
|
|
|
- builder.append( " and DATE(day) >= DATE_FORMAT(DATE_SUB( now(), INTERVAL 6 MONTH),'%Y-%m')");
|
|
|
+ builder.append(" and DATE(day) >= DATE_FORMAT(DATE_SUB( now(), INTERVAL 6 MONTH),'%Y-%m')");
|
|
|
}
|
|
|
builder.append(" and type='").append(type).append("'");
|
|
|
builder.append(" and info_type='").append(infoType).append("'");
|
|
@@ -286,10 +151,10 @@ public class ReportServiceImpl extends IBaseServiceImpl<ReportEntity, Long> impl
|
|
|
}
|
|
|
|
|
|
|
|
|
- private String dayWorkTrentSql(String infoType, String type, String startTime, String endTime){
|
|
|
+ private String dayWorkTrentSql(String infoType, String type, String startTime, String endTime) {
|
|
|
StringBuilder builder = new StringBuilder();
|
|
|
builder.append("select DATE_FORMAT( day, '%Y-%m-%d' ) as groupKey, mix, pano, age, type from tb_report where is_delete=0 ");
|
|
|
- if (StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)){
|
|
|
+ if (StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)) {
|
|
|
builder.append(" and day between '").append(startTime).append("' and '").append(endTime).append("'");
|
|
|
} else {
|
|
|
builder.append(" and DATE(day)>=DATE_SUB(CURDATE(), INTERVAL 30 DAY)");
|
|
@@ -301,12 +166,12 @@ public class ReportServiceImpl extends IBaseServiceImpl<ReportEntity, Long> impl
|
|
|
return builder.toString();
|
|
|
}
|
|
|
|
|
|
- private String weekWorkTrentSql(String infoType, String type, String startTime, String endTime){
|
|
|
+ private String weekWorkTrentSql(String infoType, String type, String startTime, String endTime) {
|
|
|
StringBuilder builder = new StringBuilder();
|
|
|
builder.append(" select groupKey, sum(mix) as mix,sum(age) as age,sum(pano) as pano,type from (");
|
|
|
builder.append(" select DATE_FORMAT(DATE_ADD(day,INTERVAL- (WEEKDAY(day)) day), '%Y-%m-%d' ) as groupKey, " +
|
|
|
"mix, pano, age,type from tb_report where is_delete=0 ");
|
|
|
- if (StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)){
|
|
|
+ if (StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)) {
|
|
|
builder.append(" and day between '").append(startTime).append("' and '").append(endTime).append("'");
|
|
|
} else {
|
|
|
builder.append(" and DATE(day)>=DATE_SUB(CURDATE(), INTERVAL 200 DAY)");
|
|
@@ -319,15 +184,15 @@ public class ReportServiceImpl extends IBaseServiceImpl<ReportEntity, Long> impl
|
|
|
return builder.toString();
|
|
|
}
|
|
|
|
|
|
- private String monthWorkTrentSql(String infoType, String type, String startTime, String endTime){
|
|
|
+ private String monthWorkTrentSql(String infoType, String type, String startTime, String endTime) {
|
|
|
StringBuilder builder = new StringBuilder();
|
|
|
builder.append(" select groupKey, sum(mix) as mix,sum(age) as age,sum(pano) as pano,type from (");
|
|
|
builder.append(" select DATE_FORMAT(day, '%Y-%m') as groupKey, mix,age, pano,type from tb_report where is_delete=0");
|
|
|
- if (StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)){
|
|
|
+ if (StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)) {
|
|
|
builder.append(" and day between '").append(startTime).append("' and '").append(endTime).append("'");
|
|
|
} else {
|
|
|
// 默认6个月
|
|
|
- builder.append( " and DATE(day) >= DATE_FORMAT(DATE_SUB( now(), INTERVAL 6 MONTH),'%Y-%m')");
|
|
|
+ builder.append(" and DATE(day) >= DATE_FORMAT(DATE_SUB( now(), INTERVAL 6 MONTH),'%Y-%m')");
|
|
|
}
|
|
|
builder.append(" and type='").append(type).append("'");
|
|
|
builder.append(" and info_type='").append(infoType).append("'");
|
|
@@ -351,5 +216,4 @@ public class ReportServiceImpl extends IBaseServiceImpl<ReportEntity, Long> impl
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
}
|