diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/job/OrderSpaceCapsuleJob.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/job/OrderSpaceCapsuleJob.java index 19c74a16..039c3546 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/job/OrderSpaceCapsuleJob.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/job/OrderSpaceCapsuleJob.java @@ -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 orderSpaceCapsuleDOS = orderSpaceCapsuleMapper.selectList(new LambdaQueryWrapperX() .eq(OrderSpaceCapsuleDO::getStatus, SpaceCapsuleOrderEnum.SPACE_CAPSULE_ORDER_ENUM_IN_USE.getCode())); - if(orderSpaceCapsuleDOS==null){ + if(ObjUtil.isEmpty(orderSpaceCapsuleDOS)){ log.info("订单还在有效期内"); return "太空舱订单扣款,订单还在有效期内"; + }else{ + //获得到需要扣款的数据 + List 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 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(); } } diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/orderspacecapsule/OrderSpaceCapsuleServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/orderspacecapsule/OrderSpaceCapsuleServiceImpl.java index e02afbda..4ab45b65 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/orderspacecapsule/OrderSpaceCapsuleServiceImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/orderspacecapsule/OrderSpaceCapsuleServiceImpl.java @@ -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(); }