Compare commits

...

2 Commits

Author SHA1 Message Date
wangqx
4c580e3ec5 [fix]修改订单核销码 2025-09-13 15:32:33 +08:00
wangqx
7a9765d1be [fix]修改订单核销码 2025-09-13 15:32:33 +08:00
6 changed files with 35 additions and 46 deletions

View File

@ -1,7 +1,9 @@
package org.dromara.app.merchant;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.wzj.soopin.order.business.IOrderBusiness;
import com.wzj.soopin.order.domain.bo.OrderBo;
import com.wzj.soopin.order.domain.entity.Order;
import com.wzj.soopin.order.domain.vo.OrderVO;
import com.wzj.soopin.order.service.IMerchantOrderService;
import com.wzj.soopin.order.service.VerificationCodeService;
@ -30,6 +32,8 @@ public class AppMerchantOrderController {
private final VerificationCodeService verificationCodeService;
private final IMerchantOrderService merchantOrderService;
private final IOrderBusiness orderBusiness;
/**
* 扫码核销接口
* @return 核销结果
@ -64,7 +68,8 @@ public class AppMerchantOrderController {
if(loginUser.getTenantId() == null){
return R.fail("用户不是商户");
}
return R.ok(verificationCodeService.scan(code));
Order order = verificationCodeService.scan(code);
return R.ok(orderBusiness.info(order.getId()));
}
@Tag(name ="查询订单列表")

View File

@ -0,0 +1,19 @@
package org.dromara.common.core.enums;
/**
* 数字编码前缀扫码用
*/
public enum CodePrefix {
/**
* 核销
*/
HXM,
/**
* 好友
*/
HYM,
/**
* 推广
*/
TGM;
}

View File

@ -1,36 +0,0 @@
package org.dromara.common.core.enums;
/**
* 用户状态
*
* @author ruoyi
*/
public enum OrderStatus
{
ALL_DATA(-1,"全部订单"),
UN_PAY(0, "待付款"),
NOT_DELIVERED(1, "待发货"),
DELIVERED(2, "待收货"),
COMPLETE(3, "已完成"),
CLOSED(4, "已关闭"),
INVALID(5, "无效订单"),
WAIT_VERIFY(6, "待核销"),
VERIFY(7, "已核销"),
REFUUND(-2, "售后订单");
private final Integer type;
private final String msg;
private OrderStatus(Integer type, String msg) {
this.type = type;
this.msg = msg;
}
public Integer getType() {
return this.type;
}
public String getMsg() {
return this.msg;
}
}

View File

@ -18,7 +18,4 @@ import org.mapstruct.Mapper;
@Mapper(componentModel = "spring")
public interface OrderItemConvert extends BaseConverter<OrderItemVO, OrderItemBo, OrderItem> {
// List<OrderVO> dos2vos(List<Order> list);
// OrderVO do2vo(Order order);
}

View File

@ -1,6 +1,7 @@
package com.wzj.soopin.order.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.wzj.soopin.order.domain.entity.Order;
import com.wzj.soopin.order.domain.entity.VerificationCodes;
import com.wzj.soopin.order.domain.vo.ManagerOrderDetailVO;
import org.dromara.common.core.domain.R;
@ -14,7 +15,7 @@ public interface VerificationCodeService extends IService<VerificationCodes> {
void verifyCode(String code,String tenantId);
ManagerOrderDetailVO scan(String code);
Order scan(String code);
List<VerificationCodes> getByOrderId(Long orderId);
}

View File

@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.wzj.soopin.order.domain.entity.Order;
import com.wzj.soopin.order.domain.entity.VerificationCodes;
import com.wzj.soopin.order.domain.vo.ManagerOrderDetailVO;
import com.wzj.soopin.order.emum.OrderStatusEnum;
import com.wzj.soopin.order.mapper.OrderMapper;
import com.wzj.soopin.order.mapper.VerificationCodesMapper;
import com.wzj.soopin.order.mapper.VerificationLogsMapper;
@ -15,10 +16,12 @@ import com.wzj.soopin.order.utils.StringUtils;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.enums.CodePrefix;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects;
/**
* @author fxh
@ -46,7 +49,7 @@ public class VerificationCodeServiceImpl extends ServiceImpl<VerificationCodesM
public R generateVerificationCode(Long orderId) {
// 校验订单状态
Order order = orderMapper.selectById(orderId);
if (order == null || order.getStatus() != 6) {
if (order == null || !Objects.equals(order.getStatus(), OrderStatusEnum.VERIFY.getValue())) {
return R.fail("订单状态异常");
}
@ -99,7 +102,7 @@ public class VerificationCodeServiceImpl extends ServiceImpl<VerificationCodesM
* @param code
*/
@Override
public ManagerOrderDetailVO scan(String code) {
public Order scan(String code) {
// 查询核销码
// 参数校验
if (StringUtils.isBlank(code) ) {
@ -131,7 +134,7 @@ public class VerificationCodeServiceImpl extends ServiceImpl<VerificationCodesM
}
// 检查订单状态
Order order = orderMapper.selectById(verificationCodes.getOrderId());
if (order == null || order.getStatus() != 6) {
if (order == null || !Objects.equals(order.getStatus(), OrderStatusEnum.VERIFY.getValue())) {
throw new IllegalArgumentException("订单状态异常,无法核销");
}
@ -140,7 +143,7 @@ public class VerificationCodeServiceImpl extends ServiceImpl<VerificationCodesM
if (verificationCodes.getStatus() == 1 || verificationCodes.getVerificationTime() != null) {
throw new IllegalArgumentException("该订单已被核销,核销时间:" + verificationCodes.getVerificationTime());
}
return orderService.selectById(verificationCodes.getOrderId());
return order;
}
@Override
@ -211,7 +214,7 @@ public class VerificationCodeServiceImpl extends ServiceImpl<VerificationCodesM
*/
private String generateUniqueCode() {
String uuid = java.util.UUID.randomUUID().toString().replaceAll("-", "");
return uuid.substring(0, 16).toUpperCase();
return CodePrefix.HXM.name()+"-" + uuid.substring(0, 16).toUpperCase();
}
@Override