diff --git a/business/jxstore/cms/job.go b/business/jxstore/cms/job.go index d23092df0..647cf1efc 100644 --- a/business/jxstore/cms/job.go +++ b/business/jxstore/cms/job.go @@ -982,14 +982,18 @@ func GetJdDelivery(ctx *jxcontext.Context, status int, fromTime, toTime string, } } } - if isFinished { - v.Status = model.OrderStatusFinished - } else if isDeliverying { - v.Status = model.OrderStatusDelivering - } else { - continue + dOrder := &model.DeliveryOrder{} + dOrder.ID = v.ID + if err = dao.GetEntity(db, dOrder); err == nil { + if isFinished { + dOrder.Status = model.OrderStatusFinished + } else if isDeliverying { + dOrder.Status = model.OrderStatusDelivering + } else { + continue + } + dao.UpdateEntity(db, dOrder, "Status") } - dao.UpdateEntity(db, v, "Status") } } return dao.GetDeliveryOrders(db, []string{ctx.GetUserID()}, statuss, utils.Str2Time(fromTime), utils.Str2Time(toTime), pageSize, offset) @@ -1076,18 +1080,22 @@ func ResetJobTimers() { task.GetID() } -func UpdateJobSpan(ctx *jxcontext.Context, jobIDs []int, span int) (err error) { - var ( - db = dao.GetDB() - ) - for _, v := range jobIDs { - job := &model.Job{} - job.ID = v - err = dao.GetEntity(db, job) - if job != nil { - job.JobSpan = job.JobSpan | span - dao.UpdateEntity(db, job, "JobSpan") - } - } +func CreateJobSpan(ctx *jxcontext.Context, jobIDs []int, endAt string, span int) (err error) { + // var ( + // db = dao.GetDB() + // ) + // task := tasksch.NewParallelTask("CreateJobSpan", tasksch.NewParallelConfig().SetIsContinueWhenError(true), jxcontext.AdminCtx, + // func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { + // jobID := batchItemList[0].(int) + // endAt2 := utils.Str2Time(endAt) + // jonSpan := &model.JobSpan{ + // JobID: jobID, + // EndAt: &endAt2, + // SpanType: span, + // } + // return retVal, err + // }, jobIDs) + // tasksch.HandleTask(task, nil, true).Run() + // task.GetID() return err } diff --git a/business/model/dao/dao_job.go b/business/model/dao/dao_job.go index cf473a33a..3638547e7 100644 --- a/business/model/dao/dao_job.go +++ b/business/model/dao/dao_job.go @@ -40,10 +40,10 @@ type GetJobsResult struct { func GetJobSteps(db *DaoDB, jobID int) (jobSteps []*model.JobStep, err error) { sql := ` - SELECT * - FROM job_step - WHERE job_id = ? - AND deleted_at = ? + SELECT * + FROM job_step + WHERE job_id = ? + AND deleted_at = ? ` sqlParams := []interface{}{jobID, utils.DefaultTimeValue} err = GetRows(db, &jobSteps, sql, sqlParams) @@ -52,9 +52,9 @@ func GetJobSteps(db *DaoDB, jobID int) (jobSteps []*model.JobStep, err error) { func GetJobImgs(db *DaoDB, jobID int) (jobImgs []*model.JobImg, err error) { sql := ` - SELECT * - FROM job_img - WHERE job_id = ? + SELECT * + FROM job_img + WHERE job_id = ? ` sqlParams := []interface{}{jobID} err = GetRows(db, &jobImgs, sql, sqlParams) @@ -68,9 +68,9 @@ func GetJobs(db *DaoDB, userIDs []string, categoryIDs, statuss, vendorIDs, types ) sql := ` SELECT SQL_CALC_FOUND_ROWS a.*, b.name, getDistance(?, ?, CAST(a.lng AS DECIMAL(15,6))/1000000, CAST(a.lat AS DECIMAL(15,6))/1000000) distance - FROM job a - JOIN job_category b ON b.id = a.job_category_id AND b.deleted_at = ? - WHERE a.deleted_at = ? + FROM job a + JOIN job_category b ON b.id = a.job_category_id AND b.deleted_at = ? + WHERE a.deleted_at = ? ` sqlParams = append(sqlParams, lng, lat, utils.DefaultTimeValue, utils.DefaultTimeValue) if len(userIDs) > 0 { diff --git a/business/model/job.go b/business/model/job.go index ec5693e6f..d53c9111c 100644 --- a/business/model/job.go +++ b/business/model/job.go @@ -60,7 +60,10 @@ type Job struct { UserID string `orm:"column(user_id)" json:"userID"` //发布人ID JobCategoryID int `orm:"column(job_category_id)" json:"jobCategoryID"` //任务类型 - JobSpan int `json:"jobSpan"` //任务标签 + JobSpanTop int `json:"jobSpanTop"` //置顶标签 + TopSeq int `json:"topSeq"` //置顶顺序 + JobSpanRecmd int `json:"jobSpanRecmd"` //推荐标签 + RecmdSeq int `json:"recmdSeq"` //推荐顺序 Title string `orm:"size(255)" json:"title"` //任务标题 Content string `orm:"size(500)" json:"content"` //任务内容 Count int `json:"count"` //任务数量 @@ -180,6 +183,20 @@ func (v *JobTimer) TableIndex() [][]string { } } +type JobSpan struct { + ModelIDCUL + + JobID int `orm:"column(job_id)" json:"jobID"` //任务ID + EndAt *time.Time `json:"endAt"` //生效时间范围 + SpanType int `json:"spanType"` //1为置顶,2为推荐 +} + +func (v *JobSpan) TableIndex() [][]string { + return [][]string{ + []string{"JobID", "DeletedAt"}, + } +} + type MtMember struct { ModelIDCULD diff --git a/controllers/job_controller.go b/controllers/job_controller.go index 77ce6d8a4..da38a9689 100644 --- a/controllers/job_controller.go +++ b/controllers/job_controller.go @@ -397,21 +397,22 @@ func (c *JobController) RefreshJobStatus() { }) } -// @Title 修改任务标签 -// @Description 修改任务标签 +// @Title 设置任务标签 +// @Description 设置任务标签 // @Param token header string true "认证token" // @Param jobIDs formData string true "任务IDs" +// @Param endAt formData string true "截止日期" // @Param span formData int true "标签,1为置顶,2为推荐" // @Success 200 {object} controllers.CallResult // @Failure 200 {object} controllers.CallResult -// @router /UpdateJobSpan [post] -func (c *JobController) UpdateJobSpan() { - c.callUpdateJobSpan(func(params *tJobUpdateJobSpanParams) (retVal interface{}, errCode string, err error) { +// @router /CreateJobSpan [post] +func (c *JobController) CreateJobSpan() { + c.callCreateJobSpan(func(params *tJobCreateJobSpanParams) (retVal interface{}, errCode string, err error) { var ( jobIDs []int ) if err = jxutils.Strings2Objs(params.JobIDs, &jobIDs); err == nil { - err = cms.UpdateJobSpan(params.Ctx, jobIDs, params.Span) + err = cms.CreateJobSpan(params.Ctx, jobIDs, params.EndAt, params.Span) } return retVal, "", err }) diff --git a/globals/beegodb/beegodb.go b/globals/beegodb/beegodb.go index c9a4863ec..256d97f08 100644 --- a/globals/beegodb/beegodb.go +++ b/globals/beegodb/beegodb.go @@ -26,6 +26,7 @@ func Init() { orm.RegisterModel(&model.Job{}, &model.JobCategory{}, &model.JobStep{}, &model.JobImg{}) orm.RegisterModel(&model.JobOrder{}) orm.RegisterModel(&model.JobTimer{}) + orm.RegisterModel(&model.JobSpan{}) //聊天 orm.RegisterModel(&model.ImMessageRecord{}, &model.MessageGroup{}, &model.MessageGroupMember{}) orm.RegisterModel(&model.MessageGroupRead{}) diff --git a/routers/commentsRouter_controllers.go b/routers/commentsRouter_controllers.go index 3aa8f1b05..1cef1e423 100644 --- a/routers/commentsRouter_controllers.go +++ b/routers/commentsRouter_controllers.go @@ -376,6 +376,15 @@ func init() { Filters: nil, Params: nil}) + beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:JobController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:JobController"], + beego.ControllerComments{ + Method: "CreateJobSpan", + Router: `/CreateJobSpan`, + AllowHTTPMethods: []string{"post"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:JobController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:JobController"], beego.ControllerComments{ Method: "GetEjyOrders", @@ -511,15 +520,6 @@ func init() { Filters: nil, Params: nil}) - beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:JobController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:JobController"], - beego.ControllerComments{ - Method: "UpdateJobSpan", - Router: `/UpdateJobSpan`, - AllowHTTPMethods: []string{"post"}, - MethodParams: param.Make(), - Filters: nil, - Params: nil}) - beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:JobController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:JobController"], beego.ControllerComments{ Method: "UserRefundEjy",