123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164 |
- 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.Param("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)
- }
- // GetOrderPaged
- // @Tags 订单模块
- // @Summary 分页获取订单
- // @Produce application/json
- // @Param page path int true "页数"
- // @Param pageSize path int true "一页的大小"
- // @Success 200 {object} response.Response
- // @Router /order/{page}/{pageSize} [get]
- func GetOrderPaged(c *gin.Context) {
- var order model.Order
- p := c.Param("page")
- pS := c.Param("pageSize")
- page, err := strconv.Atoi(p)
- pageSize, err := strconv.Atoi(pS)
- if err != nil {
- response.Fail(c.Writer, err.Error(), 500)
- return
- }
- rsp, err := order.GetPaged(page, pageSize)
- if err != nil {
- msg := err.Error()
- response.Fail(c.Writer, msg, 500)
- return
- }
- cnt, err := order.GetCnt()
- if err != nil {
- msg := err.Error()
- response.Fail(c.Writer, msg, 500)
- return
- }
- if cnt > page*pageSize {
- rsp.HNext = true
- }
- response.Success(c.Writer, "success", rsp)
- }
|