package com.jeesharp.business.modules.food.vo;

import com.jeesharp.framework.pojo.vo.BaseListVO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;

@Data
@EqualsAndHashCode(callSuper = true)
public class FoodMealMenuItemListVO extends BaseListVO {

    private String menuId;

    private String restaurantId;

    private String serviceAreaId;

    private String templateId;

    private String templateItemId;

    private String itemType;

    private String dishId;

    private String packageId;

    private String itemName;

    private String itemImage;

    private BigDecimal salePrice;

    private Integer stockQuantity;

    private Integer soldQuantity;

    private Integer remainingQuantity;

    private Boolean soldOut;

    private List<String> tags;

    private List<String> images;

    private String descriptionHtml;

    private String publishStatus;

    private List<Spec> specs;

    private Integer limitQuantityPerUser;

    private Integer sortNo;

    private LocalDate menuDate;

    private String mealType;

    private Boolean orderable;

    private String notOrderableReason;

    private String deadlineTime;

    private Long deadlineRemainSeconds;

    private String pickupType;

    private LocalDate pickupDate;

    private String pickupLocation;

    private FoodMealRestaurantVO restaurant;

    @Data
    public static class Spec {

        private String id;

        private String name;

        private String description;

        private BigDecimal salePrice;

        private Integer stockQuantity;

        private Integer soldQuantity;

        private Integer remainingQuantity;

        private Boolean soldOut;

        private Integer limitQuantityPerUser;

        private Integer sortNo;
    }

    private LocalDateTime createDate;

    private LocalDateTime updateDate;
}
