From c6b1cadc0214c6791a5c5bcc62ab57601e38f457 Mon Sep 17 00:00:00 2001
From: liuxiaolong <liuxiaolong@aiotlink.com>
Date: 星期四, 13 八月 2020 11:31:08 +0800
Subject: [PATCH] add db restriction
---
service/carService.go | 66 +++++++++++++++++++++++++-------
1 files changed, 51 insertions(+), 15 deletions(-)
diff --git a/service/carService.go b/service/carService.go
index 4727b3e..3fdff76 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
+ idMap := u.GetAllMap()
+ hikPM := make(map[string]string)
+ for _,hp := range hikPersons {
+ hikPM[hp.PersonId] = hp.PhoneNo
+ if sp,ok := idMap[hp.PersonId];ok {
+ if sp.PhoneNum != hp.PhoneNo {
+ u.UpdatePhoneNum(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