up6-asp.net示例更新-重构文件夹业务逻辑
服务端更新
更新DBFile.cs
删除GetAllUnComplete2方法,此方法主要实现加载未完成的任务列表,包括文件和文件夹。
代码截图:
删除GetAll方法,这个方法是最早的实现加载未完成的文件列表的逻辑。在这个方法中文件夹的子文件件列表信息是保存在一个字符串中,客户端使用时会对此字符串进行JSON解码。逻辑实现比较冗余。
代码截图:
删除方法:GetAllUnComplete,此代码使用了较多和较频繁的数据库操作,效率性能比较低。逻辑实现比较复杂,对文件夹信息的处理比较容易出错误。
代码截图:
删除方法:static public string GetAllComplete(int f_uid)
代码截图:
删除方法:GetFilesByUid
代码截图:
删除方法:GetUnCompletes
代码截图:
新增fd_appender.cs
新增fd_child.cs
新增fd_file.cs
新增fd_root.cs
新增fd_uuid_appender.cs
folder逻辑主要重构了对文件的初始化逻辑。提高了效率
新增un_file.cs
新增un_builder
这两个文件重构了加载未完成列表逻辑,代码质量,重复代码利用率有较大幅度提升。
删除uc_builder.cs
删除uc_file_child.cs
删除uc_folder.cs
删除uncomplete/uc_builder,uc_file_child,uc_file,新的逻辑由un_file,un_builder实现。
更新f_list.aspx
修改前:
修改后
重构文件夹初始化逻辑,新逻辑由fd_appender,fd_child,fd_file,fd_root,fd_uuid_appender实现。
其中fd_uuid_appender实现了在服务端完全保留文件夹层级结构的功能。
更新fd_create.aspx
更新前:
更新后:
更新fd_create_uuid.aspx
更新前:
更新后:
JS更新
更新:up6.js
续传文件夹时,根据f_fdTask来判断文件夹类型改为根据fdTask来判断
更改前:
更改后:
更新:up6.folder.js
添加文件夹时显示文件数量改为使用files.length显示,同时取消pathLocal的赋值
更新前:
更改后:
构建文件夹对象时使用尝试复制选项
更改前:
更改后:
1.重构文件夹初始化逻辑
2.重构加载文件夹逻辑
数据库更新
新增存储过程:fd_files_check
用于提升文件夹重复文件检查速度。当文件夹中文件数量比较多时此存储过程提升的速度更加明显。
代码截图:
更新存储过程:f_process
代码截图:
关联代码
DBFile.cs