150 lines
6.5 KiB
Go
150 lines
6.5 KiB
Go
package controllers
|
||
|
||
import (
|
||
"git.rosy.net.cn/jx-callback/business/jxstore/cms"
|
||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||
"github.com/astaxie/beego"
|
||
)
|
||
|
||
type OrderController struct {
|
||
beego.Controller
|
||
}
|
||
|
||
// @Title 支付
|
||
// @Description 支付
|
||
// @Param token header string true "认证token"
|
||
// @Param orderID formData string true "订单号"
|
||
// @Param payType formData int true "支付平台类型"
|
||
// @Param vendorPayType formData string true "平台支付类型"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /Pay [post]
|
||
func (c *OrderController) Pay() {
|
||
c.callPay(func(params *tOrderPayParams) (retVal interface{}, errCode string, err error) {
|
||
retVal, err = cms.Pay(params.Ctx, params.OrderID, params.PayType, params.VendorPayType)
|
||
return retVal, "", err
|
||
})
|
||
}
|
||
|
||
// @Title 提现
|
||
// @Description 提现
|
||
// @Param token header string true "认证token"
|
||
// @Param orderID formData string true "订单号"
|
||
// @Param payType formData int true "支付平台类型"
|
||
// @Param vendorPayType formData string true "平台支付类型"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /Cash [post]
|
||
func (c *OrderController) Cash() {
|
||
c.callCash(func(params *tOrderCashParams) (retVal interface{}, errCode string, err error) {
|
||
errCode, err = cms.Cash(params.Ctx, params.OrderID, params.PayType, params.VendorPayType)
|
||
return retVal, errCode, err
|
||
})
|
||
}
|
||
|
||
// @Title 创建订单
|
||
// @Description 创建订单
|
||
// @Param token header string true "认证token"
|
||
// @Param type formData int true "支付类型/账单类型"
|
||
// @Param orderType formData int true "订单类型,1为发任务,2为冲会员,3为发快递"
|
||
// @Param way formData string true "认证方式"
|
||
// @Param price formData int true "支付金额"
|
||
// @Param lng formData float64 true "经纬度"
|
||
// @Param lat formData float64 true "经纬度"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /CreateOrder [post]
|
||
func (c *OrderController) CreateOrder() {
|
||
c.callCreateOrder(func(params *tOrderCreateOrderParams) (retVal interface{}, errCode string, err error) {
|
||
retVal, errCode, err = cms.CreateOrder(params.Ctx, params.Type, params.OrderType, params.Way, params.Price, params.Lng, params.Lat)
|
||
return retVal, errCode, err
|
||
})
|
||
}
|
||
|
||
// @Title 查询订单提现申请
|
||
// @Description 查询订单提现申请
|
||
// @Param token header string true "认证token"
|
||
// @Param orderID query string false "订单号"
|
||
// @Param userID query string false "用户ID"
|
||
// @Param orderType query int false "订单类型,1为支付,2为提现"
|
||
// @Param cityCodes query string false "城市code列表"
|
||
// @Param fromTime query string false "开始时间"
|
||
// @Param toTime query string false "结束时间"
|
||
// @Param keyword query string false "关键字"
|
||
// @Param offset query int false "门店列表起始序号(以0开始,缺省为0)"
|
||
// @Param pageSize query int false "门店列表页大小(缺省为50,-1表示全部)"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /GetOrders [get]
|
||
func (c *OrderController) GetOrders() {
|
||
c.callGetOrders(func(params *tOrderGetOrdersParams) (retVal interface{}, errCode string, err error) {
|
||
var cityCodes []int
|
||
if err = jxutils.Strings2Objs(params.CityCodes, &cityCodes); err == nil {
|
||
retVal, err = cms.GetOrders(params.Ctx, params.OrderID, params.UserID, params.OrderType, cityCodes, params.FromTime, params.ToTime, params.Keyword, params.Offset, params.PageSize)
|
||
}
|
||
return retVal, "", err
|
||
})
|
||
}
|
||
|
||
// @Title 完成提现订单
|
||
// @Description 完成提现订单
|
||
// @Param token header string true "认证token"
|
||
// @Param orderIDs formData string true "订单号列表"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /FinishedCashOrders [post]
|
||
func (c *OrderController) FinishedCashOrders() {
|
||
c.callFinishedCashOrders(func(params *tOrderFinishedCashOrdersParams) (retVal interface{}, errCode string, err error) {
|
||
var orderIDs []string
|
||
if err = jxutils.Strings2Objs(params.OrderIDs, &orderIDs); err == nil {
|
||
err = cms.FinishedCashOrders(params.Ctx, orderIDs)
|
||
}
|
||
return retVal, "", err
|
||
})
|
||
}
|
||
|
||
// @Title 支付统计
|
||
// @Description 支付统计
|
||
// @Param token header string true "认证token"
|
||
// @Param userID query string false "用户id"
|
||
// @Param pop query int false "1为你邀请的,0为全部"
|
||
// @Param cityCodes query string false "城市id列表"
|
||
// @Param mobile query string false "用户手机,必须全匹配"
|
||
// @Param fromTime query string false "消费开始时间"
|
||
// @Param toTime query string false "消费结束时间"
|
||
// @Param orderTypes query string false "1为发任务,2为冲会员,3为发快递,4为一件代发支付"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /GetPayStatistics [get]
|
||
func (c *OrderController) GetPayStatistics() {
|
||
c.callGetPayStatistics(func(params *tOrderGetPayStatisticsParams) (retVal interface{}, errCode string, err error) {
|
||
var cityCodes, orderTypes []int
|
||
if err = jxutils.Strings2Objs(params.CityCodes, &cityCodes, params.OrderTypes, &orderTypes); err == nil {
|
||
retVal, err = cms.GetPayStatistics(params.Ctx, params.UserID, params.Pop, cityCodes, params.Mobile, params.FromTime, params.ToTime, orderTypes)
|
||
}
|
||
return retVal, "", err
|
||
})
|
||
}
|
||
|
||
// @Title 收益统计
|
||
// @Description 收益统计
|
||
// @Param token header string true "认证token"
|
||
// @Param userID query string false "用户id"
|
||
// @Param pop query int false "1为你邀请的,0为全部"
|
||
// @Param cityCodes query string false "城市id列表"
|
||
// @Param mobile query string false "用户手机,必须全匹配"
|
||
// @Param fromTime query string false "消费开始时间"
|
||
// @Param toTime query string false "消费结束时间"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /GetIncomeStatistics [get]
|
||
func (c *OrderController) GetIncomeStatistics() {
|
||
c.callGetIncomeStatistics(func(params *tOrderGetIncomeStatisticsParams) (retVal interface{}, errCode string, err error) {
|
||
var cityCodes []int
|
||
if err = jxutils.Strings2Objs(params.CityCodes, &cityCodes); err == nil {
|
||
retVal, err = cms.GetIncomeStatistics(params.Ctx, params.UserID, params.Pop, cityCodes, params.Mobile, params.FromTime, params.ToTime)
|
||
}
|
||
return retVal, "", err
|
||
})
|
||
}
|