package com.bonus.canteen.core.allocation.mobile.dto.base;

import com.bonus.common.houqin.constant.CustLoginTypeEnum;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

@ApiModel("移动端通用配置Base模型")
public class MobileMetadataBaseDTO {
   @ApiModelProperty("移动端绑定方式 默认：姓名+工号+密码")
   private String custLoginType;
   @ApiModelProperty("预定餐同一餐不可重复订餐 默认:是")
   private String repeatReserveCheck;
   @ApiModelProperty("预定餐同一餐次预订不同菜品限制 默认不限制")
   private String dishesNumberLimit;
   @ApiModelProperty("预定餐预订时扣款 默认:是")
   private String ifReserveDeduction;
   @ApiModelProperty("报餐时扣款 默认:是")
   private String ifBookDeduction;
   @ApiModelProperty("退单是否审批 默认:是")
   private String ifRefundApprove;
   @ApiModelProperty("是否支持退款 默认:不支持")
   private String ifSupportRefund;
   @ApiModelProperty("是否开启自动抵扣电子餐券")
   private String ifAutoDeductElecCoupon;
   @ApiModelProperty("是否关闭分档口展示 默认:是")
   private String ifShowCanteenStallForWeek;
   @ApiModelProperty("是否隐藏乐牛默认标识 默认:否")
   private String ifHideLeniuLogo;
   @ApiModelProperty("移动端不允许修改姓名 无默认值")
   private String noneMobileModifyName;
   @ApiModelProperty("移动端不允许上传人脸 无默认值")
   private String noneMobileUploadFace;
   @ApiModelProperty("是否允许员工登录 默认:是")
   private String ifAllowEmployeeLogin;
   @ApiModelProperty("是否开启照片有效期 默认:否")
   private String ifPhotoEffectDate;
   @ApiModelProperty("仅支持移动端上传人脸照片 默认：否")
   private String ifAllowBackUploadPhoto;
   @ApiModelProperty("是否允许游客使用 默认:是")
   private String ifAllowTouristsToUse;
   @ApiModelProperty("是否允许游客充值 默认:是")
   private String ifAllowTouristsToTopUp;
   @ApiModelProperty("游客首次使用自助餐扫码绑盘需验证手机号 默认:是")
   private String ifTouristsFirstBindNeedCheckMobile;
   @ApiModelProperty("是否跨档口点餐 默认:否")
   private String ifCrossStallOrder;
   @ApiModelProperty("包间预订不可预订当天 默认:关闭")
   private String roomReserveNoneCurrentDay;
   @ApiModelProperty("二维码路径")
   @JsonProperty("qRCodeToPath")
   private String qRCodeToPath;
   @ApiModelProperty("个人二维码有效时间 默认:1分钟")
   private String qrCodeEffectMinutes;
   @ApiModelProperty("移动端首页标题")
   private String mobileFirstPageTitle;
   @ApiModelProperty("是否开启月销量")
   private String ifEnableMonthlySales;
   @ApiModelProperty("是否开启好评率")
   private String ifEnablePositiveFeedbackRate;
   @ApiModelProperty("是否开启星级推荐")
   private String ifEnableStarRateRecommend;
   @ApiModelProperty("是否启用钉钉工号实现免登")
   private String dingtalkIfFreeByCustNum;
   @ApiModelProperty("公众号二维码图片")
   private String wechatPublicQrcodeUrl;
   @ApiModelProperty("移动端下单是否二次弹窗确认 1是 2否")
   private String ifPopConfirmPay;
   @ApiModelProperty("扫码点餐使用场景")
   private String wxScanScene;

   public MobileMetadataBaseDTO() {
      this.custLoginType = String.valueOf(CustLoginTypeEnum.NAME_CUST_NUM_PWD.key());
      this.ifPhotoEffectDate = "2";
      this.ifAllowBackUploadPhoto = "2";
      this.setIfAllowTouristsToUse("1");
      this.setIfAllowTouristsToTopUp("1");
      this.setIfShowCanteenStallForWeek("1");
      this.setIfCrossStallOrder("2");
      this.setRepeatReserveCheck("1");
      this.setIfReserveDeduction("1");
      this.setIfBookDeduction("1");
      this.setIfRefundApprove("1");
      this.setIfAutoDeductElecCoupon("2");
      this.setIfHideLeniuLogo("2");
      this.setDingtalkIfFreeByCustNum("1");
      this.setIfTouristsFirstBindNeedCheckMobile("1");
      this.setQrCodeEffectMinutes("1");
      this.setIfSupportRefund("2");
      this.setRoomReserveNoneCurrentDay("2");
      this.setIfAllowEmployeeLogin("1");
   }

   public String getCustLoginType() {
      return this.custLoginType;
   }

   public String getRepeatReserveCheck() {
      return this.repeatReserveCheck;
   }

   public String getDishesNumberLimit() {
      return this.dishesNumberLimit;
   }

   public String getIfReserveDeduction() {
      return this.ifReserveDeduction;
   }

   public String getIfBookDeduction() {
      return this.ifBookDeduction;
   }

   public String getIfRefundApprove() {
      return this.ifRefundApprove;
   }

   public String getIfSupportRefund() {
      return this.ifSupportRefund;
   }

   public String getIfAutoDeductElecCoupon() {
      return this.ifAutoDeductElecCoupon;
   }

   public String getIfShowCanteenStallForWeek() {
      return this.ifShowCanteenStallForWeek;
   }

   public String getIfHideLeniuLogo() {
      return this.ifHideLeniuLogo;
   }

   public String getNoneMobileModifyName() {
      return this.noneMobileModifyName;
   }

   public String getNoneMobileUploadFace() {
      return this.noneMobileUploadFace;
   }

   public String getIfAllowEmployeeLogin() {
      return this.ifAllowEmployeeLogin;
   }

   public String getIfPhotoEffectDate() {
      return this.ifPhotoEffectDate;
   }

   public String getIfAllowBackUploadPhoto() {
      return this.ifAllowBackUploadPhoto;
   }

   public String getIfAllowTouristsToUse() {
      return this.ifAllowTouristsToUse;
   }

   public String getIfAllowTouristsToTopUp() {
      return this.ifAllowTouristsToTopUp;
   }

   public String getIfTouristsFirstBindNeedCheckMobile() {
      return this.ifTouristsFirstBindNeedCheckMobile;
   }

   public String getIfCrossStallOrder() {
      return this.ifCrossStallOrder;
   }

   public String getRoomReserveNoneCurrentDay() {
      return this.roomReserveNoneCurrentDay;
   }

   public String getQRCodeToPath() {
      return this.qRCodeToPath;
   }

   public String getQrCodeEffectMinutes() {
      return this.qrCodeEffectMinutes;
   }

   public String getMobileFirstPageTitle() {
      return this.mobileFirstPageTitle;
   }

   public String getIfEnableMonthlySales() {
      return this.ifEnableMonthlySales;
   }

   public String getIfEnablePositiveFeedbackRate() {
      return this.ifEnablePositiveFeedbackRate;
   }

   public String getIfEnableStarRateRecommend() {
      return this.ifEnableStarRateRecommend;
   }

   public String getDingtalkIfFreeByCustNum() {
      return this.dingtalkIfFreeByCustNum;
   }

   public String getWechatPublicQrcodeUrl() {
      return this.wechatPublicQrcodeUrl;
   }

   public String getIfPopConfirmPay() {
      return this.ifPopConfirmPay;
   }

   public String getWxScanScene() {
      return this.wxScanScene;
   }

   public void setCustLoginType(final String custLoginType) {
      this.custLoginType = custLoginType;
   }

   public void setRepeatReserveCheck(final String repeatReserveCheck) {
      this.repeatReserveCheck = repeatReserveCheck;
   }

   public void setDishesNumberLimit(final String dishesNumberLimit) {
      this.dishesNumberLimit = dishesNumberLimit;
   }

   public void setIfReserveDeduction(final String ifReserveDeduction) {
      this.ifReserveDeduction = ifReserveDeduction;
   }

   public void setIfBookDeduction(final String ifBookDeduction) {
      this.ifBookDeduction = ifBookDeduction;
   }

   public void setIfRefundApprove(final String ifRefundApprove) {
      this.ifRefundApprove = ifRefundApprove;
   }

   public void setIfSupportRefund(final String ifSupportRefund) {
      this.ifSupportRefund = ifSupportRefund;
   }

   public void setIfAutoDeductElecCoupon(final String ifAutoDeductElecCoupon) {
      this.ifAutoDeductElecCoupon = ifAutoDeductElecCoupon;
   }

   public void setIfShowCanteenStallForWeek(final String ifShowCanteenStallForWeek) {
      this.ifShowCanteenStallForWeek = ifShowCanteenStallForWeek;
   }

   public void setIfHideLeniuLogo(final String ifHideLeniuLogo) {
      this.ifHideLeniuLogo = ifHideLeniuLogo;
   }

   public void setNoneMobileModifyName(final String noneMobileModifyName) {
      this.noneMobileModifyName = noneMobileModifyName;
   }

   public void setNoneMobileUploadFace(final String noneMobileUploadFace) {
      this.noneMobileUploadFace = noneMobileUploadFace;
   }

   public void setIfAllowEmployeeLogin(final String ifAllowEmployeeLogin) {
      this.ifAllowEmployeeLogin = ifAllowEmployeeLogin;
   }

   public void setIfPhotoEffectDate(final String ifPhotoEffectDate) {
      this.ifPhotoEffectDate = ifPhotoEffectDate;
   }

   public void setIfAllowBackUploadPhoto(final String ifAllowBackUploadPhoto) {
      this.ifAllowBackUploadPhoto = ifAllowBackUploadPhoto;
   }

   public void setIfAllowTouristsToUse(final String ifAllowTouristsToUse) {
      this.ifAllowTouristsToUse = ifAllowTouristsToUse;
   }

   public void setIfAllowTouristsToTopUp(final String ifAllowTouristsToTopUp) {
      this.ifAllowTouristsToTopUp = ifAllowTouristsToTopUp;
   }

   public void setIfTouristsFirstBindNeedCheckMobile(final String ifTouristsFirstBindNeedCheckMobile) {
      this.ifTouristsFirstBindNeedCheckMobile = ifTouristsFirstBindNeedCheckMobile;
   }

   public void setIfCrossStallOrder(final String ifCrossStallOrder) {
      this.ifCrossStallOrder = ifCrossStallOrder;
   }

   public void setRoomReserveNoneCurrentDay(final String roomReserveNoneCurrentDay) {
      this.roomReserveNoneCurrentDay = roomReserveNoneCurrentDay;
   }

   @JsonProperty("qRCodeToPath")
   public void setQRCodeToPath(final String qRCodeToPath) {
      this.qRCodeToPath = qRCodeToPath;
   }

   public void setQrCodeEffectMinutes(final String qrCodeEffectMinutes) {
      this.qrCodeEffectMinutes = qrCodeEffectMinutes;
   }

   public void setMobileFirstPageTitle(final String mobileFirstPageTitle) {
      this.mobileFirstPageTitle = mobileFirstPageTitle;
   }

   public void setIfEnableMonthlySales(final String ifEnableMonthlySales) {
      this.ifEnableMonthlySales = ifEnableMonthlySales;
   }

   public void setIfEnablePositiveFeedbackRate(final String ifEnablePositiveFeedbackRate) {
      this.ifEnablePositiveFeedbackRate = ifEnablePositiveFeedbackRate;
   }

   public void setIfEnableStarRateRecommend(final String ifEnableStarRateRecommend) {
      this.ifEnableStarRateRecommend = ifEnableStarRateRecommend;
   }

   public void setDingtalkIfFreeByCustNum(final String dingtalkIfFreeByCustNum) {
      this.dingtalkIfFreeByCustNum = dingtalkIfFreeByCustNum;
   }

   public void setWechatPublicQrcodeUrl(final String wechatPublicQrcodeUrl) {
      this.wechatPublicQrcodeUrl = wechatPublicQrcodeUrl;
   }

   public void setIfPopConfirmPay(final String ifPopConfirmPay) {
      this.ifPopConfirmPay = ifPopConfirmPay;
   }

   public void setWxScanScene(final String wxScanScene) {
      this.wxScanScene = wxScanScene;
   }

}
