zozoh/ztask — Issue #42: 支持多个项目
Author: zozoh
Created: 2012-03-06 19:32:38+00:00
State: open

修改用户服务类

关于验证的，变成 AuthService
UserService 即可以更加贴近 zTask 的使用
User 类提供当前用户属于哪些项目的信息。

提供新的服务类

ProjectService
它有数据 Project
Project 将替代 GInfo 的功能
因此，随着项目的不同，动态菜单项目也会不同
Project 有标签属性，将被归纳成 prolbl
Project 的保密级别
private : 仅仅项目成员才可进入项目
protected : 仅仅项目成员才可操作任务，同步标签，其他人仅限浏览
public : 所有权限公开
Project 记录自己的管理员

修改数据结构

label, message, task, stack 增加 project 字段

修改实现类

增加一个 Session 属性 project
然后为每个线程增加 ThreadLoacal , project 属性，以便跨越所有函数得到当前的project

界面右上角增加 Project 的挑选功能

增加 project 选择器（我加入的项目(管理), 搜索项目，创建新项目)

界面增加一个 /project

左侧是搜索，加一个双排列表，显示项目的简介
如果直接给定一个结果，或者搜索结果长度为1
直接给出一个简介页， 名称，简介，标签，参与者，最新的10个任务
右侧是自己加入的项目，包括项目的创建

界面增加 /project/admin/?

仅仅管理员才能进入本页
可以修改项目的 GInfo 数据
可以删除项目

旧数据需要:

手工执行命令
增加默认项目
为数据增加默认字段
手工备份 GInfo