import requests from model.DateUtils import DateUtils from model.DataBaseUtils import * from model.UserAuthUtils import super_auth du = DateUtils() def user_channel(arg): db = MysqlUtils() # 返回所有公众号 sql = "select id,nick_name from t_mp_account where del_flag=0" return db.zx.getData_json(sql) def user_channel_group(arg): db = MysqlUtils() di = db.zx.get_data_dict("select cast(id as char) ,nick_name from t_mp_account where del_flag=0") user_id = arg.get('user_id') if user_id: sql = f"""SELECT id,name,channel_ids from channel_group where id in (select channel_group_id from user_channel_group_auth where user_id={user_id})""" else: # 不传user_id 返回所有组 sql = "select id,name,channel_ids from channel_group" data = db.quchen_text.getData_json(sql) for i in data: sr = '' for j in i['channel_ids'].split(','): sr += di[j] + ',' i['channel_names'] = sr return data def user(arg): # 在2021-9月之后不被前端使用 db = MysqlUtils() # 返回所有用户 sql = "SELECT user_id,nick_name from t_sys_user where del_flag=0 and status=0" return db.zx.getData_json(sql) def group_add(arg): db = MysqlUtils() name = arg.get("name") ids = arg.get("channel_ids") if name and ids: sql = "insert into channel_group (name,channel_ids) values (%s,%s)" db.quchen_text.execute(sql, (name, ids)) def group_del(arg): db = MysqlUtils() id = arg.get("id") if id: sql = f"delete from channel_group where id={id}" db.quchen_text.execute(sql) def group_auth_add(arg): db = MysqlUtils() user_id = arg.get("user_id") group_id = arg.get("group_id") if user_id and group_id: sql = "insert into user_channel_group_auth (user_id,channel_group_id) values (%s,%s)" db.quchen_text.execute(sql, (user_id, group_id)) def group_auth_del(arg): db = MysqlUtils() user_id = arg.get("user_id") group_id = arg.get("group_id") if user_id and group_id: sql = f"delete from user_channel_group_auth where user_id={user_id} and channel_group_id={group_id}" # print(sql) db.quchen_text.execute(sql) def get_channel(arg): db = MysqlUtils() user_id = arg.get('user_id') name = arg.get('name') if user_id in super_auth(): sql = f"select id,nick_name from t_mp_account where nick_name like '%{name}%' and del_flag=0" return db.zx.getData_json(sql) # 普通权限------java,获取本人对应拥有的公众号 rsp = requests.get(f'http://api.zanxiangnet.com/system/api/mp/mpAccount/subAccountWithUser/{user_id}') channel_list = rsp.json()['data'] data1 = [] for _ in channel_list: if name in _['nickName']: data1.append({'id': _['id'], 'nick_name': _['nickName']}) # # 加上配置的号 sql2 = f"""select GROUP_CONCAT(channel_ids) from user_channel_group_auth a left join channel_group b on a.channel_group_id=b.id where user_id={user_id}""" data2 = db.quchen_text.getOne(sql2) if data2: data2_2 = tuple(data2.split(',')) sql3 = f"""select id,nick_name from t_mp_account where nick_name like '%{name}%' and id in {str(data2_2)}""" data3 = db.zx.getData_json(sql3) else: data3 = [] data4 = data1 + data3 return data4[:100] # 给100个 def get_pitcher(arg): user_id = arg.get('user_id') if user_id in super_auth(): user_list = [] url = 'http://api.zanxiangnet.com/erp/api/user/allPutUser' rsp = requests.get(url) for _ in rsp.json()['data']: user_list.append({'user_id': _['userId'], 'nick_name': _['nickName']}) return user_list user_list = [] rsp = requests.get(url=f'http://api.zanxiangnet.com/erp/api/user/subUser/{user_id}') for _ in rsp.json()['data']: user_list.append({'user_id': _['userId'], 'nick_name': _['nickName']}) return user_list def get_user_name_by_id(user_id): rsp = requests.get(url=f'http://api.zanxiangnet.com/erp/api/user/subUser/{user_id}') nick_name = None for _ in rsp.json()['data']: if str(_['userId']) == str(user_id): nick_name = _['nickName'] return nick_name if __name__ == '__main__': # print(get_pitcher({'user_id':78})) # print(get_user_name_by_id(78)) user_channel_group({})