package com.sundot.airport.blocked.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.sundot.airport.common.annotation.Excel;
import com.sundot.airport.common.core.domain.BaseEntity;

/**
 * 每日各时段查堵行李对象 blocked_luggage_piece_daily
 *
 * @author wangxx
 * @date 2026-04-13
 */
public class BlockedLuggagePieceDaily extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    @ApiModelProperty("主键ID")
    private Long id;

    /** 统计日期 */
    @ApiModelProperty("统计日期")
    @Excel(name = "统计日期", width = 30, dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date statDate;

    /** 当班大队ID */
    @ApiModelProperty("当班大队ID")
    private Long brigadeId;

    /** 当班大队名称：安检一大队/安检二大队/安检三大队 */
    @ApiModelProperty("当班大队名称")
    @Excel(name = "当班大队名称")
    private String brigadeName;

    /** 时间段：08:00-10:00/10:00-12:00等 */
    @ApiModelProperty("时间段")
    @Excel(name = "时间段")
    private String timePeriod;

    /** T1行检箱包数 */
    @ApiModelProperty("T1行检箱包数")
    @Excel(name = "T1行检箱包数")
    private Integer t1WalkBagCount;

    /** T1行检查堵数 */
    @ApiModelProperty("T1行检查堵数")
    @Excel(name = "T1行检查堵数")
    private Integer t1WalkBlockedCount;

    /** T2行检箱包数（国内+国际） */
    @ApiModelProperty("T2行检箱包数")
    @Excel(name = "T2行检箱包数")
    private Integer t2WalkBagCount;

    /** T2行检查堵数 */
    @ApiModelProperty("T2行检查堵数")
    @Excel(name = "T2行检查堵数")
    private Integer t2WalkBlockedCount;

    /** T1旅检箱包数 */
    @ApiModelProperty("T1旅检箱包数")
    @Excel(name = "T1旅检箱包数")
    private Integer t1TravelBagCount;

    /** T1旅检查堵数 */
    @ApiModelProperty("T1旅检查堵数")
    @Excel(name = "T1旅检查堵数")
    private Integer t1TravelBlockedCount;

    /** T2旅检箱包数（国内+国际+中转） */
    @ApiModelProperty("T2旅检箱包数")
    @Excel(name = "T2旅检箱包数")
    private Integer t2TravelBagCount;

    /** T2旅检查堵数 */
    @ApiModelProperty("T2旅检查堵数")
    @Excel(name = "T2旅检查堵数")
    private Integer t2TravelBlockedCount;

    /** 过检行李数（T1行检+T2行检+T1旅检+T2旅检） */
    @ApiModelProperty("过检行李数")
    @Excel(name = "过检行李数")
    private Integer totalLuggageCount;

    /** 时段查堵件数（T1行检+T2行检+T1旅检+T2旅检查堵数） */
    @ApiModelProperty("时段查堵件数")
    @Excel(name = "时段查堵件数")
    private Integer totalBlockedCount;

    /** 查堵万分率（时段查堵件数/过检行李数*10000） */
    @ApiModelProperty("查堵万分率")
    @Excel(name = "查堵万分率")
    private BigDecimal blockedRate;

    /** 删除标志（0代表存在 2代表删除） */
    @ApiModelProperty("删除标志")
    private String delFlag;

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setStatDate(Date statDate) {
        this.statDate = statDate;
    }

    public Date getStatDate() {
        return statDate;
    }

    public void setBrigadeId(Long brigadeId) {
        this.brigadeId = brigadeId;
    }

    public Long getBrigadeId() {
        return brigadeId;
    }

    public void setBrigadeName(String brigadeName) {
        this.brigadeName = brigadeName;
    }

    public String getBrigadeName() {
        return brigadeName;
    }

    public void setTimePeriod(String timePeriod) {
        this.timePeriod = timePeriod;
    }

    public String getTimePeriod() {
        return timePeriod;
    }

    public void setT1WalkBagCount(Integer t1WalkBagCount) {
        this.t1WalkBagCount = t1WalkBagCount;
    }

    public Integer getT1WalkBagCount() {
        return t1WalkBagCount;
    }

    public void setT1WalkBlockedCount(Integer t1WalkBlockedCount) {
        this.t1WalkBlockedCount = t1WalkBlockedCount;
    }

    public Integer getT1WalkBlockedCount() {
        return t1WalkBlockedCount;
    }

    public void setT2WalkBagCount(Integer t2WalkBagCount) {
        this.t2WalkBagCount = t2WalkBagCount;
    }

    public Integer getT2WalkBagCount() {
        return t2WalkBagCount;
    }

    public void setT2WalkBlockedCount(Integer t2WalkBlockedCount) {
        this.t2WalkBlockedCount = t2WalkBlockedCount;
    }

    public Integer getT2WalkBlockedCount() {
        return t2WalkBlockedCount;
    }

    public void setT1TravelBagCount(Integer t1TravelBagCount) {
        this.t1TravelBagCount = t1TravelBagCount;
    }

    public Integer getT1TravelBagCount() {
        return t1TravelBagCount;
    }

    public void setT1TravelBlockedCount(Integer t1TravelBlockedCount) {
        this.t1TravelBlockedCount = t1TravelBlockedCount;
    }

    public Integer getT1TravelBlockedCount() {
        return t1TravelBlockedCount;
    }

    public void setT2TravelBagCount(Integer t2TravelBagCount) {
        this.t2TravelBagCount = t2TravelBagCount;
    }

    public Integer getT2TravelBagCount() {
        return t2TravelBagCount;
    }

    public void setT2TravelBlockedCount(Integer t2TravelBlockedCount) {
        this.t2TravelBlockedCount = t2TravelBlockedCount;
    }

    public Integer getT2TravelBlockedCount() {
        return t2TravelBlockedCount;
    }

    public void setTotalLuggageCount(Integer totalLuggageCount) {
        this.totalLuggageCount = totalLuggageCount;
    }

    public Integer getTotalLuggageCount() {
        return totalLuggageCount;
    }

    public void setTotalBlockedCount(Integer totalBlockedCount) {
        this.totalBlockedCount = totalBlockedCount;
    }

    public Integer getTotalBlockedCount() {
        return totalBlockedCount;
    }

    public void setBlockedRate(BigDecimal blockedRate) {
        this.blockedRate = blockedRate;
    }

    public BigDecimal getBlockedRate() {
        return blockedRate;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getDelFlag() {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("statDate", getStatDate())
                .append("brigadeId", getBrigadeId())
                .append("brigadeName", getBrigadeName())
                .append("timePeriod", getTimePeriod())
                .append("t1WalkBagCount", getT1WalkBagCount())
                .append("t1WalkBlockedCount", getT1WalkBlockedCount())
                .append("t2WalkBagCount", getT2WalkBagCount())
                .append("t2WalkBlockedCount", getT2WalkBlockedCount())
                .append("t1TravelBagCount", getT1TravelBagCount())
                .append("t1TravelBlockedCount", getT1TravelBlockedCount())
                .append("t2TravelBagCount", getT2TravelBagCount())
                .append("t2TravelBlockedCount", getT2TravelBlockedCount())
                .append("totalLuggageCount", getTotalLuggageCount())
                .append("totalBlockedCount", getTotalBlockedCount())
                .append("blockedRate", getBlockedRate())
                .append("delFlag", getDelFlag())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .toString();
    }
}
