99 lines
2.7 KiB
Go
99 lines
2.7 KiB
Go
package saft_hat
|
|
|
|
import (
|
|
"context"
|
|
"github.com/gogf/gf/v2/frame/g"
|
|
"time"
|
|
)
|
|
|
|
// 新增安全帽设备
|
|
type CreateDeviceReq struct {
|
|
g.Meta `path:"/device/create" method:"post" tags:"设备管理" summary:"创建新设备"`
|
|
DevNum string `json:"devNum" dc:"设备编号"`
|
|
DevName string `json:"devName" dc:"设备名称"`
|
|
ProjectID int64 `json:"projectId" dc:"项目ID"`
|
|
}
|
|
|
|
type CreateDeviceRes struct {
|
|
}
|
|
|
|
func (h Hat) CreateDevice(ctx context.Context, req *CreateDeviceReq) (res *CreateDeviceRes, err error) {
|
|
res = new(CreateDeviceRes)
|
|
device := g.Map{
|
|
"dev_num": req.DevNum,
|
|
"dev_name": req.DevName,
|
|
"project_id": req.ProjectID,
|
|
"create_time": time.Now(),
|
|
}
|
|
_, err = g.Model("device").Ctx(ctx).Insert(device)
|
|
if err != nil {
|
|
return res, err
|
|
}
|
|
return res, nil
|
|
}
|
|
|
|
// 获取安全帽设备列表
|
|
type DeviceListReq struct {
|
|
g.Meta `path:"/device/list" method:"get" tags:"设备管理" summary:"获取设备信息"`
|
|
ProjectId int64 `json:"projectId" dc:"项目ID"`
|
|
Page int64 `json:"page" dc:"请求的页码" v:"required"`
|
|
PageSize int64 `json:"pageSize" dc:"每页显示的条目数" v:"required"`
|
|
}
|
|
|
|
type DeviceListRes struct {
|
|
Devices []Device `json:"devices"` // 设备信息
|
|
}
|
|
|
|
func (h Hat) GetDevice(ctx context.Context, req *DeviceListReq) (res *DeviceListRes, err error) {
|
|
res = new(DeviceListRes)
|
|
offset := (req.Page - 1) * req.PageSize
|
|
var devices []Device
|
|
err = g.Model("device").Ctx(ctx).Where("project_id = ?", req.ProjectId).Offset(int(offset)).Limit(int(req.PageSize)).Scan(&devices)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
res.Devices = devices
|
|
return res, nil
|
|
}
|
|
|
|
// 删除设备信息
|
|
type DeleteDeviceReq struct {
|
|
g.Meta `path:"/device/delete" method:"delete" tags:"设备管理" summary:"删除设备"`
|
|
DevNum string `json:"devNum" dc:"设备编号"` // 设备编号
|
|
}
|
|
|
|
type DeleteDeviceRes struct {
|
|
}
|
|
|
|
func (h Hat) DeleteDevice(ctx context.Context, req *DeleteDeviceReq) (res *DeleteDeviceRes, err error) {
|
|
res = new(DeleteDeviceRes)
|
|
// 执行删除操作
|
|
_, err = g.Model("device").Ctx(ctx).Where("dev_num", req.DevNum).Delete()
|
|
if err != nil {
|
|
return res, err
|
|
}
|
|
return res, nil
|
|
}
|
|
|
|
// 修改安全帽的名称
|
|
type UpdateDeviceNameReq struct {
|
|
g.Meta `path:"/device/update/name" method:"post" tags:"设备管理" summary:"更新安全帽设备名称"`
|
|
DevNum string `json:"devNum" dc:"设备编号"`
|
|
DevName string `json:"devName" dc:"设备名称"`
|
|
}
|
|
|
|
type UpdateDeviceNameRes struct {
|
|
}
|
|
|
|
func (h Hat) UpdateDeviceName(ctx context.Context, req *UpdateDeviceNameReq) (res *UpdateDeviceNameRes, err error) {
|
|
res = new(UpdateDeviceNameRes)
|
|
_, err = g.Model("device").Data(g.Map{
|
|
"dev_name": req.DevName,
|
|
}).Where("dev_num", req.DevNum).Update()
|
|
if err != nil {
|
|
return res, err
|
|
}
|
|
return res, nil
|
|
}
|