2.1 系统需求分析
根据讨论分析,一共总结以下4种功能和需求。
系统的查询功能:需要有不同条件下对合同的检索;需要能查询到所有的客户信息;需要能查询所有的项目类型的数据;需要用户能查询账号的个人信息;管理员能查询到所有用户的信息。另外系统需要二维码扫描的功能来查询该二维码显示的合同的信息。
系统的统计功能:需要能统计某个客户所有签约的合同份数和结束未结束的合同份数;需要能统计某个地区,某个项目,某个行业,某个时间段,或者某个合同金额范围的合同总额和合同份数。系统还需要提供以上条件不同类型的组合的统计结果,例如在某个地区某个行业和公司签署了多少合同,总金额是多少。
系统需要账户的管理功能:使用者可以自行修改自己的密码;当然管理者比用户多一个管理用户的权限,管理员可以修改用户密码,也可以新增或删除用户。
系统还需要两种登录的方式供使用者选择。
2.2 系统数据库分析
合同管理系统是公司的机密不能泄露,员工也只能在公司内部进行处理。所以手机移动端,手机和服务器必须在同一个局域网中才可以使用。系统设置了一个管理员和多个用户。但是同时在线的只能是一个使用者。即在一个用户登录时系统检测到其他用户在线的情况下无法登录系统。当管理员在线时,所有用户将无法登录。当用户在线时,管理员可以强制上线,并强退用户。另外用户必须点击退出按钮(正常操作),不然所有用户将无法继续使用,直到管理员解锁。如若管理员没有自行点击退出,系统将会冻结,除非修改数据库数据才可以运行。
数据库的实体应该有:公司、部门、员工、合同、合同文件、合同金额、客户、使用者、项目类型,地区和行业。
数据库应该能存储管理人员的信息,包括管理员编号、管理员姓名、密码、上次登录时间(最后登录时间)和删除标记。
数据库应该能存储合同信息,包括注文書番号、公司别、部署、营业担当、签约日、项目编号、项目类型、顾客名、项目名称、项目周期开始、项目周期结束、合同总额、合同金额、是否结束标志、备注和删除标记。
数据库应该能存储本公司的信息,包括公司编号、公司名称和删除标记。
数据库应该能存储公司的部门信息,包括部门编号、部门名称、部门层次、上一层部门编号/所属公司和删除标记。
数据库应该能存储员工信息,包括员工工号、姓名、所属部门和删除标记。
数据库应该能存储客户的信息,包括客户编号、客户名称、客户简称、客户所属地区、所属行业、客户资质、备注和删除标记。
数据库应该能存储项目类型,包括项目编号和项目类型名称和删除标记。
删除标记主要用于判断,是一个非常用的判断依据。
2.3 系统开发环境
系统主要使用的开发工具和环境是Hbulider,Ecplise,PostgreSQL和一台window 7系统的电脑和一部安卓系统的手机。
2.3.1 Hbulider
系统前台的开发使用的工具是Hbulider:它是一款支持HTML 5的Web开发的集成开发环境,因为这个工具主体本身是用java编写的,所有它可以兼容Eclipse的插件。它最大的优势就是快,有着完整的语法提示和代码的输入法,大幅提升了html 、js、css的开发效率。Hbulider有着比较完善的浏览器兼容性提示,加上很环保健康的视觉设计给用户极为舒适的体验。最重要的一点是它可以开发移动app,是一个十分强大的工具。