package com.bonus.canteen.core.menu.dto;

import com.bonus.canteen.core.common.utils.SysUtil;
import com.bonus.canteen.core.drp.dto.DrpMaterialProcureAddDTO;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.NotNull;
import java.util.List;

public class MenuMaterialEditDTO {
   @ApiModelProperty("食材id")
   private @NotNull(
   message = "{menu_material_id_null}"
) Long materialId;
   @ApiModelProperty("食材名称")
   private String materialName;
   @ApiModelProperty("营养信息")
   private Long nutritionId;
   @ApiModelProperty("原料图片")
   private String imageUrl;
   @ApiModelProperty("类别id")
   private Long categoryId;
   @ApiModelProperty("原料类型(1原料2商品)")
   private Integer materialType;
   @ApiModelProperty("条码")
   private String barCode;
   @ApiModelProperty("单位")
   private @NotNull(
   message = "{menu_material_unit_null}"
) Long unitId;
   @ApiModelProperty("单价")
   private Integer salePrice;
   @ApiModelProperty("进价")
   private Integer unitPrice;
   @ApiModelProperty("售卖类型(1按份2称重)")
   private Integer salesMode;
   @ApiModelProperty("保质期类型 1年 2月 3日")
   private Integer shelfLifeType;
   @ApiModelProperty("保质期数")
   private Integer shelfLifeDays;
   @ApiModelProperty("营养信息")
   private MenuMaterialNutritionDTO menuMaterialNutritionDTO;
   @ApiModelProperty("简介")
   private String synopsis;
   @ApiModelProperty("食安配置")
   private MenuMaterialFoodSafeConfigEditDTO safeConfigDTO;
   @ApiModelProperty("初加工方法集合")
   private List<String> firstProcessList;
   @ApiModelProperty("切配方法集合")
   private List<String> cutProcessList;
   @ApiModelProperty("采购数量区间设置")
   List<DrpMaterialProcureAddDTO> drpMaterialProcureAddDTOList;
   @ApiModelProperty("采购价格上限")
   private Integer purPriceCeiling;
   @ApiModelProperty("区域ID")
   private Long areaId;
   @ApiModelProperty("资格证书")
   private Long certId;
   @ApiModelProperty("规格")
   private String size;
   @ApiModelProperty("税率")
   private Integer taxRate;
   @ApiModelProperty("基础单位转换g")
   private Integer convertGrams;

   public void setImageUrl(String imageUrl) {
      this.imageUrl = SysUtil.getCutPath(imageUrl);
   }

   public Long getMaterialId() {
      return this.materialId;
   }

   public String getMaterialName() {
      return this.materialName;
   }

   public Long getNutritionId() {
      return this.nutritionId;
   }

   public String getImageUrl() {
      return this.imageUrl;
   }

   public Long getCategoryId() {
      return this.categoryId;
   }

   public Integer getMaterialType() {
      return this.materialType;
   }

   public String getBarCode() {
      return this.barCode;
   }

   public Long getUnitId() {
      return this.unitId;
   }

   public Integer getSalePrice() {
      return this.salePrice;
   }

   public Integer getUnitPrice() {
      return this.unitPrice;
   }

   public Integer getSalesMode() {
      return this.salesMode;
   }

   public Integer getShelfLifeType() {
      return this.shelfLifeType;
   }

   public Integer getShelfLifeDays() {
      return this.shelfLifeDays;
   }

   public MenuMaterialNutritionDTO getMenuMaterialNutritionDTO() {
      return this.menuMaterialNutritionDTO;
   }

   public String getSynopsis() {
      return this.synopsis;
   }

   public MenuMaterialFoodSafeConfigEditDTO getSafeConfigDTO() {
      return this.safeConfigDTO;
   }

   public List<String> getFirstProcessList() {
      return this.firstProcessList;
   }

   public List<String> getCutProcessList() {
      return this.cutProcessList;
   }

   public List<DrpMaterialProcureAddDTO> getDrpMaterialProcureAddDTOList() {
      return this.drpMaterialProcureAddDTOList;
   }

   public Integer getPurPriceCeiling() {
      return this.purPriceCeiling;
   }

   public Long getAreaId() {
      return this.areaId;
   }

   public Long getCertId() {
      return this.certId;
   }

   public String getSize() {
      return this.size;
   }

   public Integer getTaxRate() {
      return this.taxRate;
   }

   public Integer getConvertGrams() {
      return this.convertGrams;
   }

   public void setMaterialId(final Long materialId) {
      this.materialId = materialId;
   }

   public void setMaterialName(final String materialName) {
      this.materialName = materialName;
   }

   public void setNutritionId(final Long nutritionId) {
      this.nutritionId = nutritionId;
   }

   public void setCategoryId(final Long categoryId) {
      this.categoryId = categoryId;
   }

   public void setMaterialType(final Integer materialType) {
      this.materialType = materialType;
   }

   public void setBarCode(final String barCode) {
      this.barCode = barCode;
   }

   public void setUnitId(final Long unitId) {
      this.unitId = unitId;
   }

   public void setSalePrice(final Integer salePrice) {
      this.salePrice = salePrice;
   }

   public void setUnitPrice(final Integer unitPrice) {
      this.unitPrice = unitPrice;
   }

   public void setSalesMode(final Integer salesMode) {
      this.salesMode = salesMode;
   }

   public void setShelfLifeType(final Integer shelfLifeType) {
      this.shelfLifeType = shelfLifeType;
   }

   public void setShelfLifeDays(final Integer shelfLifeDays) {
      this.shelfLifeDays = shelfLifeDays;
   }

   public void setMenuMaterialNutritionDTO(final MenuMaterialNutritionDTO menuMaterialNutritionDTO) {
      this.menuMaterialNutritionDTO = menuMaterialNutritionDTO;
   }

   public void setSynopsis(final String synopsis) {
      this.synopsis = synopsis;
   }

   public void setSafeConfigDTO(final MenuMaterialFoodSafeConfigEditDTO safeConfigDTO) {
      this.safeConfigDTO = safeConfigDTO;
   }

   public void setFirstProcessList(final List<String> firstProcessList) {
      this.firstProcessList = firstProcessList;
   }

   public void setCutProcessList(final List<String> cutProcessList) {
      this.cutProcessList = cutProcessList;
   }

   public void setDrpMaterialProcureAddDTOList(final List<DrpMaterialProcureAddDTO> drpMaterialProcureAddDTOList) {
      this.drpMaterialProcureAddDTOList = drpMaterialProcureAddDTOList;
   }

   public void setPurPriceCeiling(final Integer purPriceCeiling) {
      this.purPriceCeiling = purPriceCeiling;
   }

   public void setAreaId(final Long areaId) {
      this.areaId = areaId;
   }

   public void setCertId(final Long certId) {
      this.certId = certId;
   }

   public void setSize(final String size) {
      this.size = size;
   }

   public void setTaxRate(final Integer taxRate) {
      this.taxRate = taxRate;
   }

   public void setConvertGrams(final Integer convertGrams) {
      this.convertGrams = convertGrams;
   }

}
