This commit is contained in:
苏尹岚
2020-12-17 10:07:39 +08:00
parent 6555557534
commit d3a71dc6fb

View File

@@ -64,24 +64,15 @@ func GetJobImgs(db *DaoDB, jobID int) (jobImgs []*model.JobImg, err error) {
func GetJobs(db *DaoDB, userIDs []string, categoryIDs, statuss, vendorIDs, types []int, includeStep bool, fromTime, toTime time.Time, lng, lat float64, keyword string, sortType, 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, keyword string, sortType, pageSize, offset int) (pagedInfo *model.PagedInfo, err error) {
var ( var (
jobs []*GetJobsResult jobs []*GetJobsResult
distanceFlag bool
sqlParams = []interface{}{} sqlParams = []interface{}{}
) )
if lng != 0 && lat != 0 && (sortType == sortTypeDistance || sortType == -sortTypeDistance) {
distanceFlag = true
}
sql := ` sql := `
SELECT SQL_CALC_FOUND_ROWS a.*, b.name SELECT SQL_CALC_FOUND_ROWS a.*, b.name, getDistance(?, ?, a.lng, a.lat) distance
` FROM job a
if distanceFlag {
sql += `, getDistance(?, ?, a.lng, a.lat) distance`
sqlParams = append(sqlParams, lng, lat)
}
sql += ` FROM job a
JOIN job_category b ON b.id = a.job_category_id AND b.deleted_at = ? JOIN job_category b ON b.id = a.job_category_id AND b.deleted_at = ?
WHERE a.deleted_at = ? WHERE a.deleted_at = ?
` `
sqlParams = append(sqlParams, utils.DefaultTimeValue, utils.DefaultTimeValue) sqlParams = append(sqlParams, lng, lat, utils.DefaultTimeValue, utils.DefaultTimeValue)
if len(userIDs) > 0 { if len(userIDs) > 0 {
sql += ` AND a.user_id IN (` + GenQuestionMarks(len(userIDs)) + `)` sql += ` AND a.user_id IN (` + GenQuestionMarks(len(userIDs)) + `)`
sqlParams = append(sqlParams, userIDs) sqlParams = append(sqlParams, userIDs)