liu
2026-09-30 91491239c5d4611b5b1404a7abeb2bb23d0edad5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
package cn.iocoder.yudao.module.wxcp.controller.admin.activity.vo;
 
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
 
import java.util.List;
 
@Schema(description = "管理后台 - 活动报名统计 Response VO")
@Data
public class WxCpActivityStatsRespVO {
 
    @Schema(description = "活动编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
    private Long activityId;
 
    @Schema(description = "活动标题", example = "2026 年春季团建")
    private String activityTitle;
 
    @Schema(description = "报名上限,0 表示不限", example = "50")
    private Integer signupLimit;
 
    @Schema(description = "有效报名数(不含已取消)", example = "12")
    private Integer totalSignup;
 
    @Schema(description = "已报名(未签到)", example = "8")
    private Integer signedUpCount;
 
    @Schema(description = "已签到", example = "3")
    private Integer checkedInCount;
 
    @Schema(description = "已取消", example = "1")
    private Integer canceledCount;
 
    @Schema(description = "剩余名额;不限名额时为 null", example = "38")
    private Integer remaining;
 
    @Schema(description = "报名进度百分比(0-100);不限名额时为 null", example = "24")
    private Integer signupPercent;
 
    @Schema(description = "签到率百分比(0-100),按有效报名数计算", example = "25")
    private Integer checkInPercent;
 
    @Schema(description = "按部门分布")
    private List<NameCount> deptStats;
 
    @Schema(description = "按报名日期趋势")
    private List<NameCount> dateStats;
 
    @Schema(description = "按成员账号来源分布(企业微信身份 / 普通填写)")
    private List<NameCount> sourceStats;
 
    @Schema(description = "名称-数量统计项")
    @Data
    @NoArgsConstructor
    @AllArgsConstructor
    public static class NameCount {
 
        @Schema(description = "名称", example = "技术部")
        private String name;
 
        @Schema(description = "数量", example = "5")
        private Integer count;
 
    }
 
}