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

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

import java.time.LocalDateTime;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.*;
import org.springframework.format.annotation.DateTimeFormat;


/**
 * 家属沟通记录 DO
 *
 * @author 系统管理员
 */
@TableName("family_communication_record")
@KeySequence("family_communication_record_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class FamilyCommunicationRecordDO {

    /**
     * 主键ID
     */
    @TableId
    private Integer id;
    /**
     * 长者ID
     */
    private Long elderId;
    /**
     * 长者名称
     */
    private String elderName;
    /**
     * 沟通时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date communicationTime;
    /**
     * 沟通方式（电话/面谈/微信等）
     */
    private String communicationMethod;
    /**
     * 服务人
     */
    private String servicePerson;
    /**
     * 家属姓名
     */
    private String familyName;
    /**
     * 与长者关系（子女/配偶/亲友等）
     */
    private String relationshipWithElder;
    /**
     * 沟通内容
     */
    private String communicationContent;
    /**
     * 解决效果
     */
    private String solutionEffect;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;
    /**
     * 最后更新时间
     */
    private LocalDateTime updateTime;

    private Long tenantId;


    @TableField(exist = false)
    private ElderlyInfoDO elderlyInfo;

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