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

import io.swagger.annotations.ApiModelProperty;

import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;

public class DrpPurchasePlanSaveDTO implements Serializable {
   @ApiModelProperty("采购单号")
   private String planId;
   @ApiModelProperty("采购计划时间")
   private @NotNull(
   message = "采购计划时间不能为空!"
) LocalDateTime purDate;
   @ApiModelProperty("备注")
   private String remark;
   @ApiModelProperty("采购计划详情")
   private @Valid
   @Size(
   min = 1,
   message = "请添加采购原材料!"
) List<DrpPurPlanDetailSaveDTO> detailList;
   @ApiModelProperty("食堂id")
   private Long canteenId;
   @ApiModelProperty("档口id")
   private String stallId;
   @ApiModelProperty("供应商ID")
   private String supplierIds;
   @ApiModelProperty("预计采购预算")
   private Long purchasingBudgetTotal;
   @ApiModelProperty("交货日期")
   private LocalDate deliverGoodsDate;

   public String getPlanId() {
      return this.planId;
   }

   public LocalDateTime getPurDate() {
      return this.purDate;
   }

   public String getRemark() {
      return this.remark;
   }

   public List<DrpPurPlanDetailSaveDTO> getDetailList() {
      return this.detailList;
   }

   public Long getCanteenId() {
      return this.canteenId;
   }

   public String getStallId() {
      return this.stallId;
   }

   public String getSupplierIds() {
      return this.supplierIds;
   }

   public Long getPurchasingBudgetTotal() {
      return this.purchasingBudgetTotal;
   }

   public LocalDate getDeliverGoodsDate() {
      return this.deliverGoodsDate;
   }

   public void setPlanId(final String planId) {
      this.planId = planId;
   }

   public void setPurDate(final LocalDateTime purDate) {
      this.purDate = purDate;
   }

   public void setRemark(final String remark) {
      this.remark = remark;
   }

   public void setDetailList(final List<DrpPurPlanDetailSaveDTO> detailList) {
      this.detailList = detailList;
   }

   public void setCanteenId(final Long canteenId) {
      this.canteenId = canteenId;
   }

   public void setStallId(final String stallId) {
      this.stallId = stallId;
   }

   public void setSupplierIds(final String supplierIds) {
      this.supplierIds = supplierIds;
   }

   public void setPurchasingBudgetTotal(final Long purchasingBudgetTotal) {
      this.purchasingBudgetTotal = purchasingBudgetTotal;
   }

   public void setDeliverGoodsDate(final LocalDate deliverGoodsDate) {
      this.deliverGoodsDate = deliverGoodsDate;
   }
}
