|
@@ -2,7 +2,7 @@ package controllers
|
|
|
|
|
|
import (
|
|
|
"encoding/json"
|
|
|
- "fmt"
|
|
|
+ "github.com/rdlucklib/rdluck_tools/paging"
|
|
|
"hongze/hongze_mfyx/models"
|
|
|
"hongze/hongze_mfyx/models/order"
|
|
|
"hongze/hongze_mfyx/services"
|
|
@@ -15,12 +15,12 @@ type OrderController struct {
|
|
|
BaseAuthController
|
|
|
}
|
|
|
|
|
|
-// @Title 创建订单
|
|
|
-// @Description 创建订单接口
|
|
|
+// @Title 通过文章创建订单
|
|
|
+// @Description 通过文章创建订单接口
|
|
|
// @Param request body models.ActivitySingnupRep true "type json string"
|
|
|
// @Success Ret=200 {object} models.SignupStatus
|
|
|
-// @router /addByarticle [post]
|
|
|
-func (this *OrderController) Add() {
|
|
|
+// @router /addByArticle [post]
|
|
|
+func (this *OrderController) AddByArticle() {
|
|
|
br := new(models.BaseResponse).Init()
|
|
|
defer func() {
|
|
|
this.Data["json"] = br
|
|
@@ -56,8 +56,7 @@ func (this *OrderController) Add() {
|
|
|
return
|
|
|
}
|
|
|
var title string
|
|
|
- oldOrderCode := services.GetHaverEquallyOrderByUser10Min(user.UserId, goodsId) //获取用户十分钟之内是否有相同的订单信息
|
|
|
- fmt.Println("oldOrderCode", oldOrderCode)
|
|
|
+ oldOrderCode := services.GetHaverEquallyOrderByUser10Min(uid, goodsId) //获取用户十分钟之内是否有相同的订单信息
|
|
|
articleDetail, err := models.GetArticleDetailById(sourceId)
|
|
|
if err != nil {
|
|
|
br.Msg = "获取信息失败"
|
|
@@ -97,11 +96,190 @@ func (this *OrderController) Add() {
|
|
|
br.ErrMsg = "创建订单信息失败,Err:" + err.Error()
|
|
|
return
|
|
|
}
|
|
|
- fmt.Println(item)
|
|
|
- fmt.Println(title)
|
|
|
- fmt.Println(uid)
|
|
|
+ br.Ret = 200
|
|
|
+ br.Success = true
|
|
|
+ br.Msg = "操作成功"
|
|
|
+}
|
|
|
+
|
|
|
+// @Title 通过活动创建订单
|
|
|
+// @Description 通过活动创建订单接口
|
|
|
+// @Param request body models.ActivitySingnupRep true "type json string"
|
|
|
+// @Success Ret=200 {object} models.SignupStatus
|
|
|
+// @router /addByActivity [post]
|
|
|
+func (this *OrderController) AddByActivity() {
|
|
|
+ br := new(models.BaseResponse).Init()
|
|
|
+ defer func() {
|
|
|
+ this.Data["json"] = br
|
|
|
+ this.ServeJSON()
|
|
|
+ }()
|
|
|
+ user := this.User
|
|
|
+ if user == nil {
|
|
|
+ br.Msg = "请登录"
|
|
|
+ br.ErrMsg = "请登录,用户信息为空"
|
|
|
+ br.Ret = 408
|
|
|
+ return
|
|
|
+ }
|
|
|
+ var req order.CygxOrderAddReq
|
|
|
+ err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "参数解析异常!"
|
|
|
+ br.ErrMsg = "参数解析失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ uid := user.UserId
|
|
|
+ goodsId := req.GoodsId
|
|
|
+ sourceId := req.SourceId
|
|
|
+ if goodsId == 0 {
|
|
|
+ br.Msg = "支付失败"
|
|
|
+ br.ErrMsg = "支付失败,goodsId 信息错误Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ goodsDetail, err := order.GetCygxGoodsDetailByGoodsId(goodsId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取信息失败"
|
|
|
+ br.ErrMsg = "获取信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ var title string
|
|
|
+ oldOrderCode := services.GetHaverEquallyOrderByUser10Min(uid, goodsId) //获取用户十分钟之内是否有相同的订单信息
|
|
|
+ articleDetail, err := models.GetAddActivityInfoById(sourceId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取信息失败"
|
|
|
+ br.ErrMsg = "获取信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ title = articleDetail.ActivityName
|
|
|
+ item := new(order.CygxOrder)
|
|
|
+ item.OrderCode = utils.GetOrdernum()
|
|
|
+ item.GoodsName = goodsDetail.GoodsName
|
|
|
+ item.GoodsId = goodsId
|
|
|
+ item.GoodsMoney = goodsDetail.Price
|
|
|
+ item.OrderMoney = goodsDetail.CurrentPrice
|
|
|
+ item.SourceId = sourceId
|
|
|
+ item.Source = utils.CYGX_OBJ_ACTIVITY
|
|
|
+ item.SourceTitle = title
|
|
|
+ item.UserId = user.UserId
|
|
|
+ item.Mobile = user.Mobile
|
|
|
+ item.Email = user.Email
|
|
|
+ item.CompanyId = user.CompanyId
|
|
|
+ item.CompanyName = user.CompanyName
|
|
|
+ item.RealName = user.RealName
|
|
|
+ item.SellerName = services.GetSellerName(user) // 销售姓名
|
|
|
+ item.CreateTime = time.Now()
|
|
|
+ item.ModifyTime = time.Now()
|
|
|
+ item.RegisterPlatform = utils.REGISTER_PLATFORM
|
|
|
+
|
|
|
+ //如果十分钟之内有相同的订单就修改,没有就新增
|
|
|
+ if oldOrderCode == "" {
|
|
|
+ err = order.AddCygxOrder(item)
|
|
|
+ } else {
|
|
|
+ err = order.UpdateCygxOrder(item, oldOrderCode)
|
|
|
+ }
|
|
|
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "创建订单信息失败"
|
|
|
+ br.ErrMsg = "创建订单信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
br.Ret = 200
|
|
|
br.Success = true
|
|
|
br.Msg = "操作成功"
|
|
|
}
|
|
|
+
|
|
|
+// @Title 用户订单列表
|
|
|
+// @Description 用户订单列表接口
|
|
|
+// @Param PageSize query int true "每页数据条数"
|
|
|
+// @Param CurrentIndex query int true "当前页页码,从1开始"
|
|
|
+// @Param OrderType query int false "订单类型 1:畅读卡订单,2:单场付费订单"
|
|
|
+// @Success 200 {object} models.SpecialListResp
|
|
|
+// @router /user/orderList [get]
|
|
|
+func (this *OrderController) UserOrderList() {
|
|
|
+ br := new(models.BaseResponse).Init()
|
|
|
+ defer func() {
|
|
|
+ this.Data["json"] = br
|
|
|
+ this.ServeJSON()
|
|
|
+ }()
|
|
|
+ user := this.User
|
|
|
+ if user == nil {
|
|
|
+ br.Msg = "请登录"
|
|
|
+ br.ErrMsg = "请登录,用户信息为空"
|
|
|
+ br.Ret = 408
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ pageSize, _ := this.GetInt("PageSize")
|
|
|
+ currentIndex, _ := this.GetInt("CurrentIndex")
|
|
|
+ orderType, _ := this.GetInt("OrderType", 1)
|
|
|
+
|
|
|
+ var startSize int
|
|
|
+ if pageSize <= 0 {
|
|
|
+ pageSize = utils.PageSize20
|
|
|
+ }
|
|
|
+ if currentIndex <= 0 {
|
|
|
+ currentIndex = 1
|
|
|
+ }
|
|
|
+ startSize = utils.StartIndex(currentIndex, pageSize)
|
|
|
+ resp := new(order.UserOrderListResp)
|
|
|
+ var condition string
|
|
|
+ var pars []interface{}
|
|
|
+ userId := user.UserId
|
|
|
+
|
|
|
+ if orderType > 0 {
|
|
|
+ condition += ` AND order_type = ? `
|
|
|
+ pars = append(pars, orderType)
|
|
|
+ }
|
|
|
+ condition += ` AND user_id = ? `
|
|
|
+ pars = append(pars, userId)
|
|
|
+
|
|
|
+ total, err := order.GetCygxOrderCount(condition, pars)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取失败, Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ list, err := order.GetCygxOrderList(condition, pars, startSize, pageSize)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取失败, Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ for _, v := range list {
|
|
|
+ item := new(order.OrderListResp)
|
|
|
+ item.OrderCode = v.OrderCode
|
|
|
+ item.OrderMoney = v.OrderMoney
|
|
|
+ item.SourceId = v.SourceId
|
|
|
+ item.Source = v.Source
|
|
|
+ item.SourceTitle = v.SourceTitle
|
|
|
+ item.OrderStatus = v.OrderStatus
|
|
|
+ if v.OrderStatus == 0 {
|
|
|
+ item.OrderStatusText = "已取消"
|
|
|
+ } else if v.OrderStatus == 1 {
|
|
|
+ item.OrderStatusText = "待支付"
|
|
|
+ } else if v.OrderStatus == 2 {
|
|
|
+ item.OrderStatusText = "已支付"
|
|
|
+ }
|
|
|
+ if orderType == 1 {
|
|
|
+ item.StartDate = ""
|
|
|
+ item.EndDate = ""
|
|
|
+ if v.GoodsId == 1 {
|
|
|
+ item.LabelKeywordImgLink = utils.LABEL_ICO_7 //日卡图标
|
|
|
+ } else if v.GoodsId == 2 {
|
|
|
+ item.LabelKeywordImgLink = utils.LABEL_ICO_8 // 月卡图标
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ item.LabelKeywordImgLink = utils.LABEL_ICO_3
|
|
|
+ }
|
|
|
+ item.CreateTime = v.CreateTime.Format(utils.FormatDateTime)
|
|
|
+ resp.List = append(resp.List, item)
|
|
|
+ }
|
|
|
+
|
|
|
+ page := paging.GetPaging(currentIndex, pageSize, total)
|
|
|
+ resp.Paging = page
|
|
|
+
|
|
|
+ br.Data = resp
|
|
|
+ br.Ret = 200
|
|
|
+ br.Success = true
|
|
|
+ br.Msg = "获取成功"
|
|
|
+}
|