package parking import ( "github.com/gin-gonic/gin" commonModel "wails-app/internal/model/common" "wails-app/internal/model/common/response" "wails-app/internal/service" ) var passageService = &service.ServiceGroupApp.ParkingServiceGroup.PassageService // ListGateDevices 返回进出场工作台可用的道闸设备。 func ListGateDevices(c *gin.Context) { devices, err := passageService.ListGateDevices() if err != nil { response.FailWithMessage(err.Error(), c) return } response.OkWithData(devices, c) } // OpenGate 人工开闸。 func OpenGate(c *gin.Context) { var req commonModel.GateControlRequest if err := c.ShouldBindJSON(&req); err != nil { response.FailWithMessage(err.Error(), c) return } if err := passageService.OpenGateByDeviceCode(req.DeviceCode, req.ValidTime); err != nil { response.FailWithMessage(err.Error(), c) return } response.OkWithDetailed(gin.H{"device_code": req.DeviceCode, "action": "open"}, "开闸成功", c) } // CloseGate 人工关闸。 func CloseGate(c *gin.Context) { var req commonModel.GateControlRequest if err := c.ShouldBindJSON(&req); err != nil { response.FailWithMessage(err.Error(), c) return } if err := passageService.CloseGateByDeviceCode(req.DeviceCode, req.ValidTime); err != nil { response.FailWithMessage(err.Error(), c) return } response.OkWithDetailed(gin.H{"device_code": req.DeviceCode, "action": "close"}, "关闸成功", c) }