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 cityCodes query string false "城市id列表" // @Param fromTime query string false "开始时间" // @Param toTime query string false "结束时间" // @Param jobIDs query string false "任务IDs" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult // @router /GetManageStatisticsImg [get] func (c *OrderController) GetManageStatisticsImg() { c.callGetManageStatisticsImg(func(params *tOrderGetManageStatisticsImgParams) (retVal interface{}, errCode string, err error) { var cityCodes, jobIDs []int if err = jxutils.Strings2Objs(params.CityCodes, &cityCodes, params.JobIDs, &jobIDs); err == nil { retVal, err = cms.GetManageStatisticsImg(params.Ctx, cityCodes, params.FromTime, params.ToTime, jobIDs) } return retVal, "", err }) } // @Title 经营分析任务列表 // @Description 经营分析任务列表 // @Param token header string true "认证token" // @Param cityCodes query string false "城市id列表" // @Param fromTime query string false "开始时间" // @Param toTime query string false "结束时间" // @Param jobIDs query string false "任务IDs" // @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 /GetManageStatisticsJob [get] func (c *OrderController) GetManageStatisticsJob() { c.callGetManageStatisticsJob(func(params *tOrderGetManageStatisticsJobParams) (retVal interface{}, errCode string, err error) { var cityCodes, jobIDs []int if err = jxutils.Strings2Objs(params.CityCodes, &cityCodes, params.JobIDs, &jobIDs); err == nil { retVal, err = cms.GetManageStatisticsJob(params.Ctx, cityCodes, params.FromTime, params.ToTime, jobIDs, params.Offset, params.PageSize) } return retVal, "", err }) }