Browse Source

10-13-但地区图表优化(加时间)

lihuilin1015备份
lijianlin 1 month ago
parent
commit
17ea21314d
  1. 6
      src/main/java/com/example/demo/domain/vo/coin/WorkbenchMarketGraph.java
  2. 4
      src/main/java/com/example/demo/mapper/coin/WorkBenchMapper.java
  3. 6
      src/main/java/com/example/demo/serviceImpl/coin/WorkbenchServiceImpl.java
  4. 16
      src/main/resources/mapper/WorkBenchMapper.xml

6
src/main/java/com/example/demo/domain/vo/coin/WorkbenchMarketGraph.java

@ -1,10 +1,12 @@
package com.example.demo.domain.vo.coin;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* @program: gold-java
@ -27,4 +29,8 @@ public class WorkbenchMarketGraph implements Serializable {
private Integer SumConsumeFree; //合计消费免费金币
private Integer SumConsumeTask; //合计消费任务金币
private Integer SumConsume; //合计消费金币
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "Asia/Shanghai")
private Date currentDate;
@JsonFormat(pattern = "yyyy-MM", timezone = "Asia/Shanghai")
private Date currentMonth;
}

4
src/main/java/com/example/demo/mapper/coin/WorkBenchMapper.java

@ -47,8 +47,8 @@ public interface WorkBenchMapper {
@Param("endDate") Date endDate);
//获取单个地区图表数据40天以内按天
List<WorkbenchMarketGraph> getDayStatistics(@Param("market") String market,
@Param("startDate") Date startDate,
@Param("endDate") Date endDate);
@Param("startDate") LocalDate startDate,
@Param("endDate") LocalDate endDate);
//获取单个地区图表数据40天以上按月首尾截断
List<WorkbenchMarketGraph> getMonthStatistics(@Param("market") String market,
@Param("startDate") LocalDate startDate,

6
src/main/java/com/example/demo/serviceImpl/coin/WorkbenchServiceImpl.java

@ -384,11 +384,11 @@ public class WorkbenchServiceImpl implements WorkbenchService {
// 判断是否需要按周或按月显示 大于40天按月反之按天
boolean byMonth = days > 40;
if (byMonth) {
if (byMonth) {//按月
List<WorkbenchMarketGraph> list = workBenchMapper.getMonthStatistics(market, start, end);
return new WorkbenchCard(new ArrayList<>(), list, markets, startDate, endDate, 0, 0, new Date());
} else {
List<WorkbenchMarketGraph> list = workBenchMapper.getDayStatistics(market, startDate, endDate);
} else {//按天
List<WorkbenchMarketGraph> list = workBenchMapper.getDayStatistics(market, start, end);
return new WorkbenchCard(new ArrayList<>(), list, markets, startDate, endDate, 0, 0, new Date());
}
}

16
src/main/resources/mapper/WorkBenchMapper.xml

@ -141,12 +141,14 @@
select market,recharge as sumRechargePermanent,money as sumMoney,
(recharge - money) as sumRechargeFree,
consume_permanent as sumConsumePermanent,
sum(consume_free_june + consume_free_december) as sumConsumeFree,
(consume_free_june + consume_free_december) as sumConsumeFree,
consume_task as sumConsumeTask,
current_datetime
current_datetime as currentDate
from statistics where market=#{market}
and current_datetime between #{startDate} and #{endDate}
order by current_datetime
and DATE(current_datetime) >= #{startDate}
AND DATE(current_datetime) &lt; #{endDate}
order by current_datetime desc
</select>
<!--40天以上单个地区的图表数据 按月 首尾截断-->
<select id="getMonthStatistics" resultType="com.example.demo.domain.vo.coin.WorkbenchMarketGraph">
@ -157,10 +159,12 @@
sum(recharge - money) as sumRechargeFree,
sum(consume_permanent) as sumConsumePermanent,
sum(consume_free_june + consume_free_december) as sumConsumeFree,
sum(consume_task) as sumConsumeTask
sum(consume_task) as sumConsumeTask,
current_datetime as currentMonth
from statistics
where market = #{market}
and current_datetime between #{startDate} and #{endDate}
and current_datetime >= #{startDate}
and current_datetime &lt; #{endDate}
group by month
order by month
</select>

Loading…
Cancel
Save