package com.ylx.point.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.ylx.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ylx.common.annotation.Excel;

/**
 * 积分活动任务规则对象 point_activity_task
 *
 * @author wzj
 * @date 2026-03-25
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class PointActivityTask extends BaseEntity {
    private static final long serialVersionUID = 2449395873912872626L;

    /**
     * 任务ID
     */
    private Long id;

    /**
     * 关联活动ID
     */
    @Excel(name = "关联活动ID")
    private Long activityId;

    /**
     * 任务名称dict_label
     */
    @Excel(name = "任务名称dict_label")
    private String taskName;

    /**
     * 任务代码dict_value
     */
    @Excel(name = "任务代码dict_value")
    private String taskValue;

    /**
     * 触发条件描述dict_label
     */
    @Excel(name = "触发条件描述dict_label")
    private String triggerName;

    /**
     * 触发阈值数值dict_value
     */
    @Excel(name = "触发阈值数值dict_value")
    private String triggerValue;

    /**
     * 奖励积分数
     */
    @Excel(name = "奖励积分数")
    private Long rewardPoints;

    /**
     * 限制类型描述dict_label
     */
    @Excel(name = "限制类型描述dict_label")
    private String frequencyLimitName;

    /**
     * 限制类型值dict_value
     */
    @Excel(name = "限制类型值dict_value")
    private String frequencyLimitValue;

    /**
     * 前端展示排序
     */
    @Excel(name = "前端展示排序")
    private Long sortOrder;

    /**
     * 逻辑删除
     */
    @Excel(name = "逻辑删除")
    private Integer isDeleted;

    /**
     * 状态: 0=启用, 1=弃用
     */
    @Excel(name = "状态: 0=启用, 1=弃用")
    private Integer status;


    @TableField(exist = false)
    private String createBy;

    @TableField(exist = false)
    private String updateBy;
}
