This commit is contained in:
苏尹岚
2020-11-10 10:51:34 +08:00
parent 1ddd2d7362
commit 801850f1f7
4 changed files with 42 additions and 4 deletions

View File

@@ -284,8 +284,8 @@ func GetUsers(ctx *jxcontext.Context, userType int, keyword string, userIDs []st
return pagedInfo, err
}
func GetUser(ctx *jxcontext.Context, userID string) (user *model.User, err error) {
return user, err
func GetUser(ctx *jxcontext.Context, userID string) (user *dao.GetUserResult, err error) {
return dao.GetUser(dao.GetDB(), userID)
}
func checkUserType(userID string, userType int8) (err error) {

View File

@@ -111,6 +111,37 @@ func GetUsers(db *DaoDB, userType int, keyword string, userIDs, userID2s, mobile
}
type GetUserResult struct {
model.User
AcceptOrderCount int `json:"acceptOrderCount"`
FinishedOrderCount int `json:"finishedOrderCount"`
}
func GetUser(db *DaoDB, userID string) (user *GetUserResult, err error) {
sqlParams := []interface{}{}
sql := `
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)
}
err = GetRow(db, &user, sql, sqlParams...)
return user, err
}
func DeleteUsers(db *DaoDB, userIDs []string) (num int64, err error) {

View File

@@ -62,8 +62,6 @@ type User struct {
// Profit int `json:"profit"`
// ProfitSum int `json:"profitSum"`
// Arrears int `json:"arrears"`
AcceptOrderCount int `orm:"-" json:"acceptOrderCount"`
FinishedOrderCount int `orm:"-" json:"finishedOrderCount"`
}
func (*User) TableUnique() [][]string {

View File

@@ -511,6 +511,15 @@ func init() {
Filters: nil,
Params: nil})
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:User2Controller"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:User2Controller"],
beego.ControllerComments{
Method: "GetUser",
Router: `/GetUser`,
AllowHTTPMethods: []string{"get"},
MethodParams: param.Make(),
Filters: nil,
Params: nil})
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:User2Controller"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:User2Controller"],
beego.ControllerComments{
Method: "GetUsers",