diff --git a/dsBaseRpc/RpcService/BaseTeacher/BaseTeacherDao/BaseTeacherDao.go b/dsBaseRpc/RpcService/BaseTeacher/BaseTeacherDao/BaseTeacherDao.go index 7fe8c10c..f18092c2 100644 --- a/dsBaseRpc/RpcService/BaseTeacher/BaseTeacherDao/BaseTeacherDao.go +++ b/dsBaseRpc/RpcService/BaseTeacher/BaseTeacherDao/BaseTeacherDao.go @@ -132,6 +132,8 @@ func PageBaseTeacher(in *BaseTeacherProto.QueryArg) ([]map[string]interface{}, i SysLoginpersonService.FillPwdIsChange(&list) //扩展是不是在多个单位+部门下 FillIsMutliOrg(&list) + //填充主单位,主部门信息 + FillMainBureauOrgInfo(&list) //返回结果 return list, count, err } @@ -162,6 +164,40 @@ func FillIsMutliOrg(list2 *[]map[string]interface{}) { } } +/** +功能:填充一个人员的主单位,主部门 +作者:黄海 +时间:2020-08-05 +*/ +func FillMainBureauOrgInfo(list2 *[]map[string]interface{}) { + list := *list2 + var personIds = make([]string, 0) + for i := range list { + personIds = append(personIds, (list[i])["person_id"].(string)) + } + var myBuilder = builder.Dialect(builder.MYSQL).Select("person_id,bureau_id,org_id,provice_code,city_code,district_code,main_school_id"). + From("t_base_teacher_org"). + Where(builder.In("person_id", personIds)).And(builder.Eq{"b_use": 1}). + And(builder.Eq{"is_main": 1}) + + sql, _ := myBuilder.ToBoundSQL() + _listExtendInfo, _ := db.SQL(sql).Query().List() + + for i := range _listExtendInfo { + for j := range list { + if _listExtendInfo[i]["person_id"].(string) == list[j]["person_id"].(string) { + list[j]["x_bureau_id"] = _listExtendInfo[i]["bureau_id"].(string) + list[j]["x_org_id"] = _listExtendInfo[i]["org_id"].(string) + list[j]["x_provice_code"] = _listExtendInfo[i]["provice_code"].(string) + list[j]["x_city_code"] = _listExtendInfo[i]["city_code"].(string) + list[j]["x_district_code"] = _listExtendInfo[i]["district_code"].(string) + list[j]["x_main_school_id"] = _listExtendInfo[i]["main_school_id"].(string) + break + } + } + } +} + /** 功能:扩展登录信息 作者:黄海