🐛 fix bug

This commit is contained in:
devad 2023-08-28 11:30:09 +08:00
parent d3a7d72ba5
commit 22c40a8b26
7 changed files with 74 additions and 47 deletions

View File

@ -5,7 +5,7 @@ LABEL stage=javabuilder
COPY pom.xml ./
COPY src ./src
RUN mvn clean install -Dmaven.test.skip=true
RUN mvn clean install -Dmaven.test.skip=true -Ptest

24
pom.xml
View File

@ -101,5 +101,29 @@
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>dev</id>
<properties>
<profiles.active>dev</profiles.active>
</properties>
</profile>
<profile>
<id>test</id>
<properties>
<profiles.active>test</profiles.active>
</properties>
<activation>
<!-- 默认环境 -->
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>prod</id>
<properties>
<profiles.active>prod</profiles.active>
</properties>
</profile>
</profiles>
</project>

View File

@ -10,6 +10,7 @@ import net.jointcloud.market.domain.vo.ConsumerStatisticsVo;
import net.jointcloud.market.domain.vo.ProvideVo;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
/**
@ -35,6 +36,6 @@ public interface ProvideMapper extends BaseMapper<ProvideEntity> {
IPage<ProvideVo> selectPriceFirst(Page<?> page, @Param("provideReq") ProvideReq provideReq);
List<ConsumerStatisticsVo> dailyStatic(@Param("bDate") DateTime bDate, @Param("eDate") DateTime eDate);
List<ConsumerStatisticsVo> dailyStatic(@Param("bDate") Date bDate, @Param("eDate") Date eDate);
}

View File

@ -1,7 +1,6 @@
package net.jointcloud.market.service.impl;
import cn.hutool.core.date.DateField;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
@ -59,16 +58,17 @@ public class ProvideServiceImpl extends ServiceImpl<ProvideMapper, ProvideEntity
@Override
public List<ConsumerStatisticsVo> dailyStatic() {
Date today = new Date();
// 获取当天所有的小时集合
List<DateTime> lDate = DateUtil.rangeToList(DateUtil.beginOfDay(today), DateUtil.endOfDay(today), DateField.HOUR_OF_DAY);
// 获取时间差内所有的小时集合
DateTime dateTime = DateUtil.offset(DateUtil.date(), DateField.HOUR_OF_DAY, -23);
List<DateTime> lDate = DateUtil.rangeToList(dateTime, today, DateField.HOUR_OF_DAY);
if (CollectionUtils.isEmpty(lDate)) {
log.error("获取当天所有的小时集合失败!");
throw new OutOfBusinessException("服务器繁忙请稍后");
}
List<ConsumerStatisticsVo> voList = provideMapper.dailyStatic(DateUtil.beginOfDay(today), DateUtil.endOfDay(today));
List<ConsumerStatisticsVo> voList = provideMapper.dailyStatic(DateUtil.offset(DateUtil.date(), DateField.DAY_OF_YEAR, -1), today);
for (Date date : lDate) {
// 当前日期不存在则新增
String dateStr = DateUtil.format(date, "HH");
String dateStr = DateUtil.format(date, "yyyy-MM-dd HH");
// 进行匹配
if (voList.stream().noneMatch(item -> dateStr.equals(item.getDate()))) {
ConsumerStatisticsVo vo = ConsumerStatisticsVo.builder()

View File

@ -0,0 +1,38 @@
server:
port: 8015
spring:
servlet:
multipart:
max-file-size: 1024MB
max-request-size: 1024MB
enabled: true
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/shaoguan?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
username: root
password: uJpLd6u-J?HC1
redis:
host: 127.0.0.1
database: 0
timeout: 5000ms # 连接超时时间(毫秒)
lettuce:
pool:
max-active: 16
max-idle: 12
max-wait: 5s
min-idle: 0
time-between-eviction-runs: 1s
logging:
level:
net.jointcloud.market: debug
config: classpath:logback-jcc.xml
file:
path: logs/@project.name@-@project.version@
mybatis-plus:
global-config:
db-config:
logic-delete-field: flag # 全局逻辑删除的实体字段名(since 3.3.0,配置后可以忽略不配置步骤2)
logic-delete-value: 1 # 逻辑已删除值(默认为 1)
logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)

View File

@ -1,39 +1,3 @@
server:
port: 8015
spring:
servlet:
multipart:
max-file-size: 1024MB
max-request-size: 1024MB
enabled: true
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://10.206.0.12:3306/shaoguan?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
username: root
password: uJpLd6u-J?HC1
redis:
host: 10.206.0.7
password: redisPW123
database: 0
timeout: 5000ms # 连接超时时间(毫秒)
lettuce:
pool:
max-active: 16
max-idle: 12
max-wait: 5s
min-idle: 0
time-between-eviction-runs: 1s
logging:
level:
net.jointcloud.market: debug
config: classpath:logback-jcc.xml
file:
path: logs/@project.name@-@project.version@
mybatis-plus:
global-config:
db-config:
logic-delete-field: flag # 全局逻辑删除的实体字段名(since 3.3.0,配置后可以忽略不配置步骤2)
logic-delete-value: 1 # 逻辑已删除值(默认为 1)
logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
profiles:
active: @profiles.active@

View File

@ -118,14 +118,14 @@
SELECT t.date,
sum(t.consumerCount) AS consumerCount,
sum(t.provideCount) AS provideCount
from (SELECT DATE_FORMAT(create_time, '%H') as date,
from (SELECT DATE_FORMAT(create_time, '%Y-%m-%d %H') as date,
count(c.id) as consumerCount,
0 AS provideCount
FROM consumer c
where c.create_time BETWEEN #{bDate} AND #{eDate}
GROUP BY date
UNION ALL
SELECT DATE_FORMAT(create_time, '%H') as date,
SELECT DATE_FORMAT(create_time, '%Y-%m-%d %H') as date,
0 as consumerCount,
count(p.id) AS provideCount
FROM provide p