已完成小程序端的项目查询

This commit is contained in:
2025-05-11 18:10:09 +08:00
parent 4d14f5e04e
commit 2e33a08a33
28 changed files with 408 additions and 431 deletions

View File

@ -0,0 +1,25 @@
package com.greenorange.promotion.model.dto.projectCommission;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Min;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
@Data
public class ProjectCommissionUniteUpdateRequest implements Serializable {
/**
* 统一抽佣比例
*/
@Min(value = 0L, message = "抽佣比例不能小于0")
@Schema(description = "统一抽佣比例", example = "5")
private BigDecimal uniteCommissionRate;
@Serial
private static final long serialVersionUID = 1L;
}

View File

@ -15,11 +15,7 @@ import java.math.BigDecimal;
@Data
@Schema(description = "项目明细抽佣更新请求体", requiredProperties = {
"id",
"projectDetailId",
"myUnitPrice",
"currentCommissionRate",
"projectId",
"userId",
"currentCommissionRate"
})
public class ProjectCommissionUpdateRequest implements Serializable {
@ -30,39 +26,14 @@ public class ProjectCommissionUpdateRequest implements Serializable {
@Schema(description = "抽佣记录ID", example = "1")
private Long id;
/**
* 项目明细ID
*/
@Min(value = 1L, message = "项目明细ID ID不能小于1")
@Schema(description = "项目明细ID", example = "1")
private Long projectDetailId;
/**
* 我的单价
*/
@Schema(description = "我的单价", example = "0.45")
private BigDecimal myUnitPrice;
/**
* 当前抽佣比例
*/
@Min(value = 0L, message = "抽佣比例不能小于0")
@Schema(description = "当前抽佣比例", example = "5")
private BigDecimal currentCommissionRate;
/**
* 项目ID
*/
@Min(value = 1L, message = "项目ID ID不能小于1")
@Schema(description = "项目ID", example = "1")
private Long projectId;
/**
* 用户ID
*/
@Min(value = 1L, message = "用户ID ID不能小于1")
@Schema(description = "用户ID", example = "1")
private Long userId;
@Serial
private static final long serialVersionUID = 1L;

View File

@ -15,12 +15,7 @@ import java.math.BigDecimal;
@Data
@Schema(description = "下级用户项目明细抽佣更新请求体", requiredProperties = {
"id",
"projectDetailId",
"myUnitPrice",
"currentCommissionRate",
"subUserId",
"projectId",
"userId",
})
public class SubUserProjectCommissionUpdateRequest implements Serializable {
@ -31,46 +26,12 @@ public class SubUserProjectCommissionUpdateRequest implements Serializable {
@Schema(description = "下级用户抽佣记录ID", example = "1")
private Long id;
/**
* 项目明细ID
*/
@Min(value = 1L, message = "项目明细ID ID不能小于1")
@Schema(description = "项目明细ID", example = "1")
private Long projectDetailId;
/**
* 我的单价
*/
@Schema(description = "我的单价", example = "0.24")
private BigDecimal myUnitPrice;
/**
* 当前抽佣比例
*/
@Schema(description = "当前抽佣比例", example = "4")
private BigDecimal currentCommissionRate;
/**
* 下级用户ID
*/
@Min(value = 1L, message = "下级用户ID ID不能小于1")
@Schema(description = "下级用户ID", example = "2")
private Long subUserId;
/**
* 项目ID
*/
@Min(value = 1L, message = "项目ID ID不能小于1")
@Schema(description = "项目ID", example = "1")
private Long projectId;
/**
* 用户ID
*/
@Min(value = 1L, message = "用户ID ID不能小于1")
@Schema(description = "用户ID", example = "1")
private Long userId;
@Serial
private static final long serialVersionUID = 1L;

View File

@ -1,14 +1,11 @@
package com.greenorange.promotion.model.dto.user;
package com.greenorange.promotion.model.dto.userInfo;
import com.greenorange.promotion.annotation.UserEnumValue;
import com.greenorange.promotion.model.enums.UserRoleEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serial;
import java.io.Serializable;

View File

@ -1,4 +1,4 @@
package com.greenorange.promotion.model.dto.user;
package com.greenorange.promotion.model.dto.userInfo;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;

View File

@ -1,4 +1,4 @@
package com.greenorange.promotion.model.dto.user;
package com.greenorange.promotion.model.dto.userInfo;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;

View File

@ -1,4 +1,4 @@
package com.greenorange.promotion.model.dto.user;
package com.greenorange.promotion.model.dto.userInfo;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;

View File

@ -1,9 +1,7 @@
package com.greenorange.promotion.model.dto.user;
package com.greenorange.promotion.model.dto.userInfo;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;

View File

@ -1,4 +1,4 @@
package com.greenorange.promotion.model.dto.user;
package com.greenorange.promotion.model.dto.userInfo;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;

View File

@ -1,4 +1,4 @@
package com.greenorange.promotion.model.dto.user;
package com.greenorange.promotion.model.dto.userInfo;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;

View File

@ -1,4 +1,4 @@
package com.greenorange.promotion.model.dto.user;
package com.greenorange.promotion.model.dto.userInfo;
import com.greenorange.promotion.annotation.UserEnumValue;
import com.greenorange.promotion.model.enums.UserRoleEnum;

View File

@ -40,6 +40,12 @@ public class ProjectDetailCommissionVO implements Serializable {
@Schema(description = "当前抽佣比例", example = "3")
private BigDecimal currentCommissionRate;
/**
* 最大抽佣比例
*/
@Schema(description = "最大抽佣比例", example = "2")
private BigDecimal maxCommissionRate;
/**
* 项目id
*/

View File

@ -1,60 +1,43 @@
package com.greenorange.promotion.model.vo.subUserProjectCommission;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
* 下级用户项目明细抽佣 视图对象
*/
@Data
@Schema(description = "下级用户项目明细抽佣 视图对象")
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class SubUserProjectCommissionVO implements Serializable {
/**
* 下级用户项目明细抽佣ID
*/
@Schema(description = "下级用户项目明细抽佣ID", example = "1")
private Long id;
/**
* 项目明细ID
*/
@Schema(description = "项目明细ID", example = "${field.example}")
private Long projectDetailId;
/**
* 我的单价
*/
@Schema(description = "我的单价", example = "${field.example}")
private BigDecimal myUnitPrice;
/**
* 当前抽佣比例
*/
@Schema(description = "当前抽佣比例", example = "${field.example}")
private BigDecimal currentCommissionRate;
/**
* 下级用户ID
*/
@Schema(description = "下级用户ID", example = "${field.example}")
@Schema(description = "下级用户ID", example = "5")
private Long subUserId;
/**
* 项目ID
* 下级用户昵称
*/
@Schema(description = "项目ID", example = "${field.example}")
private Long projectId;
@Schema(description = "下级用户昵称", example = "caozhe")
private String subUserNickName;
/**
* 用户ID
* 下级用户的项目明细抽佣列表
*/
@Schema(description = "用户ID", example = "${field.example}")
private Long userId;
@Schema(description = "下级用户项目明细抽佣列表")
private List<SubUserProjectDetailCommissionVO> subUserProjectDetailCommissionVOList;
@Serial

View File

@ -0,0 +1,63 @@
package com.greenorange.promotion.model.vo.subUserProjectCommission;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
@Data
public class SubUserProjectDetailCommissionVO implements Serializable {
/**
* 项目明细抽佣ID
*/
@Schema(description = "项目明细抽佣ID", example = "1")
private Long id;
/**
* 项目明细名称
*/
@Schema(description = "项目明细名称", example = "2.9元购买30元券包")
private String projectDetailName;
/**
* 我的单价
*/
@Schema(description = "我的单价", example = "10.44")
private BigDecimal myUnitPrice;
/**
* 代理单价
*/
@Schema(description = "代理单价", example = "9.44")
private BigDecimal agentUnitPrice;
/**
* 当前抽佣比例
*/
@Schema(description = "当前抽佣比例", example = "3")
private BigDecimal currentCommissionRate;
/**
* 最大抽佣比例
*/
@Schema(description = "最大抽佣比例", example = "2")
private BigDecimal maxCommissionRate;
/**
* 项目id
*/
@Schema(description = "项目id", example = "1")
private Long projectId;
/**
* 下级用户ID
*/
@Schema(description = "下级用户ID", example = "5")
private Long subUserId;
@Serial
private static final long serialVersionUID = 1L;
}

View File

@ -1,8 +1,6 @@
package com.greenorange.promotion.model.vo.user;
package com.greenorange.promotion.model.vo.userInfo;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import lombok.Data;
import java.io.Serial;

View File

@ -0,0 +1,67 @@
package com.greenorange.promotion.model.vo.userMainInfo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
@Data
@Schema(description = "用户团队信息 视图对象")
public class UserTeamInfoVO implements Serializable {
/**
* 用户主要信息ID
*/
@Schema(description = "用户主要信息ID", example = "1")
private Long id;
/**
* 团队人数(不包括自己)
*/
@Schema(description = "团队人数(不包括自己)", example = "${field.example}")
private Integer teamSize;
/**
* 给上级带来的收益
*/
@Schema(description = "给上级带来的收益", example = "${field.example}")
private BigDecimal parentEarnings;
/**
* 当前余额
*/
@Schema(description = "当前余额", example = "${field.example}")
private BigDecimal currentBalance;
/**
* 提现中的金额
*/
@Schema(description = "提现中的金额", example = "${field.example}")
private BigDecimal withdrawalAmount;
/**
* 已提现的金额
*/
@Schema(description = "已提现的金额", example = "${field.example}")
private BigDecimal withdrawnAmount;
/**
* 累计收入
*/
@Schema(description = "累计收入", example = "${field.example}")
private BigDecimal totalIncome;
/**
* 邀请二维码
*/
@Schema(description = "邀请二维码", example = "${field.example}")
private String inviteQrCode;
@Serial
private static final long serialVersionUID = 1L;
}