| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 |
- package vehicle
- import (
- "fmt"
- "github.com/gin-gonic/gin"
- "server/model/common/response"
- "server/model/vehicle/request"
- vehicleResponse "server/model/vehicle/response"
- )
- // CreateVehicle 创建车辆信息
- func CreateVehicle(c *gin.Context) {
- var req request.VehicleCreate
- if err := c.ShouldBindJSON(&req); err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- err := vehicleService.CreateVehicle(req)
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithMessage("创建成功", c)
- }
- // UpdateVehicle 更新车辆信息
- func UpdateVehicle(c *gin.Context) {
- var req request.VehicleUpdate
- if err := c.ShouldBindJSON(&req); err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- err := vehicleService.UpdateVehicle(req)
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithMessage("更新成功", c)
- }
- // GetVehicleByID 根据ID获取车辆信息
- func GetVehicleByID(c *gin.Context) {
- id := c.Query("id")
- uintID := uint(0)
- _, err := fmt.Sscanf(id, "%d", &uintID)
- if err != nil {
- response.FailWithMessage("无效的ID", c)
- return
- }
- vehicleInfo, err := vehicleService.GetVehicleByID(uintID)
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithData(vehicleInfo, c)
- }
- // GetVehicleByPlateNumber 根据车牌号获取车辆信息
- func GetVehicleByPlateNumber(c *gin.Context) {
- plateNumber := c.Query("plate_number")
- if plateNumber == "" {
- response.FailWithMessage("车牌号不能为空", c)
- return
- }
- vehicleInfo, err := vehicleService.GetVehicleByPlateNumber(plateNumber, "")
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithData(vehicleInfo, c)
- }
- func QueryAllVehicles(c *gin.Context) {
- vehicles, err := vehicleService.QueryAllVehicles()
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithData(vehicles, c)
- }
- // ListVehicles 获取车辆列表
- func ListVehicles(c *gin.Context) {
- var req request.VehicleQuery
- if err := c.ShouldBindQuery(&req); err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- total, list, err := vehicleService.ListVehicles(req)
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithData(vehicleResponse.VehicleList{
- Total: total,
- List: list,
- }, c)
- }
- // DeleteVehicle 删除车辆
- func DeleteVehicle(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 = vehicleService.DeleteVehicle(uintID)
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithMessage("删除成功", c)
- }
- // VehicleEntry 车辆入场
- func VehicleEntry(c *gin.Context) {
- var req request.VehicleEntry
- if err := c.ShouldBindJSON(&req); err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- resp, err := vehicleService.VehicleEntry(req)
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithData(resp, c)
- }
- // VehicleExit 车辆出场
- func VehicleExit(c *gin.Context) {
- var req request.VehicleExit
- if err := c.ShouldBindJSON(&req); err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- resp, err := vehicleService.VehicleExit(req)
- if err != nil {
- response.FailWithMessage(err.Error(), c)
- return
- }
- response.OkWithData(resp, c)
- }
|