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

import com.bonus.canteen.core.common.utils.SysUtil;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

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

@ApiModel
public class SupermarketInfoEditDTO {
   @ApiModelProperty("超市id")
   private @NotNull(
   message = "超市id不能为空!"
) Long supermarketId;
   @ApiModelProperty("超市名称")
   private @NotBlank(
   message = "超市名称不能为空!"
) String supermarketName;
   @ApiModelProperty("管理员")
   private Long userId;
   @ApiModelProperty("联系电话")
   private String mobile;
   @ApiModelProperty("仓库id")
   private Long warehouseId;
   @ApiModelProperty("超市地址")
   private String address;
   @ApiModelProperty("图片url")
   private String imgUrl;
   @ApiModelProperty("是否立即打印")
   private Integer ifPrintNow;
   @ApiModelProperty("线上超市模式(1现货2预定)")
   private Integer appSaleMode;
   @ApiModelProperty("最少配送时间（分）")
   private Integer minDeliveryTime;
   @ApiModelProperty("选择时间间隔（分）")
   private Integer selectTimeInterval;
   @ApiModelProperty("配送费（元）")
   private Integer deliveryCost;
   @ApiModelProperty("自动核销天数（天）")
   private Integer autoVerifyDay;
   @ApiModelProperty("配送方式(1自取2配送)")
   private List<String> deliveryWayList;
   @ApiModelProperty("退单限制时间（分）")
   private Integer refundLimitTime;
   @ApiModelProperty("是否关联出入库")
   private Integer ifRelateDrp;
   @ApiModelProperty("范围id")
   private Long effId;
   @ApiModelProperty("营业配置明细")
   private List<SupermarketConfigEditDTO> configList;
   @ApiModelProperty("会员人员类别集合")
   private List<Integer> psnTypeList;
   @ApiModelProperty("流水号前缀")
   private String mealCode;
   @ApiModelProperty("区域id")
   private @NotNull(
   message = "区域不能为空"
) Long areaId;
   @ApiModelProperty("是否启用收款码(默认：否)")
   private Integer ifEnablePayCode;
   @ApiModelProperty("超市收款码链接")
   private String payCodeUrl;

   public void setImgUrl(String imgUrl) {
      this.imgUrl = SysUtil.getCutPath(imgUrl);
   }

   public void setPayCodeUrl(String payCodeUrl) {
      this.payCodeUrl = SysUtil.getCutPath(payCodeUrl);
   }

   public Long getSupermarketId() {
      return this.supermarketId;
   }

   public String getSupermarketName() {
      return this.supermarketName;
   }

   public Long getUserId() {
      return this.userId;
   }

   public String getMobile() {
      return this.mobile;
   }

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

   public String getAddress() {
      return this.address;
   }

   public String getImgUrl() {
      return this.imgUrl;
   }

   public Integer getIfPrintNow() {
      return this.ifPrintNow;
   }

   public Integer getAppSaleMode() {
      return this.appSaleMode;
   }

   public Integer getMinDeliveryTime() {
      return this.minDeliveryTime;
   }

   public Integer getSelectTimeInterval() {
      return this.selectTimeInterval;
   }

   public Integer getDeliveryCost() {
      return this.deliveryCost;
   }

   public Integer getAutoVerifyDay() {
      return this.autoVerifyDay;
   }

   public List<String> getDeliveryWayList() {
      return this.deliveryWayList;
   }

   public Integer getRefundLimitTime() {
      return this.refundLimitTime;
   }

   public Integer getIfRelateDrp() {
      return this.ifRelateDrp;
   }

   public Long getEffId() {
      return this.effId;
   }

   public List<SupermarketConfigEditDTO> getConfigList() {
      return this.configList;
   }

   public List<Integer> getPsnTypeList() {
      return this.psnTypeList;
   }

   public String getMealCode() {
      return this.mealCode;
   }

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

   public Integer getIfEnablePayCode() {
      return this.ifEnablePayCode;
   }

   public String getPayCodeUrl() {
      return this.payCodeUrl;
   }

   public void setSupermarketId(final Long supermarketId) {
      this.supermarketId = supermarketId;
   }

   public void setSupermarketName(final String supermarketName) {
      this.supermarketName = supermarketName;
   }

   public void setUserId(final Long userId) {
      this.userId = userId;
   }

   public void setMobile(final String mobile) {
      this.mobile = mobile;
   }

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

   public void setAddress(final String address) {
      this.address = address;
   }

   public void setIfPrintNow(final Integer ifPrintNow) {
      this.ifPrintNow = ifPrintNow;
   }

   public void setAppSaleMode(final Integer appSaleMode) {
      this.appSaleMode = appSaleMode;
   }

   public void setMinDeliveryTime(final Integer minDeliveryTime) {
      this.minDeliveryTime = minDeliveryTime;
   }

   public void setSelectTimeInterval(final Integer selectTimeInterval) {
      this.selectTimeInterval = selectTimeInterval;
   }

   public void setDeliveryCost(final Integer deliveryCost) {
      this.deliveryCost = deliveryCost;
   }

   public void setAutoVerifyDay(final Integer autoVerifyDay) {
      this.autoVerifyDay = autoVerifyDay;
   }

   public void setDeliveryWayList(final List<String> deliveryWayList) {
      this.deliveryWayList = deliveryWayList;
   }

   public void setRefundLimitTime(final Integer refundLimitTime) {
      this.refundLimitTime = refundLimitTime;
   }

   public void setIfRelateDrp(final Integer ifRelateDrp) {
      this.ifRelateDrp = ifRelateDrp;
   }

   public void setEffId(final Long effId) {
      this.effId = effId;
   }

   public void setConfigList(final List<SupermarketConfigEditDTO> configList) {
      this.configList = configList;
   }

   public void setPsnTypeList(final List<Integer> psnTypeList) {
      this.psnTypeList = psnTypeList;
   }

   public void setMealCode(final String mealCode) {
      this.mealCode = mealCode;
   }

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

   public void setIfEnablePayCode(final Integer ifEnablePayCode) {
      this.ifEnablePayCode = ifEnablePayCode;
   }

}
