zhangzengfei
2024-10-19 9d4762cee4c0762dde9ee8712c3460c6f986f876
service/server.go
@@ -30,7 +30,7 @@
}
func GetTotal() (total int, err error) {
   url := "http://" + config.Options.EsUrl + "/ai_ocean/_search"
   url := "http://" + config.Options.EsUrl + "/ai_face_ocean/_search"
   queryDSL := `{
    "size": "1",
    "query": {
@@ -69,7 +69,7 @@
func GetData() (interface{}, error) {
   //fmt.Println(config.Options.EsUrl)
   //fmt.Println(config.Options.ServerUrl)
   url := "http://" + config.Options.EsUrl + "/ai_ocean/_search"
   url := "http://" + config.Options.EsUrl + "/ai_face_ocean/_search"
   queryDSL := `{
    "size": "1",
    "query": {
@@ -91,8 +91,7 @@
        }
    ]
}`
   //fmt.Println(url)
   //fmt.Println(queryDSL)
   buf, err := esutil.EsReq("POST", url, []byte(queryDSL))
   if err != nil {
      return nil, err
@@ -104,74 +103,52 @@
   if len(source) == 0 {
      return nil, nil
   }
   picMaxImages := make([][]byte, 0) // 存储图片数据的数组
   if source[0]["picMaxUrl"].([]interface{}) != nil {
      //picMaxUrls := source[0]["picMaxUrl"].([]interface{})
      if len(source[0]["picMaxUrl"].([]interface{})) > 0 {
         for _, picMaxUrl := range source[0]["picMaxUrl"].([]interface{}) {
            picMaxImageData, err := GetImageData("http://" + picMaxUrl.(string))
   b, _ := json.Marshal(source[0])
   var esInfoV2 model.ESInfoV2
   err = json.Unmarshal(b, &esInfoV2)
   if err != nil {
      return nil, err
   }
   picMaxImages := make([]byte, 0) // 存储图片数据的数组
   if esInfoV2.PicMaxUrl != "" {
      picMaxImages, err = GetImageData("http://" + esInfoV2.PicMaxUrl)
            if err != nil {
               logger.Warn("获取大图数据失败:", err.Error())
               continue
            }
            picMaxImages = append(picMaxImages, picMaxImageData)
         }
      }
   }
   if len(picMaxImages) == 0 {
      return nil, errors.New("获取大图失败, id:" + source[0]["id"].(string))
      return nil, errors.New("获取大图失败, id:" + esInfoV2.TargetInfo.PicSmUrl)
   }
   //fmt.Println("图片数据数组大小:", len(picMaxImages))
   picSmImages := make([][]byte, 0) // 存储图片数据的数组
   if source[0]["targetInfo"].(interface{}) != nil {
      for _, target := range source[0]["targetInfo"].([]interface{}) {
         info := target.(map[string]interface{})
         picSmUrl := info["picSmUrl"].(string)
         if picSmUrl == "" {
            continue
         }
         picSmImageData, err := GetImageData("http://" + picSmUrl)
   picSmImages := make([]byte, 0) // 存储图片数据的数组
   if esInfoV2.TargetInfo.PicSmUrl != "" {
      picSmImages, err = GetImageData("http://" + esInfoV2.TargetInfo.PicSmUrl)
         if err != nil {
            fmt.Println("获取小图数据失败:", err)
            continue
         }
         picSmImages = append(picSmImages, picSmImageData)
      }
   }
   if len(picSmImages) == 0 {
      return nil, errors.New("获取小图数据失败, id:" + source[0]["id"].(string))
      return nil, errors.New("获取小图数据失败, id:" + esInfoV2.Id)
   }
   // 上报机构名称
   //source[0]["orgName"] = config.Options.OrgName
   cameraAddr := source[0]["cameraAddr"].(string)
   if len(cameraAddr) > 6 {
      if cameraAddr[len(cameraAddr)-3:] == "楼" {
         cameraAddr = cameraAddr[:len(cameraAddr)-3] + "F"
      }
      if cameraAddr[len(cameraAddr)-3:] == "层" {
         cameraAddr = cameraAddr[:len(cameraAddr)-3] + "F"
      }
   }
   if strings.HasSuffix(cameraAddr, "F") {
      model.PushDataInfoV2.CameraFloor = extractFloor(cameraAddr)
   } else {
      model.PushDataInfoV2.CameraFloor = ""
   }
   model.PushDataInfoV2.CameraId = source[0]["cameraId"].(string)
   model.PushDataInfoV2.PicDate = source[0]["picDate"].(string)
   model.PushDataInfoV2.PicId = source[0]["id"].(string)
   model.PushDataInfoV2.PicMaxImages = picMaxImages
   model.PushDataInfoV2.PicSmImages = picSmImages
   var pushData = model.PushDataInfoV2
   pushData.CameraId = esInfoV2.CameraId
   pushData.PicDate = esInfoV2.PicDate
   pushData.PicId = esInfoV2.PicId
   pushData.CameraFloor = esInfoV2.CameraLocation.Floor
   pushData.Direction = esInfoV2.CameraLocation.Direction
   pushData.PicMaxImages = append(pushData.PicMaxImages, picMaxImages)
   pushData.PicSmImages = append(pushData.PicSmImages, picSmImages)
   //fmt.Println(model.PushDataInfo.SourceData)
   return model.PushDataInfoV2, nil
   return pushData, nil
}
func extractFloor(s string) string {