package com.bonus.canteen.core.supply.purchase.domain.vo;

import com.bonus.canteen.core.menu.enums.AllocMealtimeTypeEnum;
import io.swagger.annotations.ApiModelProperty;

import java.time.LocalDate;
import java.util.List;

public class DrpProductionPlanDetailMenuDishesVO {
   @ApiModelProperty("详情日期")
   private LocalDate detailDate;
   @ApiModelProperty("餐次")
   private List<DrpMealtimeTypeVO> mealtimeTypeVOList;

   public LocalDate getDetailDate() {
      return this.detailDate;
   }

   public List<DrpMealtimeTypeVO> getMealtimeTypeVOList() {
      return this.mealtimeTypeVOList;
   }

   public void setDetailDate(final LocalDate detailDate) {
      this.detailDate = detailDate;
   }

   public void setMealtimeTypeVOList(final List<DrpMealtimeTypeVO> mealtimeTypeVOList) {
      this.mealtimeTypeVOList = mealtimeTypeVOList;
   }

   public static class DrpPlanDetailMenuDishesVO {
      @ApiModelProperty("菜品id")
      private Long dishesId;
      @ApiModelProperty("菜品")
      private String dishesName;
      @ApiModelProperty("菜品份数(按份)")
      private Integer dishesNum;
      @ApiModelProperty("菜品规格(1-标准,2-大份,3-小份)")
      private Integer sizeType;

      public Long getDishesId() {
         return this.dishesId;
      }

      public String getDishesName() {
         return this.dishesName;
      }

      public Integer getDishesNum() {
         return this.dishesNum;
      }

      public Integer getSizeType() {
         return this.sizeType;
      }

      public void setDishesId(final Long dishesId) {
         this.dishesId = dishesId;
      }

      public void setDishesName(final String dishesName) {
         this.dishesName = dishesName;
      }

      public void setDishesNum(final Integer dishesNum) {
         this.dishesNum = dishesNum;
      }

      public void setSizeType(final Integer sizeType) {
         this.sizeType = sizeType;
      }
   }

   public static class DrpMealtimeTypeVO {
      @ApiModelProperty("餐次类型(1早餐2午餐3下午茶4晚餐5宵夜)")
      private Integer mealtimeType;
      @ApiModelProperty("餐次名称")
      private String mealtimeName;
      @ApiModelProperty("菜品信息")
      private List<DrpPlanDetailMenuDishesVO> drpPlanDetailMenuDishesVOList;

      public String getMealtimeName() {
         return AllocMealtimeTypeEnum.getDescByKey(this.mealtimeType);
      }

      public Integer getMealtimeType() {
         return this.mealtimeType;
      }

      public List<DrpPlanDetailMenuDishesVO> getDrpPlanDetailMenuDishesVOList() {
         return this.drpPlanDetailMenuDishesVOList;
      }

      public void setMealtimeType(final Integer mealtimeType) {
         this.mealtimeType = mealtimeType;
      }

      public void setMealtimeName(final String mealtimeName) {
         this.mealtimeName = mealtimeName;
      }

      public void setDrpPlanDetailMenuDishesVOList(final List<DrpPlanDetailMenuDishesVO> drpPlanDetailMenuDishesVOList) {
         this.drpPlanDetailMenuDishesVOList = drpPlanDetailMenuDishesVOList;
      }
   }
}
