TZDBConn.java 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756
  1. package com.diagbot.util;
  2. import com.diagbot.entity.*;
  3. import com.google.common.collect.Lists;
  4. import java.sql.*;
  5. import java.util.List;
  6. import java.util.ResourceBundle;
  7. public class TZDBConn {
  8. private static final String DRIVER = getValue("jdbc.driverClassName");
  9. private static final String URL = getValue("jdbc.url");
  10. private static final String USERNAME = getValue("jdbc.username");
  11. private static final String PASSWORD = getValue("jdbc.password");
  12. public static final Long HOSPITAL_ID=Long.valueOf("3");//1:长兴,2:邵逸夫,3:台州市立医院
  13. private static Connection connection = null;
  14. private static PreparedStatement sta = null;
  15. private static ResultSet rs = null;
  16. /**
  17. * 读取属性文件中的信息
  18. *
  19. * @param key
  20. * @return
  21. */
  22. private static String getValue(String key) {
  23. // 资源包绑定
  24. ResourceBundle bundle = ResourceBundle.getBundle("jdbc");
  25. return bundle.getString(key);
  26. }
  27. /**
  28. * 加载驱动程序
  29. */
  30. static {
  31. try {
  32. Class.forName(DRIVER);
  33. } catch (ClassNotFoundException e) {
  34. e.printStackTrace();
  35. }
  36. }
  37. /**
  38. * @return 连接对象
  39. */
  40. public Connection getConnection() {
  41. try {
  42. connection = DriverManager.getConnection(URL,USERNAME,PASSWORD);
  43. } catch (SQLException e) {
  44. e.printStackTrace();
  45. }
  46. return connection;
  47. }
  48. /**
  49. * @param sql sql语句
  50. * @param obj 参数
  51. * @return 数据集合
  52. */
  53. public ResultSet Query(String sql,Object...obj){
  54. connection=getConnection();
  55. try {
  56. sta=connection.prepareStatement(sql);
  57. if(obj!=null){
  58. for(int i=0;i<obj.length;i++){
  59. sta.setObject(i+1, obj[i]);
  60. }
  61. }
  62. rs=sta.executeQuery();
  63. } catch (SQLException e) {
  64. e.printStackTrace();
  65. }
  66. return rs;
  67. }
  68. /**
  69. * 关闭资源
  70. */
  71. public void close() {
  72. try {
  73. if (rs != null) {
  74. rs.close();
  75. }
  76. } catch (SQLException e) {
  77. e.printStackTrace();
  78. } finally {
  79. try {
  80. if (sta != null) {
  81. sta.close();
  82. }
  83. } catch (SQLException e2) {
  84. e2.printStackTrace();
  85. } finally {
  86. if (connection != null) {
  87. try {
  88. connection.close();
  89. } catch (SQLException e) {
  90. e.printStackTrace();
  91. }
  92. }
  93. }
  94. }
  95. }
  96. /**
  97. * 医生信息
  98. * @return
  99. */
  100. public List<BasDoctorInfo> getBasDoctorInfo(String sql) {
  101. List<BasDoctorInfo> basDoctorInfoList=Lists.newLinkedList();
  102. TZDBConn dbconn=new TZDBConn();
  103. try {
  104. rs =dbconn.Query(sql, null);
  105. while(rs.next()){
  106. BasDoctorInfo basDoctorInfo=new BasDoctorInfo();
  107. basDoctorInfo.setDoctorId(rs.getString("YHRYBH"));//医生ID
  108. basDoctorInfo.setHospitalId(HOSPITAL_ID);//医院ID
  109. //basDoctorInfoVO.setDeptId(rs.getString("ZZKSID"));//科室ID
  110. basDoctorInfo.setName(rs.getString("YHRYMC"));//医生姓名
  111. basDoctorInfo.setProfessor(rs.getString("YHRYZC"));//职称
  112. basDoctorInfoList.add(basDoctorInfo);
  113. }
  114. } catch (Exception e) {
  115. e.printStackTrace();
  116. }finally {
  117. close();
  118. }
  119. return basDoctorInfoList;
  120. }
  121. /**
  122. * 从视图中获取医院科室数据,根据修改时间同步数据
  123. * @return
  124. */
  125. public List<BasDeptInfo> getDeptInfo(String sql) {
  126. List<BasDeptInfo> basDeptInfoList=Lists.newLinkedList();
  127. try {
  128. TZDBConn dbconn=new TZDBConn();
  129. ResultSet rs =dbconn.Query(sql, null);
  130. while(rs.next()){
  131. BasDeptInfo basDeptInfo=new BasDeptInfo();
  132. basDeptInfo.setDeptId(rs.getString("ZZKSDM"));//科室编码
  133. basDeptInfo.setHospitalId(HOSPITAL_ID);//医院ID
  134. basDeptInfo.setDeptName(rs.getString("ZZKSMC"));//科室名称
  135. //basDeptInfoVO.setDeptType(rs.getString("ZZKSLB"));//科室类别
  136. basDeptInfo.setSpell(rs.getString("HZSRM1"));//首字母拼音
  137. //basDeptInfoVO.setStation(rs.getString("FLKSID"));//区域类别
  138. basDeptInfoList.add(basDeptInfo);
  139. }
  140. } catch (Exception e) {
  141. e.printStackTrace();
  142. }finally {
  143. close();
  144. }
  145. return basDeptInfoList;
  146. }
  147. /**
  148. * 病案诊断
  149. * @return
  150. */
  151. public List<HomeDiagnoseInfo> getHomeDiagnose(String sql){
  152. List<HomeDiagnoseInfo> homeDiagnoseVOList=Lists.newLinkedList();
  153. try {
  154. TZDBConn dbconn=new TZDBConn();
  155. ResultSet rs =dbconn.Query(sql, null);
  156. while(rs.next()){
  157. HomeDiagnoseInfo homeDiagnose=new HomeDiagnoseInfo();
  158. homeDiagnose.setHomePageId(rs.getString("BASYID"));//病案首页ID
  159. homeDiagnose.setHospitalId(HOSPITAL_ID);//医院ID
  160. homeDiagnose.setDiagnoseOrderNo(rs.getString("BAZDXH"));//诊断序号
  161. homeDiagnose.setDiagnoseName(rs.getString("ZDJBMC"));//诊断名称
  162. homeDiagnose.setDiagnoseType(rs.getString("ZDLBDM"));//诊断类别
  163. homeDiagnose.setDiagnoseTypeShort(rs.getString("ZCZDPB"));//诊断判别
  164. homeDiagnose.setBehospitalType(rs.getString("RYQKBM"));//入院情况
  165. //homeDiagnoseVO.setLeaveHospitalType(rs.getString("RYQKBM"));//出院情况
  166. //homeDiagnoseVO.setPathologyDiagnose(rs.getString("BASYID"));//病理号
  167. homeDiagnose.setIcdCode(rs.getString("ICDM"));//诊断编码
  168. homeDiagnoseVOList.add(homeDiagnose);
  169. }
  170. } catch (Exception e) {
  171. e.printStackTrace();
  172. }finally {
  173. close();
  174. }
  175. return homeDiagnoseVOList;
  176. }
  177. /**
  178. * 病案手术
  179. * @return
  180. */
  181. public List<HomeOperationInfo> getHomeOperation(String sql) {
  182. List<HomeOperationInfo> homeOperationVOList=Lists.newLinkedList();
  183. try {
  184. TZDBConn dbconn=new TZDBConn();
  185. ResultSet rs =dbconn.Query(sql, null);
  186. while(rs.next()){
  187. HomeOperationInfo homeOperationVO=new HomeOperationInfo();
  188. homeOperationVO.setHomePageId(rs.getString("BASYID"));//病案首页ID
  189. homeOperationVO.setHospitalId(HOSPITAL_ID);//医院ID
  190. homeOperationVO.setOperationOrderNo(rs.getString("BRSSXH"));//手术序号
  191. homeOperationVO.setOperationDate(rs.getDate("BRSSRQ"));//手术日期
  192. homeOperationVO.setOperationCode(rs.getString("SSDMID"));//手术编码
  193. homeOperationVO.setOperationDoctorId(rs.getString("SSYSID"));//手术医生
  194. homeOperationVO.setFirstAssistantId(rs.getString("YZHSID"));//一助医生
  195. homeOperationVO.setSecondAssistantId(rs.getString("EZHSID"));//二助医生
  196. homeOperationVO.setCutLevel(rs.getString("QKDJDM"));//切口等级
  197. homeOperationVO.setHealingLevel(rs.getString("QKDJDM"));//愈合等级
  198. homeOperationVO.setOperationName(rs.getString("BRSSMC"));//手术名称
  199. homeOperationVO.setOperationLevel(rs.getString("SSJBID"));//手术级别
  200. homeOperationVO.setAnaesthesiaName(rs.getString("MZFFMC"));//麻醉方式
  201. homeOperationVO.setShamOperationName(rs.getString("NSSMC"));//拟手术名称
  202. homeOperationVOList.add(homeOperationVO);
  203. }
  204. } catch (Exception e) {
  205. e.printStackTrace();
  206. }finally {
  207. close();
  208. }
  209. List<HomeOperationInfo> homeOperationList=BeanUtil.listCopyTo(homeOperationVOList, HomeOperationInfo.class);
  210. return homeOperationList;
  211. }
  212. /**
  213. * 从视图获取病案首页信息
  214. * 获取近几个月的数据
  215. */
  216. public List<HomePage> getHomePage(String sql) {
  217. List<HomePage> homePageList=Lists.newLinkedList();
  218. try {
  219. TZDBConn dbconn=new TZDBConn();
  220. ResultSet rs =dbconn.Query(sql, null);
  221. while(rs.next()){
  222. HomePage homePageVO=new HomePage();
  223. homePageVO.setHomePageId(rs.getString("BASYID"));//病案首页ID
  224. homePageVO.setHospitalId(HOSPITAL_ID);//医院ID
  225. homePageVO.setBehospitalCode(rs.getString("BRZYID"));//病人住院序号
  226. homePageVO.setHospitalCode(rs.getString("ZZJGID"));//组织机构id
  227. homePageVO.setHospitalName(rs.getString("ZZJGMC"));//医疗机构名称
  228. homePageVO.setOrgCode(rs.getString("ZZJGBH"));//医疗机构代码
  229. homePageVO.setPayType(rs.getString("YLFKLB"));//医疗付费方式
  230. homePageVO.setHealthCard(rs.getString("BRJKKH"));//健康卡号
  231. homePageVO.setBehospitalNum(rs.getString("BRZYCS"));//住院次数
  232. homePageVO.setFileCode(rs.getString("BRBABH"));//病案号
  233. homePageVO.setName(rs.getString("BRBAXM"));//姓名
  234. homePageVO.setSex(rs.getString("BRBAXB"));//性别
  235. homePageVO.setBirthday(rs.getDate("BRCSRQ"));//出生日期
  236. homePageVO.setAge(rs.getString("BRDQNL").equals("-")?null:rs.getString("BRDQNL"));//病人年龄
  237. homePageVO.setAgeUnit(rs.getString("BRNLDW"));//年龄单位
  238. homePageVO.setNationality(rs.getString("BRBAGJ"));//国籍
  239. homePageVO.setNewbornMonth(rs.getString("YENLYS"));//新生儿出生月数
  240. homePageVO.setNewbornDay(rs.getString("YENLTS"));//新生儿出生天数
  241. homePageVO.setNewbornWeight(rs.getString("YECSTZ"));//新生儿出生体重
  242. homePageVO.setNewbornBehospitalWeight(rs.getString("YERYTZ"));//新生儿入院体重
  243. homePageVO.setBornAddress(rs.getString("BRCSDZ"));//出生地
  244. homePageVO.setBornPlace(rs.getString("BRBAJG"));//籍贯
  245. homePageVO.setNation(rs.getString("BRBAMZ"));//民族
  246. homePageVO.setIdentityCardNo(rs.getString("BRSFZH"));//身份证号
  247. homePageVO.setJobType(rs.getString("BRBASF"));//职业
  248. homePageVO.setMarriage(rs.getString("BRHYZK"));//婚姻
  249. homePageVO.setCurAddress(rs.getString("BRLXDZ"));//现住址
  250. homePageVO.setCurPhone(rs.getString("BRLXDH"));//现住址电话
  251. homePageVO.setCurPostCode(rs.getString("LXDZYB"));//现住址邮编
  252. homePageVO.setResidenceAddress(rs.getString("BRHKDZ"));//户口地址
  253. homePageVO.setResidencePostCode(rs.getString("HKDZYB"));//户口地址邮编
  254. homePageVO.setWorkAddress(rs.getString("GZDWMC"));//工作单位
  255. homePageVO.setWorkPhone(rs.getString("GZDWDH"));//工作单位电话
  256. homePageVO.setWorkPostCode(rs.getString("GZDWYB"));//工作单位邮编
  257. homePageVO.setContactName(rs.getString("LXRYXM"));//联系人姓名
  258. homePageVO.setContactRelation(rs.getString("LXRYGX"));//联系人关系
  259. homePageVO.setContactAddress(rs.getString("LXRYDZ"));//联系人地址
  260. homePageVO.setContactPhone(rs.getString("LXRYDH"));//联系人电话
  261. homePageVO.setBehospitalWay(rs.getString("RYLYDM"));//入院途径
  262. homePageVO.setBehospitalDate(rs.getDate("BRRYRQ"));//入院时间
  263. homePageVO.setBehospitalDept(rs.getString("RYKSID"));//入院科室
  264. homePageVO.setBehospitalWard(rs.getString("RYBQID"));//入院病房
  265. homePageVO.setBehospitalBedId(rs.getString("RYCWID"));//入院床位序号
  266. homePageVO.setBehospitalBedCode(rs.getString("RYCWHM"));//入院床位号码
  267. homePageVO.setChangeDept(rs.getString("BRZKKB"));//转科科别
  268. homePageVO.setLeaveHospitalDate(rs.getDate("BRCYRQ"));//出院时间
  269. homePageVO.setLeaveHospitalDept(rs.getString("CYKSID"));//出院科别
  270. homePageVO.setLeaveHospitalWard(rs.getString("CYBQID"));//出院病房
  271. homePageVO.setLeaveHospitalBedId(rs.getString("CYCWID"));//出院床位序号
  272. homePageVO.setLeaveHospitalBedCode(rs.getString("CYCWHM"));//出院床位号码
  273. homePageVO.setBehospitalDayNum(rs.getString("SJZYTS"));//实际住院天数
  274. homePageVO.setOutpatientEmrDiagnose(rs.getString("BRMZZD"));//门急诊诊断
  275. homePageVO.setOutpatientEmrDiagnoseCode(rs.getString("MZZDDM"));//门急诊诊断编码
  276. homePageVO.setPoisonFactor(rs.getString("SSZDYSMC"));//损伤中毒因素
  277. homePageVO.setPoisonFactorCode(rs.getString("SSZDYSBM"));//损伤中毒因素编码
  278. homePageVO.setPathologyDiagnose(rs.getString("BLZDMC"));//病理诊断
  279. homePageVO.setPathologyDiagnoseCode(rs.getString("BLZDBM"));//病理诊断编码
  280. homePageVO.setPathologyDiagnoseId(rs.getString("BLZDBH"));//病理诊断编号
  281. homePageVO.setIsMedAllergy(rs.getString("YWYWGM"));//药物过敏
  282. homePageVO.setMedAllergyName(rs.getString("BRGMYW"));//过敏药物
  283. homePageVO.setAutopsy(rs.getString("BRSFSJ"));//死亡患者尸检
  284. homePageVO.setBloodType(rs.getString("BRBAXX"));//血型
  285. homePageVO.setRh(rs.getString("BRBARH"));//Rh
  286. homePageVO.setDeptDirector(rs.getString("KZR"));//科主任
  287. homePageVO.setDirectorDoctor(rs.getString("ZRYS"));//主任医师
  288. homePageVO.setAttendingDoctor(rs.getString("ZZYS"));//主治医师
  289. homePageVO.setBehospitalDoctor(rs.getString("ZYYS"));//住院医师
  290. homePageVO.setResponseNurse(rs.getString("ZRHS"));//责任护士
  291. homePageVO.setStudyDoctor(rs.getString("JXYS"));//进修医师
  292. homePageVO.setPracticeDoctor(rs.getString("SXYS"));//实习医师
  293. homePageVO.setEncodeMan(rs.getString("BMY"));//编码员
  294. homePageVO.setHomePageQuality(rs.getString("BRBAZL"));//病案质量
  295. homePageVO.setQcDoctor(rs.getString("BAZKYS"));//质控医师
  296. homePageVO.setQcNurse(rs.getString("BAZKHS"));//质控护士
  297. if(!"".equals(rs.getString("BAZKRQ"))){
  298. homePageVO.setQcDate(DateUtil.parseDate(rs.getString("BAZKRQ"),DateUtil.DATE_TIME_FORMAT));//质控日期
  299. }
  300. homePageVO.setLeaveHospitalType(rs.getString("BRLYFS"));//离院方式
  301. homePageVO.setAcceptOrgCode(rs.getString("ZYJGMC"));//接收机构名称
  302. homePageVO.setAgainBehospitalPlan(rs.getString("SSYZZY"));//31天内再住院计划
  303. homePageVO.setAgainBehospitalGoal(rs.getString("SSYZZYMD"));//再住院目的
  304. homePageVO.setTbiBeforeDay(rs.getString("RYQHMTS"));//颅脑损伤患者昏迷前天数
  305. homePageVO.setTbiBeforeHour(rs.getString("RYQHMXS"));//颅脑损伤患者昏迷前小时
  306. homePageVO.setTbiBeforeMinute(rs.getString("RYQHMFZ"));//颅脑损伤患者昏迷前分钟
  307. homePageVO.setTbiAfterDay(rs.getString("RYQHMFZ"));//颅脑损伤患者昏迷后天数
  308. homePageVO.setTbiAfterHour(rs.getString("RYHHMXS"));//颅脑损伤患者昏迷后小时
  309. homePageVO.setTbiAfterMinute(rs.getString("RYQHMFZ"));//颅脑损伤患者昏迷后分钟
  310. homePageVO.setTotalFee(rs.getString("ZFY"));//总费用
  311. homePageVO.setOwnFee(rs.getString("ZFJE"));//自付金额
  312. homePageVO.setGeneralFee(rs.getString("YBYLFWF"));//一般医疗服务费
  313. homePageVO.setServiceFee(rs.getString("YBZLCZF"));//一般治疗服务费
  314. homePageVO.setNurseFee(rs.getString("HLF"));//护理费
  315. //homePageVO.setOtherFee(rs.getString("QTFY"));//其他费用
  316. homePageVO.setPathologyFee(rs.getString("BLZDF"));//病理诊断费
  317. homePageVO.setLabFee(rs.getString("SYSZDF"));//实验室诊断费
  318. homePageVO.setPacsFee(rs.getString("YXXZDF"));//影像学诊断费
  319. homePageVO.setClinicDiagnoseFee(rs.getString("LCZDXMF"));//临床诊断项目费
  320. homePageVO.setNotOperationFee(rs.getString("FSSZLXMF"));//非手术治疗项目费
  321. homePageVO.setClinicPhysicFee(rs.getString("LCWLZLF"));//临床物理治疗费
  322. homePageVO.setOperationTreatFee(rs.getString("SSZLF"));//手术治疗费
  323. homePageVO.setAnaesthesiaFee(rs.getString("MZF"));//麻醉费
  324. homePageVO.setOperationFee(rs.getString("SSF"));//手术费
  325. homePageVO.setHealthTypeFee(rs.getString("KFF"));//康复类
  326. homePageVO.setChnTreatFee(rs.getString("ZYZLF"));//中医治疗费
  327. homePageVO.setWesternMedFee(rs.getString("XYF"));//西药费
  328. homePageVO.setAntibiosisFee(rs.getString("KJYWF"));//抗菌药物费用
  329. homePageVO.setChnMedFee(rs.getString("ZCYF"));//中成药费
  330. homePageVO.setChnHerbFee(rs.getString("CYF"));//中草药费
  331. homePageVO.setBloodFee(rs.getString("XF"));//血费
  332. homePageVO.setAlbumenFee(rs.getString("BDBLZPF"));//白蛋白类制品费
  333. homePageVO.setGlobulinFee(rs.getString("QDBLZPF"));//球蛋白类制品费
  334. homePageVO.setBloodFactorFee(rs.getString("NXYZLZPF"));//凝血因子类制品费
  335. homePageVO.setCellFactorFee(rs.getString("XBYZLZPF"));//细胞因子类制品费
  336. homePageVO.setCheckMaterialFee(rs.getString("JCYYCXYYCLF"));//检查用一次性医用材料费
  337. homePageVO.setTreatMaterialFee(rs.getString("ZLYYCXYYCLF"));//治疗用一次性医用材料费
  338. homePageVO.setOperationMaterialFee(rs.getString("SSYYCXYYCLF"));//手术用一次性医用材料费
  339. homePageVO.setOtherTypeFee(rs.getString("QTF"));//其他类其他费
  340. homePageVO.setSingleDiagManage(rs.getString("DBZGL"));//单病种管理
  341. homePageVO.setClinicPathwayManage(rs.getString("SSLCLJGL"));//临床路径管理
  342. homePageVO.setIsOutpatientBehospital(rs.getString("MZZYFH"));//门诊与住院
  343. homePageVO.setIsLeaveBehospital(rs.getString("RYCYFH"));//入院与出院
  344. homePageVO.setIsOperationBeforeAfter(rs.getString("SQSHFH"));//术前与术后
  345. homePageVO.setIsClinicPathology(rs.getString("LCBLFH"));//临床与病理
  346. homePageVO.setIsRadiatePathology(rs.getString("FSBLFH"));//放射与病理
  347. homePageVO.setRescueSuccessNum(rs.getString("BRQJCS"));//病人抢救次数
  348. homePageVO.setRescueSuccessNum(rs.getString("QJCGCS"));//病人抢救成功次数
  349. homePageVO.setIsAutoLeavehospital(rs.getString("ZDCYPB"));//是否为自动出院
  350. homePageVO.setReturnToType(rs.getString("CYQKDM"));//转归情况HomePage homePageVO=new HomePage();
  351. homePageVO.setHomePageId(rs.getString("BASYID"));//病案首页ID
  352. homePageVO.setHospitalId(Long.valueOf("3"));//医院ID
  353. homePageVO.setBehospitalCode(rs.getString("BRZYID"));//病人住院序号
  354. homePageVO.setHospitalCode(rs.getString("ZZJGID"));//组织机构id
  355. homePageVO.setHospitalName(rs.getString("ZZJGMC"));//医疗机构名称
  356. homePageVO.setOrgCode(rs.getString("ZZJGBH"));//医疗机构代码
  357. homePageVO.setPayType(rs.getString("YLFKLB"));//医疗付费方式
  358. homePageVO.setHealthCard(rs.getString("BRJKKH"));//健康卡号
  359. homePageVO.setBehospitalNum(rs.getString("BRZYCS"));//住院次数
  360. homePageVO.setFileCode(rs.getString("BRBABH"));//病案号
  361. homePageVO.setName(rs.getString("BRBAXM"));//姓名
  362. homePageVO.setSex(rs.getString("BRBAXB"));//性别
  363. homePageVO.setBirthday(rs.getDate("BRCSRQ"));//出生日期
  364. homePageVO.setAge(rs.getString("BRDQNL"));//病人年龄
  365. homePageVO.setAgeUnit(rs.getString("BRNLDW"));//年龄单位
  366. homePageVO.setNationality(rs.getString("BRBAGJ"));//国籍
  367. homePageVO.setNewbornMonth(rs.getString("YENLYS"));//新生儿出生月数
  368. homePageVO.setNewbornDay(rs.getString("YENLTS"));//新生儿出生天数
  369. homePageVO.setNewbornWeight(rs.getString("YECSTZ"));//新生儿出生体重
  370. homePageVO.setNewbornBehospitalWeight(rs.getString("YERYTZ"));//新生儿入院体重
  371. homePageVO.setBornAddress(rs.getString("BRCSDZ"));//出生地
  372. homePageVO.setBornPlace(rs.getString("BRBAJG"));//籍贯
  373. homePageVO.setNation(rs.getString("BRBAMZ"));//民族
  374. homePageVO.setIdentityCardNo(rs.getString("BRSFZH"));//身份证号
  375. homePageVO.setJobType(rs.getString("BRBASF"));//职业
  376. homePageVO.setMarriage(rs.getString("BRHYZK"));//婚姻
  377. homePageVO.setCurAddress(rs.getString("BRLXDZ"));//现住址
  378. homePageVO.setCurPhone(rs.getString("BRLXDH"));//现住址电话
  379. homePageVO.setCurPostCode(rs.getString("LXDZYB"));//现住址邮编
  380. homePageVO.setResidenceAddress(rs.getString("BRHKDZ"));//户口地址
  381. homePageVO.setResidencePostCode(rs.getString("HKDZYB"));//户口地址邮编
  382. homePageVO.setWorkAddress(rs.getString("GZDWMC"));//工作单位
  383. homePageVO.setWorkPhone(rs.getString("GZDWDH"));//工作单位电话
  384. homePageVO.setWorkPostCode(rs.getString("GZDWYB"));//工作单位邮编
  385. homePageVO.setContactName(rs.getString("LXRYXM"));//联系人姓名
  386. homePageVO.setContactRelation(rs.getString("LXRYGX"));//联系人关系
  387. homePageVO.setContactAddress(rs.getString("LXRYDZ"));//联系人地址
  388. homePageVO.setContactPhone(rs.getString("LXRYDH"));//联系人电话
  389. homePageVO.setBehospitalWay(rs.getString("RYLYDM"));//入院途径
  390. homePageVO.setBehospitalDate(rs.getDate("BRRYRQ"));//入院时间
  391. homePageVO.setBehospitalDept(rs.getString("RYKSID"));//入院科室
  392. homePageVO.setBehospitalWard(rs.getString("RYBQID"));//入院病房
  393. homePageVO.setBehospitalBedId(rs.getString("RYCWID"));//入院床位序号
  394. homePageVO.setBehospitalBedCode(rs.getString("RYCWHM"));//入院床位号码
  395. homePageVO.setChangeDept(rs.getString("BRZKKB"));//转科科别
  396. homePageVO.setLeaveHospitalDate(rs.getDate("BRCYRQ"));//出院时间
  397. homePageVO.setLeaveHospitalDept(rs.getString("CYKSID"));//出院科别
  398. homePageVO.setLeaveHospitalWard(rs.getString("CYBQID"));//出院病房
  399. homePageVO.setLeaveHospitalBedId(rs.getString("CYCWID"));//出院床位序号
  400. homePageVO.setLeaveHospitalBedCode(rs.getString("CYCWHM"));//出院床位号码
  401. homePageVO.setBehospitalDayNum(rs.getString("SJZYTS"));//实际住院天数
  402. homePageVO.setOutpatientEmrDiagnose(rs.getString("BRMZZD"));//门急诊诊断
  403. homePageVO.setOutpatientEmrDiagnoseCode(rs.getString("MZZDDM"));//门急诊诊断编码
  404. homePageVO.setPoisonFactor(rs.getString("SSZDYSMC"));//损伤中毒因素
  405. homePageVO.setPoisonFactorCode(rs.getString("SSZDYSBM"));//损伤中毒因素编码
  406. homePageVO.setPathologyDiagnose(rs.getString("BLZDMC"));//病理诊断
  407. homePageVO.setPathologyDiagnoseCode(rs.getString("BLZDBM"));//病理诊断编码
  408. homePageVO.setPathologyDiagnoseId(rs.getString("BLZDBH"));//病理诊断编号
  409. homePageVO.setIsMedAllergy(rs.getString("YWYWGM"));//药物过敏
  410. homePageVO.setMedAllergyName(rs.getString("BRGMYW"));//过敏药物
  411. homePageVO.setAutopsy(rs.getString("BRSFSJ"));//死亡患者尸检
  412. homePageVO.setBloodType(rs.getString("BRBAXX"));//血型
  413. homePageVO.setRh(rs.getString("BRBARH"));//Rh
  414. homePageVO.setDeptDirector(rs.getString("KZR"));//科主任
  415. homePageVO.setDirectorDoctor(rs.getString("ZRYS"));//主任医师
  416. homePageVO.setAttendingDoctor(rs.getString("ZZYS"));//主治医师
  417. homePageVO.setBehospitalDoctor(rs.getString("ZYYS"));//住院医师
  418. homePageVO.setResponseNurse(rs.getString("ZRHS"));//责任护士
  419. homePageVO.setStudyDoctor(rs.getString("JXYS"));//进修医师
  420. homePageVO.setPracticeDoctor(rs.getString("SXYS"));//实习医师
  421. homePageVO.setEncodeMan(rs.getString("BMY"));//编码员
  422. homePageVO.setHomePageQuality(rs.getString("BRBAZL"));//病案质量
  423. homePageVO.setQcDoctor(rs.getString("BAZKYS"));//质控医师
  424. homePageVO.setQcNurse(rs.getString("BAZKHS"));//质控护士
  425. if(!"".equals(rs.getString("BAZKRQ"))){
  426. homePageVO.setQcDate(DateUtil.parseDate(rs.getString("BAZKRQ"),DateUtil.DATE_TIME_FORMAT));//质控日期
  427. }
  428. homePageVO.setLeaveHospitalType(rs.getString("BRLYFS"));//离院方式
  429. homePageVO.setAcceptOrgCode(rs.getString("ZYJGMC"));//接收机构名称
  430. homePageVO.setAgainBehospitalPlan(rs.getString("SSYZZY"));//31天内再住院计划
  431. homePageVO.setAgainBehospitalGoal(rs.getString("SSYZZYMD"));//再住院目的
  432. homePageVO.setTbiBeforeDay(rs.getString("RYQHMTS"));//颅脑损伤患者昏迷前天数
  433. homePageVO.setTbiBeforeHour(rs.getString("RYQHMXS"));//颅脑损伤患者昏迷前小时
  434. homePageVO.setTbiBeforeMinute(rs.getString("RYQHMFZ"));//颅脑损伤患者昏迷前分钟
  435. homePageVO.setTbiAfterDay(rs.getString("RYQHMFZ"));//颅脑损伤患者昏迷后天数
  436. homePageVO.setTbiAfterHour(rs.getString("RYHHMXS"));//颅脑损伤患者昏迷后小时
  437. homePageVO.setTbiAfterMinute(rs.getString("RYQHMFZ"));//颅脑损伤患者昏迷后分钟
  438. homePageVO.setTotalFee(rs.getString("ZFY"));//总费用
  439. homePageVO.setOwnFee(rs.getString("ZFJE"));//自付金额
  440. homePageVO.setGeneralFee(rs.getString("YBYLFWF"));//一般医疗服务费
  441. homePageVO.setServiceFee(rs.getString("YBZLCZF"));//一般治疗服务费
  442. homePageVO.setNurseFee(rs.getString("HLF"));//护理费
  443. //homePageVO.setOtherFee(rs.getString("QTFY"));//其他费用
  444. homePageVO.setPathologyFee(rs.getString("BLZDF"));//病理诊断费
  445. homePageVO.setLabFee(rs.getString("SYSZDF"));//实验室诊断费
  446. homePageVO.setPacsFee(rs.getString("YXXZDF"));//影像学诊断费
  447. homePageVO.setClinicDiagnoseFee(rs.getString("LCZDXMF"));//临床诊断项目费
  448. homePageVO.setNotOperationFee(rs.getString("FSSZLXMF"));//非手术治疗项目费
  449. homePageVO.setClinicPhysicFee(rs.getString("LCWLZLF"));//临床物理治疗费
  450. homePageVO.setOperationTreatFee(rs.getString("SSZLF"));//手术治疗费
  451. homePageVO.setAnaesthesiaFee(rs.getString("MZF"));//麻醉费
  452. homePageVO.setOperationFee(rs.getString("SSF"));//手术费
  453. homePageVO.setHealthTypeFee(rs.getString("KFF"));//康复类
  454. homePageVO.setChnTreatFee(rs.getString("ZYZLF"));//中医治疗费
  455. homePageVO.setWesternMedFee(rs.getString("XYF"));//西药费
  456. homePageVO.setAntibiosisFee(rs.getString("KJYWF"));//抗菌药物费用
  457. homePageVO.setChnMedFee(rs.getString("ZCYF"));//中成药费
  458. homePageVO.setChnHerbFee(rs.getString("CYF"));//中草药费
  459. homePageVO.setBloodFee(rs.getString("XF"));//血费
  460. homePageVO.setAlbumenFee(rs.getString("BDBLZPF"));//白蛋白类制品费
  461. homePageVO.setGlobulinFee(rs.getString("QDBLZPF"));//球蛋白类制品费
  462. homePageVO.setBloodFactorFee(rs.getString("NXYZLZPF"));//凝血因子类制品费
  463. homePageVO.setCellFactorFee(rs.getString("XBYZLZPF"));//细胞因子类制品费
  464. homePageVO.setCheckMaterialFee(rs.getString("JCYYCXYYCLF"));//检查用一次性医用材料费
  465. homePageVO.setTreatMaterialFee(rs.getString("ZLYYCXYYCLF"));//治疗用一次性医用材料费
  466. homePageVO.setOperationMaterialFee(rs.getString("SSYYCXYYCLF"));//手术用一次性医用材料费
  467. homePageVO.setOtherTypeFee(rs.getString("QTF"));//其他类其他费
  468. homePageVO.setSingleDiagManage(rs.getString("DBZGL"));//单病种管理
  469. homePageVO.setClinicPathwayManage(rs.getString("SSLCLJGL"));//临床路径管理
  470. homePageVO.setIsOutpatientBehospital(rs.getString("MZZYFH"));//门诊与住院
  471. homePageVO.setIsLeaveBehospital(rs.getString("RYCYFH"));//入院与出院
  472. homePageVO.setIsOperationBeforeAfter(rs.getString("SQSHFH"));//术前与术后
  473. homePageVO.setIsClinicPathology(rs.getString("LCBLFH"));//临床与病理
  474. homePageVO.setIsRadiatePathology(rs.getString("FSBLFH"));//放射与病理
  475. homePageVO.setRescueSuccessNum(rs.getString("BRQJCS"));//病人抢救次数
  476. homePageVO.setRescueSuccessNum(rs.getString("QJCGCS"));//病人抢救成功次数
  477. homePageVO.setIsAutoLeavehospital(rs.getString("ZDCYPB"));//是否为自动出院
  478. homePageVO.setReturnToType(rs.getString("CYQKDM"));//转归情况
  479. homePageList.add(homePageVO);
  480. }
  481. } catch (Exception e) {
  482. e.printStackTrace();
  483. }finally {
  484. close();
  485. }
  486. return homePageList;
  487. }
  488. /**
  489. * 获取病历信息
  490. * @return
  491. */
  492. public List<BehospitalInfo> getBehospitalInfo(String sql) {
  493. List<BehospitalInfo> behospitalInfoList=Lists.newLinkedList();
  494. try {
  495. TZDBConn dbconn=new TZDBConn();
  496. ResultSet rs =dbconn.Query(sql, null);
  497. while(rs.next()){
  498. BehospitalInfo behospitalInfo=new BehospitalInfo();
  499. behospitalInfo.setBehospitalCode(rs.getString("BRZYID"));//病人住院ID
  500. behospitalInfo.setHospitalId(HOSPITAL_ID);//医院ID
  501. behospitalInfo.setName(rs.getString("BRDAXM"));//姓名
  502. behospitalInfo.setSex(rs.getString("BRDAXB").equals("M")?"男":"女");//性别
  503. behospitalInfo.setBirthday(rs.getDate("BRCSRQ"));//出生日期
  504. behospitalInfo.setFileCode(rs.getString("BRDABH"));//档案号
  505. behospitalInfo.setWardCode(rs.getString("ZYBQID"));//病区编码
  506. behospitalInfo.setWardName(rs.getString("ZYBQMC"));//病区名称
  507. behospitalInfo.setBehDeptId(rs.getString("ZYKSID"));//住院科室ID
  508. behospitalInfo.setBehDeptName(rs.getString("ZYKSMC"));//住院科室名称
  509. behospitalInfo.setBedCode(rs.getString("ZYCWID"));//床位号
  510. behospitalInfo.setBedName(rs.getString("ZYCWHM"));//床位名称
  511. behospitalInfo.setInsuranceName(rs.getString("BRLBID"));//医保类别
  512. behospitalInfo.setJobType(rs.getString("BRXZID"));//职业
  513. behospitalInfo.setBehospitalDate(rs.getDate("BRRYRQ"));//入院时间
  514. behospitalInfo.setLeaveHospitalDate(rs.getDate("BRCYRQ"));//出院时间
  515. behospitalInfo.setDiagnoseIcd(rs.getString("JBDMID"));//疾病ICD编码
  516. behospitalInfo.setDiagnose(rs.getString("JBMSXX"));//疾病名称
  517. behospitalInfo.setDoctorId(rs.getString("ZZYSID"));//医生ID
  518. behospitalInfo.setDoctorName(rs.getString("ZZYSXM"));//医生姓名
  519. behospitalInfoList.add(behospitalInfo);
  520. }
  521. } catch (Exception e) {
  522. e.printStackTrace();
  523. }finally {
  524. close();
  525. }
  526. return behospitalInfoList;
  527. }
  528. /**
  529. * 从视图中获取医嘱信息
  530. * @return
  531. */
  532. public List<DoctorAdvice> getDoctorAdvice(String sql){
  533. List<DoctorAdvice> doctorAdviceList=Lists.newLinkedList();
  534. try {
  535. TZDBConn dbconn=new TZDBConn();
  536. ResultSet rs =dbconn.Query(sql, null);
  537. while(rs.next()){
  538. DoctorAdvice doctorAdviceVO=new DoctorAdvice();
  539. doctorAdviceVO.setDoctorAdviceId(rs.getString("BRYZID"));//病人医嘱ID
  540. doctorAdviceVO.setHospitalId(HOSPITAL_ID);//医院ID
  541. doctorAdviceVO.setBehospitalCode(rs.getString("BRZYID"));//病人ID
  542. doctorAdviceVO.setOrderDoctorName(rs.getString("YSKDPB"));//医生开单判别
  543. doctorAdviceVO.setFrequency(rs.getString("YZPLPB"));//医嘱频率判别
  544. doctorAdviceVO.setParentTypeId(rs.getString("FLYZID"));//父类医嘱ID
  545. doctorAdviceVO.setDoctorAdviceType(rs.getString("YZLXPB"));//医嘱类型判别
  546. doctorAdviceVO.setUsageNum(rs.getString("YCSYSL"));//一次使用数量
  547. doctorAdviceVO.setUsageUnit(rs.getString("YCYLDW"));//一次用量单位
  548. doctorAdviceVO.setDose(rs.getString("YZDCJL"));//医嘱单次剂量
  549. doctorAdviceVO.setDoseUnit(rs.getString("DCJLDW"));//单次剂量单位
  550. doctorAdviceVO.setMedModeType(rs.getString("GYFSID"));//给药方式
  551. doctorAdviceVO.setDaFrequency(rs.getString("YZPLID"));//医嘱频率
  552. doctorAdviceVO.setDaDealType(rs.getString("YZCLLX"));//医嘱处理类型
  553. doctorAdviceVO.setDaStartDate(rs.getDate("YZKSSJ"));//医嘱开始时间
  554. doctorAdviceVO.setDaItemName(rs.getString("YZXMMC"));//医嘱项目名称
  555. doctorAdviceVO.setDaStatus(rs.getString("YZZTPB"));//医嘱状态判别
  556. doctorAdviceVO.setDaStopDate(rs.getDate("YZJSSJ"));//医嘱结束时间
  557. doctorAdviceVO.setDaGroupNo(rs.getString("YZTZXH"));//医嘱同组序号
  558. doctorAdviceVO.setDaPrescriptionType(rs.getString("YZCFLX"));//医嘱处方类型
  559. doctorAdviceVO.setDaMedType(rs.getString("YZLYLX"));//医嘱领药类型
  560. doctorAdviceVO.setDoctorNotice(rs.getString("YSZTSM"));//医生嘱托
  561. doctorAdviceVO.setDoctorId(rs.getString("KDYSID"));//开单医生ID
  562. doctorAdviceVO.setDoctorName(rs.getString("KDYSMC"));//开单医生姓名
  563. doctorAdviceList.add(doctorAdviceVO);
  564. }
  565. } catch (Exception e) {
  566. e.printStackTrace();
  567. }finally {
  568. close();
  569. }
  570. return doctorAdviceList;
  571. }
  572. /**
  573. * 从视图中获取病历记录
  574. * @return
  575. */
  576. public List<MedicalRecord> getMedicalRecord(String sql){
  577. List<MedicalRecord> medicalRecordList=Lists.newLinkedList();
  578. try {
  579. TZDBConn dbconn=new TZDBConn();
  580. ResultSet rs =dbconn.Query(sql, null);
  581. while(rs.next()){
  582. MedicalRecord medicalRecord=new MedicalRecord();
  583. medicalRecord.setRecId(rs.getString("BLJLID"));
  584. medicalRecord.setHospitalId(HOSPITAL_ID);//医院ID
  585. medicalRecord.setBehospitalCode(rs.getString("BRZYID"));//病人住院ID
  586. medicalRecord.setOrgCode(rs.getString("ZZJGDM"));//组织机构代码
  587. medicalRecord.setRecTypeId(rs.getString("BLMBID"));//对应his模板ID
  588. medicalRecord.setRecDate(rs.getString("BCJLSJ")!=null?DateUtil.parseDateTime(rs.getString("BCJLSJ")):null);//病历日期
  589. medicalRecord.setRecTitle(rs.getString("BLJLMC"));//病历标题
  590. medicalRecord.setModeId(Long.valueOf(rs.getString("BLLBID")));//对应his类别ID
  591. medicalRecordList.add(medicalRecord);
  592. }
  593. } catch (Exception e) {
  594. e.printStackTrace();
  595. }finally {
  596. close();
  597. }
  598. return medicalRecordList;
  599. }
  600. /**
  601. * 从视图中获取文书内容
  602. * @return
  603. */
  604. public List<MedicalRecordContent> getMedicalRecordContent(String sql){
  605. List<MedicalRecordContent> mrContentList=Lists.newLinkedList();
  606. try {
  607. TZDBConn dbconn=new TZDBConn();
  608. ResultSet rs =dbconn.Query(sql, null);
  609. while(rs.next()){
  610. MedicalRecordContent mrContent=new MedicalRecordContent();
  611. mrContent.setHospitalId(HOSPITAL_ID);
  612. mrContent.setRecId(rs.getString("BLJLID"));
  613. //mrContent.setHtmlText(rs.getString("HTMLSJ"));
  614. mrContent.setXmlText(rs.getString("BLJLNR"));
  615. mrContentList.add(mrContent);
  616. }
  617. } catch (Exception e) {
  618. e.printStackTrace();
  619. }finally {
  620. close();
  621. }
  622. return mrContentList;
  623. }
  624. /**
  625. * 从视图中获取文书类型
  626. * @return
  627. */
  628. public List<MedRecordType> getMedicalRecordType(String sql){
  629. List<MedRecordType> mrTypeList=Lists.newLinkedList();
  630. try {
  631. TZDBConn dbconn=new TZDBConn();
  632. ResultSet rs =dbconn.Query(sql, null);
  633. while(rs.next()){
  634. MedRecordType mrType=new MedRecordType();
  635. mrType.setTypeId(rs.getString("BLLBID"));
  636. mrType.setHospitalId(HOSPITAL_ID);
  637. mrType.setTypeName(rs.getString("BLLBMC"));
  638. mrType.setParentTypeId(rs.getString("SJLBID"));
  639. mrType.setObjName(rs.getString("BLLBFW"));
  640. mrType.setSpell(rs.getString("HZSRM1"));
  641. mrTypeList.add(mrType);
  642. }
  643. } catch (Exception e) {
  644. e.printStackTrace();
  645. }finally {
  646. close();
  647. }
  648. return mrTypeList;
  649. }
  650. /**
  651. * 从视图中获取化验
  652. * @return
  653. */
  654. public List<MedLisResult> getLisResult(String sql){
  655. List<MedLisResult> medLisResultList=Lists.newLinkedList();
  656. try {
  657. TZDBConn dbconn=new TZDBConn();
  658. ResultSet rs =dbconn.Query(sql, null);
  659. while(rs.next()){
  660. MedLisResult medLisResult=new MedLisResult();
  661. medLisResult.setReptNo(rs.getString(""));
  662. medLisResult.setHospitalId(HOSPITAL_ID);
  663. medLisResult.setBehospitalCode("");
  664. medLisResult.setItemCode("");
  665. medLisResult.setItemName("");
  666. medLisResult.setResult("");
  667. medLisResult.setReferenceMin("");
  668. medLisResult.setReferenceMax("");
  669. medLisResult.setUnit("");
  670. medLisResult.setAbnormal("");
  671. medLisResult.setColor("");
  672. medLisResultList.add(medLisResult);
  673. }
  674. } catch (Exception e) {
  675. e.printStackTrace();
  676. }finally {
  677. close();
  678. }
  679. return medLisResultList;
  680. }
  681. /**
  682. * 从视图中获取化验
  683. * @return
  684. */
  685. public List<MedPacsResult> getPacsResult(String sql){
  686. List<MedPacsResult> medPacsResultList=Lists.newLinkedList();
  687. try {
  688. TZDBConn dbconn=new TZDBConn();
  689. ResultSet rs =dbconn.Query(sql, null);
  690. while(rs.next()){
  691. MedPacsResult medPacsResult=new MedPacsResult();
  692. medPacsResult.setReptNo(rs.getString(""));
  693. medPacsResult.setHospitalId(HOSPITAL_ID);
  694. medPacsResult.setBehospitalCode("");
  695. medPacsResult.setReptName("");
  696. medPacsResult.setPart("");
  697. medPacsResult.setClinicSight("");
  698. medPacsResult.setReptDiag("");
  699. medPacsResult.setRemark("");
  700. medPacsResult.setClinicDiag("");
  701. medPacsResult.setApplyDoctor("");
  702. medPacsResult.setCheckerDoctor("");
  703. medPacsResult.setReportDoctor("");
  704. medPacsResult.setDeptName("");
  705. medPacsResultList.add(medPacsResult);
  706. }
  707. } catch (Exception e) {
  708. e.printStackTrace();
  709. }finally {
  710. close();
  711. }
  712. return medPacsResultList;
  713. }
  714. }