This commit is contained in:
苏尹岚
2020-11-10 10:56:43 +08:00
parent 801850f1f7
commit 2de901a9c9

View File

@@ -67,22 +67,10 @@ func GetUsers(db *DaoDB, userType int, keyword string, userIDs, userID2s, mobile
sqlParams := []interface{}{}
sql := `
SELECT SQL_CALC_FOUND_ROWS
t1.*, IF(t2.accept_order_count is NULL, 0, t2.accept_order_count) accept_order_count, IF(t3.finished_order_count is NULL, 0, t3.finished_order_count) finished_order_count
t1.*
FROM user t1
LEFT JOIN (SELECT user_id, COUNT(user_id) accept_order_count FROM job_order`
if len(userIDs) > 0 {
sql += " WHERE user_id IN (" + GenQuestionMarks(len(userIDs)) + ")"
sqlParams = append(sqlParams, userIDs)
}
sql += ` GROUP BY 1)t2 ON t2.user_id = t1.user_id
LEFT JOIN (SELECT user_id, COUNT(user_id) finished_order_count FROM job_order WHERE 1 = 1 `
if len(userIDs) > 0 {
sql += " AND user_id IN (" + GenQuestionMarks(len(userIDs)) + ")"
sqlParams = append(sqlParams, userIDs)
}
sql += ` AND status = ? GROUP BY 1)t3 ON t3.user_id = t1.user_id
WHERE t1.status = 1 AND t1.deleted_at = ?`
sqlParams = append(sqlParams, model.JobOrderStatusFinish, utils.DefaultTimeValue)
sqlParams = append(sqlParams, utils.DefaultTimeValue)
if len(userIDs) > 0 {
sql += " AND t1.user_id IN (" + GenQuestionMarks(len(userIDs)) + ")"
sqlParams = append(sqlParams, userIDs)
@@ -122,24 +110,10 @@ func GetUser(db *DaoDB, userID string) (user *GetUserResult, err error) {
SELECT
t1.*, IF(t2.accept_order_count is NULL, 0, t2.accept_order_count) accept_order_count, IF(t3.finished_order_count is NULL, 0, t3.finished_order_count) finished_order_count
FROM user t1
LEFT JOIN (SELECT user_id, COUNT(user_id) accept_order_count FROM job_order`
if userID != "" {
sql += " WHERE user_id = ?"
sqlParams = append(sqlParams, userID)
}
sql += ` GROUP BY 1)t2 ON t2.user_id = t1.user_id
LEFT JOIN (SELECT user_id, COUNT(user_id) finished_order_count FROM job_order WHERE 1 = 1 `
if userID != "" {
sql += " WHERE user_id = ?"
sqlParams = append(sqlParams, userID)
}
sql += ` AND status = ? GROUP BY 1)t3 ON t3.user_id = t1.user_id
WHERE t1.status = 1 AND t1.deleted_at = ?`
sqlParams = append(sqlParams, model.JobOrderStatusFinish, utils.DefaultTimeValue)
if userID != "" {
sql += " WHERE t1.user_id = ?"
sqlParams = append(sqlParams, userID)
}
LEFT JOIN (SELECT user_id, COUNT(user_id) accept_order_count FROM job_order WHERE user_id = ? GROUP BY 1)t2 ON t2.user_id = t1.user_id
LEFT JOIN (SELECT user_id, COUNT(user_id) finished_order_count FROM job_order WHERE 1 = 1 WHERE user_id = ? AND status = ? GROUP BY 1)t3 ON t3.user_id = t1.user_id
WHERE t1.status = ? AND t1.deleted_at = ? AND t1.user_id = ? `
sqlParams = append(sqlParams, userID, userID, model.JobOrderStatusFinish, model.YES, utils.DefaultTimeValue, userID)
err = GetRow(db, &user, sql, sqlParams...)
return user, err
}