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 }