Patient.java 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236
  1. package thyyxxk.webserver.entity.inpatient.patient;
  2. import com.alibaba.fastjson.JSONObject;
  3. import lombok.Data;
  4. import thyyxxk.webserver.utils.DateUtil;
  5. import thyyxxk.webserver.utils.StringUtil;
  6. import java.math.BigDecimal;
  7. import java.util.Date;
  8. @Data
  9. public class Patient {
  10. private String table;
  11. private String inpatientNo;
  12. private String inOutStatusFlag;
  13. private Integer admissTimes;
  14. /**
  15. * 出院日期
  16. */
  17. private Date disDate;
  18. private Integer ledgerSn;
  19. private String staffId;
  20. private String psnCertType;
  21. private String socialNo;
  22. private String mzNo;
  23. private String name;
  24. private Integer sex;
  25. private String birthDate;
  26. private String homeTel;
  27. private String icdCode;
  28. private String icdText;
  29. private String admissPhysician;
  30. private String admissPhysicianName;
  31. private String referPhysician;
  32. private String referPhysicianName;
  33. private String acctUsedFlag;
  34. private String dutyNurse;
  35. private String dutyNurseName;
  36. private String country;
  37. private String nation;
  38. private String contactName;
  39. private String contactRelation;
  40. private String contactAddrName;
  41. private String contactPhone;
  42. private String admissDiagStr;
  43. private String clinicDiagStr;
  44. private String admissWard;
  45. private String admissWardName;
  46. private String admissDept;
  47. private String smallDept;
  48. private String smallDeptName;
  49. private String deptCode;
  50. private Date admissDate;
  51. private Date ybRegisterDate;
  52. private String responceType;
  53. private String responceName;
  54. private Integer dismissOrder;
  55. private String zkWard;
  56. private String zkWardName;
  57. private String bedNo;
  58. private String statusFlag;
  59. private String totalCharge;
  60. private String indiId;
  61. private String zySerialNo;
  62. private String centerId;
  63. private String ward;
  64. private String sid;
  65. private String disDiagStatus;
  66. private String operation;
  67. private String chargeYb;
  68. private Boolean midSetl; // 中间断账标志
  69. private Date zjdzDatetime; // 中间断账时间
  70. private Date dismissOrderDate; // 口腔科生成出院医嘱的出院时间
  71. private String medType;
  72. private String medTypeName;
  73. private String insutype;
  74. private String insutypeName;
  75. private Integer admdvs;
  76. private Integer[] admdvsCascader;
  77. private String matnType; // 生育类别
  78. private String latechbFlag; // 是否晚育
  79. private String pretFlag; // 是否早产
  80. private String mdtrtId;
  81. private Integer injuryArea; // 工伤归属地:1-长沙,2-望城,3-省直
  82. private String injurySerialNo;
  83. private String actIptDays; // 入院时间
  84. private String revokeRemark;
  85. /**
  86. * 患者居住地
  87. */
  88. private String homeStreet;
  89. private Integer age;
  90. /**
  91. * 纬度
  92. */
  93. private BigDecimal latitude;
  94. /**
  95. * 经度
  96. */
  97. private BigDecimal longitude;
  98. /**
  99. * 转化成功标志
  100. */
  101. private Integer addrTransedFlag;
  102. /**
  103. * 同区域的人数
  104. */
  105. private Integer numberOfPeopleInTheSameArea;
  106. /**
  107. * 是否有出纳
  108. */
  109. private Integer timesBilled;
  110. private String yp;
  111. private String jyjc;
  112. private String yb;
  113. // 余额
  114. private String balance;
  115. private Date begntime;
  116. private Date endtime;
  117. private String diseCode;
  118. private String diseName;
  119. private String expContent;
  120. private Boolean deathFlag;
  121. private JSONObject drgGrouping;
  122. /**
  123. * DRG权重
  124. */
  125. private String groupInfoWeight;
  126. /**
  127. * 分组结果名称
  128. */
  129. private String groupInfoName;
  130. /**
  131. * 倍率(DRG)
  132. */
  133. private String groupInfoBl;
  134. /**
  135. * 盈亏额
  136. */
  137. private String groupInfoProfit;
  138. /**
  139. * 标杆费用
  140. */
  141. private String groupInfoFeeStand;
  142. /**
  143. * 病危状态
  144. */
  145. private String criticallyIllStatus;
  146. /**
  147. * 护理级别
  148. */
  149. private String nursingLevel;
  150. /**
  151. * 手术状态
  152. */
  153. private String oprtStatus;
  154. /**
  155. * 是否已经审核了
  156. */
  157. private Integer emrAudit;
  158. /**
  159. * 质控医生 来源 batj_ba2 zkys
  160. */
  161. private String zkys;
  162. /**
  163. * 主治医生
  164. */
  165. private String consultPhysician;
  166. private String consultPhysicianName;
  167. /**
  168. * 主任医生
  169. */
  170. private String deptDirector;
  171. private String deptDirectorName;
  172. private Integer finalControl;
  173. public String getSexName() {
  174. if (sex == null) {
  175. return "";
  176. }
  177. switch (sex) {
  178. case 1:
  179. return "男";
  180. case 2:
  181. return "女";
  182. default:
  183. return "未知";
  184. }
  185. }
  186. public Integer getTempAge() {
  187. if (birthDate != null && admissDate != null) {
  188. try {
  189. return DateUtil.calculateAge(DateUtil.parse(birthDate, "yyyy-MM-dd"), admissDate);
  190. } catch (Exception ignored) {
  191. }
  192. }
  193. return age;
  194. }
  195. public String getPatNo() {
  196. return StringUtil.isBlank(inpatientNo) ? inpatientNo : inpatientNo.trim();
  197. }
  198. public Boolean getMidSetl() {
  199. return null != midSetl && midSetl;
  200. }
  201. public String getTable() {
  202. return null == table ? "zy_actpatient" : (table).trim();
  203. }
  204. public String mainInfo() {
  205. return "姓名:" + name + ",住院号:" + inpatientNo + ",住院次数:" + admissTimes;
  206. }
  207. }