package com.bonus.canteen.core.notice.print.v2.vo;

import cn.hutool.core.util.ObjectUtil;
import com.bonus.canteen.core.notice.print.v2.constant.PrintTypeEnum;
import com.bonus.common.houqin.i18n.I18n;
import io.swagger.annotations.ApiModelProperty;

import java.util.List;

public class NoticePrintTypeTemplateVO {
   @ApiModelProperty("打印机类型（1:小票，2:标签）")
   private Integer deviceType;
   @ApiModelProperty("打印场景（001:下单退单，002:余额变动）")
   private String printScene;
   @ApiModelProperty("打印类型（001001:食堂/档口下单，001002:食堂/档口退单，001003:商超下单，001004:商超退单，002001:充值，002002:提现）")
   private String printType;
   @ApiModelProperty("打印类型")
   private String printTypeName;
   @ApiModelProperty("打印类型模版列表")
   private List<NoticePrintTemplateVO> templateList;

   public String getPrintTypeName() {
      return ObjectUtil.isNotEmpty(this.printType) ? I18n.getMessage(PrintTypeEnum.getI18n(this.printType)) : this.printTypeName;
   }

   public Integer getDeviceType() {
      return this.deviceType;
   }

   public String getPrintScene() {
      return this.printScene;
   }

   public String getPrintType() {
      return this.printType;
   }

   public List<NoticePrintTemplateVO> getTemplateList() {
      return this.templateList;
   }

   public void setDeviceType(final Integer deviceType) {
      this.deviceType = deviceType;
   }

   public void setPrintScene(final String printScene) {
      this.printScene = printScene;
   }

   public void setPrintType(final String printType) {
      this.printType = printType;
   }

   public void setPrintTypeName(final String printTypeName) {
      this.printTypeName = printTypeName;
   }

   public void setTemplateList(final List<NoticePrintTemplateVO> templateList) {
      this.templateList = templateList;
   }

}
