liuxiaolong
2020-07-28 fd0f54c293865ac775fa956a698db3fd5fc3a435
service/carService.go
@@ -27,13 +27,11 @@
      Left:           0,
   }
   parkList := sv.getHikParkList() //先查有几个停车场
   fmt.Println("parkList:", parkList)
   flag := false
   if parkList != nil {
      flag = true
      for _,p := range parkList {
         remainList := sv.getRemainSpaceNum(p.ParkIndexCode)
         fmt.Println("remainList:", remainList)
         if remainList != nil {
            for _,r := range remainList {
               m.Left += r.LeftPlace
@@ -157,13 +155,11 @@
   //先查车库唯一标识
   parkList := sv.getHikParkList() //先查有几个停车场
   if parkList != nil {
      url := "/api/pms/v1/parkingSpace/spaceNo"
      url := "/artemis/api/pms/v1/parkingSpace/spaceNo"
      for _,p := range parkList {
         reqBody := map[string]interface{} {
            "parkSyscode": p.ParkIndexCode,//停车库唯一标识
            "spaceNos": "",  //车位号,多个用逗号隔开
            "state": 1, //车位状态,0:空闲,1:停车
            "bindCars": "", //绑定的车辆车牌号,多个用逗号隔开
            //"state": 1, //车位状态,0:空闲,1:停车
            "pageNo": 1,
            "pageSize": 1000,
         }
@@ -201,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": "",//楼层唯一标识码
@@ -209,4 +205,95 @@
   }
   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": 1000,
   }
   fmt.Println(url, reqBody)
   result := sv.hikUtil.Post(url, reqBody)
   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
         } else {
            fmt.Println("unmarshal err:", err)
         }
      } else {
         fmt.Println("marshal err:", err)
      }
   }
   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
}