job
This commit is contained in:
@@ -192,8 +192,8 @@ func CancelPublishJob(ctx *jxcontext.Context, jobID int) (err error) {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetJobs(ctx *jxcontext.Context, userIDs []string, categoryIDs, statuss, vendorIDs []int, includeStep bool, fromTime, toTime string, pageSize, offset int) (pagedInfo *model.PagedInfo, err error) {
|
func GetJobs(ctx *jxcontext.Context, userIDs []string, categoryIDs, statuss, vendorIDs []int, includeStep bool, fromTime, toTime string, lng, lat float64, sortType, pageSize, offset int) (pagedInfo *model.PagedInfo, err error) {
|
||||||
return dao.GetJobs(dao.GetDB(), userIDs, categoryIDs, statuss, vendorIDs, []int{model.JobTypeNormal}, includeStep, utils.Str2Time(fromTime), utils.Str2Time(toTime), pageSize, offset)
|
return dao.GetJobs(dao.GetDB(), userIDs, categoryIDs, statuss, vendorIDs, []int{model.JobTypeNormal}, includeStep, utils.Str2Time(fromTime), utils.Str2Time(toTime), lng, lat, sortType, pageSize, offset)
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetJobDetail(ctx *jxcontext.Context, jobID int, lng, lat float64) (job *dao.GetJobsResult, err error) {
|
func GetJobDetail(ctx *jxcontext.Context, jobID int, lng, lat float64) (job *dao.GetJobsResult, err error) {
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ type GetJobsResult struct {
|
|||||||
Distance float64 `json:"distance"` //距用户距离
|
Distance float64 `json:"distance"` //距用户距离
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetJobs(db *DaoDB, userIDs []string, categoryIDs, statuss, vendorIDs, types []int, includeStep bool, fromTime, toTime time.Time, pageSize, offset int) (pagedInfo *model.PagedInfo, err error) {
|
func GetJobs(db *DaoDB, userIDs []string, categoryIDs, statuss, vendorIDs, types []int, includeStep bool, fromTime, toTime time.Time, lng, lat float64, sortType, pageSize, offset int) (pagedInfo *model.PagedInfo, err error) {
|
||||||
var jobs []*GetJobsResult
|
var jobs []*GetJobsResult
|
||||||
sql := `
|
sql := `
|
||||||
SELECT SQL_CALC_FOUND_ROWS a.*, b.name
|
SELECT SQL_CALC_FOUND_ROWS a.*, b.name
|
||||||
@@ -92,7 +92,10 @@ func GetJobs(db *DaoDB, userIDs []string, categoryIDs, statuss, vendorIDs, types
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
for _, v := range jobs {
|
for _, v := range jobs {
|
||||||
var jobImgs []*model.JobImg
|
var (
|
||||||
|
jobImgs []*model.JobImg
|
||||||
|
distance float64
|
||||||
|
)
|
||||||
sql3 := `
|
sql3 := `
|
||||||
SELECT *
|
SELECT *
|
||||||
FROM job_img
|
FROM job_img
|
||||||
@@ -104,6 +107,12 @@ func GetJobs(db *DaoDB, userIDs []string, categoryIDs, statuss, vendorIDs, types
|
|||||||
v.JobImgs = jobImgs
|
v.JobImgs = jobImgs
|
||||||
v.IndexImg = jobImgs[0].Img
|
v.IndexImg = jobImgs[0].Img
|
||||||
}
|
}
|
||||||
|
if v.Lng != 0 && v.Lat != 0 {
|
||||||
|
distance = jxutils.EarthDistance(lng, lat, jxutils.IntCoordinate2Standard(v.Lng), jxutils.IntCoordinate2Standard(v.Lat))
|
||||||
|
} else {
|
||||||
|
distance = 0
|
||||||
|
}
|
||||||
|
v.Distance = distance
|
||||||
}
|
}
|
||||||
pagedInfo.Data = jobs
|
pagedInfo.Data = jobs
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ func (c *JobController) GetJobs() {
|
|||||||
categoryIDs, statuss, vendorIDs []int
|
categoryIDs, statuss, vendorIDs []int
|
||||||
)
|
)
|
||||||
if err = jxutils.Strings2Objs(params.UserIDs, &userIDs, params.CategoryIDs, &categoryIDs, params.Statuss, &statuss, params.VendorIDs, vendorIDs); err == nil {
|
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)
|
retVal, err = cms.GetJobs(params.Ctx, userIDs, categoryIDs, statuss, vendorIDs, params.IncludeStep, params.FromTime, params.ToTime, params.Lng, params.Lat, params.SortType, params.PageSize, params.Offset)
|
||||||
}
|
}
|
||||||
return retVal, "", err
|
return retVal, "", err
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user