From eef11eeadc679b1ad7bd23c983a67318d7cd3705 Mon Sep 17 00:00:00 2001
From: liuxiaolong <liuxiaolong@aiotlink.com>
Date: 星期二, 11 八月 2020 17:34:00 +0800
Subject: [PATCH] sync user from hik manual,ret syncCount

---
 service/carService.go |   18 +++++++++++++++---
 1 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/service/carService.go b/service/carService.go
index 964c706..a3c45e0 100644
--- a/service/carService.go
+++ b/service/carService.go
@@ -303,20 +303,32 @@
 	return list
 }
 
-func SyncHikPerson() {
+func SyncHikPerson() int {
+	syncCount := 0
 	sv := NewCarService()
 	hikPersons := sv.GetHikPersonList()
-	if hikPersons != nil {
+	if hikPersons != nil && len(hikPersons) >0 {
 		var u models.User
-		uMap := u.GetAllMapByPhone()
+		uMap,idMap := u.GetAllMapByPhone()
+		hikPM := make(map[string]string)
 		for _,hp := range hikPersons {
+			hikPM[hp.PersonId] = hp.PersonId
 			if sp,ok := uMap[hp.PhoneNo];ok {
 				if sp.Id != hp.PersonId {
 					u.SyncHikPersonId(hp.PhoneNo, hp.PersonId)
+					syncCount++
 				}
 			}
 		}
+		for k,_ := range idMap {
+			if _,in := hikPM[k];!in {
+				u.Delete(k)
+				syncCount++
+			}
+		}
+
 	}
+	return syncCount
 }
 
 func (sv *CarService) getHikPageResult(url string, reqBody map[string]interface{}) *vo.HikPageResult {

--
Gitblit v1.8.0