Browse Source

최신데이터 업데이트 쿼리 버그 수정

maengje 4 years ago
parent
commit
b588a85051
1 changed files with 24 additions and 27 deletions
  1. 24 27
      src/main/resources/mybatis/mapper/patient/patientPHRLatest.xml

+ 24 - 27
src/main/resources/mybatis/mapper/patient/patientPHRLatest.xml

@@ -128,35 +128,32 @@
 	    ]]>
 	    </if>
 	 	<![CDATA[
-	 	WHERE 1=1
+	 	WHERE patient_idx = #{patientIdx}
 	 	]]>
 	 		<if test='temperature != null and temperature != ""'>
 		    <![CDATA[
-	   			AND temperature_create_date < #{temperatureCreateDate}
+	   			AND (temperature_create_date IS NULL OR temperature_create_date < #{temperatureCreateDate})
 		    ]]>
 		    </if>
 		    <if test='oxygenSaturation != null and oxygenSaturation != ""'>
 		    <![CDATA[
-	   			AND oxygen_saturation_create_date < #{oxygenSaturationCreateDate}
+	   			AND (oxygen_saturation_create_date IS NULL OR oxygen_saturation_create_date < #{oxygenSaturationCreateDate})
 		    ]]>
 		    </if>		   
 		    <if test='bloodSugar != null and bloodSugar != ""'>
 		    <![CDATA[
-	   			AND blood_sugar_create_date < #{bloodSugarCreateDate}
+	   			AND (blood_sugar_create_date IS NULL OR blood_sugar_create_date < #{bloodSugarCreateDate})
 		    ]]>
-		    </if>
-		    <if test='symptomYN != null and symptomYN != ""'>
-		    <![CDATA[
-	   			AND symptom_create_date = NOW()
-	    	]]>
-	    	</if>
+		    </if>		   
 	</update>
 	<update id="updatePHRLatestPulseRate" parameterType="PatientPHRLatestDTO">
    		<![CDATA[
 		UPDATE patient_phr_latest 
 		SET	update_date = NOW()
    			, pulse_rate = #{pulseRate}, pulse_rate_create_date = NOW(), pulse_rate_alarm_yn = #{pulseRateAlarmYN}   
-	 	WHERE pulse_rate_create_date < #{pulseRateCreateDate}
+	 	WHERE patient_idx = #{patientIdx} 
+ 		AND 
+ 			(pulse_rate_create_date IS NULL OR pulse_rate_create_date < #{pulseRateCreateDate})
 	 	]]>
 	</update>
 	<update id="updatePHRLatestBloodPressure" parameterType="PatientPHRLatestDTO">
@@ -175,23 +172,23 @@
 	    ]]>
 	    </if>
 	 	<![CDATA[
-	 	WHERE 1=1
+	 	WHERE patient_idx = #{patientIdx}
 	 	]]>
-	 		<if test='systolicBloodPressure != null and systolicBloodPressure != "" and diastolicBloodPressure = null and diastolicBloodPressure = ""'>
-		    <![CDATA[
-	   			AND systolic_blood_pressure_create_date < #{systolicBloodPressureCreateDate}
-		    ]]>
-		    </if>
-		    <if test='diastolicBloodPressure != null and diastolicBloodPressure != "" and systolicBloodPressure = null and systolicBloodPressure = ""'>
-		    <![CDATA[
-	   			AND diastolic_blood_pressure_create_date < #{diastolicBloodPressureCreateDate}
-		    ]]>
-		    </if>
-		    <if test='systolicBloodPressure != null and systolicBloodPressure != "" and diastolicBloodPressure != null and diastolicBloodPressure != ""'>
-		    <![CDATA[
-	   			AND (systolic_blood_pressure_create_date < #{systolicBloodPressureCreateDate} OR diastolic_blood_pressure_create_date < #{diastolicBloodPressureCreateDate})
-		    ]]>
-		    </if>
+ 		<if test='systolicBloodPressure != null and systolicBloodPressure != "" and diastolicBloodPressure = null and diastolicBloodPressure = ""'>
+	    <![CDATA[
+		AND (systolic_blood_pressure_create_date IS NULL OR systolic_blood_pressure_create_date < #{systolicBloodPressureCreateDate})
+	    ]]>
+	    </if>
+	    <if test='diastolicBloodPressure != null and diastolicBloodPressure != "" and systolicBloodPressure = null and systolicBloodPressure = ""'>
+	    <![CDATA[
+   		AND (diastolic_blood_pressure_create_date IS NULL OR diastolic_blood_pressure_create_date < #{diastolicBloodPressureCreateDate})
+	    ]]>
+	    </if>
+	    <if test='systolicBloodPressure != null and systolicBloodPressure != "" and diastolicBloodPressure != null and diastolicBloodPressure != ""'>
+	    <![CDATA[
+   		AND (systolic_blood_pressure_create_date IS NULL OR systolic_blood_pressure_create_date < #{systolicBloodPressureCreateDate} OR diastolic_blood_pressure_create_date IS NULL OR diastolic_blood_pressure_create_date < #{diastolicBloodPressureCreateDate})
+	    ]]>
+	    </if>
 	</update>
 	 <select id="selectPHRLatest" parameterType="PatientPHRLatestDTO" resultType="PatientPHRLatestDTO">
     <![CDATA[