所有软件外包项目 Gray arrow bg 网盘文档同步Windows客户端

网盘文档同步Windows客户端 资金已经托管 线上项目,线下洽谈,智城安排

发包方 : Nikec 状态 :竞标已结束
项目编号 : 168264
项目预算 : ¥5,000-8,000
开发周期 : 60 天
技能 : C# SQLite
发布日期 : 2013-06-01

描述

文档同步客户端需求

开发类似百度网盘、Box(https://www.box.com)网盘的Windows 桌面同步客户端,用于云端和Windows客户端文件夹、文档进行同步的功能;云端文档管理的数据库结构及Web版文档管理我们公司已经开发完成;只需开发同步客户端即可;

1. 安装环境需求:需要支持Win7、XP、Win8系统;
2. 开发技术要求:
a) 采用C#、WPF、.net fx4.0进行开发;
b) 客户端与云端通信:云端同步文档的各项操作的接口我们大部分已经完成,以WCF(WebService)的方式进行通信;如果需要修改接口参数或者增加接口可与我们讨论协调处理;
3. 其他需求:
a) 多语言(中文、法语、英文),翻译内容由我们提供;
b) 内部日期处理均采用utc时间,显示时则为计算机设定的本地时区时间;
(用户会分布再多个国家)
c)
4. 功能需求:
a) 安装打包:(由我们公司处理,发项目源码给我们后由我们制作安装包)
b) 启动配置要求:(该功能我们公司已经完成)
程序安装第一次运行启动,检查如果如果没有进行帐号配置、同步文件夹路径,则需要进行帐号信息配置;
i. 登入页面:指定URL、帐号(email)、密码进行登入;
ii. 设置文件夹页面:选择一个Widows目录作为同步目录;
iii. 配置完成页面:提示配置完成,关闭即可;
c) 启动要求:(该功能我们公司已经完成)
i. Windows开机自动启动,如果已经配置相关信息,则自动最小化到任务栏;显示泡泡提示App已经启动;
ii. 确保exe只有一个实例在运行。
d) 同步需求:
i. 用户在本地文件夹中增加文件,该文件的路径和内容自动同步增加到服务器,文件及目录上添加同步标识
ii. 用户在本地文夹中删除文件,服务器上的对应文件或路径自动同步删除
iii. 用户在本地文件夹中编辑文件,保存之后该文件的内容自动同步更新到服务器
iv. 用户在本地文件夹中重命名文件或者文件夹,完成之后同步到服务器;
v. 用户在本地文件夹中移动文件或者文件夹,完成之后同步到服务器端;
vi. 用户在服务器端做任何操作(新增、修改、移动、删除文件、文件夹,均需要同步到客户端);
vii. 同步完成后需要保持云端文件修改时间与客户端文件修改时间一致;
viii. 同步到云端前,如果检查用户空间容量已经超过最大容量,则停止同步;
ix.

x. 注意问题:
移动、重命名、修改文件,需要确保服务器端文件的唯一标识ID不变(因为会在其他地方,如文件版本记录、文件评论等进行记录);
以下情形是不可接受的:
本地从A目录移动一个文件[file1]到B目录,如果同步到服务器采取方法是:在A目录删除[file1],在B目录新增[file1],这个方式不可行,虽然文件是一致了,但是会导致文件的唯一标识ID改变;

e) 共享文件夹同步需求:
i. UserA共享文件夹“Folder”给UserB,那么会在UserB的同步根目录出现共享文件夹“Folder(userA@mail.com)”;
ii. 如果UserB原来存在同名的其他文件夹“Folder(userA@mail.com)”,则会自动修改名称“Folder(1)(userA@mail.com)”
iii. UserB可以随时修改该文件夹的名称,修改后同步到云端;
但不会同步到UserA的目录;
iv. UserA重名了目录”Folder”,不会反映到UserB;(因为UserB可能想取自己的名称;)
v. UserA删除了共享文件夹“Folder”, UserB同步时,UserB对应文件夹也会被删除掉;
vi. 如果UserA取消共享,UserB同步时,UserB对应文件夹也会被删除掉;
vii. 如果UserB删除了UserA共享给他的文件夹“Folder(userA@mail.com)”,系统监控到该文件夹不能被删除,弹出Desktop App对话框,提示该文件夹无法删除或移动,控制不能删除共享文件夹;
viii. UserB将共享文件夹移动到其他文件夹里面,系统监控到该文件夹不能移动,弹出Desktop App对话框,提示该文件夹无法删除或移动,控制文件夹不能移动;
ix. 管理共享文件夹内的同步情况:
1. UserB是Editer:
a) UserB对文件夹内的任何操作的会同步到云端,并且会同步到UserA的文件夹内;
b) UserA对文件夹内的任何操作的会同步到云端,并且会同步到UserB的文件夹内;
c) 冲突问题:
如果UserB修改问某个文件,UseA也同时修改了该文件,在同步时,就会出现版本冲突,那么机会Copy一份新的文件命名为“original file name ({shared user name}’s conflicted copy {modified date})”;
d) UserB将“其他文件夹”的文件移动到“共享目录”,这算在“共享目录”里面创建新文件,在“其他文件夹”删除掉该文件;
文件的拥有者为UserA;
e) UserB将共享目录里的文件,移动到其他文件夹,这算在“其他文件夹”里面创建新文件,原来的文件在“共享目录”删除掉;
文件的拥有者为UserB;
2. UserB是Viewer:
a) 需要控制和UserB 不能对共享文件夹内的文件、文件夹进行新增、删除、修改、重命名、移动;
b) UserA对文件夹内的操作都会同步到UserB里面;

f) 界面功能需求:
i. 显示同步进度;提供按钮执行立即同步功能;
ii. 显示帐号信息、本地同步文件夹信息;

5. 容错性能:
i. 如果服务器端与客户端同时修改了文件,则会出现冲突,采用Copy一份新的文件命名为“original file name ({shared user name}’s conflicted copy {modified date})”;
ii. 客户端软件对同步上传文件失败时,应再次上传文件或者等待一定时间后再上传;
iii. 客户端软件下载文件未成功时,应再次下载文件或者等待一定时间后再上传,保证客户端与服务器文件的同步一致。
iv. 支持大文件1G以上文件同步;
v. 支持离线情况下对本地文件进行操作,在有网络的情况下进行同步;
vi.
6.

[2018-02-26 01:07:07 增加内容] 项目预算是智城生成的,不需要理会,可以再谈; 本案关键技术: 1.同步算法; 2.同步冲突的解决算法; 3.阻止用户修改文件、删除文件、重命名的功能; 请确保能解决这些关键技术再投标。。
[2018-02-26 01:22:44 增加内容] 项目预算是智城生成的,不需要理会,可以再谈; 本案关键技术: 1.同步算法; 2.同步冲突的解决算法; 3.阻止用户修改文件、删除文件、重命名的功能; 请确保能解决这些关键技术再投标。。

项目竞标

接包方 国家/地区
通过实名认证 拥有案例
5
Xiaochongzi520
通过实名认证 拥有案例
2
Scaperow
西安市
通过实名认证 拥有案例
2
Pdcenter
济南市
通过实名认证 拥有案例
1
Skydhx
上海市
通过实名认证 拥有案例
0
Youfukeji

竞标

请您先登录,然后提交此项目的竞标方案。
还不是智城用户? 智城期待您的加入,请注册成为我们的一员吧!
Project ad2