项目概述
客户是从事机械配件生成,销售,出口为一体的股份制企业,其供应商数量比较多,管理上难度增大。该系统的目的就是为了更好的管理各个供应商需求的Web平台,让各供应商和企业都可以通过该系统进行管理和交流。
该网站主要采用C#语言基于ASP.NET MVC进行开发的应用程序,无论供应商所处位置在国内还是国外,都可以登录进行访问,进行数据录入及查询等操作,并大大降低了企业的维护成本。
需求分析
核心业务:订单处理,生成送送单,送货单发货。主要是针对供应商对企业订单的处理。
扩展业务:期初/库存录入、索赔、申报及整改录入。
打印业务:条码打印,包括单个打印和批量打印。
报表业务:从多个方面统计订单和账单数据。
信息业务:信息平台(公告和消息)。
项目展示:
系统首页,用户进入系统后能快速的了解核心业务(数据)和信息,并迅速进入到相应的模块了解详细内容。
系统根据不同用户角色分配显示的每个菜单。
界面简洁明了,层次结构强,响应速度快。
数据列表显示
解决方案
操作系统:
Windows XP及以上
浏览器种类及版本
- IE 8及以上
- Google Chrome
- Firefox
技术要求:
- C#
- ASP.NET MVC
- Microsoft SQL Server
- Microsoft Visual Studio
- Entity Framework
- Web Service
- JQuery(DataTables)
- Bootstrap
- NPOI(Export Excel)
系统分析
数据库
数据库中表比较多,里面创建了较多View作为临时表或数据获取对象,并添加了自定函数和大量存储过程实现大数据的操作。项目开发过程中随时有对数据库进行备份和还原操作。另外对数据库结构的任何修改都会采用脚本的形式进行数据库升级。
架构分析
采用ASP.NET MVC三层架构开发模式,模型层应用了ADO.NET Entity Framework对数据进行操作,大大提高了开发效率;视图层采用了Html、Css2及部分CSS3特性和JavaScript,利用三方组件的有JQuery和Bootstrap,特别是列表数据显示,本项目采用的是JQuery Datatable,界面美观,效率较高;控制器利用Linq对模型的数据操作处理,业务逻辑显而易见,同时利用了部分WebService,加上Ajax异步作用对数据进行刷新处理,大类数据分页处理主要也Json数据进行传输,整体运行速度较快。
任务开发
开发阶段分为多步。需求分析,了解需求分析,在不明确或疑问之处,及时向客户提出或询问;原型阶段,在需求基本理解后,就开始着手于界面设计,在经过整体原型完成后,再向客户确认是否满足客户对系统的要求,若客户对原型有异议的地方,接下来还是应该对原型进一步修改,直到原型得到客户认可为止;开发阶段,客户同意了原型后,我们就可以正式开始项目的编码,中途遇到的问题需及时跟客户交流沟通,达到一致才能进行实施,在此过程中,我们还将分阶段的让客户看到我们所完成的工作,让客户更直观的了解项目进度和提早反馈;测试阶段,经过反复确认开发完毕后,我们将对系统进行全面的测试,以确保界面正常,业务正确,性能高效等;提交部署阶段,在通过一番测试后,我们就会向客户提交项目及帮助客户部署到客户环境当中试用,试用成功后上线;反馈处理阶段,在客户试用和上线过程中发现的Bug或问题,我们都会及时进行修改,再次发布,直至客户满意为止。
亮点
- NPOI方式导出Excel,无需在计算机上安装Microsoft Office Excel。
- 通过不同的条码规则生成条码及打印。
客户收益:
- 采用敏捷/迭代开发模式,减少了整个开发周期中可能遇到的风险。
- 向客户发送日报及周报,让客户清楚了解开发状况。
- 报表查询条件充分,查询速度快。
- 系统结果明确,代码附带详细注释,减少维护成本。
- 菜单分类显示,功能一目了然,操作方便快捷。
总结
本系统采用的成熟的框架及前沿的客户端效果,网站运行速度快,用户体验好,最终成果获得了客户认可。
合作方面,虽然业务方面有一定的争议,但公司秉承着为客户着想的思想,耐心地沟通交流,并站在客户角度思考问题,最终双方达到了双赢的效果。