关注微信 欢迎致电:400-8310-286

你在这里

酒酿管理系统

需求

功能需求

  • 权限管理
  • 用户管理
  • 系统参数设置
  • 静态业务数据设置管理
  • 预测和销售管理
  • 物理批号管理
  • 虚拟批号管理
  • 计算批号结余
  • 花费报表
  • 批号预约报表
  • 批号报表
  • 在线使用和离线使用
  • 批量导入数据
  • 产品查询报表
  • 对外的ERP接口

业务模型 

解决方案

技术平台

  • 平台: .Net Framework 4.5
  • 数据库:SQL Server 2008 R2
  • 数据访问:Entity framework 5
  • 系统框架:MVVM
  • 第三方控件:DevExpress,MVVM light toolkit

系统代码架构

  • 项目架构采用的是MVVM的结构,即:模型(Model),视图(View),视图模型(View Model)。

Model,负责数据处理和建模。

View,负责界面的显示和界面逻辑的完成。

View Model,为View的显示提供模型数据,和响应来自View的命令请求。

  • 该架构将和视图无关的逻辑代码完全从Code-behind中移除,便于应用程序的扩展和维护,同时利于界面和业务逻辑的并行开发与测试。

总体架构图

亮点(Featured)

支持在线和离线模式

从业务模型中可以看出来,使用该系统的角色有5个:系统管理员,销售经理,计划制定者,秘书和外部的ERP系统。角色属性为人的角色在使用系统的时候,可能存在地理位置的变更,也就使得他当时的物理环境无法连接到互联网成为可能。所以,离线和在线两种模式的操作在这个时候就显得非常必要了。用户可以在离线状态对数据做出一些更改,比如制定了一个销售计划,添加一个新的批号的产品信息等等,此时数据会被保存在用户的客户端数据库中。当用户能够连接进互联网之后,使用系统的同步功能,就可以将本地数据库和服务端的数据库中的数据进行同步。于是上面假设的销售计划和新的批号信息就能出现在服务端的数据库中了。这样使得不连接到网络中也能完成工作。在很大程度上,提升了程序的可应用环境,同时使得用户可以在任何时间任何地点完成工作。哪怕是在服务器出现故障的时候,也可以使用离线模式在本地完成工作,最后只需将数据同步到恢复后的服务器就可以了。在本系统中,对于数据同步的操作非常简单,只需要点击一下按钮,数据同步就会自动完成了。

如下图所示。点击”Download”按钮,就可以把服务端数据库的数据同步到本地;点击”Download And Upload”按钮,可以同时完成数据的上传和下载功能。因为数据同步功能是直接在两个数据库之间进行的,并不会基于本系统的架构进行通信,所以数据同步速度非常的快,即使是很大量的数据,也能有较好的用户体验。


 
DevExpress图表

使用DevExpress图表空间创建的各种报表。交互性极强,还能有动画效果,在用户体验上非常的友好。


 
技术难点

核心逻辑

Lot Balance是本系统中最为核心的数据。因为需要从该数据中提取出所有报表的呈现数据(包括分析图和表格),报表中呈现的数据又用来为管理的决策提供依据。所以如果Lot Balance计算的方式不正确将导致报表显示数据不正确,进而使得决策的错误。如此,就导致该系统不可用了。计算Lot Balance需要考虑的因素有:产品类型,产品存放的物理容器或场地的租金,每个月的增发量,每个月的销售、预约、计划等因素,然后选择对应应用场景的系统管理员定义的公式计算出未来一年乃至数年的Lot Balance每个月的数据情况。

性能

该系统在实际的应用场景中,可能存在千万级别的数据存储量。这样大量的数据,在查询,筛选,批量导入,计算Lot Balance中会产生性能瓶颈。通过使用存储过程,使得从数据库出来的数据尽可能的不包含无用数据,同时使用合适的压缩算法,减少了数据在网络传输的时间;使用异步编程的方式,使得UI长期保持可响应状态;通过使用任务并行技术,充分利用了服务器的内核利用率。通过以上方案,应用程序的性能得到了显著提升,用户体验更加良好了。

总结

项目采用原型加迭代的方式展开。每个迭代中都会有需求分析,设计,实现,测试,部署等过程在里面。通过制定每个迭代的任务和质量目标,在确保每个迭代目标的达成的基础上进而确保整个项目的目标的达成。

项目团队成员的技术储备有非常良好的互补性。如,有擅长管理的,有擅长DevExpress的,有擅长WPF的。在团队的精诚合作之下,每个人都发挥了自己最大的长处和作用。项目也因为不断的探索讨论,逐步的重构,最后趋于稳定。

客户对于项目的投入和及时反馈,对于项目的持续推进有非常大的帮助。

综上,管理、团队和与客户之间的良好合作,是保证本项目成功的关键。

收缩

QQ在线客服

客服001

电话咨询

400-8310-286

诚征代理

备案/许可证编号为:渝ICP备14000366号-1