用户中心添加修改ip功能

This commit is contained in:
hujing2
2023-01-24 17:34:59 +08:00
parent 80a1c4aff3
commit f5edb34be1
3 changed files with 38 additions and 3 deletions

View File

@@ -16,7 +16,7 @@ Mapping for ip_addrs table.
"""
from sqlalchemy import Column, VARCHAR, Integer, Text, PrimaryKeyConstraint
from sqlalchemy import insert, select, delete
from sqlalchemy import insert, select, delete, update
from analysis.ui.database.tables import BASE
@@ -50,11 +50,20 @@ class IpAddrs(BASE):
@staticmethod
def insert_ip_by_user(ip, port, user, password, description, uid, session):
"""insert iip and uid into ip_addrs table"""
"""insert ip info into ip_addrs table"""
sql = insert(IpAddrs).values(user_id=uid, ip=ip, port=port, server_user=user,
description=description, server_password=password)
inserts = session.execute(sql)
return inserts is not None
@staticmethod
def update_ip_by_user(ip, port, user, password, description, uid, session):
"""update ip info from ip_addrs table"""
sql = update(IpAddrs).where(IpAddrs.user_id == uid, IpAddrs.ip == ip) \
.values(port = port, server_user=user, description=description,
server_password=password)
res = session.execute(sql)
return res is not None
@staticmethod
def delete_ip_by_user(ip, uid, session):

View File

@@ -132,6 +132,22 @@ def add_ip(uid, ip_addrs, ip_port, server_user, server_password, description):
session.close()
return res
def update_ip(uid, ip_addrs, ip_port, server_user, server_password, description):
"""update ip from table"""
session = tables.get_session()
if session is None:
return False
res = False
try:
ip_table = IpAddrs()
res = ip_table.update_ip_by_user(ip_addrs, ip_port, server_user, server_password, description, uid, session)
session.commit()
except SQLAlchemyError as err:
LOGGER.error('Insert new ip failed: %s', err)
return res
finally:
session.close()
return res
def delete_ip(uid, ip_addrs):
"""delete ip from table"""

View File

@@ -113,11 +113,21 @@ class UiUser(Resource):
ip_addrs = args.get('ipAddrs')
ip_port = args.get('ipPort')
server_user = args.get('serverUser')
server_password = decode_server_password(args.get('serverPassword'))
server_password = args.get('serverPassword')
description = args.get("description")
return json.dumps({'success': trigger_user.add_ip(uid, ip_addrs, ip_port,
server_user, server_password, description)}), 200, CORS
if cmd == 'updateIp':
uid = args.get('userId')
ip_addrs = args.get('ipAddrs')
ip_port = args.get('ipPort')
server_user = args.get('serverUser')
server_password = decode_server_password(args.get('serverPassword'))
description = args.get("description")
return json.dumps({'success': trigger_user.update_ip(uid, ip_addrs, ip_port,
server_user, server_password, description)}), 200, CORS
if cmd == 'testConnect':
ip_addrs = args.get('ipAddrs')
ip_port = args.get('ipPort')