wangxx дней назад: 4
Родитель
Сommit
736a2ddf1a

+ 313 - 0
airport-admin/src/main/java/com/sundot/airport/web/controller/blocked/BlockedDashboardBrigadeController.java

@@ -0,0 +1,313 @@
1
+package com.sundot.airport.web.controller.blocked;
2
+
3
+
4
+import com.sundot.airport.blocked.dto.BlockedDailyBrigadeTerminalLuggageStatsDTO;
5
+import com.sundot.airport.blocked.dto.BlockedDailyBrigadeTerminalRateStatsDTO;
6
+import com.sundot.airport.blocked.dto.BlockedDailyBrigadeTerminalStatsDTO;
7
+import com.sundot.airport.blocked.dto.BlockedDashboardQueryDTO;
8
+import com.sundot.airport.blocked.dto.BlockedCertificateLevelDistributionDTO;
9
+import com.sundot.airport.blocked.dto.BlockedDifficultyDistributionDTO;
10
+import com.sundot.airport.blocked.dto.BlockedGenderDistributionDTO;
11
+import com.sundot.airport.blocked.dto.BlockedItemDistributionDTO;
12
+import com.sundot.airport.blocked.dto.BlockedItemLocationDistributionDTO;
13
+import com.sundot.airport.blocked.dto.BlockedMissCheckReasonDistributionDTO;
14
+import com.sundot.airport.blocked.dto.BlockedOperatingYearsDistributionDTO;
15
+import com.sundot.airport.blocked.dto.BlockedRankingDTO;
16
+import com.sundot.airport.blocked.dto.BlockedTerminalStatsDTO;
17
+import com.sundot.airport.blocked.dto.BlockedTimePeriodLuggageStatsDTO;
18
+import com.sundot.airport.blocked.service.IBlockedDashboardService;
19
+import com.sundot.airport.common.core.controller.BaseController;
20
+import com.sundot.airport.common.core.domain.AjaxResult;
21
+import io.swagger.annotations.Api;
22
+import io.swagger.annotations.ApiOperation;
23
+import org.springframework.beans.factory.annotation.Autowired;
24
+import org.springframework.web.bind.annotation.GetMapping;
25
+import org.springframework.web.bind.annotation.RequestMapping;
26
+import org.springframework.web.bind.annotation.RestController;
27
+
28
+import java.util.List;
29
+
30
+/**
31
+ * 查堵大屏(大队)Controller
32
+ *
33
+ * @author wangxx
34
+ * @date 2026-04-16
35
+ */
36
+@Api(tags = "查堵大屏(大队)")
37
+@RestController
38
+@RequestMapping("/blocked/dashboard/brigade")
39
+public class BlockedDashboardBrigadeController extends BaseController {
40
+
41
+    @Autowired
42
+    private IBlockedDashboardService blockedDashboardService;
43
+
44
+    /**
45
+     * 查询两楼每日查堵走势
46
+     * 数据来源:各大队每日过检行李查堵数据收集表
47
+     * 先查出来是哪个安检大队的,然后按日期统计以下四个字段:
48
+     * T1旅检查堵件数、T2旅检查堵件数、T1行检查堵件数、T2行检查堵件数
49
+     *
50
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
51
+     * @return 两楼每日查堵走势统计列表
52
+     */
53
+    @ApiOperation("查询两楼每日查堵走势")
54
+    @GetMapping("/dailyTerminalTrend")
55
+    public AjaxResult getDailyTerminalTrend(BlockedDashboardQueryDTO queryDTO) {
56
+        List<BlockedDailyBrigadeTerminalStatsDTO> resultList = blockedDashboardService.getDailyBrigadeTerminalStats(queryDTO);
57
+        return success(resultList);
58
+    }
59
+
60
+    /**
61
+     * 查询两楼每日过检图像数
62
+     * 数据来源:各大队每日过检行李查堵数据收集表
63
+     * 先查出来是哪个安检大队的,然后按日期统计以下四个字段:
64
+     * T2旅检过检行李数、T1旅检过检行李数、T1行检过检行李数、T2行检过检行李数
65
+     *
66
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
67
+     * @return 两楼每日过检图像数统计列表
68
+     */
69
+    @ApiOperation("查询两楼每日过检图像数")
70
+    @GetMapping("/dailyTerminalLuggageTrend")
71
+    public AjaxResult getDailyTerminalLuggageTrend(BlockedDashboardQueryDTO queryDTO) {
72
+        List<BlockedDailyBrigadeTerminalLuggageStatsDTO> resultList = blockedDashboardService.getDailyBrigadeTerminalLuggageStats(queryDTO);
73
+        return success(resultList);
74
+    }
75
+
76
+    /**
77
+     * 查询两楼查堵数(包含行检)
78
+     * 数据来源:漏检统计表
79
+     * 先查大队数量,再查T1、T2数量
80
+     *
81
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
82
+     * @return 两楼查堵数统计
83
+     */
84
+    @ApiOperation("查询两楼查堵数(包含行检)")
85
+    @GetMapping("/terminalBlockedStats")
86
+    public AjaxResult getTerminalBlockedStats(BlockedDashboardQueryDTO queryDTO) {
87
+        BlockedTerminalStatsDTO result = blockedDashboardService.getTerminalBlockedStats(queryDTO);
88
+        return success(result);
89
+    }
90
+
91
+    /**
92
+     * 查询查堵时间段过检行李数
93
+     * 数据源:每日各时间段过检行李数
94
+     * 维度(横轴):时间段
95
+     * 统计值(左坐标轴):过检行李数平均值
96
+     * 统计值(右坐标轴):时段查堵件数平均值
97
+     *
98
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
99
+     * @return 时间段过检行李数统计列表
100
+     */
101
+    @ApiOperation("查询查堵时间段过检行李数")
102
+    @GetMapping("/timePeriodLuggageStats")
103
+    public AjaxResult getTimePeriodLuggageStats(BlockedDashboardQueryDTO queryDTO) {
104
+        List<BlockedTimePeriodLuggageStatsDTO> resultList = blockedDashboardService.getTimePeriodLuggageStats(queryDTO);
105
+        return success(resultList);
106
+    }
107
+
108
+    /**
109
+     * 查询两楼每日查堵万分率
110
+     * 数据源:各大队每日过检行李查堵数据收集表
111
+     * 按时间统计T2旅检万分率、T1旅检万分率、T1行检万分率、T2行检万分率
112
+     *
113
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
114
+     * @return 两楼每日查堵万分率统计列表
115
+     */
116
+    @ApiOperation("查询两楼每日查堵万分率")
117
+    @GetMapping("/dailyTerminalRateTrend")
118
+    public AjaxResult getDailyTerminalRateTrend(BlockedDashboardQueryDTO queryDTO) {
119
+        List<BlockedDailyBrigadeTerminalRateStatsDTO> resultList = blockedDashboardService.getDailyBrigadeTerminalRateStats(queryDTO);
120
+        return success(resultList);
121
+    }
122
+
123
+    /**
124
+     * 查询查堵物品分布
125
+     * 数据源:漏检统计表
126
+     * 统计字段:漏检物品
127
+     *
128
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
129
+     * @return 查堵物品分布统计列表
130
+     */
131
+    @ApiOperation("查询查堵物品分布")
132
+    @GetMapping("/itemDistribution")
133
+    public AjaxResult getItemDistribution(BlockedDashboardQueryDTO queryDTO) {
134
+        List<BlockedItemDistributionDTO> resultList = blockedDashboardService.getItemDistribution(queryDTO);
135
+        return success(resultList);
136
+    }
137
+
138
+
139
+    /**
140
+     * 查询查堵-主管排行榜
141
+     * 数据源:漏检统计表
142
+     * 数据筛选:分管主管不为空
143
+     * 排行字段:分管主管
144
+     * 排行依据:统计记录总数
145
+     * 显示行数:显示前10行
146
+     *
147
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
148
+     * @return 主管排行榜列表(前10名)
149
+     */
150
+    @ApiOperation("查堵-主管排行榜")
151
+    @GetMapping("/supervisorRanking")
152
+    public AjaxResult getSupervisorRanking(BlockedDashboardQueryDTO queryDTO) {
153
+        List<BlockedRankingDTO> resultList = blockedDashboardService.getBrigadeSupervisorRanking(queryDTO);
154
+        return success(resultList);
155
+    }
156
+
157
+    /**
158
+     * 查询查堵-班组排行榜
159
+     * 数据源:漏检统计表
160
+     * 数据筛选:分管班组长不为空
161
+     * 排行字段:分管班组长
162
+     * 排行依据:统计记录总数
163
+     * 显示行数:显示前10行
164
+     *
165
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
166
+     * @return 班组排行榜列表(前10名)
167
+     */
168
+    @ApiOperation("查堵-班组排行榜")
169
+    @GetMapping("/teamLeaderRanking")
170
+    public AjaxResult getTeamLeaderRanking(BlockedDashboardQueryDTO queryDTO) {
171
+        List<BlockedRankingDTO> resultList = blockedDashboardService.getBrigadeTeamLeaderRanking(queryDTO);
172
+        return success(resultList);
173
+    }
174
+
175
+    /**
176
+     * 查询查堵-人员排行榜
177
+     * 数据源:漏检统计表
178
+     * 数据筛选:被回查人不为空
179
+     * 排行字段:被回查人
180
+     * 排行依据:统计记录总数
181
+     * 显示行数:显示前10行
182
+     *
183
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
184
+     * @return 人员排行榜列表(前10名)
185
+     */
186
+    @ApiOperation("查堵-人员排行榜")
187
+    @GetMapping("/reviewedUserRanking")
188
+    public AjaxResult getReviewedUserRanking(BlockedDashboardQueryDTO queryDTO) {
189
+        List<BlockedRankingDTO> resultList = blockedDashboardService.getBrigadeReviewedUserRanking(queryDTO);
190
+        return success(resultList);
191
+    }
192
+
193
+    /**
194
+     * 查询查堵男女比例
195
+     * 数据来源:漏检统计表
196
+     * 统计性别分布
197
+     *
198
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
199
+     * @return 男女比例统计列表
200
+     */
201
+    @ApiOperation("查询查堵男女比例")
202
+    @GetMapping("/genderDistribution")
203
+    public AjaxResult getGenderDistribution(BlockedDashboardQueryDTO queryDTO) {
204
+        List<BlockedGenderDistributionDTO> resultList = blockedDashboardService.getGenderDistribution(queryDTO);
205
+        return success(resultList);
206
+    }
207
+
208
+    /**
209
+     * 查询查堵人员证书级别分布
210
+     * 数据来源:漏检统计表
211
+     * 统计证书级别分布
212
+     *
213
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
214
+     * @return 证书级别分布统计列表
215
+     */
216
+    @ApiOperation("查询查堵人员证书级别分布")
217
+    @GetMapping("/certificateLevelDistribution")
218
+    public AjaxResult getCertificateLevelDistribution(BlockedDashboardQueryDTO queryDTO) {
219
+        List<BlockedCertificateLevelDistributionDTO> resultList = blockedDashboardService.getCertificateLevelDistribution(queryDTO);
220
+        return success(resultList);
221
+    }
222
+
223
+    /**
224
+     * 查询证书级别人员基数
225
+     * 分大队统计,大队人员里面的人员证书级别构成
226
+     * 数据源:用户表(sys_user) + 部门表(sys_dept)
227
+     *
228
+     * @param queryDTO 查询参数(大队ID必填)
229
+     * @return 证书级别人员基数统计列表
230
+     */
231
+    @ApiOperation("查询证书级别人员基数")
232
+    @GetMapping("/personnelCertificateBase")
233
+    public AjaxResult getPersonnelCertificateBase(BlockedDashboardQueryDTO queryDTO) {
234
+        List<BlockedCertificateLevelDistributionDTO> resultList = blockedDashboardService.getBrigadePersonnelCertificateBase(queryDTO);
235
+        return success(resultList);
236
+    }
237
+
238
+    /**
239
+     * 查询查堵物品位置分布
240
+     * 数据来源:漏检统计表
241
+     * 统计字段:物品位置
242
+     *
243
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID、物品位置)
244
+     * @return 查堵物品位置分布统计列表
245
+     */
246
+    @ApiOperation("查询查堵物品位置分布")
247
+    @GetMapping("/itemLocationDistribution")
248
+    public AjaxResult getItemLocationDistribution(BlockedDashboardQueryDTO queryDTO) {
249
+        List<BlockedItemLocationDistributionDTO> resultList = blockedDashboardService.getItemLocationDistribution(queryDTO);
250
+        return success(resultList);
251
+    }
252
+
253
+    /**
254
+     * 查询查堵-简单/困难图像数
255
+     * 数据来源:漏检统计表
256
+     * 统计字段:简单/难
257
+     * 分别统计难的、简单的
258
+     *
259
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
260
+     * @return 简单/困难图像数统计列表
261
+     */
262
+    @ApiOperation("查询查堵-简单/困难图像数")
263
+    @GetMapping("/difficultyDistribution")
264
+    public AjaxResult getDifficultyDistribution(BlockedDashboardQueryDTO queryDTO) {
265
+        List<BlockedDifficultyDistributionDTO> resultList = blockedDashboardService.getDifficultyDistribution(queryDTO);
266
+        return success(resultList);
267
+    }
268
+
269
+    /**
270
+     * 查询查堵-主管分管次数分布
271
+     * 数据来源:漏检统计表
272
+     * 统计字段:分管主管
273
+     *
274
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
275
+     * @return 主管分管次数分布统计列表
276
+     */
277
+    @ApiOperation("查询查堵-主管分管次数分布")
278
+    @GetMapping("/supervisorDistribution")
279
+    public AjaxResult getSupervisorDistribution(BlockedDashboardQueryDTO queryDTO) {
280
+        List<BlockedRankingDTO> resultList = blockedDashboardService.getSupervisorDistribution(queryDTO);
281
+        return success(resultList);
282
+    }
283
+
284
+    /**
285
+     * 查询查堵原因分类分布
286
+     * 数据来源:漏检统计表
287
+     * 统计字段:漏检原因分类
288
+     *
289
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
290
+     * @return 查堵原因分类分布统计列表
291
+     */
292
+    @ApiOperation("查询查堵原因分类分布")
293
+    @GetMapping("/missCheckReasonDistribution")
294
+    public AjaxResult getMissCheckReasonDistribution(BlockedDashboardQueryDTO queryDTO) {
295
+        List<BlockedMissCheckReasonDistributionDTO> resultList = blockedDashboardService.getMissCheckReasonDistribution(queryDTO);
296
+        return success(resultList);
297
+    }
298
+
299
+    /**
300
+     * 查询查堵人员开机年限分布
301
+     * 数据来源:漏检统计表
302
+     * 统计字段:开机年限
303
+     *
304
+     * @param queryDTO 查询参数(开始时间、结束时间、大队ID)
305
+     * @return 开机年限分布统计列表
306
+     */
307
+    @ApiOperation("查询查堵人员开机年限分布")
308
+    @GetMapping("/operatingYearsDistribution")
309
+    public AjaxResult getOperatingYearsDistribution(BlockedDashboardQueryDTO queryDTO) {
310
+        List<BlockedOperatingYearsDistributionDTO> resultList = blockedDashboardService.getOperatingYearsDistribution(queryDTO);
311
+        return success(resultList);
312
+    }
313
+}

+ 39 - 0
airport-blocked/src/main/java/com/sundot/airport/blocked/dto/BlockedCertificateLevelDistributionDTO.java

@@ -0,0 +1,39 @@
1
+package com.sundot.airport.blocked.dto;
2
+
3
+import io.swagger.annotations.ApiModel;
4
+import io.swagger.annotations.ApiModelProperty;
5
+import lombok.Data;
6
+
7
+import java.io.Serializable;
8
+import java.math.BigDecimal;
9
+
10
+/**
11
+ * 查堵人员证书级别分布统计DTO
12
+ * 
13
+ * @author wangxx
14
+ * @date 2026-04-16
15
+ */
16
+@Data
17
+@ApiModel("查堵人员证书级别分布统计")
18
+public class BlockedCertificateLevelDistributionDTO implements Serializable {
19
+    
20
+    private static final long serialVersionUID = 1L;
21
+
22
+    /**
23
+     * 证书级别
24
+     */
25
+    @ApiModelProperty("证书级别")
26
+    private String certificateLevel;
27
+
28
+    /**
29
+     * 数量
30
+     */
31
+    @ApiModelProperty("数量")
32
+    private Integer count;
33
+
34
+    /**
35
+     * 百分比
36
+     */
37
+    @ApiModelProperty("百分比")
38
+    private BigDecimal percentage;
39
+}

+ 51 - 0
airport-blocked/src/main/java/com/sundot/airport/blocked/dto/BlockedDailyBrigadeTerminalLuggageStatsDTO.java

@@ -0,0 +1,51 @@
1
+package com.sundot.airport.blocked.dto;
2
+
3
+import io.swagger.annotations.ApiModel;
4
+import io.swagger.annotations.ApiModelProperty;
5
+import lombok.Data;
6
+
7
+import java.io.Serializable;
8
+import java.util.Date;
9
+
10
+/**
11
+ * 两楼每日过检图像数DTO
12
+ * 
13
+ * @author wangxx
14
+ * @date 2026-04-16
15
+ */
16
+@Data
17
+@ApiModel("两楼每日过检图像数")
18
+public class BlockedDailyBrigadeTerminalLuggageStatsDTO implements Serializable {
19
+    
20
+    private static final long serialVersionUID = 1L;
21
+
22
+    /**
23
+     * 统计日期
24
+     */
25
+    @ApiModelProperty("统计日期")
26
+    private Date statDate;
27
+
28
+    /**
29
+     * T1旅检过检行李数
30
+     */
31
+    @ApiModelProperty("T1旅检过检行李数")
32
+    private Integer t1TravelBagCount;
33
+
34
+    /**
35
+     * T2旅检过检行李数
36
+     */
37
+    @ApiModelProperty("T2旅检过检行李数")
38
+    private Integer t2TravelBagCount;
39
+
40
+    /**
41
+     * T1行检过检行李数
42
+     */
43
+    @ApiModelProperty("T1行检过检行李数")
44
+    private Integer t1WalkBagCount;
45
+
46
+    /**
47
+     * T2行检过检行李数
48
+     */
49
+    @ApiModelProperty("T2行检过检行李数")
50
+    private Integer t2WalkBagCount;
51
+}

+ 52 - 0
airport-blocked/src/main/java/com/sundot/airport/blocked/dto/BlockedDailyBrigadeTerminalRateStatsDTO.java

@@ -0,0 +1,52 @@
1
+package com.sundot.airport.blocked.dto;
2
+
3
+import io.swagger.annotations.ApiModel;
4
+import io.swagger.annotations.ApiModelProperty;
5
+import lombok.Data;
6
+
7
+import java.io.Serializable;
8
+import java.math.BigDecimal;
9
+import java.util.Date;
10
+
11
+/**
12
+ * 两楼每日查堵万分率统计DTO
13
+ * 
14
+ * @author wangxx
15
+ * @date 2026-04-16
16
+ */
17
+@Data
18
+@ApiModel("两楼每日查堵万分率统计")
19
+public class BlockedDailyBrigadeTerminalRateStatsDTO implements Serializable {
20
+    
21
+    private static final long serialVersionUID = 1L;
22
+
23
+    /**
24
+     * 统计日期
25
+     */
26
+    @ApiModelProperty("统计日期")
27
+    private Date statDate;
28
+
29
+    /**
30
+     * T1旅检万分率
31
+     */
32
+    @ApiModelProperty("T1旅检万分率")
33
+    private BigDecimal t1TravelBlockRate;
34
+
35
+    /**
36
+     * T2旅检万分率
37
+     */
38
+    @ApiModelProperty("T2旅检万分率")
39
+    private BigDecimal t2TravelBlockRate;
40
+
41
+    /**
42
+     * T1行检万分率
43
+     */
44
+    @ApiModelProperty("T1行检万分率")
45
+    private BigDecimal t1WalkBlockRate;
46
+
47
+    /**
48
+     * T2行检万分率
49
+     */
50
+    @ApiModelProperty("T2行检万分率")
51
+    private BigDecimal t2WalkBlockRate;
52
+}

+ 51 - 0
airport-blocked/src/main/java/com/sundot/airport/blocked/dto/BlockedDailyBrigadeTerminalStatsDTO.java

@@ -0,0 +1,51 @@
1
+package com.sundot.airport.blocked.dto;
2
+
3
+import io.swagger.annotations.ApiModel;
4
+import io.swagger.annotations.ApiModelProperty;
5
+import lombok.Data;
6
+
7
+import java.io.Serializable;
8
+import java.util.Date;
9
+
10
+/**
11
+ * 两楼每日查堵走势DTO
12
+ * 
13
+ * @author wangxx
14
+ * @date 2026-04-16
15
+ */
16
+@Data
17
+@ApiModel("两楼每日查堵走势")
18
+public class BlockedDailyBrigadeTerminalStatsDTO implements Serializable {
19
+    
20
+    private static final long serialVersionUID = 1L;
21
+
22
+    /**
23
+     * 统计日期
24
+     */
25
+    @ApiModelProperty("统计日期")
26
+    private Date statDate;
27
+
28
+    /**
29
+     * T1旅检查堵件数
30
+     */
31
+    @ApiModelProperty("T1旅检查堵件数")
32
+    private Integer t1TravelBlockedCount;
33
+
34
+    /**
35
+     * T2旅检查堵件数
36
+     */
37
+    @ApiModelProperty("T2旅检查堵件数")
38
+    private Integer t2TravelBlockedCount;
39
+
40
+    /**
41
+     * T1行检查堵件数
42
+     */
43
+    @ApiModelProperty("T1行检查堵件数")
44
+    private Integer t1WalkBlockedCount;
45
+
46
+    /**
47
+     * T2行检查堵件数
48
+     */
49
+    @ApiModelProperty("T2行检查堵件数")
50
+    private Integer t2WalkBlockedCount;
51
+}

+ 39 - 0
airport-blocked/src/main/java/com/sundot/airport/blocked/dto/BlockedGenderDistributionDTO.java

@@ -0,0 +1,39 @@
1
+package com.sundot.airport.blocked.dto;
2
+
3
+import io.swagger.annotations.ApiModel;
4
+import io.swagger.annotations.ApiModelProperty;
5
+import lombok.Data;
6
+
7
+import java.io.Serializable;
8
+import java.math.BigDecimal;
9
+
10
+/**
11
+ * 查堵男女比例统计DTO
12
+ * 
13
+ * @author wangxx
14
+ * @date 2026-04-16
15
+ */
16
+@Data
17
+@ApiModel("查堵男女比例统计")
18
+public class BlockedGenderDistributionDTO implements Serializable {
19
+    
20
+    private static final long serialVersionUID = 1L;
21
+
22
+    /**
23
+     * 性别(男/女)
24
+     */
25
+    @ApiModelProperty("性别")
26
+    private String gender;
27
+
28
+    /**
29
+     * 数量
30
+     */
31
+    @ApiModelProperty("数量")
32
+    private Integer count;
33
+
34
+    /**
35
+     * 百分比
36
+     */
37
+    @ApiModelProperty("百分比")
38
+    private BigDecimal percentage;
39
+}

+ 38 - 0
airport-blocked/src/main/java/com/sundot/airport/blocked/dto/BlockedTerminalStatsDTO.java

@@ -0,0 +1,38 @@
1
+package com.sundot.airport.blocked.dto;
2
+
3
+import io.swagger.annotations.ApiModel;
4
+import io.swagger.annotations.ApiModelProperty;
5
+import lombok.Data;
6
+
7
+import java.io.Serializable;
8
+
9
+/**
10
+ * 两楼查堵数统计DTO(包含行检)
11
+ * 
12
+ * @author wangxx
13
+ * @date 2026-04-16
14
+ */
15
+@Data
16
+@ApiModel("两楼查堵数统计")
17
+public class BlockedTerminalStatsDTO implements Serializable {
18
+    
19
+    private static final long serialVersionUID = 1L;
20
+
21
+    /**
22
+     * 大队查堵总数
23
+     */
24
+    @ApiModelProperty("大队查堵总数")
25
+    private Integer totalBlockedCount;
26
+
27
+    /**
28
+     * T1查堵数
29
+     */
30
+    @ApiModelProperty("T1查堵数")
31
+    private Integer t1BlockedCount;
32
+
33
+    /**
34
+     * T2查堵数
35
+     */
36
+    @ApiModelProperty("T2查堵数")
37
+    private Integer t2BlockedCount;
38
+}

+ 39 - 0
airport-blocked/src/main/java/com/sundot/airport/blocked/dto/BlockedTimePeriodLuggageStatsDTO.java

@@ -0,0 +1,39 @@
1
+package com.sundot.airport.blocked.dto;
2
+
3
+import io.swagger.annotations.ApiModel;
4
+import io.swagger.annotations.ApiModelProperty;
5
+import lombok.Data;
6
+
7
+import java.io.Serializable;
8
+import java.math.BigDecimal;
9
+
10
+/**
11
+ * 查堵时间段过检行李数统计DTO
12
+ * 
13
+ * @author wangxx
14
+ * @date 2026-04-16
15
+ */
16
+@Data
17
+@ApiModel("查堵时间段过检行李数统计")
18
+public class BlockedTimePeriodLuggageStatsDTO implements Serializable {
19
+    
20
+    private static final long serialVersionUID = 1L;
21
+
22
+    /**
23
+     * 时间段(如:08:00-10:00)
24
+     */
25
+    @ApiModelProperty("时间段")
26
+    private String timePeriod;
27
+
28
+    /**
29
+     * 过检行李数平均值
30
+     */
31
+    @ApiModelProperty("过检行李数平均值")
32
+    private BigDecimal avgLuggageCount;
33
+
34
+    /**
35
+     * 时段查堵件数平均值
36
+     */
37
+    @ApiModelProperty("时段查堵件数平均值")
38
+    private BigDecimal avgBlockedCount;
39
+}