package com.nanri.aiimage.modules.deletebrand.model.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;

@Data
@Schema(description = "删除品牌结果项")
public class DeleteBrandResultItemVo {
    @Schema(description = "结果记录ID")
    private Long resultId;

    @Schema(description = "上传文件 key / 稳定文件标识")
    private String fileKey;

    @Schema(description = "源文件名")
    private String sourceFilename;

    @Schema(description = "按 Excel 文件名解析出的店铺名")
    private String shopName;

    @Schema(description = "是否匹配到紫鸟店铺")
    private boolean matched;

    @Schema(description = "紫鸟店铺ID")
    private String shopId;

    @Schema(description = "紫鸟店铺平台")
    private String platform;

    @Schema(description = "紫鸟打开链接")
    private String openStoreUrl;

    @Schema(description = "匹配状态: MATCHED / PENDING / CONFLICT")
    private String matchStatus;

    @Schema(description = "匹配说明")
    private String matchMessage;

    @Schema(description = "总行数")
    private Integer totalRows;

    @Schema(description = "输出文件名")
    private String outputFilename;

    @Schema(description = "下载地址")
    private String downloadUrl;

    @Schema(description = "任务ID")
    private Long taskId;

    @Schema(description = "国家数量")
    private Integer countryCount;

    @Schema(description = "按国家分组的数据")
    private List<DeleteBrandCountryGroupVo> countries = new ArrayList<>();

    @Schema(description = "是否已截断")
    private boolean truncated;

    @Schema(description = "预览行")
    private List<DeleteBrandPreviewRowVo> previewRows = new ArrayList<>();

    @Schema(description = "是否成功")
    private boolean success;

    @Schema(description = "错误信息")
    private String error;

    @Schema(description = "由于列表来自 history 接口，增加所属任务的状态（RUNNING/SUCCESS/FAILED），协助前端准确定位执行中任务")
    private String taskStatus;
}
