220 lines
8.6 KiB
Go
220 lines
8.6 KiB
Go
package controllers
|
||
|
||
import (
|
||
"git.rosy.net.cn/baseapi/utils"
|
||
"git.rosy.net.cn/jx-callback/business/jxstore/cms"
|
||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||
"git.rosy.net.cn/jx-callback/business/model"
|
||
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||
"github.com/astaxie/beego"
|
||
)
|
||
|
||
type JobController struct {
|
||
beego.Controller
|
||
}
|
||
|
||
// @Title 发布任务
|
||
// @Description 发布任务
|
||
// @Param token header string true "认证token"
|
||
// @Param payload formData string true "job+step 类型"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /PublishJob [post]
|
||
func (c *JobController) PublishJob() {
|
||
c.callPublishJob(func(params *tJobPublishJobParams) (retVal interface{}, errCode string, err error) {
|
||
var job *model.Job
|
||
if err = jxutils.Strings2Objs(params.Payload, &job); err == nil {
|
||
err = cms.PublishJob(params.Ctx, job)
|
||
}
|
||
return retVal, "", err
|
||
})
|
||
}
|
||
|
||
// @Title 用户取消发布的任务
|
||
// @Description 用户取消发布的任务
|
||
// @Param token header string true "认证token"
|
||
// @Param jobID formData int true "jobID"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /CancelPublishJob [post]
|
||
func (c *JobController) CancelPublishJob() {
|
||
c.callCancelPublishJob(func(params *tJobCancelPublishJobParams) (retVal interface{}, errCode string, err error) {
|
||
err = cms.CancelPublishJob(params.Ctx, params.JobID)
|
||
return retVal, "", err
|
||
})
|
||
}
|
||
|
||
// @Title 查看任务类型
|
||
// @Description 查看任务类型
|
||
// @Param token header string true "认证token"
|
||
// @Param name query string false "分类名"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /GetJobCategories [get]
|
||
func (c *JobController) GetJobCategories() {
|
||
c.callGetJobCategories(func(params *tJobGetJobCategoriesParams) (retVal interface{}, errCode string, err error) {
|
||
retVal, err = dao.GetJobCategories(dao.GetDB(), params.Name)
|
||
return retVal, "", err
|
||
})
|
||
}
|
||
|
||
// @Title 查看任务列表
|
||
// @Description 查看任务列表
|
||
// @Param token header string true "认证token"
|
||
// @Param userIDs query string false "用户IDs"
|
||
// @Param categoryIDs query string false "分类IDs"
|
||
// @Param statuss query string false "状态s"
|
||
// @Param vendorIDs query string false "平台IDs"
|
||
// @Param includeStep query bool false "是否查询步骤,默认否"
|
||
// @Param fromTime query string false "开始时间"
|
||
// @Param toTime 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 /GetJobs [get]
|
||
func (c *JobController) GetJobs() {
|
||
c.callGetJobs(func(params *tJobGetJobsParams) (retVal interface{}, errCode string, err error) {
|
||
var (
|
||
userIDs []string
|
||
categoryIDs, statuss, vendorIDs []int
|
||
)
|
||
if err = jxutils.Strings2Objs(params.UserIDs, &userIDs, params.CategoryIDs, &categoryIDs, params.Statuss, &statuss, params.VendorIDs, vendorIDs); err == nil {
|
||
retVal, err = cms.GetJobs(params.Ctx, userIDs, categoryIDs, statuss, vendorIDs, params.IncludeStep, params.FromTime, params.ToTime, params.PageSize, params.Offset)
|
||
}
|
||
return retVal, "", err
|
||
})
|
||
}
|
||
|
||
// @Title 查看任务
|
||
// @Description 查看任务
|
||
// @Param token header string true "认证token"
|
||
// @Param jobID query int false "任务ID"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /GetJobDetail [get]
|
||
func (c *JobController) GetJobDetail() {
|
||
c.callGetJobDetail(func(params *tJobGetJobDetailParams) (retVal interface{}, errCode string, err error) {
|
||
retVal, err = dao.GetJobDetail(dao.GetDB(), params.JobID)
|
||
return retVal, "", err
|
||
})
|
||
}
|
||
|
||
// @Title 接任务
|
||
// @Description 接任务
|
||
// @Param token header string true "认证token"
|
||
// @Param jobID formData int true "jobID"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /AcceptJob [post]
|
||
func (c *JobController) AcceptJob() {
|
||
c.callAcceptJob(func(params *tJobAcceptJobParams) (retVal interface{}, errCode string, err error) {
|
||
errCode, err = cms.AcceptJob(params.Ctx, params.JobID)
|
||
return retVal, errCode, err
|
||
})
|
||
}
|
||
|
||
// @Title 用户取消接受的任务
|
||
// @Description 用户取消接受的任务
|
||
// @Param token header string true "认证token"
|
||
// @Param jobID formData int true "jobID"
|
||
// @Param jobOrderID formData int true "jobOrderID"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /CancelAcceptJob [post]
|
||
func (c *JobController) CancelAcceptJob() {
|
||
c.callCancelAcceptJob(func(params *tJobCancelAcceptJobParams) (retVal interface{}, errCode string, err error) {
|
||
err = cms.CancelAcceptJob(params.Ctx, params.JobID, int64(params.JobOrderID))
|
||
return retVal, "", err
|
||
})
|
||
}
|
||
|
||
// @Title 查看接受的任务列表
|
||
// @Description 查看接受的任务列表
|
||
// @Param token header string true "认证token"
|
||
// @Param userID query string false "用户ID"
|
||
// @Param categoryID query string false "分类ID"
|
||
// @Param statuss query string false "状态s"
|
||
// @Param fromTime query string false "开始时间"
|
||
// @Param toTime 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 /GetJobOrders [get]
|
||
func (c *JobController) GetJobOrders() {
|
||
c.callGetJobOrders(func(params *tJobGetJobOrdersParams) (retVal interface{}, errCode string, err error) {
|
||
var (
|
||
statuss []int
|
||
)
|
||
if err = jxutils.Strings2Objs(params.Statuss, statuss); err == nil {
|
||
retVal, err = dao.GetJobOrders(dao.GetDB(), 0, 0, params.UserID, "", utils.Str2Time(params.FromTime), utils.Str2Time(params.ToTime), statuss, params.PageSize, params.Offset)
|
||
}
|
||
return retVal, "", err
|
||
})
|
||
}
|
||
|
||
// @Title 提交任务
|
||
// @Description 提交任务
|
||
// @Param token header string true "认证token"
|
||
// @Param payload formData string true "joborder type"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /SubmitJob [post]
|
||
func (c *JobController) SubmitJob() {
|
||
c.callSubmitJob(func(params *tJobSubmitJobParams) (retVal interface{}, errCode string, err error) {
|
||
var jobOrder *model.JobOrder
|
||
if err = jxutils.Strings2Objs(params.Payload, &jobOrder); err == nil {
|
||
err = cms.SubmitJob(params.Ctx, jobOrder)
|
||
}
|
||
return retVal, "", err
|
||
})
|
||
}
|
||
|
||
// @Title 审核任务
|
||
// @Description 审核任务
|
||
// @Param token header string true "认证token"
|
||
// @Param jobOrderID formData int true "jobOrderID"
|
||
// @Param status formData int true "审核标志,15 是通过,20是不通过"
|
||
// @Param comment formData string true "审核理由"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /AuditJob [post]
|
||
func (c *JobController) AuditJob() {
|
||
c.callAuditJob(func(params *tJobAuditJobParams) (retVal interface{}, errCode string, err error) {
|
||
err = cms.AuditJob(params.Ctx, params.JobOrderID, params.Status, params.Comment)
|
||
return retVal, "", err
|
||
})
|
||
}
|
||
|
||
// @Title 导入美团会员
|
||
// @Description 导入美团会员
|
||
// @Param token header string true "认证token"
|
||
// @Param payload formData string true "mtmembers struct"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /ImprotMtMembers [post]
|
||
func (c *JobController) ImprotMtMembers() {
|
||
c.callImprotMtMembers(func(params *tJobImprotMtMembersParams) (retVal interface{}, errCode string, err error) {
|
||
var mtMembers []*model.MtMember
|
||
if err = jxutils.Strings2Objs(params.Payload, &mtMembers); err == nil {
|
||
err = cms.ImprotMtMembers(params.Ctx, mtMembers)
|
||
}
|
||
return retVal, "", err
|
||
})
|
||
}
|
||
|
||
// @Title 充值美团会员
|
||
// @Description 充值美团会员
|
||
// @Param token header string true "认证token"
|
||
// @Param phone formData int true "电话"
|
||
// @Success 200 {object} controllers.CallResult
|
||
// @Failure 200 {object} controllers.CallResult
|
||
// @router /RechargeMtMembers [post]
|
||
func (c *JobController) RechargeMtMembers() {
|
||
c.callRechargeMtMembers(func(params *tJobRechargeMtMembersParams) (retVal interface{}, errCode string, err error) {
|
||
err = cms.RechargeMtMembers(params.Ctx, params.Phone)
|
||
return retVal, "", err
|
||
})
|
||
}
|