diff --git a/backend/src/main/java/com/imeeting/dto/android/AndroidMeetingCreateResponse.java b/backend/src/main/java/com/imeeting/dto/android/AndroidMeetingCreateResponse.java new file mode 100644 index 0000000..8d53a5b --- /dev/null +++ b/backend/src/main/java/com/imeeting/dto/android/AndroidMeetingCreateResponse.java @@ -0,0 +1,15 @@ +package com.imeeting.dto.android; + +import com.imeeting.dto.biz.MeetingVO; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; + +@Data +@EqualsAndHashCode(callSuper = true) +@Schema(description = "Android 创建会议返回对象") +public class AndroidMeetingCreateResponse extends MeetingVO { + + @Schema(description = "H5 会议预览地址") + private String previewUrl; +} diff --git a/backend/src/main/java/com/imeeting/dto/android/AndroidMeetingListItemVO.java b/backend/src/main/java/com/imeeting/dto/android/AndroidMeetingListItemVO.java new file mode 100644 index 0000000..82d6f67 --- /dev/null +++ b/backend/src/main/java/com/imeeting/dto/android/AndroidMeetingListItemVO.java @@ -0,0 +1,18 @@ +package com.imeeting.dto.android; + +import com.imeeting.dto.biz.MeetingVO; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; + +@Data +@EqualsAndHashCode(callSuper = true) +@Schema(description = "Android 会议列表项") +public class AndroidMeetingListItemVO extends MeetingVO { + + @Schema(description = "H5 会议预览地址") + private String previewUrl; + + @Schema(description = "会议日期相对当前日期的天数偏移量,今天为 0,未来为正,过去为负") + private Long dayOffset; +} diff --git a/backend/src/main/java/com/imeeting/dto/biz/MeetingPointsChargeItemVO.java b/backend/src/main/java/com/imeeting/dto/biz/MeetingPointsChargeItemVO.java new file mode 100644 index 0000000..ea079a0 --- /dev/null +++ b/backend/src/main/java/com/imeeting/dto/biz/MeetingPointsChargeItemVO.java @@ -0,0 +1,32 @@ +package com.imeeting.dto.biz; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Data +@Schema(description = "会议积分扣费明细视图") +public class MeetingPointsChargeItemVO { + @Schema(description = "明细ID,这里复用 ledger ID") + private Long id; + + @Schema(description = "扣费阶段:ASR / LLM") + private String chargeStage; + + @Schema(description = "实际扣费账户类型:PUBLIC / PERSONAL") + private String accountType; + + @Schema(description = "实际扣费账户用户ID") + private Long accountUserId; + + @Schema(description = "在本次扣费中的顺序") + private Integer priorityOrder; + + @Schema(description = "本条实际扣费积分") + private Long chargedPoints; + + @Schema(description = "扣费前余额") + private Long balanceBefore; + + @Schema(description = "扣费后余额") + private Long balanceAfter; +} diff --git a/backend/src/main/java/com/imeeting/dto/biz/MeetingPointsTransferRequest.java b/backend/src/main/java/com/imeeting/dto/biz/MeetingPointsTransferRequest.java new file mode 100644 index 0000000..c60f778 --- /dev/null +++ b/backend/src/main/java/com/imeeting/dto/biz/MeetingPointsTransferRequest.java @@ -0,0 +1,17 @@ +package com.imeeting.dto.biz; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Data +@Schema(description = "公共积分分配给个人请求") +public class MeetingPointsTransferRequest { + @Schema(description = "目标用户ID") + private Long targetUserId; + + @Schema(description = "分配积分数量") + private Long points; + + @Schema(description = "备注") + private String remark; +}