package com.sundot.airport.item.domain.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * 隐匿夹带部位分布统计DTO
 * 统计隐匿夹带违禁品在各部位的查获数量分布
 */
@Data
@ApiModel("隐匿夹带部位分布统计DTO")
public class ConcealmentPositionStatsDTO implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 统计时间维度（年/季度/月）
     */
    @ApiModelProperty("统计时间维度")
    private String timeDimension;

    /**
     * 当前时间点标签
     */
    @ApiModelProperty("当前时间点标签")
    private String currentTimeLabel;

    /**
     * 部位分布统计数据列表
     */
    @ApiModelProperty("部位分布统计数据列表")
    private List<PositionStat> positionStats;

    /**
     * 总查获数量（隐匿夹带）
     */
    @ApiModelProperty("总查获数量（隐匿夹带）")
    private BigDecimal totalQuantity;


    /**
     * 部位统计数据
     */
    @Data
    @ApiModel("部位统计数据")
    public static class PositionStat implements Serializable {
        private static final long serialVersionUID = 1L;

        /**
         * 部位编码
         */
        @ApiModelProperty("部位编码")
        private String positionCode;

        /**
         * 部位名称
         */
        @ApiModelProperty("部位名称")
        private String positionName;

        /**
         * 查获数量
         */
        @ApiModelProperty("查获数量")
        private BigDecimal quantity;

        /**
         * 占比（百分比）
         */
        @ApiModelProperty("占比（百分比）")
        private BigDecimal percentage;

    }


}