package cn.iocoder.yudao.module.system.dal.dataobject.biz;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*;

import java.util.*;
import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import org.springframework.format.annotation.DateTimeFormat;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

/**
 * 护理计划配置项 DO
 *
 * @author 系统管理员
 */
@TableName("elderly_nursing_plan_item")
@KeySequence("elderly_nursing_plan_item_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class NursingPlanItemDO {

    /**
     * 主键ID
     */
    @TableId(value = "id",type = IdType.AUTO)
    private Long id;
    /**
     * 护理计划ID
     */
    private Long nursingPlanId;
    /**
     * 护理项目ID
     */
    private Long nurseItemId;
    /**
     * 护理项目名称
     */
    private String nurseItemName;
    /**
     * 操作方式
     */
    private String operatingMode;
    /**
     * 是否删除，0：正常 1：删除
     */
    private Integer isDelete;

    /**
     * 是否是额外护理项目
     */
    private Integer isExtra;

    /**
     * 护理开始时间
     */
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime beginTime;

    /**
     * 创建时间
     */
    private Date createdTime;
    /**
     * 创建人
     */
    private String createdBy;

    @TableField(exist = false)
    private String categoryName;

}
