Merge remote-tracking branch 'origin/test'
正在显示
6 个修改的文件
包含
41 行增加
和
22 行删除
@@ -81,7 +81,9 @@ func GetUserDepartments(id int64, companyId int64, v interface{}) (err error) { | @@ -81,7 +81,9 @@ func GetUserDepartments(id int64, companyId int64, v interface{}) (err error) { | ||
81 | sql := ` | 81 | sql := ` |
82 | select a.department_id,b.name,b.parent_id,b.managers,b.relation,b.create_at create_time | 82 | select a.department_id,b.name,b.parent_id,b.managers,b.relation,b.create_at create_time |
83 | from user_department a INNER JOIN department b on a.department_id = b.id | 83 | from user_department a INNER JOIN department b on a.department_id = b.id |
84 | -where a.user_company_id =? and a.company_id =? and enable_status =1 and b.delete_at =0` | 84 | +where a.user_company_id =? and a.company_id =? and enable_status =1 and b.delete_at =0 |
85 | +order by b.parent_id,b.id | ||
86 | +` | ||
85 | if _, err = o.Raw(sql, id, companyId).QueryRows(v); err == nil { | 87 | if _, err = o.Raw(sql, id, companyId).QueryRows(v); err == nil { |
86 | return | 88 | return |
87 | } | 89 | } |
@@ -80,7 +80,9 @@ func GetUserPositions(id int64, companyId int64, v interface{}) (err error) { | @@ -80,7 +80,9 @@ func GetUserPositions(id int64, companyId int64, v interface{}) (err error) { | ||
80 | sql := ` | 80 | sql := ` |
81 | select a.position_id,b.name,b.relation,b.create_at create_time | 81 | select a.position_id,b.name,b.relation,b.create_at create_time |
82 | from user_position a INNER JOIN position b on a.position_id = b.id | 82 | from user_position a INNER JOIN position b on a.position_id = b.id |
83 | -where a.user_company_id =? and a.company_id =? and a.enable_status =1 and b.enable_status =1` | 83 | +where a.user_company_id =? and a.company_id =? and a.enable_status =1 and b.enable_status =1 |
84 | +order by b.parent_id,b.id | ||
85 | +` | ||
84 | if _, err = o.Raw(sql, id, companyId).QueryRows(v); err == nil { | 86 | if _, err = o.Raw(sql, id, companyId).QueryRows(v); err == nil { |
85 | return | 87 | return |
86 | } | 88 | } |
@@ -11,8 +11,8 @@ import ( | @@ -11,8 +11,8 @@ import ( | ||
11 | type UserBaseInfoAggregation struct { | 11 | type UserBaseInfoAggregation struct { |
12 | User *models.User | 12 | User *models.User |
13 | Company *models.Company | 13 | Company *models.Company |
14 | - Department []*Department | ||
15 | - Position []*Position | 14 | + Departments []*Department |
15 | + Positions []*Position | ||
16 | UserCompany *models.UserCompany | 16 | UserCompany *models.UserCompany |
17 | } | 17 | } |
18 | 18 |
@@ -73,9 +73,11 @@ type User struct { | @@ -73,9 +73,11 @@ type User struct { | ||
73 | ImToken string `json:"imToken"` | 73 | ImToken string `json:"imToken"` |
74 | 74 | ||
75 | //companys | 75 | //companys |
76 | - CompanyId int `json:"companyId"` | ||
77 | - Company Company `json:"company"` //公司名称 | ||
78 | - Companys []Company `json:"companys"` | 76 | + CompanyId int `json:"companyId"` |
77 | + Company Company `json:"company"` //公司名称 | ||
78 | + Companys []Company `json:"companys"` | ||
79 | + Departments []Dep `json:"deps"` | ||
80 | + Positions []Job `json:"jobs"` | ||
79 | } | 81 | } |
80 | 82 | ||
81 | //公司 | 83 | //公司 |
@@ -40,7 +40,7 @@ func GetUserBaseInfoAggregation(id int64, companyId int64) (v *protocol.UserBase | @@ -40,7 +40,7 @@ func GetUserBaseInfoAggregation(id int64, companyId int64) (v *protocol.UserBase | ||
40 | 40 | ||
41 | go func() { | 41 | go func() { |
42 | defer wg.Done() | 42 | defer wg.Done() |
43 | - if err = models.GetUserDepartments(id, companyId, &v.Department); err != nil { | 43 | + if err = models.GetUserDepartments(id, companyId, &v.Departments); err != nil { |
44 | log.Error(err) | 44 | log.Error(err) |
45 | return | 45 | return |
46 | } | 46 | } |
@@ -48,7 +48,7 @@ func GetUserBaseInfoAggregation(id int64, companyId int64) (v *protocol.UserBase | @@ -48,7 +48,7 @@ func GetUserBaseInfoAggregation(id int64, companyId int64) (v *protocol.UserBase | ||
48 | 48 | ||
49 | go func() { | 49 | go func() { |
50 | defer wg.Done() | 50 | defer wg.Done() |
51 | - if err = models.GetUserPositions(id, companyId, &v.Position); err != nil { | 51 | + if err = models.GetUserPositions(id, companyId, &v.Positions); err != nil { |
52 | log.Error(err) | 52 | log.Error(err) |
53 | return | 53 | return |
54 | } | 54 | } |
@@ -70,8 +70,8 @@ func GetUserBaseInfo(uid int64, companyId int64) (v *protocol.BaseUserInfo, err | @@ -70,8 +70,8 @@ func GetUserBaseInfo(uid int64, companyId int64) (v *protocol.BaseUserInfo, err | ||
70 | } | 70 | } |
71 | 71 | ||
72 | func SetBaseInfoFrom(agg *protocol.UserBaseInfoAggregation) (v *protocol.BaseUserInfo) { | 72 | func SetBaseInfoFrom(agg *protocol.UserBaseInfoAggregation) (v *protocol.BaseUserInfo) { |
73 | - dep := GetTopDepartment(agg.Department) | ||
74 | - job := GetTopPosition(agg.Position) | 73 | + dep := GetTopDepartment(agg.Departments) |
74 | + job := GetTopPosition(agg.Positions) | ||
75 | v = &protocol.BaseUserInfo{ | 75 | v = &protocol.BaseUserInfo{ |
76 | UserId: agg.UserCompany.Id, | 76 | UserId: agg.UserCompany.Id, |
77 | NickName: agg.User.NickName, | 77 | NickName: agg.User.NickName, |
@@ -326,9 +326,8 @@ func UserInfo(header *protocol.RequestHeader, request *protocol.UserInfoRequest) | @@ -326,9 +326,8 @@ func UserInfo(header *protocol.RequestHeader, request *protocol.UserInfoRequest) | ||
326 | Phone: userBaseAgg.User.Phone, | 326 | Phone: userBaseAgg.User.Phone, |
327 | Image: protocol.Picture{ | 327 | Image: protocol.Picture{ |
328 | Path: userBaseAgg.User.Icon, | 328 | Path: userBaseAgg.User.Icon, |
329 | - //TODO:图片裁剪 | ||
330 | - H: 0, | ||
331 | - W: 0, | 329 | + H: 0, |
330 | + W: 0, | ||
332 | }, | 331 | }, |
333 | ImToken: userBaseAgg.User.ImToken, | 332 | ImToken: userBaseAgg.User.ImToken, |
334 | CompanyId: int(companyId), | 333 | CompanyId: int(companyId), |
@@ -337,6 +336,8 @@ func UserInfo(header *protocol.RequestHeader, request *protocol.UserInfoRequest) | @@ -337,6 +336,8 @@ func UserInfo(header *protocol.RequestHeader, request *protocol.UserInfoRequest) | ||
337 | Name: userBaseAgg.Company.Name, | 336 | Name: userBaseAgg.Company.Name, |
338 | CId: userBaseAgg.Company.UserCenterId, | 337 | CId: userBaseAgg.Company.UserCenterId, |
339 | }, | 338 | }, |
339 | + Departments: make([]protocol.Dep, 0), | ||
340 | + Positions: make([]protocol.Job, 0), | ||
340 | }, | 341 | }, |
341 | } | 342 | } |
342 | for i := range companys { | 343 | for i := range companys { |
@@ -346,18 +347,30 @@ func UserInfo(header *protocol.RequestHeader, request *protocol.UserInfoRequest) | @@ -346,18 +347,30 @@ func UserInfo(header *protocol.RequestHeader, request *protocol.UserInfoRequest) | ||
346 | CId: companys[i].UserCenterId, | 347 | CId: companys[i].UserCenterId, |
347 | }) | 348 | }) |
348 | } | 349 | } |
349 | - if topDep := agg.GetTopDepartment(userBaseAgg.Department); topDep.DepartmentId != 0 { | ||
350 | - rsp.User.Department = protocol.Dep{ | ||
351 | - Id: topDep.DepartmentId, | ||
352 | - Name: topDep.Name, | 350 | + newDep := func(item *protocol.Department) protocol.Dep { |
351 | + return protocol.Dep{ | ||
352 | + Id: item.DepartmentId, | ||
353 | + Name: item.Name, | ||
353 | } | 354 | } |
354 | } | 355 | } |
355 | - if topPos := agg.GetTopPosition(userBaseAgg.Position); topPos.PositionId != 0 { | ||
356 | - rsp.User.Position = protocol.Job{ | ||
357 | - Id: topPos.PositionId, | ||
358 | - Name: topPos.Name, | 356 | + newPos := func(item *protocol.Position) protocol.Job { |
357 | + return protocol.Job{ | ||
358 | + Id: item.PositionId, | ||
359 | + Name: item.Name, | ||
359 | } | 360 | } |
360 | } | 361 | } |
362 | + for i := range userBaseAgg.Departments { | ||
363 | + rsp.User.Departments = append(rsp.User.Departments, newDep(userBaseAgg.Departments[i])) | ||
364 | + } | ||
365 | + for i := range userBaseAgg.Positions { | ||
366 | + rsp.User.Positions = append(rsp.User.Positions, newPos(userBaseAgg.Positions[i])) | ||
367 | + } | ||
368 | + if topDep := agg.GetTopDepartment(userBaseAgg.Departments); topDep.DepartmentId != 0 { | ||
369 | + rsp.User.Department = newDep(topDep) | ||
370 | + } | ||
371 | + if topPos := agg.GetTopPosition(userBaseAgg.Positions); topPos.PositionId != 0 { | ||
372 | + rsp.User.Position = newPos(topPos) | ||
373 | + } | ||
361 | return | 374 | return |
362 | } | 375 | } |
363 | 376 |
-
请 注册 或 登录 后发表评论