code review:调整操作日志的封装
commit
1b9a3f9f63
@ -0,0 +1,29 @@
|
|||||||
|
package cn.iocoder.yudao.module.trade.enums.order;
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 订单操作类型的枚举
|
||||||
|
*
|
||||||
|
* @author 陈賝
|
||||||
|
* @since 2023/7/6 15:31
|
||||||
|
*/
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
@Getter
|
||||||
|
public enum TradeOrderOperateTypeEnum {
|
||||||
|
|
||||||
|
MEMBER_CREATE(1, "用户下单"),
|
||||||
|
TEST(2, "用户({nickname})做了({thing})"),
|
||||||
|
;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 类型
|
||||||
|
*/
|
||||||
|
private final Integer type;
|
||||||
|
/**
|
||||||
|
* 类型
|
||||||
|
*/
|
||||||
|
private final String content;
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,26 @@
|
|||||||
|
package cn.iocoder.yudao.module.trade.framework.order.core.annotations;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.trade.enums.order.TradeOrderOperateTypeEnum;
|
||||||
|
|
||||||
|
import java.lang.annotation.*;
|
||||||
|
|
||||||
|
import static java.lang.annotation.ElementType.ANNOTATION_TYPE;
|
||||||
|
import static java.lang.annotation.ElementType.METHOD;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 交易订单的操作日志 AOP 注解
|
||||||
|
*
|
||||||
|
* @author 陈賝
|
||||||
|
* @since 2023/7/6 15:37
|
||||||
|
*/
|
||||||
|
@Target({METHOD, ANNOTATION_TYPE})
|
||||||
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
|
@Documented
|
||||||
|
public @interface TradeOrderLog {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 操作类型
|
||||||
|
*/
|
||||||
|
TradeOrderOperateTypeEnum operateType();
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,23 @@
|
|||||||
|
package cn.iocoder.yudao.module.trade.framework.order.core.utils;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.trade.framework.order.core.aop.TradeOrderLogAspect;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 交易订单的操作日志 Utils
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
public class TradeOrderLogUtils {
|
||||||
|
|
||||||
|
public static void setOrderInfo(Long id, Integer beforeStatus, Integer afterStatus) {
|
||||||
|
TradeOrderLogAspect.setOrderInfo(id, beforeStatus, afterStatus, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void setOrderInfo(Long id, Integer beforeStatus, Integer afterStatus,
|
||||||
|
Map<String, Object> exts) {
|
||||||
|
TradeOrderLogAspect.setOrderInfo(id, beforeStatus, afterStatus, exts);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,24 @@
|
|||||||
|
package cn.iocoder.yudao.module.trade.service.order;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.trade.service.order.bo.logger.TradeOrderLogCreateReqBO;
|
||||||
|
import org.springframework.scheduling.annotation.Async;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 交易下单日志 Service 接口
|
||||||
|
*
|
||||||
|
* @author 陈賝
|
||||||
|
* @since 2023/7/6 15:44
|
||||||
|
*/
|
||||||
|
public interface TradeOrderLogService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建交易下单日志
|
||||||
|
*
|
||||||
|
* @param logDTO 日志记录
|
||||||
|
* @author 陈賝
|
||||||
|
* @since 2023/7/6 15:45
|
||||||
|
*/
|
||||||
|
@Async
|
||||||
|
void createOrderLog(TradeOrderLogCreateReqBO logDTO);
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,21 @@
|
|||||||
|
package cn.iocoder.yudao.module.trade.service.order;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.trade.service.order.bo.logger.TradeOrderLogCreateReqBO;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 交易下单日志 Service 实现类
|
||||||
|
*
|
||||||
|
* @author 陈賝
|
||||||
|
* @since 2023/7/6 15:44
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class TradeOrderLogServiceImpl implements TradeOrderLogService {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void createOrderLog(TradeOrderLogCreateReqBO createReqBO) {
|
||||||
|
// TODO 芋艿:存储还没搞
|
||||||
|
System.out.println();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,51 @@
|
|||||||
|
package cn.iocoder.yudao.module.trade.service.order.bo.logger;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import javax.validation.constraints.NotNull;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 订单日志的创建 Request BO
|
||||||
|
*
|
||||||
|
* @author 陈賝
|
||||||
|
* @since 2023/7/6 15:27
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class TradeOrderLogCreateReqBO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户编号
|
||||||
|
*/
|
||||||
|
@NotNull(message = "用户编号不能为空")
|
||||||
|
private Long userId;
|
||||||
|
/**
|
||||||
|
* 用户类型
|
||||||
|
*/
|
||||||
|
@NotNull(message = "用户类型不能为空")
|
||||||
|
private Integer userType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 订单编号
|
||||||
|
*/
|
||||||
|
@NotNull(message = "订单编号")
|
||||||
|
private Long orderId;
|
||||||
|
/**
|
||||||
|
* 操作前状态
|
||||||
|
*/
|
||||||
|
private Integer beforeStatus;
|
||||||
|
/**
|
||||||
|
* 操作后状态
|
||||||
|
*/
|
||||||
|
@NotNull(message = "操作后的状态不能为空")
|
||||||
|
private Integer afterStatus;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 操作类型
|
||||||
|
*/
|
||||||
|
private Integer operateType;
|
||||||
|
/**
|
||||||
|
* 操作明细
|
||||||
|
*/
|
||||||
|
private String content;
|
||||||
|
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue