From 40abeeb3e1f3290ce7540ef0ab9eec53970dce6f Mon Sep 17 00:00:00 2001 From: wucongxing8150 <815046773@qq.com> Date: Thu, 22 Aug 2024 11:49:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E4=BA=86=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E5=8D=95=E9=A1=B9=E7=AD=94=E6=A1=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/controller/OrderSingle.go | 49 +++++++++++++++++++++++++++++++++++ api/router/router.go | 3 +++ 2 files changed, 52 insertions(+) diff --git a/api/controller/OrderSingle.go b/api/controller/OrderSingle.go index 07bd380..c5eb544 100644 --- a/api/controller/OrderSingle.go +++ b/api/controller/OrderSingle.go @@ -445,3 +445,52 @@ func (b *OrderSingle) PutOrderSingleAnswer(c *gin.Context) { tx.Commit() responses.Ok(c) } + +// GetOrderSingleAnswer 获取单项答案 +func (b *OrderSingle) GetOrderSingleAnswer(c *gin.Context) { + userId := c.GetInt64("UserId") + + id := c.Param("order_id") + if id == "" { + responses.FailWithMessage("缺少参数", c) + return + } + + // 将 id 转换为 int64 类型 + orderId, err := strconv.ParseInt(id, 10, 64) + if err != nil { + responses.Fail(c) + return + } + + // 获取订单数据 + orderSingleDao := dao.OrderSingleDao{} + maps := make(map[string]interface{}) + maps["user_id"] = userId + maps["order_id"] = orderId + orderSingle, err := orderSingleDao.GetOrderSingle(maps) + if err != nil { + responses.FailWithMessage("订单异常", c) + return + } + + // 检测订单状态 + if orderSingle.OrderStatus != 2 { + responses.FailWithMessage("订单未完成", c) + return + } + + // 检测订单支付状态 + if orderSingle.PayStatus != 2 { + responses.FailWithMessage("订单未完成支付", c) + return + } + + // 检测订单退款状态 + if orderSingle.RefundStatus != 0 { + responses.FailWithMessage("订单存在退款", c) + return + } + + responses.OkWithData(orderSingle.Answer, c) +} diff --git a/api/router/router.go b/api/router/router.go index e308284..9964e92 100644 --- a/api/router/router.go +++ b/api/router/router.go @@ -296,6 +296,9 @@ func privateRouter(r *gin.Engine, api controller.Api) { // 上传单项答案 singleGroup.POST("/answer/:order_id", api.OrderSingle.PutOrderSingleAnswer) + + // 获取单项答案 + singleGroup.GET("/answer/:order_id", api.OrderSingle.GetOrderSingleAnswer) } // 会员订单