package com.chinaweal.aiccs.aiccs.revoke.entity.dto;

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

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

/**
 * 批量直接吊销结果模型
 * @author iFlow
 * @since 2026-02-24
 */
@Data
@Accessors(chain = true)
@ApiModel(value = "批量直接吊销结果模型")
public class DirectRevokeResultDto implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 总数
     */
    @ApiModelProperty(value = "总数")
    private Integer total;

    /**
     * 成功数量
     */
    @ApiModelProperty(value = "成功数量")
    private Integer successCount;

    /**
     * 失败数量
     */
    @ApiModelProperty(value = "失败数量")
    private Integer failCount;

    /**
     * 成功企业名称列表
     */
    @ApiModelProperty(value = "成功企业名称列表")
    private List<String> successList;

    /**
     * 失败列表
     */
    @ApiModelProperty(value = "失败列表")
    private List<FailItem> failList;

    /**
     * 失败项
     */
    @Data
    @Accessors(chain = true)
    @ApiModel(value = "吊销失败项")
    public static class FailItem implements Serializable {

        private static final long serialVersionUID = 1L;

        /**
         * 主体身份代码
         */
        @ApiModelProperty(value = "主体身份代码")
        private String pripid;

        /**
         * 企业名称
         */
        @ApiModelProperty(value = "企业名称")
        private String entname;

        /**
         * 失败原因
         */
        @ApiModelProperty(value = "失败原因")
        private String reason;
    }
}