def get_manager(self, user_id): ''' 获取运营员员的详细信息。包括其管理了几个公司,在每个公司的角色。 :return: ''' result = { 'result': False, } token_info = self.get_token() # 日志 self.log_user_action(token_info.get("uuid"), "get_manager", user_id) if (token_info is not None): syndicate_uuid = token_info.get("syndicate_uuid") #获取当前集团的所有公司 com_db = CompanyDao(session=self.session) company_list = com_db.get_companys(syndicate_uuid) cmpy_dict = { com_item['uuid']: com_item['name'] for com_item in company_list } company_ids = cmpy_dict.keys() #获取此运营员所管理的公司及在每个公司的角色。 user_conf_db = UserConfDao(session=self.session) cmpy_role_dict = user_conf_db.get_manager_companies( user_id, company_ids ) #{company_id2:[role_1,role_2],company_id2:[role_2]} #获取这些运营员的信息。 user_db = UserDao(session=self.session) result = user_db.user(user_id, Users.ROLE_MANAGER) result['user_id'] = str(user_id) result["roles"] = cmpy_role_dict result["result"] = True del result['role'] else: result = {'result': False, 'msg': err_msgs['No_AUTHENTICATION']} self.set_status(400) return result
'result': False, 'msg': err_msgs['TEL_NAME_NOT_MATCH'], 'name': user_name } self.set_status(400) return result company_roles = [] try: for role in roles: usr_rle_db.insert_role(user_id=usr_id, company_uuid=company_uuid, role=role, role_type=UserConf.TYPE_ROLE_MGR) company_roles = usr_rle_db.get_manager_companies(usr_id) except Exception, e: self.logger.error(traceback.format_exc()) # 通知该用户,其已经发生变化。 redis = RedisBase() redis.user_change(usr_id, CODE_USER_MODIFIED, Users.ROLE_MANAGER) # 日志 self.log_user_action(self.get_token().get("uuid"), "add_manager", usr_id) result = { 'result': True, 'user_id': str(usr_id), 'user_name': user_name, 'telephone': telephone,