bug 修改

This commit is contained in:
qjq
2024-11-05 15:04:37 +08:00
parent 5cd95b77c2
commit 5ff25b9b8f
2 changed files with 25 additions and 19 deletions

View File

@ -1,6 +1,7 @@
package cn.iocoder.yudao.module.member.job;
import cn.hutool.core.date.LocalDateTimeUtil;
import cn.hutool.core.util.ObjUtil;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.quartz.core.handler.JobHandler;
@ -17,6 +18,7 @@ import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
@ -36,26 +38,30 @@ public class OrderSpaceCapsuleJob implements JobHandler {
public String execute(String param) throws Exception {
List<OrderSpaceCapsuleDO> orderSpaceCapsuleDOS = orderSpaceCapsuleMapper.selectList(new LambdaQueryWrapperX<OrderSpaceCapsuleDO>()
.eq(OrderSpaceCapsuleDO::getStatus, SpaceCapsuleOrderEnum.SPACE_CAPSULE_ORDER_ENUM_IN_USE.getCode()));
if(orderSpaceCapsuleDOS==null){
if(ObjUtil.isEmpty(orderSpaceCapsuleDOS)){
log.info("订单还在有效期内");
return "太空舱订单扣款,订单还在有效期内";
}else{
//获得到需要扣款的数据
List<OrderSpaceCapsuleDO> collect = orderSpaceCapsuleDOS.stream()
.map(m -> {
LocalDateTime now = LocalDateTime.now();
LocalDateTime orderStartTime = m.getOrderStartTime();
int t = m.getComboNum() * m.getComboMinutes();
LocalDateTime offset = LocalDateTimeUtil.offset(orderStartTime, t, ChronoUnit.MINUTES);
if (now.isAfter(offset)) {
return m;
}
return null;
})
.filter(Objects::nonNull)
.collect(Collectors.toList());
log.info("太空舱订单扣款数量为{}",collect.size());
for (OrderSpaceCapsuleDO aDo : collect) {
aDo.setStatus(SpaceCapsuleOrderEnum.SPACE_CAPSULE_ORDER_ENUM_DONE.getCode());
order.updateOrderSpaceCapsule(BeanUtils.toBean(aDo, OrderSpaceCapsuleSaveReqVO.class));
}
return "太空舱订单扣款数量为:"+collect.size();
}
//获得到需要扣款的数据
List<OrderSpaceCapsuleDO> collect = orderSpaceCapsuleDOS.stream().map(m -> {
LocalDateTime now = LocalDateTime.now();
LocalDateTime orderStartTime = m.getOrderStartTime();
int t = m.getComboNum() * m.getComboMinutes();
LocalDateTime offset = LocalDateTimeUtil.offset(orderStartTime, t, ChronoUnit.MINUTES);
if (now.isAfter(offset)) {
return m;
}
return null;
}).collect(Collectors.toList());
log.info("太空舱订单扣款数量为{}",collect.size());
for (OrderSpaceCapsuleDO aDo : collect) {
aDo.setStatus(SpaceCapsuleOrderEnum.SPACE_CAPSULE_ORDER_ENUM_DONE.getCode());
order.updateOrderSpaceCapsule(BeanUtils.toBean(aDo, OrderSpaceCapsuleSaveReqVO.class));
}
return "太空舱订单扣款数量为:"+collect.size();
}
}

View File

@ -409,7 +409,7 @@ public class OrderSpaceCapsuleServiceImpl implements OrderSpaceCapsuleService {
try {
ImageIO.write(qrImage, "png", baos);
byte[] imageBytes = baos.toByteArray();
return Base64.getEncoder().encodeToString(imageBytes);
return "data:image/png;base64,"+Base64.getEncoder().encodeToString(imageBytes);
} catch (IOException e) {
e.printStackTrace();
}