package shop.alien.entity.store.vo;

import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import shop.alien.entity.store.StoreImg;
import shop.alien.entity.store.StoreInfo;
import shop.alien.entity.store.StoreLabel;
import shop.alien.entity.store.vo.StoreBusinessInfoVo;

import java.util.Date;
import java.util.List;

/**
 * 门店主页信息
 *
 * @author ssk
 * @version 1.0
 * @date 2024/12/23 17:17
 */
@Data
@JsonInclude
public class StoreMainInfoVo extends StoreInfo {

    @ApiModelProperty(value = "营业状态")
    private String businessStatusStr;

    @ApiModelProperty(value = "门店面积")
    private String storeAreaStr;

    //图片类型, 0:其他, 1:入口图, 2:相册, 3:菜品, 4:环境, 5:价目表, 6:推荐菜, 7:菜单

    @ApiModelProperty(value = "入口图")
    List<String> inletsUrl;

    @ApiModelProperty(value = "相册")
    List<String> albumUrl;

    @ApiModelProperty(value = "推荐菜")
    List<StoreMenuVo> recommendUrl;

    @ApiModelProperty(value = "菜单")
    List<StoreMenuVo> menuUrl;

    @ApiModelProperty(value = "推荐酒水")
    List<StoreMenuVo> recommendBeverageUrl;

    @ApiModelProperty(value = "酒水单")
    List<StoreMenuVo> beverageUrl;

    @ApiModelProperty(value = "门店标签")
    StoreLabel storeLabel;

    @ApiModelProperty(value = "营业时间（包含节假日信息）")
    List<StoreBusinessInfoVo> storeBusinessInfo;

    @ApiModelProperty(value = "门店营业时间列表（包含节假日信息）")
    private List<StoreBusinessInfoVo> storeBusinessInfoVos;

    @ApiModelProperty(value = "门店头像")
    String headImgUrl;

    @ApiModelProperty(value = "商家头像")
    String storeUserHeadImg;

    @ApiModelProperty(value = "门店地址")
    String storeAddress;

    @ApiModelProperty(value = "注销状态")
    private Integer logoutFlag;

    @ApiModelProperty(value = "注销状态用户")
    private Integer logoutFlagUser;

    @ApiModelProperty(value = "最近地铁站名")
    private String subwayName;

    @ApiModelProperty(value = "最近地铁站距离")
    private double distance2;

    @ApiModelProperty(value = "营业执照")
    private List<StoreImg> businessLicenseList;

     @ApiModelProperty(value = "合同照片")
     private List<StoreImg> contractList;

     @ApiModelProperty(value = "经营许可证照片")
     private List<StoreImg> foodLicenceList;

    @ApiModelProperty(value = "头图列表（包含is_extract字段）")
    private List<StoreImg> headerImgList;

    @ApiModelProperty(value = "是否连锁转义")
    private String isChainStr;

     @ApiModelProperty(value = "经营种类ids")
     private List<String> businessTypesList;

     @ApiModelProperty(value = "分类DistIds")
     private List<String> businessClassifyList;

    @ApiModelProperty(value = "经营种类名称")
    private String businessTypeName;

    @ApiModelProperty(value = "经营类目名称")
    private String businessCategoryName;

    @ApiModelProperty(value = "到期时间")
    private String expirationDate;

    @ApiModelProperty(value = "合同是否到期 0已到期/1没到期")
    private Integer expirationFlag;

    @ApiModelProperty(value = "门店注销中倒计时时间毫秒")
    private long countdown;

     @ApiModelProperty(value = "经营许可证到期时间")
 //    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
     private Date foodLicenceExpirationTime;

    @ApiModelProperty(value = "头图审核状态(1—审核通过, 2—审核不通过)")
    private Integer headImgStatus;

    @ApiModelProperty(value = "其他资质证明图片列表")
    private List<StoreImg> otherQualificationImages;

    @ApiModelProperty(value = "评价数量")
    private Integer ratingCount;

    @ApiModelProperty(value = "是否提供预约")
    private Integer bookingService;

    @ApiModelProperty(value = "平台会员状态（迁移自 /platform-shop-membership/status）")
    private PlatformShopMembershipStatusVo platformMembershipStatus;

}
