package com.hzs.common.domain.member.achieve;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.hzs.common.core.annotation.Excel;
import com.hzs.common.core.web.domain.BaseEntity;
import lombok.*;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 会员月结算期间
 * </p>
 *
 * @author hzs
 * @since 2023-10-11
 */
@Data
@Accessors(chain = true)
@KeySequence("CU_MEMBER_MONTH_PERIOD_SEQ")
@TableName("CU_MEMBER_MONTH_PERIOD")
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class CuMemberMonthPeriod implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId("PK_ID")
    private Integer pkId;

    /**
     * 开始期间
     */
    @TableField("START_PERIOD")
    private Integer startPeriod;

    /**
     * 结束期间
     */
    @TableField("END_PERIOD")
    private Integer endPeriod;

    /**
     * 创建人ID
     */
    @TableField("PK_CREATOR")
    private Long pkCreator;

    /**
     * 创建时间
     */
    @Excel(name = "创建时间",dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField("CREATION_TIME")
    private Date creationTime;

    /**
     * 修改人ID
     */
    @TableField("PK_MODIFIED")
    private Long pkModified;

    /**
     * 修改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField("MODIFIED_TIME")
    private Date modifiedTime;

    /**
     * 逻辑删除 (0=未删除，1已删除)
     */
    @JsonIgnore
    @TableLogic
    @TableField("DEL_FLAG")
    private Integer delFlag;
}
