package com.zm.order.tool.server.model;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 
 *
 * @author mybatis-generator
 * @date   2023/07/13
 */
public class Master extends masterKey {
    /**
     * 店铺所属集团ID
     */
    private Long groupid;

    /**
     * 品牌ID
     */
    private Long brandid;

    /**
     * 店铺名称
     */
    private String shopname;

    /**
     * 日流水号
     */
    private String saasorderno;

    /**
     * 按站点设备的单号DeviceCode+设备流水号
     */
    private String saasdeviceorderno;

    /**
     * 帐单已锁（如果此字段为空，则没有锁定，如果不为空表示帐单为锁定，通常这里是锁定的人员工号和姓名），锁定的账单不能除锁定人外，别人不能进行菜品及结账相关操作。
     */
    private String lockedflag;

    /**
     * 开台时的餐段名称(早餐，午餐，下午茶，晚餐，夜宵)
     */
    private String timenamestart;

    /**
     * 初次结账时的餐段名称(早餐，午餐，下午茶，晚餐，夜宵)
     */
    private String timenamecheckout;

    /**
     * 所属区域名称
     */
    private String areaname;

    /**
     * 桌台名称
     */
    private String tablename;

    /**
     * 渠道Key
     */
    private String channelkey;

    /**
     * 订单来源渠道名称
     */
    private String channelname;

    /**
     * 第三方订单号
     */
    private String channelorderkeytp;

    /**
     * 渠道订单号
     */
    private String channelorderno;

    /**
     * 渠道订单Key
     */
    private String channelorderkey;

    /**
     * 渠道用户ID
     */
    private String channeluserid;

    /**
     * 渠道用户Key
     */
    private String channeluserkey;

    /**
     * 渠道用户头像路径
     */
    private String channeluserimage;

    /**
     * 渠道订单时间
     */
    private String channelordertime;

    /**
     * 订单类型（0：堂食 20：外卖  21：自提）
     */
    private Byte ordersubtype;

    /**
     * 订单类型标识 WS_YD：网上预订 WS_SC：网上闪吃  WS_WM：网上外卖  WS_ZT：网上自提 WS_DN：堂食自助
     */
    private String netordertypecode;

    /**
     * 消费人数
     */
    private Integer person;

    /**
     * 创建人员（开台人员）
     */
    private String createby;

    /**
     * 是否由登录者创建的订单
     */
    private Boolean iscreatedbyloginuser;

    /**
     * 服务员
     */
    private String waiterby;

    /**
     * 开台时间（yyyyMMddHHssnn)
     */
    private Long starttime;

    /**
     * 结账时间（yyyyMMddHHssnn)
     */
    private Long checkouttime;

    /**
     * 结账人员
     */
    private String checkoutby;

    /**
     * 订单状态 10：存单 20：已落单 40：已结账 30：废单,废单的相关菜品及结算明细不会出现在统计报表中。另外单独提供废单列表、存单列表，可以查看详情
     */
    private Byte orderstatus;

    /**
     * 是否是测试账单 0：不是（默认） 1：是
     */
    private Byte istestorder;

    /**
     * 账单数据签名字符串
     */
    private String ordermd5;

    /**
     * 菜品条目数
     */
    private Integer foodcount;

    /**
     * 菜品金额合计
     */
    private BigDecimal foodamount;

    /**
     * 赠菜金额合计
     */
    private BigDecimal sendfoodamount;

    /**
     * 赠券金额
     */
    private BigDecimal sendcouponamount;

    /**
     * 赠券说明
     */
    private String sendcouponremark;

    /**
     * 会员卡号
     */
    private String cardno;

    /**
     * 会员卡Key
     */
    private String cardkey;

    /**
     * 会员卡交易ID
     */
    private String cardtransid;

    /**
     * 会员姓名
     */
    private String customername;

    /**
     * 会员卡交易后资金信息
     */
    private String cardtransafterremark;

    /**
     * 账单打折人员
     */
    private String discountby;

    /**
     * 折扣方案Key
     */
    private String discountwaykey;

    /**
     * 账单折扣优惠方案名
     */
    private String discountwayname;

    /**
     * 折扣率
     */
    private BigDecimal discountrate;

    /**
     * 打折范围 0：部分打折 1：全单打折 2：分类折扣
     */
    private Byte discountrange;

    /**
     * 是否执行会员价 0：非会员价 1：会员价
     */
    private Byte isvipprice;

    /**
     * 抹零规则  0:不抹零  1:四舍五入到角  2:向上抹零到角  3:向下抹零到角  4:四舍五入到元  5:向上抹零到元  6:向下抹零到元
     */
    private Byte moneywipezerotype;

    /**
     * 特别统计分类菜品的折后金额
     */
    private BigDecimal specialstatamount;

    /**
     * 优惠金额
     */
    private BigDecimal promotionamount;

    /**
     * 优惠描述
     */
    private String promotiondesc;

    /**
     * 订单实收金额
     */
    private BigDecimal paidamount;

    /**
     * 开票人
     */
    private String invoiceby;

    /**
     * 纳税人识别码（税务登记证上15或者18或者29位的数字）
     */
    private String invoicetaxpayeridentcode;

    /**
     * 开票金额
     */
    private BigDecimal invoiceamount;

    /**
     * 税率 通常为 0.03 或者 0.06 或者 0.17
     */
    private BigDecimal invoicetaxrate;

    /**
     * 税额
     */
    private BigDecimal invoicetaxamount;

    /**
     * 顾客姓名
     */
    private String username;

    /**
     * 0：女士 1：先生 2：未知
     */
    private Byte usersex;

    /**
     * 用户电话
     */
    private String usermobile;

    /**
     * 用户地址
     */
    private String useraddress;

    /**
     * 预结账次数
     */
    private Integer yjzcount;

    /**
     * 反结账次数
     */
    private Integer fjzcount;

    /**
     * 账单异常操作标识
     */
    private String alertflaglst;

    /**
     * 账单菜品明细警惕
     */
    private String foodalert;

    /**
     * 账单支付科目明细
     */
    private String payalert;

    /**
     * 账单备注（通常在开台时输入）
     */
    private String saasorderremark;

    /**
     * 设备Key
     */
    private String devicekey;

    /**
     * 设备编号
     */
    private String devicecode;

    /**
     * 设备名称
     */
    private String devicename;

    /**
     * 设备所属的站点分组(档口)ID
     */
    private String devicegroupid;

    /**
     * 设备所属的站点分组(档口)名称
     */
    private String devicegroupname;

    /**
     * 服务器MAC地址
     */
    private String servermac;

    /**
     * 账单审核人
     */
    private String reviewby;

    /**
     * 账单审核时间
     */
    private Long reviewtime;

    /**
     * 
     */
    private String shifttime;

    /**
     * 记录修改时间
     */
    private Long actiontime;

    /**
     * 记录创建时间
     */
    private Long createtime;

    /**
     * 同步时间
     */
    private Long uploadtime;

    /**
     * 收银班次
     */
    private String shiftname;

    /**
     * 配送渠道0-自配送  10-达达 11-美团 12-饿了么 13-百度
     */
    private Byte deliversource;

    /**
     * 配送费
     */
    private BigDecimal deliverfee;

    /**
     * 记录状态
     */
    private Byte action;

    /**
     * 账单master去除时间类型字段后的MD5值
     */
    private String billmd5;

    /**
     * 账单作废原因(含整单退标记)
     */
    private String orderabandonreason;

    /**
     * value格式:{"openid":"xxxx","appid":"xxx","sub_openid":"xxxxx"} 用于获取用户的会员信息，对会员进行积分操作或者进行营销
     */
    private String userpayflag;

    /**
     * 会员ID
     */
    private Long customerid;

    /**
     * 桌台负责人
     */
    private String tableleader;

    /**
     * 
     */
    private Date actionstamp;

    /**
     * 退单标识 0:不是 1：是退单 2：是冲销单  3：部分退冲销单
     */
    private Boolean chargebackflag;

    /**
     * 主账单的orderKey
     */
    private String parentorderkey;

    /**
     * 
     */
    private Integer partitionId;

    /**
     * 
     */
    private Long offset;

    public Long getGroupid() {
        return groupid;
    }

    public void setGroupid(Long groupid) {
        this.groupid = groupid;
    }

    public Long getBrandid() {
        return brandid;
    }

    public void setBrandid(Long brandid) {
        this.brandid = brandid;
    }

    public String getShopname() {
        return shopname;
    }

    public void setShopname(String shopname) {
        this.shopname = shopname;
    }

    public String getSaasorderno() {
        return saasorderno;
    }

    public void setSaasorderno(String saasorderno) {
        this.saasorderno = saasorderno;
    }

    public String getSaasdeviceorderno() {
        return saasdeviceorderno;
    }

    public void setSaasdeviceorderno(String saasdeviceorderno) {
        this.saasdeviceorderno = saasdeviceorderno;
    }

    public String getLockedflag() {
        return lockedflag;
    }

    public void setLockedflag(String lockedflag) {
        this.lockedflag = lockedflag;
    }

    public String getTimenamestart() {
        return timenamestart;
    }

    public void setTimenamestart(String timenamestart) {
        this.timenamestart = timenamestart;
    }

    public String getTimenamecheckout() {
        return timenamecheckout;
    }

    public void setTimenamecheckout(String timenamecheckout) {
        this.timenamecheckout = timenamecheckout;
    }

    public String getAreaname() {
        return areaname;
    }

    public void setAreaname(String areaname) {
        this.areaname = areaname;
    }

    public String getTablename() {
        return tablename;
    }

    public void setTablename(String tablename) {
        this.tablename = tablename;
    }

    public String getChannelkey() {
        return channelkey;
    }

    public void setChannelkey(String channelkey) {
        this.channelkey = channelkey;
    }

    public String getChannelname() {
        return channelname;
    }

    public void setChannelname(String channelname) {
        this.channelname = channelname;
    }

    public String getChannelorderkeytp() {
        return channelorderkeytp;
    }

    public void setChannelorderkeytp(String channelorderkeytp) {
        this.channelorderkeytp = channelorderkeytp;
    }

    public String getChannelorderno() {
        return channelorderno;
    }

    public void setChannelorderno(String channelorderno) {
        this.channelorderno = channelorderno;
    }

    public String getChannelorderkey() {
        return channelorderkey;
    }

    public void setChannelorderkey(String channelorderkey) {
        this.channelorderkey = channelorderkey;
    }

    public String getChanneluserid() {
        return channeluserid;
    }

    public void setChanneluserid(String channeluserid) {
        this.channeluserid = channeluserid;
    }

    public String getChanneluserkey() {
        return channeluserkey;
    }

    public void setChanneluserkey(String channeluserkey) {
        this.channeluserkey = channeluserkey;
    }

    public String getChanneluserimage() {
        return channeluserimage;
    }

    public void setChanneluserimage(String channeluserimage) {
        this.channeluserimage = channeluserimage;
    }

    public String getChannelordertime() {
        return channelordertime;
    }

    public void setChannelordertime(String channelordertime) {
        this.channelordertime = channelordertime;
    }

    public Byte getOrdersubtype() {
        return ordersubtype;
    }

    public void setOrdersubtype(Byte ordersubtype) {
        this.ordersubtype = ordersubtype;
    }

    public String getNetordertypecode() {
        return netordertypecode;
    }

    public void setNetordertypecode(String netordertypecode) {
        this.netordertypecode = netordertypecode;
    }

    public Integer getPerson() {
        return person;
    }

    public void setPerson(Integer person) {
        this.person = person;
    }

    public String getCreateby() {
        return createby;
    }

    public void setCreateby(String createby) {
        this.createby = createby;
    }

    public Boolean getIscreatedbyloginuser() {
        return iscreatedbyloginuser;
    }

    public void setIscreatedbyloginuser(Boolean iscreatedbyloginuser) {
        this.iscreatedbyloginuser = iscreatedbyloginuser;
    }

    public String getWaiterby() {
        return waiterby;
    }

    public void setWaiterby(String waiterby) {
        this.waiterby = waiterby;
    }

    public Long getStarttime() {
        return starttime;
    }

    public void setStarttime(Long starttime) {
        this.starttime = starttime;
    }

    public Long getCheckouttime() {
        return checkouttime;
    }

    public void setCheckouttime(Long checkouttime) {
        this.checkouttime = checkouttime;
    }

    public String getCheckoutby() {
        return checkoutby;
    }

    public void setCheckoutby(String checkoutby) {
        this.checkoutby = checkoutby;
    }

    public Byte getOrderstatus() {
        return orderstatus;
    }

    public void setOrderstatus(Byte orderstatus) {
        this.orderstatus = orderstatus;
    }

    public Byte getIstestorder() {
        return istestorder;
    }

    public void setIstestorder(Byte istestorder) {
        this.istestorder = istestorder;
    }

    public String getOrdermd5() {
        return ordermd5;
    }

    public void setOrdermd5(String ordermd5) {
        this.ordermd5 = ordermd5;
    }

    public Integer getFoodcount() {
        return foodcount;
    }

    public void setFoodcount(Integer foodcount) {
        this.foodcount = foodcount;
    }

    public BigDecimal getFoodamount() {
        return foodamount;
    }

    public void setFoodamount(BigDecimal foodamount) {
        this.foodamount = foodamount;
    }

    public BigDecimal getSendfoodamount() {
        return sendfoodamount;
    }

    public void setSendfoodamount(BigDecimal sendfoodamount) {
        this.sendfoodamount = sendfoodamount;
    }

    public BigDecimal getSendcouponamount() {
        return sendcouponamount;
    }

    public void setSendcouponamount(BigDecimal sendcouponamount) {
        this.sendcouponamount = sendcouponamount;
    }

    public String getSendcouponremark() {
        return sendcouponremark;
    }

    public void setSendcouponremark(String sendcouponremark) {
        this.sendcouponremark = sendcouponremark;
    }

    public String getCardno() {
        return cardno;
    }

    public void setCardno(String cardno) {
        this.cardno = cardno;
    }

    public String getCardkey() {
        return cardkey;
    }

    public void setCardkey(String cardkey) {
        this.cardkey = cardkey;
    }

    public String getCardtransid() {
        return cardtransid;
    }

    public void setCardtransid(String cardtransid) {
        this.cardtransid = cardtransid;
    }

    public String getCustomername() {
        return customername;
    }

    public void setCustomername(String customername) {
        this.customername = customername;
    }

    public String getCardtransafterremark() {
        return cardtransafterremark;
    }

    public void setCardtransafterremark(String cardtransafterremark) {
        this.cardtransafterremark = cardtransafterremark;
    }

    public String getDiscountby() {
        return discountby;
    }

    public void setDiscountby(String discountby) {
        this.discountby = discountby;
    }

    public String getDiscountwaykey() {
        return discountwaykey;
    }

    public void setDiscountwaykey(String discountwaykey) {
        this.discountwaykey = discountwaykey;
    }

    public String getDiscountwayname() {
        return discountwayname;
    }

    public void setDiscountwayname(String discountwayname) {
        this.discountwayname = discountwayname;
    }

    public BigDecimal getDiscountrate() {
        return discountrate;
    }

    public void setDiscountrate(BigDecimal discountrate) {
        this.discountrate = discountrate;
    }

    public Byte getDiscountrange() {
        return discountrange;
    }

    public void setDiscountrange(Byte discountrange) {
        this.discountrange = discountrange;
    }

    public Byte getIsvipprice() {
        return isvipprice;
    }

    public void setIsvipprice(Byte isvipprice) {
        this.isvipprice = isvipprice;
    }

    public Byte getMoneywipezerotype() {
        return moneywipezerotype;
    }

    public void setMoneywipezerotype(Byte moneywipezerotype) {
        this.moneywipezerotype = moneywipezerotype;
    }

    public BigDecimal getSpecialstatamount() {
        return specialstatamount;
    }

    public void setSpecialstatamount(BigDecimal specialstatamount) {
        this.specialstatamount = specialstatamount;
    }

    public BigDecimal getPromotionamount() {
        return promotionamount;
    }

    public void setPromotionamount(BigDecimal promotionamount) {
        this.promotionamount = promotionamount;
    }

    public String getPromotiondesc() {
        return promotiondesc;
    }

    public void setPromotiondesc(String promotiondesc) {
        this.promotiondesc = promotiondesc;
    }

    public BigDecimal getPaidamount() {
        return paidamount;
    }

    public void setPaidamount(BigDecimal paidamount) {
        this.paidamount = paidamount;
    }

    public String getInvoiceby() {
        return invoiceby;
    }

    public void setInvoiceby(String invoiceby) {
        this.invoiceby = invoiceby;
    }

    public String getInvoicetaxpayeridentcode() {
        return invoicetaxpayeridentcode;
    }

    public void setInvoicetaxpayeridentcode(String invoicetaxpayeridentcode) {
        this.invoicetaxpayeridentcode = invoicetaxpayeridentcode;
    }

    public BigDecimal getInvoiceamount() {
        return invoiceamount;
    }

    public void setInvoiceamount(BigDecimal invoiceamount) {
        this.invoiceamount = invoiceamount;
    }

    public BigDecimal getInvoicetaxrate() {
        return invoicetaxrate;
    }

    public void setInvoicetaxrate(BigDecimal invoicetaxrate) {
        this.invoicetaxrate = invoicetaxrate;
    }

    public BigDecimal getInvoicetaxamount() {
        return invoicetaxamount;
    }

    public void setInvoicetaxamount(BigDecimal invoicetaxamount) {
        this.invoicetaxamount = invoicetaxamount;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public Byte getUsersex() {
        return usersex;
    }

    public void setUsersex(Byte usersex) {
        this.usersex = usersex;
    }

    public String getUsermobile() {
        return usermobile;
    }

    public void setUsermobile(String usermobile) {
        this.usermobile = usermobile;
    }

    public String getUseraddress() {
        return useraddress;
    }

    public void setUseraddress(String useraddress) {
        this.useraddress = useraddress;
    }

    public Integer getYjzcount() {
        return yjzcount;
    }

    public void setYjzcount(Integer yjzcount) {
        this.yjzcount = yjzcount;
    }

    public Integer getFjzcount() {
        return fjzcount;
    }

    public void setFjzcount(Integer fjzcount) {
        this.fjzcount = fjzcount;
    }

    public String getAlertflaglst() {
        return alertflaglst;
    }

    public void setAlertflaglst(String alertflaglst) {
        this.alertflaglst = alertflaglst;
    }

    public String getFoodalert() {
        return foodalert;
    }

    public void setFoodalert(String foodalert) {
        this.foodalert = foodalert;
    }

    public String getPayalert() {
        return payalert;
    }

    public void setPayalert(String payalert) {
        this.payalert = payalert;
    }

    public String getSaasorderremark() {
        return saasorderremark;
    }

    public void setSaasorderremark(String saasorderremark) {
        this.saasorderremark = saasorderremark;
    }

    public String getDevicekey() {
        return devicekey;
    }

    public void setDevicekey(String devicekey) {
        this.devicekey = devicekey;
    }

    public String getDevicecode() {
        return devicecode;
    }

    public void setDevicecode(String devicecode) {
        this.devicecode = devicecode;
    }

    public String getDevicename() {
        return devicename;
    }

    public void setDevicename(String devicename) {
        this.devicename = devicename;
    }

    public String getDevicegroupid() {
        return devicegroupid;
    }

    public void setDevicegroupid(String devicegroupid) {
        this.devicegroupid = devicegroupid;
    }

    public String getDevicegroupname() {
        return devicegroupname;
    }

    public void setDevicegroupname(String devicegroupname) {
        this.devicegroupname = devicegroupname;
    }

    public String getServermac() {
        return servermac;
    }

    public void setServermac(String servermac) {
        this.servermac = servermac;
    }

    public String getReviewby() {
        return reviewby;
    }

    public void setReviewby(String reviewby) {
        this.reviewby = reviewby;
    }

    public Long getReviewtime() {
        return reviewtime;
    }

    public void setReviewtime(Long reviewtime) {
        this.reviewtime = reviewtime;
    }

    public String getShifttime() {
        return shifttime;
    }

    public void setShifttime(String shifttime) {
        this.shifttime = shifttime;
    }

    public Long getActiontime() {
        return actiontime;
    }

    public void setActiontime(Long actiontime) {
        this.actiontime = actiontime;
    }

    public Long getCreatetime() {
        return createtime;
    }

    public void setCreatetime(Long createtime) {
        this.createtime = createtime;
    }

    public Long getUploadtime() {
        return uploadtime;
    }

    public void setUploadtime(Long uploadtime) {
        this.uploadtime = uploadtime;
    }

    public String getShiftname() {
        return shiftname;
    }

    public void setShiftname(String shiftname) {
        this.shiftname = shiftname;
    }

    public Byte getDeliversource() {
        return deliversource;
    }

    public void setDeliversource(Byte deliversource) {
        this.deliversource = deliversource;
    }

    public BigDecimal getDeliverfee() {
        return deliverfee;
    }

    public void setDeliverfee(BigDecimal deliverfee) {
        this.deliverfee = deliverfee;
    }

    public Byte getAction() {
        return action;
    }

    public void setAction(Byte action) {
        this.action = action;
    }

    public String getBillmd5() {
        return billmd5;
    }

    public void setBillmd5(String billmd5) {
        this.billmd5 = billmd5;
    }

    public String getOrderabandonreason() {
        return orderabandonreason;
    }

    public void setOrderabandonreason(String orderabandonreason) {
        this.orderabandonreason = orderabandonreason;
    }

    public String getUserpayflag() {
        return userpayflag;
    }

    public void setUserpayflag(String userpayflag) {
        this.userpayflag = userpayflag;
    }

    public Long getCustomerid() {
        return customerid;
    }

    public void setCustomerid(Long customerid) {
        this.customerid = customerid;
    }

    public String getTableleader() {
        return tableleader;
    }

    public void setTableleader(String tableleader) {
        this.tableleader = tableleader;
    }

    public Date getActionstamp() {
        return actionstamp;
    }

    public void setActionstamp(Date actionstamp) {
        this.actionstamp = actionstamp;
    }

    public Boolean getChargebackflag() {
        return chargebackflag;
    }

    public void setChargebackflag(Boolean chargebackflag) {
        this.chargebackflag = chargebackflag;
    }

    public String getParentorderkey() {
        return parentorderkey;
    }

    public void setParentorderkey(String parentorderkey) {
        this.parentorderkey = parentorderkey;
    }

    public Integer getPartitionId() {
        return partitionId;
    }

    public void setPartitionId(Integer partitionId) {
        this.partitionId = partitionId;
    }

    public Long getOffset() {
        return offset;
    }

    public void setOffset(Long offset) {
        this.offset = offset;
    }
}