From 1a53b90590d70be1b389f33ae81c47f0d5238d48 Mon Sep 17 00:00:00 2001 From: liuxiaolong <liuxiaolong@aiotlink.com> Date: 星期三, 12 八月 2020 10:18:06 +0800 Subject: [PATCH] add userClient --- service/carService.go | 66 +++++++++++++++++++++++++------- 1 files changed, 51 insertions(+), 15 deletions(-) diff --git a/service/carService.go b/service/carService.go index 4727b3e..a3c45e0 100644 --- a/service/carService.go +++ b/service/carService.go @@ -25,14 +25,14 @@ func (sv *CarService) Statistic() (*models.CarStatistic, bool) { m := models.CarStatistic{ - TotalPermPlace: 0, - Left: 0, + TotalPlace: 0, + Left: 0, } remainList := sv.getRemainSpaceNum("") if remainList != nil { for _,r:=range remainList { - m.TotalPermPlace += r.TotalPermPlace + m.TotalPlace += r.TotalPlace m.Left += r.LeftPlace } return &m, true @@ -145,11 +145,13 @@ func (sv *CarService) FindSpaceNo(userId string) models.PosResult { resultList := make(models.PosResult,0) var myPlateNosMap = make(map[string]string) - vehicles := sv.GetVehicleListByPerson(userId) - if vehicles != nil { - for _,veh := range vehicles { - myPlateNosMap[veh.PlateNo] = veh.PlateNo - //myPlateNos = append(myPlateNos, veh.PlateNo) + if userId !="" { + vehicles := sv.GetVehicleListByPerson(userId) + if vehicles != nil { + for _,veh := range vehicles { + myPlateNosMap[veh.PlateNo] = veh.PlateNo + //myPlateNos = append(myPlateNos, veh.PlateNo) + } } } @@ -177,21 +179,22 @@ return nil } for _,s := range spaceList { - isMine := false - if _,exist := myPlateNosMap[s.PlateNos]; exist { - isMine = true - } + pi := models.PosInfo { SpaceNo: s.SpaceNo, PosNo: "", State: s.State, - IsMine: isMine, } if s.PlateNo != "" { pi.PlateNo = s.PlateNo } else if s.PlateNos != "" { pi.PlateNo = s.PlateNos } + isMine := false + if _,exist := myPlateNosMap[pi.PlateNo]; exist { + isMine = true + } + pi.IsMine = isMine if v,ok := models.SpaceNo2Pos[s.SpaceNo];ok { pi.PosNo = v } @@ -300,6 +303,34 @@ return list } +func SyncHikPerson() int { + syncCount := 0 + sv := NewCarService() + hikPersons := sv.GetHikPersonList() + if hikPersons != nil && len(hikPersons) >0 { + var u models.User + 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 { fmt.Println(url, reqBody) result := sv.hikUtil.Post(url, reqBody) @@ -347,11 +378,14 @@ url := "/artemis/api/resource/v2/vehicle/advance/vehicleList" reqBody := map[string]interface{} { "pageNo": 1, - "pageSize": 100, - "personIds": personId, + "pageSize": 1000, + } + if personId != "" { + reqBody["personIds"] = personId } pageResult := sv.getHikPageResult(url, reqBody) if pageResult ==nil { + fmt.Println("GetVehicleListByPerson pageResult is nil") return nil } @@ -360,6 +394,8 @@ var list []HikVehicle if err = json.Unmarshal(b, &list);err == nil { return list + } else { + fmt.Println("unmarshal err:", err) } } -- Gitblit v1.8.0