11 changed files with 930 additions and 158 deletions
-
76src/main/java/com/example/demo/RabbitMQ/CashCollectionConsumer.java
-
76src/main/java/com/example/demo/RabbitMQ/CashRefundConsumer.java
-
5src/main/java/com/example/demo/RabbitMQ/LogAspect.java
-
240src/main/java/com/example/demo/config/RabbitMQConfig.java
-
2src/main/java/com/example/demo/controller/cash/CashCollectionController.java
-
66src/main/java/com/example/demo/domain/vo/cash/CashCollectionMessage.java
-
76src/main/java/com/example/demo/domain/vo/cash/CashRefundMessage.java
-
61src/main/java/com/example/demo/serviceImpl/cash/CashAuditServiceImpl.java
-
182src/main/java/com/example/demo/serviceImpl/cash/CashCollectionServiceImpl.java
-
196src/main/java/com/example/demo/serviceImpl/cash/CashRefundServiceImpl.java
-
2src/main/resources/cashMapper/CashRefundMapper.xml
@ -0,0 +1,76 @@ |
|||||
|
package com.example.demo.RabbitMQ; |
||||
|
|
||||
|
import com.example.demo.config.RabbitMQConfig; |
||||
|
import com.example.demo.domain.vo.cash.CashCollectionMessage; |
||||
|
import lombok.extern.slf4j.Slf4j; |
||||
|
import org.springframework.amqp.rabbit.annotation.RabbitListener; |
||||
|
import org.springframework.stereotype.Component; |
||||
|
|
||||
|
/** |
||||
|
* 收款流程消息消费者 |
||||
|
* 监听收款流程中各个状态变更的消息队列 |
||||
|
*/ |
||||
|
@Component |
||||
|
@Slf4j |
||||
|
public class CashCollectionConsumer { |
||||
|
|
||||
|
/** |
||||
|
* 处理收款订单创建消息 |
||||
|
* 当有新的收款订单创建时,该方法会被调用 |
||||
|
* |
||||
|
* @param message 收款订单消息对象 |
||||
|
*/ |
||||
|
@RabbitListener(queues = RabbitMQConfig.COLLECTION_CREATED_QUEUE) |
||||
|
public void handleCollectionCreated(CashCollectionMessage message) { |
||||
|
log.info("收款订单创建通知: 订单号={}, 状态={}, 提交人={}, 消息={}", |
||||
|
message.getOrderCode(), message.getStatus(), message.getSubmitterId(), message.getMessage()); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 处理收款订单审核通过消息 |
||||
|
* 当收款订单审核通过时,该方法会被调用 |
||||
|
* |
||||
|
* @param message 收款订单消息对象 |
||||
|
*/ |
||||
|
@RabbitListener(queues = RabbitMQConfig.COLLECTION_AUDITED_QUEUE) |
||||
|
public void handleCollectionAudited(CashCollectionMessage message) { |
||||
|
log.info("收款订单审核通过通知: 订单号={}, 状态={}, 审核人={}, 消息={}", |
||||
|
message.getOrderCode(), message.getStatus(), message.getAuditId(), message.getMessage()); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 处理收款订单审核驳回消息 |
||||
|
* 当收款订单被审核驳回时,该方法会被调用 |
||||
|
* |
||||
|
* @param message 收款订单消息对象 |
||||
|
*/ |
||||
|
@RabbitListener(queues = RabbitMQConfig.COLLECTION_REJECTED_QUEUE) |
||||
|
public void handleCollectionRejected(CashCollectionMessage message) { |
||||
|
log.info("收款订单审核驳回通知: 订单号={}, 状态={}, 审核人={}, 消息={}", |
||||
|
message.getOrderCode(), message.getStatus(), message.getAuditId(), message.getMessage()); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 处理收款订单完成消息 |
||||
|
* 当收款订单流程全部完成时,该方法会被调用 |
||||
|
* |
||||
|
* @param message 收款订单消息对象 |
||||
|
*/ |
||||
|
@RabbitListener(queues = RabbitMQConfig.COLLECTION_COMPLETED_QUEUE) |
||||
|
public void handleCollectionCompleted(CashCollectionMessage message) { |
||||
|
log.info("收款订单完成通知: 订单号={}, 状态={}, 消息={}", |
||||
|
message.getOrderCode(), message.getStatus(), message.getMessage()); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 处理收款订单撤回消息 |
||||
|
* 当收款订单被撤回时,该方法会被调用 |
||||
|
* |
||||
|
* @param message 收款订单消息对象 |
||||
|
*/ |
||||
|
@RabbitListener(queues = RabbitMQConfig.COLLECTION_CANCELLED_QUEUE) |
||||
|
public void handleCollectionCancelled(CashCollectionMessage message) { |
||||
|
log.info("收款订单撤回通知: 订单号={}, 状态={}, 提交人={}, 消息={}", |
||||
|
message.getOrderCode(), message.getStatus(), message.getSubmitterId(), message.getMessage()); |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,76 @@ |
|||||
|
package com.example.demo.RabbitMQ; |
||||
|
|
||||
|
import com.example.demo.config.RabbitMQConfig; |
||||
|
import com.example.demo.domain.vo.cash.CashRefundMessage; |
||||
|
import lombok.extern.slf4j.Slf4j; |
||||
|
import org.springframework.amqp.rabbit.annotation.RabbitListener; |
||||
|
import org.springframework.stereotype.Component; |
||||
|
|
||||
|
/** |
||||
|
* 退款流程消息消费者 |
||||
|
* 监听退款流程中各个状态变更的消息队列 |
||||
|
*/ |
||||
|
@Component |
||||
|
@Slf4j |
||||
|
public class CashRefundConsumer { |
||||
|
|
||||
|
/** |
||||
|
* 处理退款订单创建消息 |
||||
|
* 当有新的退款订单创建时,该方法会被调用 |
||||
|
* |
||||
|
* @param message 退款订单消息对象 |
||||
|
*/ |
||||
|
@RabbitListener(queues = RabbitMQConfig.REFUND_CREATED_QUEUE) |
||||
|
public void handleRefundCreated(CashRefundMessage message) { |
||||
|
log.info("退款订单创建通知: 订单号={}, 状态={}, 提交人={}, 消息={}", |
||||
|
message.getOrderCode(), message.getStatus(), message.getSubmitterId(), message.getMessage()); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 处理退款订单审核通过消息 |
||||
|
* 当退款订单审核通过时,该方法会被调用 |
||||
|
* |
||||
|
* @param message 退款订单消息对象 |
||||
|
*/ |
||||
|
@RabbitListener(queues = RabbitMQConfig.REFUND_REVIEWED_QUEUE) |
||||
|
public void handleRefundReviewed(CashRefundMessage message) { |
||||
|
log.info("退款订单审核通过通知: 订单号={}, 状态={}, 审核人={}, 消息={}", |
||||
|
message.getOrderCode(), message.getStatus(), message.getAuditId(), message.getMessage()); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 处理退款订单审核驳回消息 |
||||
|
* 当退款订单被审核驳回时,该方法会被调用 |
||||
|
* |
||||
|
* @param message 退款订单消息对象 |
||||
|
*/ |
||||
|
@RabbitListener(queues = RabbitMQConfig.REFUND_REJECTED_QUEUE) |
||||
|
public void handleRefundRejected(CashRefundMessage message) { |
||||
|
log.info("退款订单审核驳回通知: 订单号={}, 状态={}, 审核人={}, 消息={}", |
||||
|
message.getOrderCode(), message.getStatus(), message.getAuditId(), message.getMessage()); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 处理退款订单执行消息 |
||||
|
* 当退款订单被执行时,该方法会被调用 |
||||
|
* |
||||
|
* @param message 退款订单消息对象 |
||||
|
*/ |
||||
|
@RabbitListener(queues = RabbitMQConfig.REFUND_EXECUTED_QUEUE) |
||||
|
public void handleRefundExecuted(CashRefundMessage message) { |
||||
|
log.info("退款订单执行通知: 订单号={}, 状态={}, 执行人={}, 消息={}", |
||||
|
message.getOrderCode(), message.getStatus(), message.getExecutorId(), message.getMessage()); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 处理退款订单完成消息 |
||||
|
* 当退款订单流程全部完成时,该方法会被调用 |
||||
|
* |
||||
|
* @param message 退款订单消息对象 |
||||
|
*/ |
||||
|
@RabbitListener(queues = RabbitMQConfig.REFUND_COMPLETED_QUEUE) |
||||
|
public void handleRefundCompleted(CashRefundMessage message) { |
||||
|
log.info("退款订单完成通知: 订单号={}, 状态={}, 消息={}", |
||||
|
message.getOrderCode(), message.getStatus(), message.getMessage()); |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,66 @@ |
|||||
|
package com.example.demo.domain.vo.cash; |
||||
|
|
||||
|
import lombok.AllArgsConstructor; |
||||
|
import lombok.Data; |
||||
|
import lombok.NoArgsConstructor; |
||||
|
|
||||
|
import java.time.LocalDateTime; |
||||
|
|
||||
|
/** |
||||
|
* 收款消息实体类 |
||||
|
* 用于在收款流程中传递状态变更信息 |
||||
|
*/ |
||||
|
@Data |
||||
|
@NoArgsConstructor |
||||
|
@AllArgsConstructor |
||||
|
public class CashCollectionMessage { |
||||
|
/** |
||||
|
* 订单ID |
||||
|
*/ |
||||
|
private Integer id; |
||||
|
|
||||
|
/** |
||||
|
* 订单编号 |
||||
|
*/ |
||||
|
private String orderCode; |
||||
|
|
||||
|
/** |
||||
|
* 订单状态 |
||||
|
*/ |
||||
|
private Integer status; |
||||
|
|
||||
|
/** |
||||
|
* 状态描述 |
||||
|
*/ |
||||
|
private String statusDescription; |
||||
|
|
||||
|
/** |
||||
|
* 消息内容 |
||||
|
*/ |
||||
|
private String message; |
||||
|
|
||||
|
/** |
||||
|
* 提交人ID |
||||
|
*/ |
||||
|
private Integer submitterId; |
||||
|
|
||||
|
/** |
||||
|
* 提交人姓名 |
||||
|
*/ |
||||
|
private String submitterName; |
||||
|
|
||||
|
/** |
||||
|
* 审核人ID |
||||
|
*/ |
||||
|
private Integer auditId; |
||||
|
|
||||
|
/** |
||||
|
* 审核人姓名 |
||||
|
*/ |
||||
|
private String auditName; |
||||
|
|
||||
|
/** |
||||
|
* 时间戳 |
||||
|
*/ |
||||
|
private LocalDateTime timestamp = LocalDateTime.now(); |
||||
|
} |
||||
@ -0,0 +1,76 @@ |
|||||
|
package com.example.demo.domain.vo.cash; |
||||
|
|
||||
|
import lombok.AllArgsConstructor; |
||||
|
import lombok.Data; |
||||
|
import lombok.NoArgsConstructor; |
||||
|
|
||||
|
import java.time.LocalDateTime; |
||||
|
|
||||
|
/** |
||||
|
* 退款消息实体类 |
||||
|
* 用于在退款流程中传递状态变更信息 |
||||
|
*/ |
||||
|
@Data |
||||
|
@NoArgsConstructor |
||||
|
@AllArgsConstructor |
||||
|
public class CashRefundMessage { |
||||
|
/** |
||||
|
* 订单ID |
||||
|
*/ |
||||
|
private Integer id; |
||||
|
|
||||
|
/** |
||||
|
* 订单编号 |
||||
|
*/ |
||||
|
private String orderCode; |
||||
|
|
||||
|
/** |
||||
|
* 订单状态 |
||||
|
*/ |
||||
|
private Integer status; |
||||
|
|
||||
|
/** |
||||
|
* 状态描述 |
||||
|
*/ |
||||
|
private String statusDescription; |
||||
|
|
||||
|
/** |
||||
|
* 消息内容 |
||||
|
*/ |
||||
|
private String message; |
||||
|
|
||||
|
/** |
||||
|
* 提交人ID |
||||
|
*/ |
||||
|
private Integer submitterId; |
||||
|
|
||||
|
/** |
||||
|
* 提交人姓名 |
||||
|
*/ |
||||
|
private String submitterName; |
||||
|
|
||||
|
/** |
||||
|
* 审核人ID |
||||
|
*/ |
||||
|
private Integer auditId; |
||||
|
|
||||
|
/** |
||||
|
* 审核人姓名 |
||||
|
*/ |
||||
|
private String auditName; |
||||
|
|
||||
|
/** |
||||
|
* 执行人ID |
||||
|
*/ |
||||
|
private Integer executorId; |
||||
|
|
||||
|
/** |
||||
|
* 执行人姓名 |
||||
|
*/ |
||||
|
private String executorName; |
||||
|
|
||||
|
/** |
||||
|
* 时间戳 |
||||
|
*/ |
||||
|
private LocalDateTime timestamp = LocalDateTime.now(); |
||||
|
} |
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue