/*
 * Copyright ©2023 CJB-CNIT Team. All rights reserved
 */
package com.openhis.web.common.dto;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

import com.openhis.common.annotation.Dict;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * 处方信息
 *
 * @author zwh
 * @date 2025-09-16
 */
@Data
@Accessors(chain = true)
public class AdvicePrintInfoDto {

    /** 科室 */
    private String departmentName;

    /** 患者姓名 */
    private String patientName;

    /** 电话 */
    private String phone;

    /**
     * 就诊编码
     */
    private String encounterNo;

    /** 性别 */
    private Integer genderEnum;
    private String genderEnum_enumText;

    /** 年龄 */
    private String age;

    /** 生日 */
    private Date birthDate;

    /** 开具日期 */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private Date reqTime;

    /**
     * 费用性质
     */
    private String contractName;

    /**
     * 诊断名称
     */
    private String conditionName;

    /**
     * 开单医生
     */
    private String doctorName;

    /**
     * 发药医生
     */
    private String dispenseDoctorName;

    /**
     * 配药医生
     */
    private String preparerDoctorName;

    /**
     * 收费医生
     */
    private String chargeDoctorName;

    /** 就诊类型 */
    private Integer encounterYbClass;
    private String encounterYbClass_enumText;

    /**
     * 单位
     */
    @Dict(dictCode = "unit_code")
    private String unitCode;
    private String unitCode_dictText;

    /**
     * 医嘱项目打印列表
     */
    private List<AdviceItemPrintInfoDto> adviceItemList;
}
