package course

import (
	"encoding/json"
	"errors"
	"spaceofcheng/services/models/model"
	"spaceofcheng/services/utils"
)

func (c *CourseController) PostOrder() {
	// 订单主信息
	info := c.GetString("info")
	if info == "" {
		c.ResponseError(errors.New("无有效订单信息"))
	}

	// 订单优惠券
	coupon := c.GetString("coupon")

	//
	var orderInfo model.TaCourseOrders
	var orderCoupon []model.TaCourseOrdersCoupon

	if err := json.Unmarshal([]byte(info), &orderInfo); err != nil {
		utils.LogError("下单转换JSON失败: " + err.Error())
		c.ResponseError(errors.New("下单数据格式不正确"))
	}

	if err := json.Unmarshal([]byte(coupon), &orderCoupon); err != nil {
		utils.LogError("下单优惠转换JSON失败: " + err.Error())
		c.ResponseError(errors.New("优惠数据格式不正确"))
	}

	if err := c.serv.Orders(&orderInfo, orderCoupon); err != nil {
		c.ResponseError(err)
	}

	c.ResponseJSON("ok")
}
