Переглянути джерело

测温记录去重改为显示最后一条测温记录(rownum_最大的一条),由于是4月7日才开始用rownum_,只能保证从今以后记录中最后记录的rownum_是最大的。

zhengqiang 5 роки тому
батько
коміт
2d964f0a98

+ 20 - 3
common/src/main/resources/mapper/base/PersonDeviceLog.xml

@@ -165,10 +165,27 @@
             <if test="searchParams.matchMsg != null">
                 and a.match_msg like #{searchParams.matchMsg}
             </if>
+            <if test="searchParams.distinct">
+                and a.rownum_ in (
+                    SELECT max(rownum_)
+                    from base_person_device_log
+                    <where>
+                        del_flag=0
+                        <if test="searchParams.beginTime != null">
+                        <![CDATA[
+                          and record_time >= #{searchParams.beginTime}
+                        ]]>
+                        </if>
+                        <if test="searchParams.endTime != null">
+                        <![CDATA[
+                          and record_time <= #{searchParams.endTime}
+                        ]]>
+                        </if>
+                    </where>
+                    GROUP BY person_id
+                )
+            </if>
         </where>
-        <if test="searchParams.distinct">
-            group by a.person_id
-        </if>
         <foreach item="sort" collection="sortList"  open="order by" separator=",">
             ${sort.name} ${sort.order}
         </foreach>