membercard与member-reguster合并,能进行编译和启动
This commit is contained in:
+61
@@ -0,0 +1,61 @@
|
||||
package cn.novalon.gym.manage.member.dto
|
||||
;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 创建会员卡类型请求 DTO
|
||||
*
|
||||
* @author 付嘉
|
||||
* @date 2026-05-27
|
||||
*/
|
||||
@Data
|
||||
public class CreateMemberCardRequest {
|
||||
|
||||
/**
|
||||
* 会员卡名称
|
||||
*/
|
||||
@NotBlank(message = "会员卡名称不能为空")
|
||||
private String memberCardName;
|
||||
|
||||
/**
|
||||
* 会员卡类型:TIME_CARD-时长卡, COUNT_CARD-次卡, STORED_VALUE_CARD-储值卡
|
||||
*/
|
||||
@NotBlank(message = "会员卡类型不能为空")
|
||||
private String memberCardType;
|
||||
|
||||
/**
|
||||
* 会员卡价格
|
||||
*/
|
||||
@NotNull(message = "会员卡价格不能为空")
|
||||
private BigDecimal memberCardPrice;
|
||||
|
||||
/**
|
||||
* 有效天数(时长卡用)
|
||||
*/
|
||||
private Integer memberCardValidityDays;
|
||||
|
||||
/**
|
||||
* 总次数(次卡用)
|
||||
*/
|
||||
private Integer memberCardTotalTimes;
|
||||
|
||||
/**
|
||||
* 面额(储值卡用)
|
||||
*/
|
||||
private BigDecimal memberCardAmount;
|
||||
|
||||
/**
|
||||
* 状态:0-下架, 1-上架
|
||||
*/
|
||||
private Integer memberCardStatus = 1;
|
||||
|
||||
/**
|
||||
* 扩展配置(JSON格式)
|
||||
*/
|
||||
private String extraConfig;
|
||||
}
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
package cn.novalon.gym.manage.member.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 购买会员卡请求 DTO
|
||||
*
|
||||
* @author 付嘉
|
||||
* @date 2026-05-27
|
||||
*/
|
||||
@Data
|
||||
public class PurchaseCardRequest {
|
||||
|
||||
/**
|
||||
* 会员ID
|
||||
*/
|
||||
@NotNull(message = "会员ID不能为空")
|
||||
private Long memberId;
|
||||
|
||||
/**
|
||||
* 会员卡类型ID
|
||||
*/
|
||||
@NotNull(message = "会员卡类型ID不能为空")
|
||||
private Long memberCardId;
|
||||
|
||||
/**
|
||||
* 来源订单ID
|
||||
*/
|
||||
private Long sourceOrderId;
|
||||
}
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
package cn.novalon.gym.manage.member.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* 退款申请请求 DTO
|
||||
*
|
||||
* @author 付嘉
|
||||
* @date 2026-05-27
|
||||
*/
|
||||
@Data
|
||||
public class RefundCardRequest {
|
||||
|
||||
/**
|
||||
* 退款原因
|
||||
*/
|
||||
@NotBlank(message = "退款原因不能为空")
|
||||
private String reason;
|
||||
}
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
package cn.novalon.gym.manage.member.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 续费会员卡请求 DTO
|
||||
*
|
||||
* @author 付嘉
|
||||
* @date 2026-05-27
|
||||
*/
|
||||
@Data
|
||||
public class RenewCardRequest {
|
||||
|
||||
/**
|
||||
* 增加的次数
|
||||
*/
|
||||
private Integer addTimes;
|
||||
|
||||
/**
|
||||
* 增加的金额
|
||||
*/
|
||||
private Double addAmount;
|
||||
|
||||
/**
|
||||
* 增加的天数
|
||||
*/
|
||||
private Integer addDays;
|
||||
|
||||
/**
|
||||
* 来源订单ID
|
||||
*/
|
||||
private Long sourceOrderId;
|
||||
}
|
||||
+60
@@ -0,0 +1,60 @@
|
||||
package cn.novalon.gym.manage.member.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 更新会员卡类型请求 DTO
|
||||
*
|
||||
* @author 付嘉
|
||||
* @date 2026-05-27
|
||||
*/
|
||||
@Data
|
||||
public class UpdateMemberCardRequest {
|
||||
|
||||
/**
|
||||
* 会员卡名称
|
||||
*/
|
||||
@NotBlank(message = "会员卡名称不能为空")
|
||||
private String memberCardName;
|
||||
|
||||
/**
|
||||
* 会员卡类型:TIME_CARD-时长卡, COUNT_CARD-次卡, STORED_VALUE_CARD-储值卡
|
||||
*/
|
||||
@NotBlank(message = "会员卡类型不能为空")
|
||||
private String memberCardType;
|
||||
|
||||
/**
|
||||
* 会员卡价格
|
||||
*/
|
||||
@NotNull(message = "会员卡价格不能为空")
|
||||
private BigDecimal memberCardPrice;
|
||||
|
||||
/**
|
||||
* 有效天数(时长卡用)
|
||||
*/
|
||||
private Integer memberCardValidityDays;
|
||||
|
||||
/**
|
||||
* 总次数(次卡用)
|
||||
*/
|
||||
private Integer memberCardTotalTimes;
|
||||
|
||||
/**
|
||||
* 面额(储值卡用)
|
||||
*/
|
||||
private BigDecimal memberCardAmount;
|
||||
|
||||
/**
|
||||
* 状态:0-下架, 1-上架
|
||||
*/
|
||||
private Integer memberCardStatus;
|
||||
|
||||
/**
|
||||
* 扩展配置(JSON格式)
|
||||
*/
|
||||
private String extraConfig;
|
||||
}
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
package cn.novalon.gym.manage.member.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 使用会员卡请求 DTO
|
||||
*
|
||||
* @author 付嘉
|
||||
* @date 2026-05-27
|
||||
*/
|
||||
@Data
|
||||
public class UseCardRequest {
|
||||
|
||||
/**
|
||||
* 扣减的次数
|
||||
*/
|
||||
private Integer deductTimes;
|
||||
|
||||
/**
|
||||
* 扣减的金额
|
||||
*/
|
||||
private Double deductAmount;
|
||||
}
|
||||
+1
-2
@@ -1,6 +1,5 @@
|
||||
package cn.novalon.gym.manage.member.card.entity;
|
||||
package cn.novalon.gym.manage.member.entity;
|
||||
|
||||
import cn.novalon.gym.manage.member.entity.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
+2
-3
@@ -1,7 +1,6 @@
|
||||
package cn.novalon.gym.manage.member.card.entity;
|
||||
package cn.novalon.gym.manage.member.entity;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.enums.MemberCardRecordStatus;
|
||||
import cn.novalon.gym.manage.member.entity.BaseEntity;
|
||||
import cn.novalon.gym.manage.member.enums.MemberCardRecordStatus;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
+1
-2
@@ -1,6 +1,5 @@
|
||||
package cn.novalon.gym.manage.member.card.entity;
|
||||
package cn.novalon.gym.manage.member.entity;
|
||||
|
||||
import cn.novalon.gym.manage.member.entity.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
+2
-3
@@ -1,7 +1,6 @@
|
||||
package cn.novalon.gym.manage.member.card.entity;
|
||||
package cn.novalon.gym.manage.member.entity;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.enums.RefundStatus;
|
||||
import cn.novalon.gym.manage.member.entity.BaseEntity;
|
||||
import cn.novalon.gym.manage.member.enums.RefundStatus;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.novalon.gym.manage.member.card.enums;
|
||||
package cn.novalon.gym.manage.member.enums;
|
||||
|
||||
/**
|
||||
* 会员卡流水关联业务类型枚举
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.novalon.gym.manage.member.card.enums;
|
||||
package cn.novalon.gym.manage.member.enums;
|
||||
|
||||
/**
|
||||
* 会员卡状态机事件枚举
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.novalon.gym.manage.member.card.enums;
|
||||
package cn.novalon.gym.manage.member.enums;
|
||||
|
||||
/**
|
||||
* 会员卡记录状态枚举
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.novalon.gym.manage.member.card.enums;
|
||||
package cn.novalon.gym.manage.member.enums;
|
||||
|
||||
/**
|
||||
* 会员卡类型枚举
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.novalon.gym.manage.member.card.enums;
|
||||
package cn.novalon.gym.manage.member.enums;
|
||||
|
||||
/**
|
||||
* 退款申请状态枚举
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.novalon.gym.manage.member.card.enums;
|
||||
package cn.novalon.gym.manage.member.enums;
|
||||
|
||||
/**
|
||||
* 会员卡流水操作类型枚举
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.novalon.gym.manage.member.card.handler;
|
||||
package cn.novalon.gym.manage.member.handler;
|
||||
|
||||
import org.springframework.stereotype.Component;
|
||||
import reactor.core.publisher.Mono;
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package cn.novalon.gym.manage.member.card.handler;
|
||||
package cn.novalon.gym.manage.member.handler;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardRecord;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
+3
-4
@@ -1,8 +1,7 @@
|
||||
package cn.novalon.gym.manage.member.card.handler;
|
||||
package cn.novalon.gym.manage.member.handler;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCard;
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.card.service.IMemberCardService;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCard;
|
||||
import cn.novalon.gym.manage.member.service.IMemberCardService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
+4
-4
@@ -1,8 +1,8 @@
|
||||
package cn.novalon.gym.manage.member.card.handler;
|
||||
package cn.novalon.gym.manage.member.handler;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.card.service.IMemberCardRecordService;
|
||||
import cn.novalon.gym.manage.member.card.service.IMemberCardService;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.service.IMemberCardRecordService;
|
||||
import cn.novalon.gym.manage.member.service.IMemberCardService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.Data;
|
||||
+3
-5
@@ -1,9 +1,7 @@
|
||||
package cn.novalon.gym.manage.member.card.handler;
|
||||
package cn.novalon.gym.manage.member.handler;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.card.enums.CardEvent;
|
||||
import cn.novalon.gym.manage.member.card.enums.MemberCardRecordStatus;
|
||||
import cn.novalon.gym.manage.member.card.repository.MemberCardRecordRepository;
|
||||
import cn.novalon.gym.manage.member.enums.CardEvent;
|
||||
import cn.novalon.gym.manage.member.repository.MemberCardRecordRepository;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.scheduling.annotation.Scheduled;
|
||||
+4
-4
@@ -1,8 +1,8 @@
|
||||
package cn.novalon.gym.manage.member.card.handler;
|
||||
package cn.novalon.gym.manage.member.handler;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.card.enums.CardEvent;
|
||||
import cn.novalon.gym.manage.member.card.enums.MemberCardRecordStatus;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.enums.CardEvent;
|
||||
import cn.novalon.gym.manage.member.enums.MemberCardRecordStatus;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Component;
|
||||
import reactor.core.publisher.Mono;
|
||||
+4
-4
@@ -1,9 +1,9 @@
|
||||
package cn.novalon.gym.manage.member.card.handler;
|
||||
package cn.novalon.gym.manage.member.handler;
|
||||
|
||||
import cn.hutool.db.PageResult;
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardTransaction;
|
||||
import cn.novalon.gym.manage.member.card.enums.TransactionType;
|
||||
import cn.novalon.gym.manage.member.card.service.IMemberCardTransactionService;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardTransaction;
|
||||
import cn.novalon.gym.manage.member.enums.TransactionType;
|
||||
import cn.novalon.gym.manage.member.service.IMemberCardTransactionService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.validation.Validator;
|
||||
+8
-8
@@ -1,12 +1,12 @@
|
||||
package cn.novalon.gym.manage.member.card.handler;
|
||||
package cn.novalon.gym.manage.member.handler;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardTransaction;
|
||||
import cn.novalon.gym.manage.member.card.enums.CardEvent;
|
||||
import cn.novalon.gym.manage.member.card.enums.MemberCardRecordStatus;
|
||||
import cn.novalon.gym.manage.member.card.enums.TransactionType;
|
||||
import cn.novalon.gym.manage.member.card.repository.MemberCardRecordRepository;
|
||||
import cn.novalon.gym.manage.member.card.service.IMemberCardTransactionService;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardTransaction;
|
||||
import cn.novalon.gym.manage.member.enums.CardEvent;
|
||||
import cn.novalon.gym.manage.member.enums.MemberCardRecordStatus;
|
||||
import cn.novalon.gym.manage.member.enums.TransactionType;
|
||||
import cn.novalon.gym.manage.member.repository.MemberCardRecordRepository;
|
||||
import cn.novalon.gym.manage.member.service.IMemberCardTransactionService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Component;
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package cn.novalon.gym.manage.member.card.repository;
|
||||
package cn.novalon.gym.manage.member.repository;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardRecord;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.data.r2dbc.repository.Modifying;
|
||||
import org.springframework.data.r2dbc.repository.Query;
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package cn.novalon.gym.manage.member.card.repository;
|
||||
package cn.novalon.gym.manage.member.repository;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCard;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCard;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.data.r2dbc.repository.Modifying;
|
||||
import org.springframework.data.r2dbc.repository.Query;
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package cn.novalon.gym.manage.member.card.repository;
|
||||
package cn.novalon.gym.manage.member.repository;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardTransaction;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardTransaction;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.data.r2dbc.repository.Modifying;
|
||||
import org.springframework.data.r2dbc.repository.Query;
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package cn.novalon.gym.manage.member.card.repository;
|
||||
package cn.novalon.gym.manage.member.repository;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.RefundApplication;
|
||||
import cn.novalon.gym.manage.member.entity.RefundApplication;
|
||||
import org.springframework.data.r2dbc.repository.Query;
|
||||
import org.springframework.data.r2dbc.repository.R2dbcRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package cn.novalon.gym.manage.member.card.service;
|
||||
package cn.novalon.gym.manage.member.service;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardRecord;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import reactor.core.publisher.Flux;
|
||||
import reactor.core.publisher.Mono;
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
package cn.novalon.gym.manage.member.card.service;
|
||||
package cn.novalon.gym.manage.member.service;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCard;
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCard;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardRecord;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import reactor.core.publisher.Flux;
|
||||
import reactor.core.publisher.Mono;
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
package cn.novalon.gym.manage.member.card.service;
|
||||
package cn.novalon.gym.manage.member.service;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardTransaction;
|
||||
import cn.novalon.gym.manage.member.card.enums.TransactionType;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardTransaction;
|
||||
import cn.novalon.gym.manage.member.enums.TransactionType;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import reactor.core.publisher.Flux;
|
||||
import reactor.core.publisher.Mono;
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package cn.novalon.gym.manage.member.card.service;
|
||||
package cn.novalon.gym.manage.member.service;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.RefundApplication;
|
||||
import cn.novalon.gym.manage.member.entity.RefundApplication;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
/**
|
||||
+4
-4
@@ -1,8 +1,8 @@
|
||||
package cn.novalon.gym.manage.member.card.service.impl;
|
||||
package cn.novalon.gym.manage.member.service.impl;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.card.repository.MemberCardRecordRepository;
|
||||
import cn.novalon.gym.manage.member.card.service.IMemberCardRecordService;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.repository.MemberCardRecordRepository;
|
||||
import cn.novalon.gym.manage.member.service.IMemberCardRecordService;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
import reactor.core.publisher.Flux;
|
||||
+16
-16
@@ -1,20 +1,20 @@
|
||||
package cn.novalon.gym.manage.member.card.service.impl;
|
||||
package cn.novalon.gym.manage.member.service.impl;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCard;
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardTransaction;
|
||||
import cn.novalon.gym.manage.member.card.enums.CardEvent;
|
||||
import cn.novalon.gym.manage.member.card.enums.MemberCardRecordStatus;
|
||||
import cn.novalon.gym.manage.member.card.enums.MemberCardType;
|
||||
import cn.novalon.gym.manage.member.card.enums.TransactionType;
|
||||
import cn.novalon.gym.manage.member.card.handler.DistributedLockService;
|
||||
import cn.novalon.gym.manage.member.card.handler.ExpirationReminderService;
|
||||
import cn.novalon.gym.manage.member.card.handler.MemberCardStateMachine;
|
||||
import cn.novalon.gym.manage.member.card.handler.RefundSagaHandler;
|
||||
import cn.novalon.gym.manage.member.card.repository.MemberCardRecordRepository;
|
||||
import cn.novalon.gym.manage.member.card.repository.MemberCardRepository;
|
||||
import cn.novalon.gym.manage.member.card.service.IMemberCardService;
|
||||
import cn.novalon.gym.manage.member.card.service.IMemberCardTransactionService;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCard;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardRecord;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardTransaction;
|
||||
import cn.novalon.gym.manage.member.enums.CardEvent;
|
||||
import cn.novalon.gym.manage.member.enums.MemberCardRecordStatus;
|
||||
import cn.novalon.gym.manage.member.enums.MemberCardType;
|
||||
import cn.novalon.gym.manage.member.enums.TransactionType;
|
||||
import cn.novalon.gym.manage.member.handler.DistributedLockService;
|
||||
import cn.novalon.gym.manage.member.handler.ExpirationReminderService;
|
||||
import cn.novalon.gym.manage.member.handler.MemberCardStateMachine;
|
||||
import cn.novalon.gym.manage.member.handler.RefundSagaHandler;
|
||||
import cn.novalon.gym.manage.member.repository.MemberCardRecordRepository;
|
||||
import cn.novalon.gym.manage.member.repository.MemberCardRepository;
|
||||
import cn.novalon.gym.manage.member.service.IMemberCardService;
|
||||
import cn.novalon.gym.manage.member.service.IMemberCardTransactionService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
+5
-5
@@ -1,9 +1,9 @@
|
||||
package cn.novalon.gym.manage.member.card.service.impl;
|
||||
package cn.novalon.gym.manage.member.service.impl;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.MemberCardTransaction;
|
||||
import cn.novalon.gym.manage.member.card.enums.TransactionType;
|
||||
import cn.novalon.gym.manage.member.card.repository.MemberCardTransactionRepository;
|
||||
import cn.novalon.gym.manage.member.card.service.IMemberCardTransactionService;
|
||||
import cn.novalon.gym.manage.member.entity.MemberCardTransaction;
|
||||
import cn.novalon.gym.manage.member.enums.TransactionType;
|
||||
import cn.novalon.gym.manage.member.repository.MemberCardTransactionRepository;
|
||||
import cn.novalon.gym.manage.member.service.IMemberCardTransactionService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
+5
-5
@@ -1,9 +1,9 @@
|
||||
package cn.novalon.gym.manage.member.card.service.impl;
|
||||
package cn.novalon.gym.manage.member.service.impl;
|
||||
|
||||
import cn.novalon.gym.manage.member.card.entity.RefundApplication;
|
||||
import cn.novalon.gym.manage.member.card.enums.RefundStatus;
|
||||
import cn.novalon.gym.manage.member.card.repository.RefundApplicationRepository;
|
||||
import cn.novalon.gym.manage.member.card.service.IRefundApplicationService;
|
||||
import cn.novalon.gym.manage.member.entity.RefundApplication;
|
||||
import cn.novalon.gym.manage.member.enums.RefundStatus;
|
||||
import cn.novalon.gym.manage.member.repository.RefundApplicationRepository;
|
||||
import cn.novalon.gym.manage.member.service.IRefundApplicationService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import reactor.core.publisher.Mono;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.novalon.gym.manage.member.card.util;
|
||||
package cn.novalon.gym.manage.member.util;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import org.springframework.stereotype.Component;
|
||||
+71
@@ -0,0 +1,71 @@
|
||||
package cn.novalon.gym.manage.member.vo;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 会员卡记录响应 VO
|
||||
*
|
||||
* @author 付嘉
|
||||
* @date 2026-05-27
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class MemberCardRecordVO {
|
||||
|
||||
/**
|
||||
* 会员卡记录ID
|
||||
*/
|
||||
private Long memberCardRecordId;
|
||||
|
||||
/**
|
||||
* 会员ID
|
||||
*/
|
||||
private Long memberId;
|
||||
|
||||
/**
|
||||
* 会员卡类型ID
|
||||
*/
|
||||
private Long memberCardId;
|
||||
|
||||
/**
|
||||
* 会员卡名称
|
||||
*/
|
||||
private String memberCardName;
|
||||
|
||||
/**
|
||||
* 状态:ACTIVE-有效, USED_UP-用完, EXPIRED-过期, REFUNDED-已退款
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 剩余次数
|
||||
*/
|
||||
private Integer remainingTimes;
|
||||
|
||||
/**
|
||||
* 剩余金额
|
||||
*/
|
||||
private Double remainingAmount;
|
||||
|
||||
/**
|
||||
* 到期时间
|
||||
*/
|
||||
private LocalDateTime expireTime;
|
||||
|
||||
/**
|
||||
* 购买时间
|
||||
*/
|
||||
private LocalDateTime purchaseTime;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private LocalDateTime createdAt;
|
||||
}
|
||||
+81
@@ -0,0 +1,81 @@
|
||||
package cn.novalon.gym.manage.member.vo;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 会员卡交易流水响应 VO
|
||||
*
|
||||
* @author 付嘉
|
||||
* @date 2026-05-27
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class MemberCardTransactionVO {
|
||||
|
||||
/**
|
||||
* 交易ID
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 会员卡记录ID
|
||||
*/
|
||||
private Long memberCardRecordId;
|
||||
|
||||
/**
|
||||
* 会员ID
|
||||
*/
|
||||
private Long memberId;
|
||||
|
||||
/**
|
||||
* 会员卡类型ID
|
||||
*/
|
||||
private Long memberCardId;
|
||||
|
||||
/**
|
||||
* 操作类型:PURCHASE-购买, DEDUCT-扣次/扣费, RENEW-续费, REFUND-退款, EXPIRE-过期
|
||||
*/
|
||||
private String operationType;
|
||||
|
||||
/**
|
||||
* 变动次数
|
||||
*/
|
||||
private Integer changeAmount;
|
||||
|
||||
/**
|
||||
* 变动金额
|
||||
*/
|
||||
private Double changeBalance;
|
||||
|
||||
/**
|
||||
* 变动后剩余次数
|
||||
*/
|
||||
private Integer afterRemainingCount;
|
||||
|
||||
/**
|
||||
* 变动后剩余金额
|
||||
*/
|
||||
private Double afterRemainingBalance;
|
||||
|
||||
/**
|
||||
* 关联业务类型
|
||||
*/
|
||||
private String relatedBizType;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private LocalDateTime createdAt;
|
||||
}
|
||||
+77
@@ -0,0 +1,77 @@
|
||||
package cn.novalon.gym.manage.member.vo;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 会员卡类型响应 VO
|
||||
*
|
||||
* @author 付嘉
|
||||
* @date 2026-05-27
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class MemberCardVO {
|
||||
|
||||
/**
|
||||
* 会员卡ID
|
||||
*/
|
||||
private Long memberCardId;
|
||||
|
||||
/**
|
||||
* 会员卡名称
|
||||
*/
|
||||
private String memberCardName;
|
||||
|
||||
/**
|
||||
* 会员卡类型:TIME_CARD-时长卡, COUNT_CARD-次卡, STORED_VALUE_CARD-储值卡
|
||||
*/
|
||||
private String memberCardType;
|
||||
|
||||
/**
|
||||
* 会员卡价格
|
||||
*/
|
||||
private BigDecimal memberCardPrice;
|
||||
|
||||
/**
|
||||
* 有效天数(时长卡用)
|
||||
*/
|
||||
private Integer memberCardValidityDays;
|
||||
|
||||
/**
|
||||
* 总次数(次卡用)
|
||||
*/
|
||||
private Integer memberCardTotalTimes;
|
||||
|
||||
/**
|
||||
* 面额(储值卡用)
|
||||
*/
|
||||
private BigDecimal memberCardAmount;
|
||||
|
||||
/**
|
||||
* 状态:0-下架, 1-上架
|
||||
*/
|
||||
private Integer memberCardStatus;
|
||||
|
||||
/**
|
||||
* 扩展配置(JSON格式)
|
||||
*/
|
||||
private String extraConfig;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private LocalDateTime createdAt;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
private LocalDateTime updatedAt;
|
||||
}
|
||||
+77
@@ -0,0 +1,77 @@
|
||||
package cn.novalon.gym.manage.member.vo;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 退款申请响应 VO
|
||||
*
|
||||
* @author 付嘉
|
||||
* @date 2026-05-27
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class RefundApplicationVO {
|
||||
|
||||
/**
|
||||
* 申请ID
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 会员卡记录ID
|
||||
*/
|
||||
private Long recordId;
|
||||
|
||||
/**
|
||||
* 会员ID
|
||||
*/
|
||||
private Long memberId;
|
||||
|
||||
/**
|
||||
* 状态:PENDING-待审核, APPROVED-已批准, REJECTED-已拒绝, PROCESSING-处理中, SUCCESS-成功, FAILED-失败
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 退款原因
|
||||
*/
|
||||
private String reason;
|
||||
|
||||
/**
|
||||
* 申请时间
|
||||
*/
|
||||
private LocalDateTime applyTime;
|
||||
|
||||
/**
|
||||
* 审核时间
|
||||
*/
|
||||
private LocalDateTime auditTime;
|
||||
|
||||
/**
|
||||
* 审核人ID
|
||||
*/
|
||||
private Long auditorId;
|
||||
|
||||
/**
|
||||
* 审核备注
|
||||
*/
|
||||
private String auditRemark;
|
||||
|
||||
/**
|
||||
* 退款金额
|
||||
*/
|
||||
private BigDecimal refundAmount;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private LocalDateTime createdAt;
|
||||
}
|
||||
+3
-3
@@ -2,9 +2,9 @@ package cn.novalon.gym.manage.app.config;
|
||||
|
||||
|
||||
import cn.novalon.gym.manage.file.handler.SysFileHandler;
|
||||
import cn.novalon.gym.manage.member.card.handler.MemberCardHandler;
|
||||
import cn.novalon.gym.manage.member.card.handler.MemberCardRecordHandler;
|
||||
import cn.novalon.gym.manage.member.card.handler.MemberCardTransactionHandler;
|
||||
import cn.novalon.gym.manage.member.handler.MemberCardHandler;
|
||||
import cn.novalon.gym.manage.member.handler.MemberCardRecordHandler;
|
||||
import cn.novalon.gym.manage.member.handler.MemberCardTransactionHandler;
|
||||
import cn.novalon.gym.manage.member.handler.MemberHandler;
|
||||
import cn.novalon.gym.manage.member.handler.WechatAuthHandler;
|
||||
import cn.novalon.gym.manage.notify.handler.SysNoticeHandler;
|
||||
|
||||
Reference in New Issue
Block a user