From dd39847ba992605ef5fe2254140e8bfd8cf04b25 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期四, 06 二月 2025 14:39:45 +0800
Subject: [PATCH] 修改托管模型

---
 models/disappear.go |   30 ++++++++++++++++++------------
 1 files changed, 18 insertions(+), 12 deletions(-)

diff --git a/models/disappear.go b/models/disappear.go
index 8ad5215..c82bfcf 100644
--- a/models/disappear.go
+++ b/models/disappear.go
@@ -101,24 +101,25 @@
 			s.community_id,
 			s.org_id,
 			p.person_name,
-			p.id_card ,
+			p.id_card,
 			s.last_appearance_time,
 			s.last_direction,
-			s.last_location
+			s.last_location 
 		FROM
 			snapshot_count_summary AS s
 			JOIN person AS p ON p.id = s.document_number 
 		WHERE
-			s.STATUS = 'resident' 
-			AND p.id_card != "" 
+			p.id_card != "" 
 			AND TIMESTAMPDIFF(
 				YEAR,
 				STR_TO_DATE( CASE WHEN LENGTH( id_card ) = 18 THEN SUBSTRING( id_card, 7, 8 ) ELSE NULL END, '%Y%m%d' ),
-			CURDATE( ) >= ?
-		    AND TIMESTAMPDIFF(
+				CURDATE( ) 
+			) >= ? 
+			AND TIMESTAMPDIFF(
 				YEAR,
 				STR_TO_DATE( CASE WHEN LENGTH( id_card ) = 18 THEN SUBSTRING( id_card, 7, 8 ) ELSE NULL END, '%Y%m%d' ),
-			CURDATE( ) <= ?
+			CURDATE( ) 
+			) <= ?
 		`, m.MinAge, m.MaxAge).Scan(&ageFilter).Error
 		if err != nil {
 			logger.Warnf(err.Error())
@@ -196,12 +197,12 @@
 		}
 
 		logger.Debugf("match key person result %d", len(keyFilter))
-	}
 
-	if len(lastFilter) > 0 {
-		lastFilter = intersectPersonInfo(lastFilter, keyFilter)
-	} else {
-		lastFilter = keyFilter
+		if len(lastFilter) > 0 {
+			lastFilter = intersectPersonInfo(lastFilter, keyFilter)
+		} else {
+			lastFilter = keyFilter
+		}
 	}
 
 	logger.Debugf("last result %d", len(lastFilter))
@@ -241,6 +242,11 @@
 	return service.SaveTaskResults(results)
 }
 
+func (m *DisappearModel) KeepAlive() error {
+	db.GetDB().Model(m.Task).Where("id = ?", m.Task.ID).Update("last_run_time", time.Now())
+	return nil
+}
+
 func (m *DisappearModel) Shutdown() error {
 	// 娓呯悊璧勬簮
 	fmt.Println("Shutting down Disappear Model")

--
Gitblit v1.8.0