Merge remote-tracking branch 'origin/master'

This commit is contained in:
温文静WWW 2025-08-20 21:31:22 +08:00
commit 675ab2f1e6
3 changed files with 26 additions and 52 deletions

View File

@ -1,56 +1,17 @@
# 第一阶段使用Maven构建项目 # 使用官方 OpenJDK 17 运行时作为基础镜像
FROM maven:3.8.7-openjdk-17 AS builder FROM openjdk:17-jdk-slim
# 设置工作目录 # 设置作者信息
WORKDIR /workspace LABEL maintainer="chenxiky@163.com"
# 复制所有POM文件以利用Docker缓存层
COPY pom.xml .
COPY aircraft-common/pom.xml ./aircraft-common/
COPY aircraft-generator/pom.xml ./aircraft-generator/
COPY aircraft-logging/pom.xml ./aircraft-logging/
COPY aircraft-system/pom.xml ./aircraft-system/
COPY aircraft-tools/pom.xml ./aircraft-tools/
# 下载依赖项仅当pom文件更改时才会重新执行
RUN mvn -B dependency:go-offline
# 复制源代码
COPY aircraft-common/src ./aircraft-common/src
COPY aircraft-generator/src ./aircraft-generator/src
COPY aircraft-logging/src ./aircraft-logging/src
COPY aircraft-system/src ./aircraft-system/src
COPY aircraft-tools/src ./aircraft-tools/src
# 构建整个项目并跳过测试
RUN mvn -B package -pl aircraft-system -am -DskipTests
# 第二阶段:创建运行时镜像
FROM eclipse-temurin:17-jre-alpine
# 设置元数据
LABEL maintainer="aircraft-team"
LABEL module="aircraft-system"
# 设置工作目录 # 设置工作目录
WORKDIR /app WORKDIR /app
# 从构建阶段复制生成的JAR文件 # 复制同级 target 目录下的 JAR 文件到镜像中
COPY --from=builder /workspace/aircraft-system/target/*.jar app.jar COPY target/*.jar app.jar
# 设置时区 # 暴露应用端口(根据实际应用修改)
ENV TZ=Asia/Shanghai EXPOSE 8083
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 暴露默认端口 # 运行 JAR 文件
EXPOSE 8000 ENTRYPOINT ["java", "-jar", "app.jar"]
# 设置JVM参数
ENV JAVA_OPTS="-Xmx512m -Xms256m -XX:+UseG1GC -XX:MaxGCPauseMillis=200"
# 健康检查
HEALTHCHECK --interval=30s --timeout=3s \
CMD wget -q -O - http://localhost:8000/actuator/health || exit 1
# 启动应用
ENTRYPOINT exec java $JAVA_OPTS -jar app.jar

View File

@ -2,6 +2,8 @@ package com.aircraft.modules.quartz.task;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import com.aircraft.exception.BadRequestException;
import com.aircraft.modules.order.domain.OrderMain; import com.aircraft.modules.order.domain.OrderMain;
import com.aircraft.modules.order.domain.enums.MainOrderStatusEnum; import com.aircraft.modules.order.domain.enums.MainOrderStatusEnum;
import com.aircraft.modules.order.service.IOrderMainService; import com.aircraft.modules.order.service.IOrderMainService;
@ -32,11 +34,22 @@ public class OrderTask {
* *
* @param hour 小时 * @param hour 小时
*/ */
public void orderAutoFinishTask(Integer hour) { public void orderAutoFinishTask(String hour) {
log.info("订单自动完成定时任务开始执行,参数:{}", hour); log.info("订单自动完成定时任务开始执行,参数:{}", hour);
// 订单状态为飞行中且确认状态为飞行员确认,距离时间是超过xx小时就会自动完成 // 订单状态为飞行中且确认状态为飞行员确认,距离时间是超过xx小时就会自动完成
if (StrUtil.isBlank(hour)) {
hour = "24";
}
Integer hourInt = null;
try {
hourInt = Integer.parseInt(hour);
} catch (NumberFormatException e) {
throw new BadRequestException("参数不合法,请调整为正整数类型");
}
Date currentTime = new Date(); Date currentTime = new Date();
Date finishTime = DateUtil.offsetHour(currentTime, -hour); Date finishTime = DateUtil.offsetHour(currentTime, - hourInt);
List<OrderMain> orderMainList = orderMainService.obtainOrderNotFinish(finishTime); List<OrderMain> orderMainList = orderMainService.obtainOrderNotFinish(finishTime);

View File

@ -31,7 +31,7 @@ public class EladminSystemApplicationTests {
*/ */
@Test @Test
public void orderAutoFinishTask() { public void orderAutoFinishTask() {
orderTask.orderAutoFinishTask(1); orderTask.orderAutoFinishTask("1");
} }
} }