patient.xml 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.lemon.lifecenter.mapper.PatientMapper">
  4. <select id="selectPatientCount" parameterType="PatientDTO" resultType="int">
  5. <![CDATA[
  6. SELECT count(*) AS total
  7. FROM PATIENT_CARE
  8. WHERE 1 = 1
  9. ]]>
  10. <if test='state != "ALL"'>
  11. <![CDATA[
  12. AND STATE = #{state}
  13. ]]>
  14. </if>
  15. <if test='patientName != null and patientName != ""'>
  16. <![CDATA[
  17. AND PATIENT_NAME LIKE CONCAT('%', #{patientName}, '%')
  18. ]]>
  19. </if>
  20. <if test='startDate != null and startDate != "" and endDate != null and endDate != ""'>
  21. <![CDATA[
  22. AND DATE_FORMAT(FINAL_CLINIC_DATE, '%Y-%m-%d') BETWEEN #{startDate} AND #{endDate}
  23. ]]>
  24. </if>
  25. </select>
  26. <select id="selectPatientList" parameterType="PatientDTO" resultType="PatientDTO">
  27. <![CDATA[
  28. SELECT ROWNUM AS num,
  29. PATIENT_NAME AS patientName,
  30. GENDER AS gender,
  31. (SELECT TRUNC((SYSDATE-TO_DATE(19 || JUMIN, 'YYYYMMDD'))/365) + 1) AS age,
  32. ward_number AS wardNumber,
  33. room_number AS roomNumber,
  34. DATE_FORMAT(FINAL_CLINIC_DATE, '%Y-%m-%d %H:%i') AS finamClinicDate,
  35. DATE_FORMAT(HOSPITALIZATION_DATE, '%Y-%m-%d %H:%i') AS hospitalizationDate,
  36. DATE_FORMAT(DISISOLATION_DATE, '%Y-%m-%d %H:%i') AS disisolationDate,
  37. STATE AS state
  38. FROM PATIENT_CARE
  39. WHERE 1 = 1
  40. ]]>
  41. <if test='state != "ALL"'>
  42. <![CDATA[
  43. AND STATE = #{state}
  44. ]]>
  45. </if>
  46. <if test='patientName != null and patientName != ""'>
  47. <![CDATA[
  48. AND PATIENT_NAME LIKE CONCAT('%', #{patientName}, '%')
  49. ]]>
  50. </if>
  51. <if test='startDate != null and startDate != "" and endDate != null and endDate != ""'>
  52. <![CDATA[
  53. AND DATE_FORMAT(FINAL_CLINIC_DATE, '%Y-%m-%d') BETWEEN #{startDate} AND #{endDate}
  54. ]]>
  55. </if>
  56. <![CDATA[
  57. ORDER BY HOSPITALIZATION_DATE DESC
  58. LIMIT ${limit}, ${limitMax}
  59. ]]>
  60. </select>
  61. </mapper>