From 28c5cf41c5064579dd62f79fd40dc5990e9565b2 Mon Sep 17 00:00:00 2001 From: sunty <1172534965@qq.com> Date: 星期一, 09 九月 2024 20:52:54 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- task/engine.go | 28 ++++++++++++++++++++++++++-- 1 files changed, 26 insertions(+), 2 deletions(-) diff --git a/task/engine.go b/task/engine.go index 53c59c2..0594e10 100644 --- a/task/engine.go +++ b/task/engine.go @@ -49,8 +49,8 @@ return false } -func EnteringButNotLeaving(docNumber 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