| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148 |
- package parking
- import (
- "fmt"
- "server/model/common/response"
- "server/model/parking/request"
- parkingResponse "server/model/parking/response"
- "server/service/parking"
- "github.com/gin-gonic/gin"
- )
- // CreateDevice 创建设备
- func CreateDevice(c *gin.Context) {
- var req request.DeviceCreate
- if err := c.ShouldBindJSON(&req); err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- err := parking.DeviceService.CreateDevice(req)
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithMessage("创建成功", c)
- }
- // UpdateDevice 更新设备
- func UpdateDevice(c *gin.Context) {
- var req request.DeviceUpdate
- if err := c.ShouldBindJSON(&req); err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- err := parking.DeviceService.UpdateDevice(req)
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithMessage("更新成功", c)
- }
- // GetDeviceByID 根据ID获取设备
- func GetDeviceByID(c *gin.Context) {
- id := c.Query("id")
- uintID := uint(0)
- _, err := fmt.Sscanf(id, "%d", &uintID)
- if err != nil {
- response.FailWithMessage("无效的ID", c)
- return
- }
- device, err := parking.DeviceService.GetDeviceByID(uintID)
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithData(device, c)
- }
- // GetDeviceByCode 根据编码获取设备
- func GetDeviceByCode(c *gin.Context) {
- code := c.Query("code")
- if code == "" {
- response.FailWithMessage("设备编码不能为空", c)
- return
- }
- device, err := parking.DeviceService.GetDeviceByCode(code)
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithData(device, c)
- }
- // ListDevices 获取设备列表
- func ListDevices(c *gin.Context) {
- var req request.DeviceQuery
- if err := c.ShouldBindQuery(&req); err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- total, list, err := parking.DeviceService.ListDevices(req)
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithData(parkingResponse.DeviceList{
- Total: total,
- List: list,
- }, c)
- }
- // DeleteDevice 删除设备
- func DeleteDevice(c *gin.Context) {
- id := c.Query("id")
- uintID := uint(0)
- _, err := fmt.Sscanf(id, "%d", &uintID)
- if err != nil {
- response.FailWithMessage("无效的ID", c)
- return
- }
- err = parking.DeviceService.DeleteDevice(uintID)
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithMessage("删除成功", c)
- }
- // UpdateDeviceStatus 更新设备状态
- func UpdateDeviceStatus(c *gin.Context) {
- id := c.Query("id")
- uintID := uint(0)
- _, err := fmt.Sscanf(id, "%d", &uintID)
- if err != nil {
- response.FailWithMessage("无效的ID", c)
- return
- }
- var req struct {
- Status string `json:"status" binding:"required"`
- }
- if err := c.ShouldBindJSON(&req); err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- err = parking.DeviceService.UpdateDeviceStatus(uintID, req.Status)
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithMessage("状态更新成功", c)
- }
|