TASK: 1.affiliate 新增referral新增、查询、修改以及其他相关的自动结算佣金的功能;2.删除affiliate_income表及相关mapper

This commit is contained in:
2025-08-19 17:44:34 +08:00
parent 552ec828ab
commit caa9985d11
23 changed files with 499 additions and 105 deletions

View File

@@ -5,6 +5,8 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel("查询affiliate列表")
@@ -15,6 +17,10 @@ public class AffiliateQueryDTO extends TimeQueryBaseDTO{
@ApiModelProperty("推广者id")
private Long affiliateId;
@NotBlank(message = "orderBy cannot be empty")
@ApiModelProperty("目前允许按id, createTime, totalIncome进行排序")
private String orderBy;
@ApiModelProperty("按时间 DESC 降序 || ASC 升序")
private String order = "ASC";

View File

@@ -0,0 +1,18 @@
package com.ai.da.model.dto;
import lombok.Data;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import java.math.BigDecimal;
@Data
public class EditReferralDTO {
@NotNull(message = "referral id cannot be empty")
private Long id;
private BigDecimal amount;
@Pattern(regexp = "Paid|Unpaid|Accept|Rejected", message = "状态必须是Paid/Unpaid/Accept/Rejected")
private String status;
}

View File

@@ -0,0 +1,13 @@
package com.ai.da.model.dto;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@Data
public class ReferralPageQueryDTO extends TimeQueryBaseDTO {
private Long affiliateId;
private String status;
}

View File

@@ -13,7 +13,7 @@ public enum StyleEnum {
LOLITA("洛丽塔", "Lolita"),
Y2K("Y2K", "Y2K"),
BUSINESS("商务风", "Business"),
MERLAD("拉德", "Merlad"),
MERLAD("拉德", "Merlad"),
OUTDOOR_FUNCTIONAL("户外机能", "Outdoor Functional"),
ROCK("摇滚", "Rock"),
DOPAMINE("多巴胺", "Dopamine"),

View File

@@ -5,6 +5,7 @@ import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.math.BigDecimal;
import java.time.LocalDateTime;
@Data
@@ -16,9 +17,9 @@ public class AffiliateInvitationDetailsVO {
private String username;
private Float firstSubscriptionPaymentAmount;
private BigDecimal firstSubscriptionPaymentAmount;
private Float commission;
private BigDecimal commission;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
private LocalDateTime time;

View File

@@ -10,7 +10,7 @@ import lombok.NoArgsConstructor;
@AllArgsConstructor
public class AffiliateVO extends Affiliate {
private Long linkViewCount;
// private Long linkViewCount;
private String username;

View File

@@ -0,0 +1,11 @@
package com.ai.da.model.vo;
import com.ai.da.mapper.primary.entity.Referral;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@Data
public class ReferralPageQueryVO extends Referral {
private String affiliateName;
}