浏览代码

修正设备查询bug

liuxiulin 8 月之前
父节点
当前提交
7fae61a50e
共有 3 个文件被更改,包括 87 次插入90 次删除
  1. 41 43
      services/knowoapi/controllers/device.go
  2. 1 1
      services/knowoapi/model/device.go
  3. 45 46
      services/knowoapi/services/device.go

+ 41 - 43
services/knowoapi/controllers/device.go

@@ -3,8 +3,6 @@ package controllers
 import (
 	"errors"
 	"fmt"
-	"io"
-	"sparrow/pkg/models"
 	"sparrow/pkg/rpcs"
 	"sparrow/pkg/server"
 	"sparrow/services/knowoapi/services"
@@ -220,45 +218,45 @@ func (a *DeviceController) GetLivechart() {
 
 // Upgrade ota升级
 // POST /devices/upgrade
-func (a *DeviceController) Upgrade() {
-	params := new(models.UpgradeParams)
-	if err := parseBody(a.Ctx, params); err != nil {
-		badRequest(a.Ctx, err)
-		return
-	}
-	params.VendorID = a.Token.getVendorID(a.Ctx)
-	file, header, err := a.Ctx.FormFile("file")
-	if err != nil {
-		responseError(a.Ctx, ErrNormal, err.Error())
-		return
-	}
-	fileBytes, err := io.ReadAll(file)
-	if err != nil {
-		responseError(a.Ctx, ErrNormal, err.Error())
-		return
-	}
-	params.FileSize = header.Size
-	params.File = fileBytes
-	params.FileName = header.Filename
-	err = a.Service.Upgrade(params)
-	if err != nil {
-		responseError(a.Ctx, ErrNormal, err.Error())
-		return
-	}
-	done(a.Ctx, params)
-}
-
-// OtaProgress ota升级
-// GET /devices/ota/progress?deviceId=
-func (a *DeviceController) OtaProgress() {
-	deviceId := a.Ctx.URLParam("deviceId")
+//func (a *DeviceController) Upgrade() {
+//	params := new(models.UpgradeParams)
+//	if err := parseBody(a.Ctx, params); err != nil {
+//		badRequest(a.Ctx, err)
+//		return
+//	}
+//	params.VendorID = a.Token.getVendorID(a.Ctx)
+//	file, header, err := a.Ctx.FormFile("file")
+//	if err != nil {
+//		responseError(a.Ctx, ErrNormal, err.Error())
+//		return
+//	}
+//	fileBytes, err := io.ReadAll(file)
+//	if err != nil {
+//		responseError(a.Ctx, ErrNormal, err.Error())
+//		return
+//	}
+//	params.FileSize = header.Size
+//	params.File = fileBytes
+//	params.FileName = header.Filename
+//	err = a.Service.Upgrade(params)
+//	if err != nil {
+//		responseError(a.Ctx, ErrNormal, err.Error())
+//		return
+//	}
+//	done(a.Ctx, params)
+//}
 
-	data, err := a.Service.GetUpgradeProgress(deviceId)
-	if err != nil {
-		responseError(a.Ctx, ErrDatabase, err.Error())
-		return
-	}
-	done(a.Ctx, map[string]interface{}{
-		"progress": data.Progress,
-	})
-}
+//// OtaProgress ota升级
+//// GET /devices/ota/progress?deviceId=
+//func (a *DeviceController) OtaProgress() {
+//	deviceId := a.Ctx.URLParam("deviceId")
+//
+//	data, err := a.Service.GetUpgradeProgress(deviceId)
+//	if err != nil {
+//		responseError(a.Ctx, ErrDatabase, err.Error())
+//		return
+//	}
+//	done(a.Ctx, map[string]interface{}{
+//		"progress": data.Progress,
+//	})
+//}

+ 1 - 1
services/knowoapi/model/device.go

@@ -137,7 +137,7 @@ func (a *Device) GetDevices(vendorid, proid string, pi, ps int, deviceid string)
 		tx = tx.Where("product_id = ?", proid)
 	}
 	if deviceid != "" {
-		tx = tx.Where("device_identifier = ?", deviceid)
+		tx = tx.Where("device_identifier like ?", "%"+deviceid+"%")
 	}
 	err = tx.Limit(ps).Offset((pi - 1) * ps).Find(&datas).Error
 	tx.Model(&models.Device{}).Count(&total)

+ 45 - 46
services/knowoapi/services/device.go

@@ -1,7 +1,6 @@
 package services
 
 import (
-	"github.com/gogf/gf/util/guid"
 	"sparrow/pkg/models"
 	"sparrow/pkg/rpcs"
 	"sparrow/pkg/server"
@@ -24,10 +23,10 @@ type DeviceService interface {
 	GetDevices(vendorid, proid string, pi, ps int, deviceid string) ([]*models.Devices, int, error)
 	//获取用户下所有设备的数量,在线设备的数量,离线设备的数量
 	GetDevicesCountByVenderId(vendorid string) (map[string]interface{}, error)
-	// 发起设备OTA升级
-	Upgrade(params *models.UpgradeParams) error
-	// GetUpgradeProgress 获取ota升级进度
-	GetUpgradeProgress(deviceId string) (rpcs.ReplyOtaProgress, error)
+	//// 发起设备OTA升级
+	//Upgrade(params *models.UpgradeParams) error
+	//// GetUpgradeProgress 获取ota升级进度
+	//GetUpgradeProgress(deviceId string) (rpcs.ReplyOtaProgress, error)
 }
 
 type deviceservice struct {
@@ -129,44 +128,44 @@ func (a deviceservice) GetDevicesCountByVenderId(vendorid string) (map[string]in
 	return deviceCount, nil
 }
 
-func (a deviceservice) Upgrade(param *models.UpgradeParams) error {
-
-	var fileArgs rpcs.ArgsOtaFile
-	fileArgs.FileData = param.File
-	fileArgs.FileId = guid.S()
-	var reply rpcs.ReplyEmptyResult
-
-	err := server.RPCCallByName(nil, rpcs.DeviceManagerName, "DeviceManager.SavaFile", fileArgs, &reply)
-	if err != nil {
-		server.Log.Errorf("OTA升级文件保存失败:%v", err)
-		return err
-	}
-
-	var args rpcs.ArgsUpgrade4G
-	args.DeviceId = param.DeviceID
-	args.FileId = fileArgs.FileId
-	args.FileSize = param.FileSize
-
-	err = server.RPCCallByName(nil, rpcs.MQTTAccessName, "Access.UpgradeFor4G", args, &reply)
-	if err != nil {
-		server.Log.Errorf("4G模组OTA升级失败:%v", err)
-		return err
-	}
-
-	return nil
-}
-
-func (a deviceservice) GetUpgradeProgress(deviceId string) (rpcs.ReplyOtaProgress, error) {
-	var args rpcs.ArgsOtaProgress
-	args.DeviceId = deviceId
-
-	var reply rpcs.ReplyOtaProgress
-
-	err := server.RPCCallByName(nil, rpcs.DeviceManagerName, "DeviceManager.GetProgress", args, &reply)
-	if err != nil {
-		server.Log.Errorf("OTA升级进度获取失败:%v", err)
-		return reply, err
-	}
-
-	return reply, nil
-}
+//func (a deviceservice) Upgrade(param *models.UpgradeParams) error {
+//
+//	var fileArgs rpcs.ArgsOtaFile
+//	fileArgs.FileData = param.File
+//	fileArgs.FileId = guid.S()
+//	var reply rpcs.ReplyEmptyResult
+//
+//	err := server.RPCCallByName(nil, rpcs.DeviceManagerName, "DeviceManager.SavaFile", fileArgs, &reply)
+//	if err != nil {
+//		server.Log.Errorf("OTA升级文件保存失败:%v", err)
+//		return err
+//	}
+//
+//	var args rpcs.ArgsUpgrade4G
+//	args.DeviceId = param.DeviceID
+//	args.FileId = fileArgs.FileId
+//	args.FileSize = param.FileSize
+//
+//	err = server.RPCCallByName(nil, rpcs.MQTTAccessName, "Access.UpgradeFor4G", args, &reply)
+//	if err != nil {
+//		server.Log.Errorf("4G模组OTA升级失败:%v", err)
+//		return err
+//	}
+//
+//	return nil
+//}
+//
+//func (a deviceservice) GetUpgradeProgress(deviceId string) (rpcs.ReplyOtaProgress, error) {
+//	var args rpcs.ArgsOtaProgress
+//	args.DeviceId = deviceId
+//
+//	var reply rpcs.ReplyOtaProgress
+//
+//	err := server.RPCCallByName(nil, rpcs.DeviceManagerName, "DeviceManager.GetProgress", args, &reply)
+//	if err != nil {
+//		server.Log.Errorf("OTA升级进度获取失败:%v", err)
+//		return reply, err
+//	}
+//
+//	return reply, nil
+//}