Ver código fonte

혈압 추가 및 업데이트 쿼리 버그 수정, 임상증상 미입력 필터 적용 시 데이터가 처음부터 없는 경우 처리 추가

maengje 4 anos atrás
pai
commit
b815e5e92f

+ 11 - 6
src/main/resources/mybatis/mapper/patient/patientPHRLatest.xml

@@ -69,13 +69,18 @@
 	    </if>
 	    <if test='systolicBloodPressure != null and systolicBloodPressure != ""'>
 	    <![CDATA[
-   			, #{systolicBloodPressure}, NOW(), #{highBloodPressureAlarmYN}, #{lowBloodPressureAlarmYN}
+   			, #{systolicBloodPressure}, NOW()
 	    ]]>
 	    </if>
 	    <if test='diastolicBloodPressure != null and diastolicBloodPressure != ""'>
 	    <![CDATA[
    			, #{diastolicBloodPressure}, NOW()
 	    ]]>
+	    </if>
+	     <if test='(systolicBloodPressure != null and systolicBloodPressure != "") or (diastolicBloodPressure != null and diastolicBloodPressure != "")'>
+	    <![CDATA[
+   			, #{highBloodPressureAlarmYN}, #{lowBloodPressureAlarmYN}
+	    ]]>
 	    </if>
 	    <if test='bloodSugar != null and bloodSugar != ""'>
 	    <![CDATA[
@@ -119,7 +124,7 @@
 	    </if>
 	    <if test='(systolicBloodPressure != null and systolicBloodPressure != "") or (diastolicBloodPressure != null and diastolicBloodPressure != "")'>
 	    <![CDATA[
-   			, high_blood_alarm_yn = #{highBloodPressureAlarmYN}, low_blood_pressure_alarm_yn = #{lowBloodPressureAlarmYN}
+   			, high_blood_pressure_alarm_yn = #{highBloodPressureAlarmYN}, low_blood_pressure_alarm_yn = #{lowBloodPressureAlarmYN}
 	    ]]>
 	    </if>
 	    <if test='bloodSugar != null and bloodSugar != ""'>
@@ -207,12 +212,12 @@
 	                </when> 
 	                <when test="filter == 'symptomBlank' and timeCriterion == 'AM'" >
 	                <![CDATA[
-	                	DATEDIFF(p.symptom_create_date, CURDATE()) != 0
+	                	(p.symptom_create_date IS NULL) OR (DATEDIFF(p.symptom_create_date, CURDATE()) != 0)
 	                ]]>
 	                </when>
 	                <when test="filter == 'symptomBlank' and timeCriterion == 'PM'" >
 	                <![CDATA[
-	                	DATEDIFF(p.symptom_create_date, CURDATE()) != 0 OR HOUR(p.symptom_create_date) < 12
+	                	(p.symptom_create_date IS NULL) OR (DATEDIFF(p.symptom_create_date, CURDATE()) != 0 OR HOUR(p.symptom_create_date) < 12)
 	                ]]>
 	                </when>              
 	        	</choose>     
@@ -328,12 +333,12 @@
 	                </when> 
 	                <when test="filter == 'symptomBlank' and timeCriterion == 'AM'" >
 	                <![CDATA[
-	                	DATEDIFF(p.symptom_create_date, CURDATE()) != 0
+	                	(p.symptom_create_date IS NULL) OR (DATEDIFF(p.symptom_create_date, CURDATE()) != 0)
 	                ]]>
 	                </when>
 	                <when test="filter == 'symptomBlank' and timeCriterion == 'PM'" >
 	                <![CDATA[
-	                	DATEDIFF(p.symptom_create_date, CURDATE()) != 0 OR HOUR(p.symptom_create_date) < 12
+	                	(p.symptom_create_date IS NULL) OR (DATEDIFF(p.symptom_create_date, CURDATE()) != 0 OR HOUR(p.symptom_create_date) < 12)
 	                ]]>
 	                </when>              
 	        	</choose>