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.math.BigDecimal;
import java.time.LocalDate;
import java.util.List;

public class DrpOrderGoodsSaveDTO {
   @ApiModelProperty("采购订单号")
   private String orderGoodsId;
   @ApiModelProperty("供应商id")
   private @NotNull(
   message = "供应商不能为空!"
) Long supplierId;
   @ApiModelProperty("交货时间")
   private @NotNull(
   message = "交货时间不能为空!"
) LocalDate requestArrivalTime;
   @ApiModelProperty("供货地址")
   private String supplyAddress;
   @ApiModelProperty("仓库id")
   private Long warehouseId;
   @ApiModelProperty("订单标题")
   private String orderTitle;
   @ApiModelProperty("订单金额")
   private String orderAmount;
   @ApiModelProperty("订单数量")
   private BigDecimal totalNum;
   @ApiModelProperty("付款方式")
   private DrpOrderGoodsPayStyleAddDTO drpOrderGoodsPayStyleAddDTO;
   @ApiModelProperty("明细数据")
   private @Valid
   @Size(
   min = 1,
   message = "货品明细不能为空!"
) List<DrpOrderGoodsDetailSaveDTO> detailList;
   @ApiModelProperty("食堂id")
   private Long canteenId;
   @ApiModelProperty("档口id")
   private String stallId;
   @ApiModelProperty("备注")
   private String remark;

   public String getOrderGoodsId() {
      return this.orderGoodsId;
   }

   public Long getSupplierId() {
      return this.supplierId;
   }

   public LocalDate getRequestArrivalTime() {
      return this.requestArrivalTime;
   }

   public String getSupplyAddress() {
      return this.supplyAddress;
   }

   public Long getWarehouseId() {
      return this.warehouseId;
   }

   public String getOrderTitle() {
      return this.orderTitle;
   }

   public String getOrderAmount() {
      return this.orderAmount;
   }

   public BigDecimal getTotalNum() {
      return this.totalNum;
   }

   public DrpOrderGoodsPayStyleAddDTO getDrpOrderGoodsPayStyleAddDTO() {
      return this.drpOrderGoodsPayStyleAddDTO;
   }

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

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

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

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

   public void setOrderGoodsId(final String orderGoodsId) {
      this.orderGoodsId = orderGoodsId;
   }

   public void setSupplierId(final Long supplierId) {
      this.supplierId = supplierId;
   }

   public void setRequestArrivalTime(final LocalDate requestArrivalTime) {
      this.requestArrivalTime = requestArrivalTime;
   }

   public void setSupplyAddress(final String supplyAddress) {
      this.supplyAddress = supplyAddress;
   }

   public void setWarehouseId(final Long warehouseId) {
      this.warehouseId = warehouseId;
   }

   public void setOrderTitle(final String orderTitle) {
      this.orderTitle = orderTitle;
   }

   public void setOrderAmount(final String orderAmount) {
      this.orderAmount = orderAmount;
   }

   public void setTotalNum(final BigDecimal totalNum) {
      this.totalNum = totalNum;
   }

   public void setDrpOrderGoodsPayStyleAddDTO(final DrpOrderGoodsPayStyleAddDTO drpOrderGoodsPayStyleAddDTO) {
      this.drpOrderGoodsPayStyleAddDTO = drpOrderGoodsPayStyleAddDTO;
   }

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

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

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

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