package com.cool.store.response;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.cool.store.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

/**
 * @Author: WangShuo
 * @Date: 2025/05/13/15:30
 * @Version 1.0
 * @注释:
 */
@Data
public class FranchiseReportResponse {

    @ApiModelProperty(value = "加盟集团")
    @ExcelProperty(value = "加盟集团",order = 1)
    @ColumnWidth(25)
    private String joinGroupName;

    @ApiModelProperty(value = "加盟分部/片区")
    @ExcelProperty(value = "加盟分部/片区",order = 2)
    @ColumnWidth(20)
    private String regionName;

    @ApiModelProperty(value = "门店数")
    @ExcelProperty(value = "门店数",order = 3)
    @ColumnWidth(15)
    private Integer storeNum = 0;

    @ApiModelProperty(value = "鸡排普通店")
    @ExcelProperty(value = "鸡排普通店",order = 4)
    @ColumnWidth(20)
    private Integer normalStoreNum = 0;

    @ApiModelProperty(value = "鸡排餐厅店")
    @ExcelProperty(value = "鸡排餐厅店",order = 5)
    @ColumnWidth(20)
    private Integer restaurantStoreNum = 0;

    @ApiModelProperty(value = "鸡排无展示门店")
    @ExcelProperty(value = "鸡排无展示门店",order = 6)
    @ColumnWidth(25)
    private Integer noShowStoreNum = 0;

    @ApiModelProperty(value = "加盟费")
    @ExcelProperty(value = "加盟费",order = 7)
    @ColumnWidth(20)
    private BigDecimal franchiseFeeTotal = BigDecimal.ZERO;

    @ApiModelProperty(value = "品牌费")
    @ExcelProperty(value = "品牌费",order = 8)
    @ColumnWidth(20)
    private BigDecimal firstYearBrandingFeeTotal = BigDecimal.ZERO;

    @ApiModelProperty(value = "管理费")
    @ExcelProperty(value = "管理费",order = 9)
    @ColumnWidth(20)
    private BigDecimal firstYearManagementFeeTotal = BigDecimal.ZERO;

    @ApiModelProperty(value = "设计费")
    @ExcelProperty(value = "设计费",order = 10)
    @ColumnWidth(20)
    private BigDecimal performanceBondTotal = BigDecimal.ZERO;

    @ApiModelProperty(value = "管理/品牌/设计费")
    @ExcelProperty(value = "管理/品牌/设计费",order = 11)
    @ColumnWidth(25)
    private BigDecimal managementBrandingDesignFeeTotal = BigDecimal.ZERO;

    @ApiModelProperty(value = "保证金")
    @ExcelProperty(value = "保证金",order = 12)
    @ColumnWidth(20)
    private BigDecimal loanMarginTotal = BigDecimal.ZERO;

    @ApiModelProperty(value = "收款金额总计")
    @ExcelProperty(value = "收款金额总计=加盟费+管理/品牌/设计费+保证金",order = 13)
    @ColumnWidth(25)
    private BigDecimal total = BigDecimal.ZERO;

    @ApiModelProperty(value = "昨日日期")
    @ExcelProperty(value = "昨日日期",order = 14)
    @ColumnWidth(15)
    private String yesterdayDate;

    @ApiModelProperty(value = "昨天门店数")
    @ExcelProperty(value = "昨天门店数",order = 15)
    @ColumnWidth(15)
    private Integer yesterdayStoreNum = 0;
    @ExcelIgnore
    private Long regionId;
    //集团维度使用
    @ExcelIgnore
    private List<Long> regionIds;


}
