Commit 03c95fdf authored by wanli's avatar wanli

🎈 perf(文件管理模块): 修改文件管理后端接口数据结构

parent fc865dd0
...@@ -55,7 +55,7 @@ class FileManager(object): ...@@ -55,7 +55,7 @@ class FileManager(object):
@param {*} self @param {*} self
@return {*} @return {*}
''' '''
def content(self, disk, target_path='/'): def content(self, disk, target_path=''):
''' '''
目录信息结构体: 目录信息结构体:
{ {
...@@ -85,6 +85,8 @@ class FileManager(object): ...@@ -85,6 +85,8 @@ class FileManager(object):
type: "file" type: "file"
} }
''' '''
if target_path == None:
target_path = ''
target_path = Path(target_path) target_path = Path(target_path)
result = { result = {
...@@ -112,7 +114,7 @@ class FileManager(object): ...@@ -112,7 +114,7 @@ class FileManager(object):
else: else:
result["files"].append({ result["files"].append({
"basename": child.name, "basename": child.name,
"dirname": child.parent, "dirname": child.parent.relative_to(disk_path).as_posix(),
"extension": child.suffix[1:], "extension": child.suffix[1:],
"filename": child.stem, "filename": child.stem,
"path": child.resolve().relative_to(disk_path).as_posix(), "path": child.resolve().relative_to(disk_path).as_posix(),
...@@ -127,7 +129,7 @@ class FileManager(object): ...@@ -127,7 +129,7 @@ class FileManager(object):
f.truncate() f.truncate()
f.write(json.dumps(result, ensure_ascii=True)) f.write(json.dumps(result, ensure_ascii=True))
pprint.pprint(result) # pprint.pprint(result)
return result, ResponseCode.HTTP_SUCCESS return result, ResponseCode.HTTP_SUCCESS
''' '''
...@@ -148,6 +150,8 @@ class FileManager(object): ...@@ -148,6 +150,8 @@ class FileManager(object):
type: "dir" type: "dir"
} }
''' '''
if target_path == None:
target_path = ''
target_path = Path(target_path) target_path = Path(target_path)
result = [] result = []
...@@ -173,48 +177,47 @@ class FileManager(object): ...@@ -173,48 +177,47 @@ class FileManager(object):
"timestamp": int(child.stat().st_mtime), "timestamp": int(child.stat().st_mtime),
"type": "dir" "type": "dir"
}) })
pprint.pprint(result) # pprint.pprint(result)
return result, ResponseCode.HTTP_SUCCESS return result, ResponseCode.HTTP_SUCCESS
def disk(self, disk): def disk(self, disk):
# select-disks # select-disks
print(disk) logger.info(disk)
return True, ResponseCode.HTTP_SUCCESS return True, ResponseCode.HTTP_SUCCESS
def upload(self, disk): def upload(self, disk):
# select-disks # select-disks
print(disk) logger.info(disk)
return True, ResponseCode.HTTP_SUCCESS return True, ResponseCode.HTTP_SUCCESS
def create_dir(self, disk, target_file): def create_dir(self, disk, target_file):
# create directory # create directory
print(disk, target_file) logger.info(disk, target_file)
return True, ResponseCode.HTTP_SUCCESS return True, ResponseCode.HTTP_SUCCESS
def create_file(self, disk, target_file, content): def create_file(self, disk, target_file, content):
# create file # create file
print(disk, target_file, content) logger.info(disk, target_file, content)
return True, ResponseCode.HTTP_SUCCESS return True, ResponseCode.HTTP_SUCCESS
def delete(self, disk): def delete(self, disk):
# delete file # delete file
print(disk) logger.info(disk)
return True, ResponseCode.HTTP_SUCCESS return True, ResponseCode.HTTP_SUCCESS
def copy(self, disk): def copy(self, disk):
# copy file # copy file
print(disk) logger.info(disk)
return True, ResponseCode.HTTP_SUCCESS return True, ResponseCode.HTTP_SUCCESS
def cut(self, disk): def cut(self, disk):
# cut file # cut file
print(disk) logger.info(disk)
return True, ResponseCode.HTTP_SUCCESS return True, ResponseCode.HTTP_SUCCESS
def paste(self, disk): def paste(self, disk):
# paste file # paste file
print(disk) logger.info(disk)
return True, ResponseCode.HTTP_SUCCESS return True, ResponseCode.HTTP_SUCCESS
def download(self, disk, target_file): def download(self, disk, target_file):
......
''' '''
Author: your name Author: your name
Date: 2021-06-30 18:03:41 Date: 2021-06-30 18:03:41
LastEditTime: 2021-07-17 13:47:11 LastEditTime: 2021-07-17 16:01:22
LastEditors: Please set LastEditors LastEditors: Please set LastEditors
Description: In User Settings Edit Description: In User Settings Edit
FilePath: \evm-store\tools\build_out\controllers\package.py FilePath: \evm-store\tools\build_out\controllers\package.py
...@@ -80,7 +80,7 @@ class PackageResource(object): ...@@ -80,7 +80,7 @@ class PackageResource(object):
# if hasattr(PackageModel, p) and params[p] != None: # if hasattr(PackageModel, p) and params[p] != None:
# logger.info(p) # logger.info(p)
# temp[p] = params[p] # temp[p] = params[p]
logger.info(temp)
result = db.session.query(PackageModel).join(AppModel, PackageModel.app==AppModel.id).filter(*temp).order_by(PackageModel.create_at.desc()).add_entity(AppModel).paginate(params.get("page", 1), params.get("pageSize", 15), error_out=False) result = db.session.query(PackageModel).join(AppModel, PackageModel.app==AppModel.id).filter(*temp).order_by(PackageModel.create_at.desc()).add_entity(AppModel).paginate(params.get("page", 1), params.get("pageSize", 15), error_out=False)
if result.total and len(result.items): if result.total and len(result.items):
return result, ResponseCode.HTTP_SUCCESS return result, ResponseCode.HTTP_SUCCESS
......
''' '''
Author: your name Author: your name
Date: 2021-07-09 12:39:40 Date: 2021-07-09 12:39:40
LastEditTime: 2021-07-15 12:06:33 LastEditTime: 2021-07-17 16:25:44
LastEditors: Please set LastEditors LastEditors: Please set LastEditors
Description: In User Settings Edit Description: In User Settings Edit
FilePath: \evm-store\tools\build_out\views\file.py FilePath: \evm-store\tools\build_out\views\file.py
...@@ -29,7 +29,7 @@ class FileInit(Resource): ...@@ -29,7 +29,7 @@ class FileInit(Resource):
try: try:
result, message = signalManager.actionGetFileInit.emit() result, message = signalManager.actionGetFileInit.emit()
if result: if result:
return response_result(ResponseCode.HTTP_SUCCESS, data=result) return { 'config': result, 'result': { 'message': None, 'status': "success" } }
return response_result(message) return response_result(message)
except Exception as e: except Exception as e:
current_app.logger.error(e) current_app.logger.error(e)
...@@ -51,56 +51,56 @@ class FileContent(Resource): ...@@ -51,56 +51,56 @@ class FileContent(Resource):
try: try:
result, message = signalManager.actionGetFileContent.emit(args.disk, args.path) result, message = signalManager.actionGetFileContent.emit(args.disk, args.path)
if result: if result:
logger.info(result) response = { 'result': { 'message': None, 'status': "success" } }
return response_result(ResponseCode.HTTP_SUCCESS, data=result) response.update(result)
return response
return response_result(message) return response_result(message)
except Exception as e: except Exception as e:
traceback.print_exc() traceback.print_exc()
current_app.logger.error(e) current_app.logger.error(e)
return response_result(ResponseCode.HTTP_SERVER_ERROR) return response_result(ResponseCode.HTTP_SERVER_ERROR)
class FileDisk(Resource): class FileTree(Resource):
def __init__(self): def __init__(self):
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开 # 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
self.parser = RequestParser() self.parser = RequestParser()
@jwt_required(locations=["headers"])
def get(self): def get(self):
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开 # 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
self.parser.add_argument("disk", type=str, location="args", required=True) self.parser.add_argument("disk", type=str, location="args", required=True)
self.parser.add_argument("path", type=str, location="args", required=True) self.parser.add_argument("path", type=str, location="args", required=False)
args = self.parser.parse_args() args = self.parser.parse_args()
try: try:
logger.info("============>") result, message = signalManager.actionGetFileTree.emit(args.disk, args.path)
result, message = signalManager.actionGetFileDisk.emit(args.disk, args.path)
if result: if result:
return response_result(ResponseCode.HTTP_SUCCESS, data=result) response = { 'result': { 'message': None, 'status': "success" }, 'directories': None }
response.update({ 'directories': result })
return response
return response_result(message) return response_result(message)
except Exception as e: except Exception as e:
traceback.print_exc()
current_app.logger.error(e) current_app.logger.error(e)
return response_result(ResponseCode.HTTP_SERVER_ERROR) return response_result(ResponseCode.HTTP_SERVER_ERROR)
class FileDisk(Resource):
class FileTree(Resource):
def __init__(self): def __init__(self):
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开 # 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
self.parser = RequestParser() self.parser = RequestParser()
@jwt_required(locations=["headers"])
def get(self): def get(self):
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开 # 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
self.parser.add_argument("disk", type=str, location="args", required=True) self.parser.add_argument("disk", type=str, location="args", required=True)
self.parser.add_argument("path", type=str, location="args", required=False) self.parser.add_argument("path", type=str, location="args", required=True)
args = self.parser.parse_args() args = self.parser.parse_args()
try: try:
result, message = signalManager.actionGetFileTree.emit(args.disk, args.path) result, message = signalManager.actionGetFileDisk.emit(args.disk, args.path)
if result: if result:
return response_result(ResponseCode.HTTP_SUCCESS, data=result) return response_result(ResponseCode.HTTP_SUCCESS, data=result)
return response_result(message) return response_result(message)
except Exception as e: except Exception as e:
print(e)
logger.error(e)
current_app.logger.error(e) current_app.logger.error(e)
return response_result(ResponseCode.HTTP_SERVER_ERROR) return response_result(ResponseCode.HTTP_SERVER_ERROR)
......
/*
* @Author: your name
* @Date: 2021-07-15 09:33:39
* @LastEditTime: 2021-07-16 14:22:57
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
* @FilePath: \evm-store\tools\frontend\src\utils\request.js
*/
import axios from "axios"; import axios from "axios";
import store from "@/store"; import store from "@/store";
import router from "@/router"; import router from "@/router";
......
...@@ -186,7 +186,8 @@ export default { ...@@ -186,7 +186,8 @@ export default {
this.active.push("captcha"); this.active.push("captcha");
} }
}, },
handleSubmit() { handleSubmit(e) {
e.preventDefault();
this.form.validateFields( this.form.validateFields(
this.active, this.active,
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment