package controller import ( "github.com/gin-gonic/gin" "strconv" "trading-go/model" "trading-go/response" ) // GetAllOrder // @Tags 订单模块 // @Summary 获取所有订单 // @Produce application/json // @Success 200 {object} response.Response // @Router /order [get] func GetAllOrder(c *gin.Context) { var order model.Order orders, err := order.GetAll() if err != nil { msg := err.Error() response.Fail(c.Writer, msg, 500) return } response.Success(c.Writer, "success", orders) } // GetUserOrder // @Tags 订单模块 // @Summary 获取用户的所有订单 // @Produce application/json // @Param id query uint true "用户id" // @Success 200 {object} response.Response // @Router /order/user [get] func GetUserOrder(c *gin.Context) { var order model.Order ids := c.Query("id") id, err := strconv.Atoi(ids) if err != nil { response.Fail(c.Writer, err.Error(), 500) return } ownerId := uint(id) orders, err := order.GetOwner(ownerId) response.Success(c.Writer, "success", orders) } // ReviseOrder // @Tags 订单模块 // @Summary 修改订单的状态 // @Produce application/json // @Param id formData uint true "订单id" // @Param state formData int true "订单状态" // @Success 200 {object} response.Response // @Router /order/revise [post] func ReviseOrder(c *gin.Context) { var order model.Order ids := c.PostForm("id") id, err := strconv.Atoi(ids) if err != nil { response.Fail(c.Writer, err.Error(), 500) return } order.Id = uint(id) states := c.PostForm("state") state, err := strconv.Atoi(states) if err != nil { response.Fail(c.Writer, err.Error(), 500) return } order.State = state err = order.Revise() if err != nil { msg := err.Error() response.Fail(c.Writer, msg, 500) return } response.Success(c.Writer, "success", nil) } // CreateOrder // @Tags 订单模块 // @Summary 创建订单 // @Produce application/json // @Param json body model.OrderJson true "订单信息" // @Success 200 {object} response.Response // @Router /order/create [post] func CreateOrder(c *gin.Context) { var orderJson model.OrderJson err := c.ShouldBindJSON(&orderJson) if err != nil { msg := err.Error() response.Fail(c.Writer, msg, 500) return } order := orderJson.Change() err = order.Create() if err != nil { msg := err.Error() response.Fail(c.Writer, msg, 500) return } response.Success(c.Writer, "success", nil) } // DeleteOrder // @Tags 订单模块 // @Summary 删除订单 // @Produce application/json // @Param id path uint true "订单id" // @Success 200 {object} response.Response // @Router /order/delete/{id} [delete] func DeleteOrder(c *gin.Context) { var order model.Order ids := c.PostForm("id") id, err := strconv.Atoi(ids) if err != nil { response.Fail(c.Writer, err.Error(), 500) return } order.Id = uint(id) err = order.Delete() if err != nil { msg := err.Error() response.Fail(c.Writer, msg, 500) return } response.Success(c.Writer, "success", nil) }