diff options
| author | handingkang <[email protected]> | 2024-01-12 20:19:49 +0800 |
|---|---|---|
| committer | handingkang <[email protected]> | 2024-01-12 20:19:49 +0800 |
| commit | 200cd83d621eb30f04808c4ab028d119a1a81dcc (patch) | |
| tree | d684311ccd5e68d485ad2b0b53dad86eb3a261cb | |
| parent | b97ed22b805c40abc27c689cc307deb364312902 (diff) | |
sys接口开发尝试
| -rw-r--r-- | apps/sys.py | 63 |
1 files changed, 62 insertions, 1 deletions
diff --git a/apps/sys.py b/apps/sys.py index 0027566..cce9986 100644 --- a/apps/sys.py +++ b/apps/sys.py @@ -1 +1,62 @@ -# 处理系统信息,包括状态,已运行时间
\ No newline at end of file +# 处理系统信息,包括状态,已运行时间 +import datetime + +import pymysql +from apiflask import APIBlueprint +from neomodel import db, config + +bp = APIBlueprint('sys', __name__, url_prefix='/sys', description='获取系统运行时间、v6&双栈数据总数、每日增长') + + +class DataAccess(): + def __init__(self): + # mysql连接 + dbname = "configcache" + self.tabname = "config" + conn = pymysql.connect(host='localhost', user='root', password='Hdk19990815') + self.cursor = conn.cursor() + + # 初始化sql语句 + dbsql = "CREATE DATABASE IF NOT EXISTS %s" % dbname + + tablesql = """ + CREATE TABLE IF NOT EXISTS %s ( + id INT auto_increment PRIMARY KEY , + name VARCHAR(50) NOT NULL, + info VARCHAR(100) + )ENGINE=innodb DEFAULT CHARSET=utf8; """ % self.tabname + + # 执行sql语句 + self.cursor.execute(dbsql) + conn.select_db(dbname) + self.cursor.execute(tablesql) + + # neo4j连接 + url = "neo4j://neo4j:[email protected]:7678" + config.DATABASE_URL = url + db.set_connection(url) + + +da = DataAccess() + + [email protected]("/day") +def sysdays(): + sql = "SELECT info FROM %s WHERE name=%s" % (da.tabname, "startday") + da.cursor.execute(sql) + result = da.cursor.fetchall() + # 不存在结果,插入当天日期 + if len(result) == 0: + sql = "INSERT INTO %s(name,info) VALUES (%s,%s)" % (da.tabname, "startday", str(datetime.date.today())) + da.cursor.execute(sql) + sday = datetime.date.today() + else: + sday = datetime.date.strftime(str(result[0][0])) + # 计算相距时间并返回 + difftime = (datetime.date.today() - sday).days + return difftime if difftime > 0 else 1 + + [email protected]("/v6count") +def sysv6count(): + cypher = "" |
