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

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

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

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

    /**
     * 店铺ID
     */
    private Long shopid;

    /**
     * 餐饮系统订单Key
     */
    private String saasorderkey;

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

    /**
     * 30：作废 40：已完成
     */
    private Integer orderstatus;

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

    /**
     * 支付科目Key
     */
    private String paysubjectkey;

    /**
     * 支付科目编码
     */
    private String paysubjectcode;

    /**
     * 支付科目名
     */
    private String paysubjectname;

    /**
     * 支付科目分组名称，未定义分组名称，则此处为科目名称
     */
    private String paysubjectgroupname;

    /**
     * 支付科目费率百分比，支持银联POS、O2O支付费率、团购佣金等使用情况
     */
    private BigDecimal paysubjectrate;

    /**
     * 记录支付类型的次数,现金与银联卡多次支付按一次统计;微信,支付宝等其他线上支付按实际支付次数统计 账单内多条同一种支付方式 支付次数记录在第一条
     */
    private Integer paysubjectcount;

    /**
     * 是否记入实收
     */
    private Byte isjoinreceived;

    /**
     * 是否实物凭证
     */
    private Byte isphysicalevidence;

    /**
     * 费用是否计入实收
     */
    private Byte isfeejoinreceived;

    /**
     * 是否参与积分计算
     */
    private Byte isincludescore;

    /**
     * 券支付面值金额
     */
    private BigDecimal debitamountgifttotal;

    /**
     * 借方发生额，账单结算支付，例如人民币、支票
     */
    private BigDecimal debitamount;

    /**
     * 贷方发生额，例如海鲜收入、酒水收入
     */
    private BigDecimal creditamount;

    /**
     * 借贷方发生的实收金额，从相关菜品实收金额进行汇总
     */
    private BigDecimal paysubjectrealamount;

    /**
     * 支付费用对应金额
     */
    private BigDecimal paysubjectfeeamount;

    /**
     * 支付折扣对应金额
     */
    private BigDecimal paysubjectdiscountamount;

    /**
     * 支付实得对应金额
     */
    private BigDecimal paysubjectreceivedamount;

    /**
     * 总的优惠: paySubjectDiscountAmount + paySubjectFeeAmount(如果费用计入优惠)
     */
    private BigDecimal paysubjectalldiscountamount;

    /**
     * 涉及到会员相关的科目，记录会员卡ID
     */
    private String membercardid;

    /**
     * 设计营销活动的科目，记录营销活动ID
     */
    private String promotionid;

    /**
     * 营销类型：10基础营销，20会员，30券信息
     */
    private Byte programtype;

    /**
     * 备注
     */
    private String payremark;

    /**
     * 支付交易关联单号
     */
    private String paytransno;

    /**
     * 支付科目来源;0:本地添加，1：来自订单服务，2：来自会员服务
     */
    private Byte payfrom;

    /**
     * 支付交易OP号
     */
    private String paymentid;

    /**
     * 部分退款交易关联OP号
     */
    private String refundby;

    /**
     * 创建人员
     */
    private String createby;

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

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

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

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

    /**
     * 
     */
    private Integer action;

    /**
     * 执行的营销活动编码
     */
    private String promotioncode;

    /**
     * 科目编码
     */
    private String subjectnumber;

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

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

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

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

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

    /**
     * 
     */
    private Date actionstamp;

    /**
     * 代金券券号列表，多个间用逗 号隔开
     */
    private String giftitemnolst;

    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 Long getShopid() {
        return shopid;
    }

    public void setShopid(Long shopid) {
        this.shopid = shopid;
    }

    public String getSaasorderkey() {
        return saasorderkey;
    }

    public void setSaasorderkey(String saasorderkey) {
        this.saasorderkey = saasorderkey;
    }

    public String getShopname() {
        return shopname;
    }

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

    public Integer getOrderstatus() {
        return orderstatus;
    }

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

    public String getCheckoutby() {
        return checkoutby;
    }

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

    public String getPaysubjectkey() {
        return paysubjectkey;
    }

    public void setPaysubjectkey(String paysubjectkey) {
        this.paysubjectkey = paysubjectkey;
    }

    public String getPaysubjectcode() {
        return paysubjectcode;
    }

    public void setPaysubjectcode(String paysubjectcode) {
        this.paysubjectcode = paysubjectcode;
    }

    public String getPaysubjectname() {
        return paysubjectname;
    }

    public void setPaysubjectname(String paysubjectname) {
        this.paysubjectname = paysubjectname;
    }

    public String getPaysubjectgroupname() {
        return paysubjectgroupname;
    }

    public void setPaysubjectgroupname(String paysubjectgroupname) {
        this.paysubjectgroupname = paysubjectgroupname;
    }

    public BigDecimal getPaysubjectrate() {
        return paysubjectrate;
    }

    public void setPaysubjectrate(BigDecimal paysubjectrate) {
        this.paysubjectrate = paysubjectrate;
    }

    public Integer getPaysubjectcount() {
        return paysubjectcount;
    }

    public void setPaysubjectcount(Integer paysubjectcount) {
        this.paysubjectcount = paysubjectcount;
    }

    public Byte getIsjoinreceived() {
        return isjoinreceived;
    }

    public void setIsjoinreceived(Byte isjoinreceived) {
        this.isjoinreceived = isjoinreceived;
    }

    public Byte getIsphysicalevidence() {
        return isphysicalevidence;
    }

    public void setIsphysicalevidence(Byte isphysicalevidence) {
        this.isphysicalevidence = isphysicalevidence;
    }

    public Byte getIsfeejoinreceived() {
        return isfeejoinreceived;
    }

    public void setIsfeejoinreceived(Byte isfeejoinreceived) {
        this.isfeejoinreceived = isfeejoinreceived;
    }

    public Byte getIsincludescore() {
        return isincludescore;
    }

    public void setIsincludescore(Byte isincludescore) {
        this.isincludescore = isincludescore;
    }

    public BigDecimal getDebitamountgifttotal() {
        return debitamountgifttotal;
    }

    public void setDebitamountgifttotal(BigDecimal debitamountgifttotal) {
        this.debitamountgifttotal = debitamountgifttotal;
    }

    public BigDecimal getDebitamount() {
        return debitamount;
    }

    public void setDebitamount(BigDecimal debitamount) {
        this.debitamount = debitamount;
    }

    public BigDecimal getCreditamount() {
        return creditamount;
    }

    public void setCreditamount(BigDecimal creditamount) {
        this.creditamount = creditamount;
    }

    public BigDecimal getPaysubjectrealamount() {
        return paysubjectrealamount;
    }

    public void setPaysubjectrealamount(BigDecimal paysubjectrealamount) {
        this.paysubjectrealamount = paysubjectrealamount;
    }

    public BigDecimal getPaysubjectfeeamount() {
        return paysubjectfeeamount;
    }

    public void setPaysubjectfeeamount(BigDecimal paysubjectfeeamount) {
        this.paysubjectfeeamount = paysubjectfeeamount;
    }

    public BigDecimal getPaysubjectdiscountamount() {
        return paysubjectdiscountamount;
    }

    public void setPaysubjectdiscountamount(BigDecimal paysubjectdiscountamount) {
        this.paysubjectdiscountamount = paysubjectdiscountamount;
    }

    public BigDecimal getPaysubjectreceivedamount() {
        return paysubjectreceivedamount;
    }

    public void setPaysubjectreceivedamount(BigDecimal paysubjectreceivedamount) {
        this.paysubjectreceivedamount = paysubjectreceivedamount;
    }

    public BigDecimal getPaysubjectalldiscountamount() {
        return paysubjectalldiscountamount;
    }

    public void setPaysubjectalldiscountamount(BigDecimal paysubjectalldiscountamount) {
        this.paysubjectalldiscountamount = paysubjectalldiscountamount;
    }

    public String getMembercardid() {
        return membercardid;
    }

    public void setMembercardid(String membercardid) {
        this.membercardid = membercardid;
    }

    public String getPromotionid() {
        return promotionid;
    }

    public void setPromotionid(String promotionid) {
        this.promotionid = promotionid;
    }

    public Byte getProgramtype() {
        return programtype;
    }

    public void setProgramtype(Byte programtype) {
        this.programtype = programtype;
    }

    public String getPayremark() {
        return payremark;
    }

    public void setPayremark(String payremark) {
        this.payremark = payremark;
    }

    public String getPaytransno() {
        return paytransno;
    }

    public void setPaytransno(String paytransno) {
        this.paytransno = paytransno;
    }

    public Byte getPayfrom() {
        return payfrom;
    }

    public void setPayfrom(Byte payfrom) {
        this.payfrom = payfrom;
    }

    public String getPaymentid() {
        return paymentid;
    }

    public void setPaymentid(String paymentid) {
        this.paymentid = paymentid;
    }

    public String getRefundby() {
        return refundby;
    }

    public void setRefundby(String refundby) {
        this.refundby = refundby;
    }

    public String getCreateby() {
        return createby;
    }

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

    public String getServermac() {
        return servermac;
    }

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

    public String getDevicename() {
        return devicename;
    }

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

    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 Integer getAction() {
        return action;
    }

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

    public String getPromotioncode() {
        return promotioncode;
    }

    public void setPromotioncode(String promotioncode) {
        this.promotioncode = promotioncode;
    }

    public String getSubjectnumber() {
        return subjectnumber;
    }

    public void setSubjectnumber(String subjectnumber) {
        this.subjectnumber = subjectnumber;
    }

    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 getShiftname() {
        return shiftname;
    }

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

    public String getTimenamecheckout() {
        return timenamecheckout;
    }

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

    public Byte getOrdersubtype() {
        return ordersubtype;
    }

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

    public Date getActionstamp() {
        return actionstamp;
    }

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

    public String getGiftitemnolst() {
        return giftitemnolst;
    }

    public void setGiftitemnolst(String giftitemnolst) {
        this.giftitemnolst = giftitemnolst;
    }
}