fix - 彻底优化日志
This commit is contained in:
@@ -44,53 +44,61 @@ public class BarcodeTimeOrderTask {
|
||||
|
||||
@Scheduled(cron = "0 0/8 * * * ?")
|
||||
public void execute(){
|
||||
logger.error("执行BarcodeTimeOrderTask.execute");
|
||||
Date date = new Date();
|
||||
List<BarcodeOrderTime> barcodeOrderTimes = barcodeOrderTimeMapper.endOrderList(date);
|
||||
logger.info("[定时任务][订单过期] 开始执行, 查询到{}个到期订单", barcodeOrderTimes != null ? barcodeOrderTimes.size() : 0);
|
||||
if (barcodeOrderTimes != null && barcodeOrderTimes.size() > 0){
|
||||
for (BarcodeOrderTime barcodeOrderTime : barcodeOrderTimes) {
|
||||
logger.info("用户:" + barcodeOrderTime.getMemberId() + ",在场馆" + barcodeOrderTime.getVenueId() + "已到期");
|
||||
logger.info("[定时任务][订单过期] memberId={}, venueId={}, orderSn={}, orderEnd={}, 已到期",
|
||||
barcodeOrderTime.getMemberId(), barcodeOrderTime.getVenueId(),
|
||||
barcodeOrderTime.getOrderSn(), barcodeOrderTime.getOrderEnd());
|
||||
barcodeOrderTime.setStatus(BarCodeStatusEnum.USED.getValue());
|
||||
barcodeOrderTime.setModifiedTime(date);
|
||||
barcodeOrderTimeMapper.updateByPrimaryKey(barcodeOrderTime);
|
||||
}
|
||||
}
|
||||
logger.info("[定时任务][订单过期] 执行完毕, 处理{}个订单", barcodeOrderTimes != null ? barcodeOrderTimes.size() : 0);
|
||||
}
|
||||
|
||||
@Scheduled(cron = "0 0/5 * * * ?")
|
||||
public void refundOrder(){
|
||||
logger.error("执行BarcodeTimeOrderTask.refundOrder");
|
||||
List<BarcodeOrderTime> barcodeOrderTimes = barcodeOrderTimeMapper.needPayOrderList();
|
||||
logger.info("[定时任务][订单退款] 开始执行, 查询到{}个待退款订单", barcodeOrderTimes != null ? barcodeOrderTimes.size() : 0);
|
||||
if (barcodeOrderTimes != null && barcodeOrderTimes.size() > 0){
|
||||
Date date = new Date();
|
||||
int refundCount = 0;
|
||||
for (BarcodeOrderTime barcodeOrderTime : barcodeOrderTimes) {
|
||||
boolean isHourlyRefund = barcodeOrderTime.getPayMoney() != null && barcodeOrderTime.getPayMoney().compareTo(BigDecimal.ZERO) > 0;
|
||||
|
||||
if (!isHourlyRefund) {
|
||||
// 按次计费:10分钟宽限期
|
||||
int minutes = DateUtilCard.diffMinute(barcodeOrderTime.getModifiedTime(), date);
|
||||
if (minutes < 10) {
|
||||
logger.info("[定时任务][订单退款] 按次计费10分钟宽限期内跳过 memberId={}, orderSn={}, 已等待{}分钟",
|
||||
barcodeOrderTime.getMemberId(), barcodeOrderTime.getOrderSn(), minutes);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
// 关闭订单
|
||||
logger.info("[定时任务][订单退款] 关闭订单 memberId={}, venueId={}, orderSn={}, isHourlyRefund={}, payMoney={}",
|
||||
barcodeOrderTime.getMemberId(), barcodeOrderTime.getVenueId(),
|
||||
barcodeOrderTime.getOrderSn(), isHourlyRefund, barcodeOrderTime.getPayMoney());
|
||||
|
||||
barcodeOrderTime.setPaying(0);
|
||||
barcodeOrderTime.setModifiedTime(date);
|
||||
barcodeOrderTime.setStatus(BarCodeStatusEnum.USED.getValue());
|
||||
barcodeOrderTimeMapper.updateByPrimaryKey(barcodeOrderTime);
|
||||
|
||||
// 按时计费退款
|
||||
if (isHourlyRefund) {
|
||||
// 如果有补费订单号,跳过退款(与管理员退费逻辑一致)
|
||||
if (!StringUtils.isEmpty(barcodeOrderTime.getOrderAddSn())) {
|
||||
logger.info("用户" + barcodeOrderTime.getMemberId() + "的订单有补费记录,跳过退款");
|
||||
logger.info("[定时任务][订单退款] 有补费记录,跳过退款 memberId={}, orderSn={}, orderAddSn={}",
|
||||
barcodeOrderTime.getMemberId(), barcodeOrderTime.getOrderSn(), barcodeOrderTime.getOrderAddSn());
|
||||
continue;
|
||||
}
|
||||
Order order = orderMapper.findOrderSn(barcodeOrderTime.getOrderSn(), barcodeOrderTime.getMemberId());
|
||||
if (order != null) {
|
||||
BigDecimal refundAmount = barcodeOrderTime.getPayMoney();
|
||||
logger.info("用户" + barcodeOrderTime.getMemberId() + "的订单" + barcodeOrderTime.getOrderSn() + "需要退款" + refundAmount + "元");
|
||||
logger.info("[定时任务][订单退款] 发起微信退款 memberId={}, orderSn={}, refundAmount={}, orderPrice={}",
|
||||
barcodeOrderTime.getMemberId(), barcodeOrderTime.getOrderSn(), refundAmount, order.getPrice());
|
||||
MemberRefund memberRefund = new MemberRefund();
|
||||
memberRefund.setMemberId(barcodeOrderTime.getMemberId());
|
||||
memberRefund.setLessonId(barcodeOrderTime.getId());
|
||||
@@ -102,17 +110,20 @@ public class BarcodeTimeOrderTask {
|
||||
memberRefund.setPlatformId(1);
|
||||
memberRefundMapper.insert(memberRefund);
|
||||
wechatPayService.refundInputMoney(memberRefund, order.getPrice(), refundAmount);
|
||||
refundCount++;
|
||||
} else {
|
||||
logger.warn("[定时任务][订单退款] 未找到原始订单 memberId={}, orderSn={}",
|
||||
barcodeOrderTime.getMemberId(), barcodeOrderTime.getOrderSn());
|
||||
}
|
||||
}
|
||||
}
|
||||
logger.info("[定时任务][订单退款] 执行完毕, 处理{}个订单, 发起{}笔退款",
|
||||
barcodeOrderTimes.size(), refundCount);
|
||||
} else {
|
||||
logger.info("[定时任务][订单退款] 无待退款订单");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成订单号
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
private String createSn() {
|
||||
return DateFormatUtils.format(new Date(), "yyMMddHHmmss") + RandomStringUtils.randomNumeric(6);
|
||||
}
|
||||
|
||||
@@ -92,4 +92,4 @@ logging:
|
||||
level:
|
||||
com:
|
||||
sv:
|
||||
mapper: DEBUG
|
||||
mapper: WARN
|
||||
|
||||
@@ -5,8 +5,7 @@
|
||||
|
||||
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
||||
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} [%X{traceId:-no-trace}] - %msg%n</pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
@@ -15,10 +14,10 @@
|
||||
<file>${LOG_HOME}/common-default.log</file>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
<fileNamePattern>${LOG_HOME}/common-default-%d{yyyy-MM-dd}.log</fileNamePattern>
|
||||
<MaxHistory>30</MaxHistory>
|
||||
<maxHistory>30</maxHistory>
|
||||
</rollingPolicy>
|
||||
<encoder>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} [%X{traceId:-no-trace}] - %msg%n</pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
@@ -30,10 +29,10 @@
|
||||
</filter>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
<fileNamePattern>${LOG_HOME}/common-error-%d{yyyy-MM-dd}.log</fileNamePattern>
|
||||
<MaxHistory>30</MaxHistory>
|
||||
<maxHistory>30</maxHistory>
|
||||
</rollingPolicy>
|
||||
<encoder>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} [%X{traceId:-no-trace}] - %msg%n</pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
@@ -42,10 +41,10 @@
|
||||
<file>${LOG_HOME}/task/task.log</file>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
<fileNamePattern>${LOG_HOME}/task/task-%d{yyyy-MM-dd}.log</fileNamePattern>
|
||||
<MaxHistory>30</MaxHistory>
|
||||
<maxHistory>30</maxHistory>
|
||||
</rollingPolicy>
|
||||
<encoder>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} [%X{traceId:-no-trace}] - %msg%n</pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
@@ -53,7 +52,8 @@
|
||||
<appender-ref ref="TASK-SERVICE" />
|
||||
</logger>
|
||||
|
||||
<!-- root -->
|
||||
<logger name="com.sv.mapper" level="WARN"/>
|
||||
|
||||
<root level="info">
|
||||
<appender-ref ref="STDOUT" />
|
||||
<appender-ref ref="COMMON-DEFAULT" />
|
||||
|
||||
Reference in New Issue
Block a user