From 2d2f913495b6e1a93f928acbd99298b33088ae0c Mon Sep 17 00:00:00 2001 From: liuxiaolong <liuxiaolong@aiotlink.com> Date: 星期二, 28 七月 2020 10:18:09 +0800 Subject: [PATCH] add hik person and plateNo --- controllers/user.go | 27 +++++++- routers/router.go | 2 service/carService.go | 92 ++++++++++++++++++++++++++++++ 3 files changed, 114 insertions(+), 7 deletions(-) diff --git a/controllers/user.go b/controllers/user.go index 1e7f612..e182eb4 100644 --- a/controllers/user.go +++ b/controllers/user.go @@ -132,12 +132,14 @@ func (u *UserController) MyPlateNos() { userId := u.GetString("userId") fmt.Println("MyPlateNos userId", userId) - var uc models.UserCar - all, err := uc.GetByUserId(userId) - fmt.Println("all:", all, "err:", err) + //var uc models.UserCar + //all, err := uc.GetByUserId(userId) + var sv service.CarService + vehicleList := sv.GetVehicleListByPerson(userId) + fmt.Println("vehicleList:", vehicleList) var nos = make([]string, 0) - if err == nil && all != nil { - for _,p := range all { + if vehicleList != nil { + for _,p := range vehicleList { nos = append(nos, p.PlateNo) } } @@ -171,3 +173,18 @@ u.ServeJSON() } +func (u *UserController) GetUserAll() { + resp := code.Code{} + var sv service.CarService + personAll := sv.GetHikPersonList() + if personAll != nil { + resp.Success = true + resp.Status = http.StatusOK + resp.Data = personAll + } + u.Data["json"] = resp + u.ServeJSON() +} + + + diff --git a/routers/router.go b/routers/router.go index cf28446..e2cd36d 100644 --- a/routers/router.go +++ b/routers/router.go @@ -50,4 +50,6 @@ beego.Router(preApi+"/user/addPlateNo", &controllers.UserController{}, "*:AddPlateNo") beego.Router(preApi+"/user/myPlateNos", &controllers.UserController{}, "*:MyPlateNos") beego.Router(preApi+"/user/delPlateNo", &controllers.UserController{}, "*:DelPlateNo") + + beego.Router(preApi+"/user/all", &controllers.UserController{}, "*:GetUserAll") } diff --git a/service/carService.go b/service/carService.go index 25c03df..1c05619 100644 --- a/service/carService.go +++ b/service/carService.go @@ -159,7 +159,7 @@ for _,p := range parkList { reqBody := map[string]interface{} { "parkSyscode": p.ParkIndexCode,//鍋滆溅搴撳敮涓�鏍囪瘑 - "state": 1, //杞︿綅鐘舵�侊紝0锛氱┖闂诧紝1锛氬仠杞� + //"state": 1, //杞︿綅鐘舵�侊紝0锛氱┖闂诧紝1锛氬仠杞� "pageNo": 1, "pageSize": 1000, } @@ -197,7 +197,7 @@ } func (sv *CarService) BindCarSpace() bool { - url := "/api/pms/v1/parking_space/car_bind/add" + url := "/artemis/api/pms/v1/parking_space/car_bind/add" reqBody := map[string]interface{} { "spaceNos": "", //缁戝畾鐨勮溅浣嶉泦 "floorSyscode": "",//妤煎眰鍞竴鏍囪瘑鐮� @@ -205,4 +205,92 @@ } fmt.Println(url, reqBody) return true +} + +type HikPerson struct { + PersonId string `json:"personId"` + PersonName string `json:"personName"` + Gender int `json:"gender"` + Phone string `json:"phone"` + JobNo string `json:"jobNo"` + OrgIndexCode string `json:"orgIndexCode"` + CertificateType string `json:"certificateCode"` + CertificateNo string `json:"certificateNo"` + CreateTime string `json:"createTime"` + UpdateTime string `json:"updateTime"` + OrgPath string `json:"orgPath"` + OrgPathName string `json:"orgPathName"` + PersonPhone []HikPersonPhoto `json:"personPhoto"` +} + +type HikPersonPhoto struct { + PersonPhotoIndexCode string `json:"personPhotoIndexCode"` + PicUri string `json:"picUri"` + ServerIndexCode string `json:"serverIndexCode"` + PersonId string `json:"personId"` +} + +func (sv *CarService) GetHikPersonList() []HikPerson { + url := "/artemis/api/resource/v2/person/personList" + reqBody := map[string]interface{} { + "pageNo": 1, + "pageSize": 10000, + } + fmt.Println(url, reqBody) + result := sv.hikUtil.Post(url, reqBody) + fmt.Println("findPersonList result:", result) + if result.Code == reqUtil.HikResult_Success { + b, err := json.Marshal(result.Data) + if err == nil { + var list []HikPerson + if err = json.Unmarshal(b, &list);err == nil { + return list + } + } + } + return nil +} + +type HikVehicle struct { + VehicleId string `json:"vehicleId"` + PlateNo string `json:"plateNo"` + PersonId string `json:"personId"` + RegionIndexCode string `json:"regionIndexCode"` + PlateType int `json:"plateType"` + PlateColor int `json:"plateColor"` + VehicleType int `json:"vehicleType"` + VehicleColor int `json:"vehicleColor"` + Description string `json:"description"` + CreateTime string `json:"createTime"` + UpdateTime string `json:"updateTime"` + RegionName string `json:"regionName"` + RegionPath string `json:"regionPath"` + RegionPathName string `json:"regionPathName"` + IsBandPerson int `json:"isBandPerson"` + PersonName string `json:"personName"` + OrgPath string `json:"orgPath"` + OrgPathName string `json:"orgPathName"` +} + +//鑾峰彇鎸囧畾浜哄憳鐨勮溅杈嗚溅鐗屼俊鎭� +func (sv *CarService) GetVehicleListByPerson(personId string) []HikVehicle { + url := "/artemis/api/resource/v2/vehicle/advance/vehicleList" + reqBody := map[string]interface{} { + "pageNo": 1, + "pageSize": 100, + "personIds": personId, + } + fmt.Println(url, reqBody) + result := sv.hikUtil.Post(url, reqBody) + fmt.Println("getVehicleList result:", result) + if result.Code == reqUtil.HikResult_Success { + b, err := json.Marshal(result.Data) + if err == nil { + var list []HikVehicle + if err = json.Unmarshal(b, &list);err == nil { + return list + } + } + } + return nil } \ No newline at end of file -- Gitblit v1.8.0