123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154 |
- 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')
- pitcher_id = arg.get('pitcher_id')
- # 获取公众号列表
- rsp = requests.get('http://api.zanxiangnet.com/system/api/mp/mpAccount/search/3')
- channel_list = []
- channel_dict = {}
- for _ in rsp.json()['data']:
- channel_list.append((_['id'], _['nickName']))
- channel_dict[_['id']] = _['nickName']
- if user_id in super_auth():
- return channel_list[:100]
- select_id = user_id
- # 通过pitcher_id,来添加
- if pitcher_id:
- select_id = pitcher_id
- # 普通权限------java,获取本人对应拥有的公众号
- rsp = requests.get(f'http://api.zanxiangnet.com/system/api/mp/mpAccount/subAccountWithUser/3/{select_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={select_id}"""
- data2 = db.quchen_text.getOne(sql2)
- data3 = []
- if data2:
- data2_2 = tuple(data2.split(','))
- for _ in data2_2:
- data3.append(channel_dict[int(_)])
- 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/system/api/mp/mpAccount/allPutUser/3'
- 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/3/{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/3/{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({})
|