一、施工数据采集系统多项目实现
1、思路
(1)所有数据库表中增加projectid字段。
(2)项目和部门之间建立关联关系
(3)登录过程根据用户所在部门信息判断用户所拥有的项目权限。
(4)选择项目后,将项目id作为projectid存入session中。
(5)在进行所有的数据操作的时候将projectid作为标识位存在与整个项目周期中。
2、实现
这里放两个关键代码
实体中注入session中的projectid
3、优点和缺点。
优点:1、思路简单,项目id绑定在数据中,没有过多的额外逻辑,唯一项目id对应N条数据。2、功能扩展思路简单,可以很容易的从数据中判断所属项目,无需太多中间过程
缺点:1、实现方式复杂,混乱,难于维护。2、项目代码中增加许多代码量。3、由于项目和部门挂钩,限制了部门组织机构的管理方式。
二、文档中心的多项目实现方案
文档中心菜单,按照不同项目创建不同的项目菜单。
根据用户角色部门或者人员分配对应的权限。
三、三维的多项目实现方案
不同项目,加载不同的FDP文件
四、手机app多项目实现方案
app保留app自身的菜单权限和web端接口的权限相匹配,保留有权限且app存在的表单给客户使用权限。