From 3737ab3dd0cc753be986638316c96cb3114601e4 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期日, 29 九月 2024 16:20:46 +0800
Subject: [PATCH] fix db column

---
 task/engine.go |   28 ++++++++++++++++++++++++++--
 1 files changed, 26 insertions(+), 2 deletions(-)

diff --git a/task/engine.go b/task/engine.go
index c6b3d28..0594e10 100644
--- a/task/engine.go
+++ b/task/engine.go
@@ -49,8 +49,8 @@
 	return false
 }
 
-func EnteringButNotLeaving(docNumber string, id string, days int) bool {
-	total, err := db.QueryTimesByDocNumberDays(days-1, docNumber)
+func EnteringButNotLeaving(docNumber string, communityId string, cameraIds []string, days int) bool {
+	total, err := db.QueryTimesByDocNumberDays(docNumber, communityId, cameraIds, days-1)
 	if err != nil {
 		logger.Error("QueryTimesByDocNumberDays err: ", err)
 	}
@@ -62,5 +62,29 @@
 }
 
 func registeredAddressNotMatchActualResidence(taskPerson db.TaskPerson) bool {
+	idCard := db.GetIdCardById(taskPerson.DocumentNumber)
+	if idCard == "" {
+		return false
+	}
+
+	if _, ok := cache.PublicHouse[taskPerson.CommunityId]; !ok {
+		return false
+	}
+
+	// 鏈夎韩浠借瘉鍙�, 灏忓尯灞炰簬鍏鎴�, 鍏鎴跨櫥璁拌韩浠借瘉鍙锋病鏈夎鏉¤褰�, 杩斿洖true
+	personStatus := db.GetDBPersonStatus(taskPerson.DocumentNumber, taskPerson.CommunityId)
+	logger.Debugf("Actual residence get person id:%s status: %s", taskPerson.DocumentNumber, personStatus)
+	if personStatus == "resident" || personStatus == "permanent_resident" {
+		if _, ok := cache.PublicHouse[taskPerson.CommunityId][idCard]; !ok {
+			// 鎺у埗绋嬪簭杩愯鏈熼棿鍙緭鍑轰竴娆℃姤璀�
+			if _, ok := cache.PublicHouseAlarmCache[idCard]; ok {
+				return false
+			} else {
+				cache.PublicHouseAlarmCache[idCard] = struct{}{}
+				return true
+			}
+		}
+	}
+
 	return false
 }

--
Gitblit v1.8.0