package com.ruoyi.satisfaction.domain.vo; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.core.domain.BaseEntity; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.util.Date; import java.util.List; /** * 问题结果DTO * * @author ruoyi * @date 2024-02-02 */ @ApiModel(value = "QuestionResultVO", description = "问题结果VO") @Data public class SltdMydTotalVO extends BaseEntity { private static final long serialVersionUID = 1L; /** * 科室与病区的查询是or还是and: 1:and(默认)(离院病区与离院科室组合) 2:or(离院病区与离院科室组合) 3:and(离院病区与随访科室组合) 4:or(离院病区与随访科室组合) */ @ApiModelProperty(value = "科室与病区的查询是or还是and: 1:and(默认)(离院病区与离院科室组合) 2:or(离院病区与离院科室组合) 3:and(离院病区与随访科室组合) 4:or(离院病区与随访科室组合)") private String deptOrDistrict = "1"; /** * 出院病区编号 */ @ApiModelProperty(value = "出院病区集合(和部门二选一必填)") private List leavehospitaldistrictcodes; /** * 病区编号集合(页面「病区」选择器实际传的字段名)。 *

* ⚠️ 2026-10-21 修正「按病区统计却把别的病区数据也算进来」: * 前端提交的是 {@code hospitaldistrictcodes},而本 VO 只有 {@code leavehospitaldistrictcodes}, * Jackson 遇到未知字段直接丢弃(未开启 FAIL_ON_UNKNOWN_PROPERTIES), * 于是病区条件被静默丢弃,SQL 里 {@code leavehospitaldistrictcode IN (...)} 永远不拼, * 统计范围退化成「本院区 + 该服务类型 + 该时间段」的全部数据 —— 所以查 40003514 病区却把骨科算进来了。 *

* 现在两个字段都接受,取数时 {@code hospitaldistrictcodes} 优先(见 {@code SltdSatisfactionController})。 */ @ApiModelProperty(value = "病区code集合(页面病区选择器传入;与 leavehospitaldistrictcodes 等价,优先使用)") private List hospitaldistrictcodes; /** * 部门/科室 code 集合(页面「科室」选择器实际传的字段名,对应在院科室)。 *

* 与 {@code leaveldeptcodes} 是同一维度的两个列:哪个传进来就按哪一列过滤。 */ @ApiModelProperty(value = "科室code集合(页面科室选择器传入,对应在院科室;与 leaveldeptcodes 按列区分)") private List deptcodes; /** * 部门code */ @Excel(name = " 部门code") @ApiModelProperty(value = "部门code集合(和病区二选一必填)") private List leaveldeptcodes; /** * 开始出院日期 */ @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") @ApiModelProperty(value = "开始出院日期") private Date startOutHospTime; /** * 结束出院日期 */ @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") @ApiModelProperty(value = "结束出院日期") private Date endOutHospTime; /** * 开始出院日期 */ @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") @ApiModelProperty(value = "开始完成日期") private Date startFinishTime; /** * 结束出院日期 */ @JsonFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") @ApiModelProperty(value = "结束完成日期") private Date endFinishTime; /** * 问题内容 */ @ApiModelProperty(value = "问题内容") private String questionContent; /** * 问题内容 */ @ApiModelProperty(value = "开始查询分数") private Double startScore; /** * 问题内容 */ @ApiModelProperty(value = "结束查询分数") private Double endScore; /** * 服务类型(1、监测评估;2、出院随访;3、门诊随访;4、宣教关怀;5、复诊通知;6、满意度调查;7、患者报告; 8、其他通知) */ @Excel(name = "服务类型(1、监测评估;2、出院随访;3、门诊随访;4、宣教关怀;5、复诊管理;6、满意度调查;7、患者报告; 8、其他通知 9体检随访 10.医技随访 11,影像专科随访 12、心电专科随访, 13专科随访)") @ApiModelProperty(value = "必填服务类型(1、监测评估;2、出院随访;3、门诊随访;4、宣教关怀;5、复诊管理;6、满意度调查;7、患者报告; 8、其他通知 9体检随访 10.医技随访 11,影像专科随访 12、心电专科随访, 13专科随访)") private List serviceTypeList; @ApiModelProperty(value = "问题类型(1.单选 2多选 3问答 4填空 5其它)") private String valueType; }