package com.yihu.jw.entity.base.servicePackage;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.UuidIdentityEntityWithCreateTime;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * 签约记录表
 * @author yeshijie on 2018/8/17.
 */
@Entity
@Table(name = "base_service_package_sign_record")
public class ServicePackageSignRecordDO extends UuidIdentityEntityWithCreateTime implements Serializable {

    private String patient;//居民code
    private String name;//居民姓名
    private String signDoctor;//签约医生code
    private String signDoctorName;//签约医生名称
    private Date startTime;//服务开始时间
    private Date endTime;//服务结束时间
    private Integer status;//状态 0新增，1生效，-1已过期

    /**
     * 签约的服务包
     */
    private List<ServicePackageRecordDO> recordDOList;

    //社区医生
    private List<Map<String,Object>> doctorList;
    //助老员
    private List<Map<String,Object>> helperList;
    //服务包
    private List<Map<String,Object>> packageList;

    public String getPatient() {
        return patient;
    }

    public void setPatient(String patient) {
        this.patient = patient;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Column(name = "sign_doctor")
    public String getSignDoctor() {
        return signDoctor;
    }

    public void setSignDoctor(String signDoctor) {
        this.signDoctor = signDoctor;
    }

    @Column(name = "sign_doctor_name")
    public String getSignDoctorName() {
        return signDoctorName;
    }

    public void setSignDoctorName(String signDoctorName) {
        this.signDoctorName = signDoctorName;
    }

    @Column(name = "start_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    @Column(name = "end_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    @Transient
    public List<ServicePackageRecordDO> getRecordDOList() {
        return recordDOList;
    }

    public void setRecordDOList(List<ServicePackageRecordDO> recordDOList) {
        this.recordDOList = recordDOList;
    }

    @Transient
    public List<Map<String,Object>> getDoctorList() {
        return doctorList;
    }

    public void setDoctorList(List<Map<String,Object>> doctorList) {
        this.doctorList = doctorList;
    }

    @Transient
    public List<Map<String,Object>> getHelperList() {
        return helperList;
    }

    public void setHelperList(List<Map<String,Object>> helperList) {
        this.helperList = helperList;
    }

    @Transient
    public List<Map<String,Object>> getPackageList() {
        return packageList;
    }

    public void setPackageList(List<Map<String,Object>> packageList) {
        this.packageList = packageList;
    }

}
