鲁浩 1 year ago
parent
commit
87fcafd995

+ 47 - 4
server/flaskProject/MoneyRecord.py

@@ -3,6 +3,7 @@ from flask import jsonify
 import TokenUtils
 from data import MySQLTool
 from returnTemp import get_template, get_error_message
+import time
 
 
 class MoneyRecord:
@@ -16,6 +17,8 @@ class MoneyRecord:
             return self.insert()
         elif self.action == "check":
             return self.check()
+        elif self.action == "delete":
+            return self.deleteSomeItem()
         else:
             return self.test()
 
@@ -27,6 +30,10 @@ class MoneyRecord:
         print("---check----")
         return check(self.data)
 
+    def deleteSomeItem(self):
+        print("---deleteSomeItem----")
+        return deleteSomeItem(self.data)
+
 
 def insert(data):
     # 检查参数是否存在
@@ -52,17 +59,43 @@ def insert(data):
     paytime = data["paytime"]
     cash_type = data["cash_type"]
     location = data["location"]
+    noteid = get_order_code()
     # 插入数据
     mysql_tool.connect()
-    columns = ['cash_type', 'des', 'kind', 'location', 'mount', 'paytime', 'uid']
-    values = [cash_type, des, kind, location, mount, paytime, uid]
+    columns = ['cash_type', 'des', 'kind', 'location', 'mount', 'paytime', 'uid', 'noteid']
+    values = [cash_type, des, kind, location, mount, paytime, uid, noteid]
     insert_result = mysql_tool.insert(table='cash', columns=columns, values=values)
     print(insert_result)
     mysql_tool.disconnect()
     return get_template(0, "记录成功", {})
 
 
-mysql_tool = MySQLTool(host='localhost', user='root', password='wyt615115@', database='apiserver')
+def deleteSomeItem(data):
+    required_fields = ['token', 'uid', 'noteid']
+    missing_fields = [field for field in required_fields if field not in data]
+    if missing_fields:
+        return get_template(2000, get_error_message(2000), {})
+    token = data["token"]
+    uid = data["uid"]
+    noteid = data["noteid"]
+    # 检查参数
+    if token == "" or uid == "" or noteid == "":
+        # 三个值必须存在
+        template = get_template(2000, get_error_message(2000), {})
+        return template
+    if not TokenUtils.verify_jwt_token(uid, token):
+        return get_template(2001, get_error_message(2001), {})
+
+    mysql_tool.connect()
+    result = mysql_tool.select(table='cash', columns='*', conditions={"uid": uid, "noteid": noteid})
+    if len(result):
+        delete_result = mysql_tool.delete(table='cash', conditions={"uid": uid, "noteid": noteid})
+        if delete_result == 1:
+            return get_template(0, get_error_message(0), {})
+        else:
+            return get_template(2002, get_error_message(2002), {})
+    else:
+        return get_template(1006, get_error_message(1006), {})
 
 
 def check(data):
@@ -95,7 +128,7 @@ def check(data):
     final_result = []
     i_start = int(start)
     i_end = int(end)
-    required_fields = ['id','cash_type', 'des', 'kind', 'location', 'mount', 'paytime', 'uid']
+    required_fields = ['id', 'cash_type', 'des', 'kind', 'location', 'mount', 'paytime', 'uid']
     for r in result:
         if i_start <= r[6] <= i_end:
             temp = {}
@@ -104,3 +137,13 @@ def check(data):
             final_result.append(temp)
     mysql_tool.disconnect()
     return get_template(0, get_error_message(0), {"record": final_result})
+
+
+mysql_tool = MySQLTool(host='localhost', user='root', password='wyt615115@', database='apiserver')
+
+
+#  生成订单号
+def get_order_code():
+    #  年月日时分秒+time.time()的后7位
+    order_no = str(time.strftime('%Y%m%d%H%M%S', time.localtime(time.time())) + str(time.time()).replace('.', '')[-7:])
+    return order_no

+ 6 - 4
server/flaskProject/app.py

@@ -5,7 +5,7 @@ from user import User
 import logging
 from logging.handlers import TimedRotatingFileHandler
 from datetime import datetime
-
+import time
 app = Flask(__name__)
 
 
@@ -63,15 +63,17 @@ day = current_date.day
 
 # 将年月日格式化为字符串
 formatted_date = current_date.strftime("%Y-%m-%d")
-# logger = CustomLogger(f'{os.path.dirname(__file__)}/logs/{formatted_date}.log')
+logger = CustomLogger(f'{os.path.dirname(__file__)}/logs/{formatted_date}.log')
 # logger = CustomLogger(f'/Users/jasonphd/Desktop/gogs/JasonPhdWork/server/flaskProject/logs{formatted_date}.log')
-logger = CustomLogger(f'/root/api_server/JasonPhdWork/app/logs/{formatted_date}.log')
+# logger = CustomLogger(f'/root/api_server/JasonPhdWork/app/logs/{formatted_date}.log')
 
 
 # 自定义中间件
 @app.before_request
 def log_request_info():
-    logger.log(f"url:{request.url} params:{request.get_json()} method:{request.method} ip:{request.remote_addr}")
+    data = request.get_json()
+    data["intime"] = int (time.time())
+    logger.log(f"url:{request.url} params:{data} method:{request.method} ip:{request.remote_addr}")
 
 
 if __name__ == '__main__':

+ 2 - 0
server/flaskProject/returnTemp.py

@@ -16,8 +16,10 @@ def get_error_message(code):
         1003: "用户名已存在",
         1004: "该用户暂未注册",
         1005: "用户密码错误",
+        1006: "noteid未知",
         2000: "请求参数不完整",
         2001: "token失效,请重新登录",
+        2002: "系统错误"
         # 添加更多的错误码和错误信息
     }