
package com.czg.market.dto;

import com.czg.PageQueryParam;
import com.czg.utils.CzgStrUtils;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serial;
import java.io.Serializable;

/**
 * 积分兑换记录 实体类。
 *
 * @author ww
 * @since 2025-12-08
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class MkPointsGoodsRecordQueryDTO extends PageQueryParam implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 对应 关键词 只查 积分商品名称
     */
    private String pointsGoodsName;

    /**
     * 商品类型 优惠劵 其它商品
     */
    private String goodsCategory;

    /**
     * 领取方式 店内自取、系统发放
     */
    private String receiveType;

    /**
     * 会员id
     */
    private Long shopUserId;

    /**
     * 状态 待支付 待核销 已完成 退款中 已退款
     */
    private String status;

    public String getPointsGoodsName() {
        return CzgStrUtils.getStrOrNull(pointsGoodsName);
    }

    public String getGoodsCategory() {
        return CzgStrUtils.getStrOrNull(goodsCategory);
    }

    public String getReceiveType() {
        return CzgStrUtils.getStrOrNull(receiveType);
    }

    public String getStatus() {
        return CzgStrUtils.getStrOrNull(status);
    }
}
