package com.cyksj.model.entity;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Getter;
import lombok.Setter;

import java.math.BigDecimal;

/*
 *项目名: netflix
 *文件名: HomeManagementConfig
 *创建者: JavaZou
 *创建时间:2023/8/17 15:49
 */
@Getter
@Setter
public class HomeManagementConfig extends BaseEntity{
	private String title;

	private String pic;

	private String url;

	private Long goodsId;

	private Type type;

	private Integer sorted;

	private String tag;

	private Boolean status;


	/**
	 * 定时上下架状态 默认null
	 */
	@TableField(updateStrategy = FieldStrategy.IGNORED)
	private Boolean preStatus;

	/**
	 * 定时上架时间
	 */
	@TableField(updateStrategy = FieldStrategy.IGNORED)
	private Long time;

	/**
	 * 定时下架时间
	 */
	@TableField(updateStrategy = FieldStrategy.IGNORED)
	private Long endTime;

	@TableField(updateStrategy = FieldStrategy.IGNORED)
	private AdType adType;

	/**
	 * 广告是否店铺展示 默认false
	 */
	private Boolean isShop;

	@TableField(updateStrategy = FieldStrategy.IGNORED)
	private RgType rgType;

	@TableField(updateStrategy = FieldStrategy.IGNORED)
	private BigDecimal rgPrice;

	@TableField(updateStrategy = FieldStrategy.IGNORED)
	private String rgSubTitle;

	/**
	 * 跳转类型
	 */
	@TableField(updateStrategy = FieldStrategy.IGNORED)
	private Integer jumpType;

	/**
	 * 跳转平台
	 */
	@TableField(updateStrategy = FieldStrategy.IGNORED)
	private String platSkuIds;

	/**
	 * 跳转平台
	 */
	@TableField(updateStrategy = FieldStrategy.IGNORED)
	private String jumpTitle;

	/**
	 * 跳转规格
	 */
	@TableField(updateStrategy = FieldStrategy.IGNORED)
	private String jumpSpecVal;

	private Boolean deleted;

	@Getter
	public enum Type {
		ad("广告"),
		vg("虚拟平台推荐"),
		rg("实物平台推荐"),
		ex("精彩推荐"),
		;
		String desc;

		Type(String desc) {
			this.desc = desc;
		}
	}

	@Getter
	public enum AdType {
		pc("pc首页"),
		h5("h5首页"),
		pcSec("pc首页副"),
		pcDis("pc发现首页"),
		h5Sec("h5副广告"),
		h5Banner("H5横幅广告"),
		pcBanner("pc横幅广告")
		;
		String desc;

		AdType(String desc) {
			this.desc = desc;
		}
	}

	@Getter
	public enum RgType {
		pc("pc"),
		h5("h5")
		;
		String desc;

		RgType(String desc) {
			this.desc = desc;
		}
	}
}