博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
懒人的ERP开发框架--2B&苦B程序员专用
阅读量:6373 次
发布时间:2019-06-23

本文共 1266 字,大约阅读时间需要 4 分钟。

在企业内部的ERP系统开发中,如果使用MS的技术,那么Winform + DevExpress + IIS + WCF +EF 就是懒人的黄金组合了,EF使用数据库优先,一般ERP应用主要关注点在数据,下面介绍的本人最近搭建的一个开框架,主要涉及UI、通讯、数据访问等,本框架不涉及那些让人迷糊OO,DI,AOP,ORM,基本上是个.net程序员都能搭建,而且皮实耐用,采用三层结构也提供了很好的扩展性(话说N年都没扩展过),当然也不防碍你往里面添加上面的DI,AOP,ORM等xxxx,如果你要折腾技术的话。

 

先说UI

当然要做出看上去不那么原始的UI,整套DevExpress是必须的

DevExpress使用简单功能强大(当然这些都是广告--学习还是要化力气的,不过最好化点小钱去买现成的中文学习资料省点力气自己折腾,珍惜生命把)

上面UI就是拖几个控件就搞定了,导航里面按系统分多个组,每个组里面是一个树形菜单,可以挂任意多功能
功能与菜单UI的数据库结构
主要有Funs与Catalog两张表,Catalog是一个多级分类表第一级就是上面菜单导航的组,而Funs是具体的功能,一般对应某个Form,程序里采用反射来创建窗体,这样你就可以把XX,YY系统,分装到不同的项目里(dll里),每个Fun需要指定挂到那个Catalog分类下,就是上面UI看到的。

关于权限控制:

   上面针对一类用户能建立一个FunsConfig,ConfigItems保存了该配置下有那些Funs,UI上根据分配的Funs生成对应的树型目录,(算法是,首先生成一棵完整的目录与功能树,然后使用Queue 遍历树,标记那些存在于ConfigItems表中的Funs,同时标记这些被标记节点的祖先节点,然后移除那些未标记的节点)当然你需要的话可以建立角色,然后将Funs关联到角色,用户再关联到多个角色。一般ERP框架中权限分配到模块就算完事了,如个别模块有数据权限的需求兄弟就自己写代码实现把,或者找那个“犀利哗啦日哥”买个。

项目的功能划分:

一般一套ERP可能涉及物流(采购,销售,仓库...),人事,生产管理,财务...等模块,项目做下来可能有N多的窗体,Service,接口等,  这个时候我们一般对按系统进行划分,建立多个项目,由于采用了三层结构每个功能模块一般有如下几个项目, xxx.Hr.Forms.dll, xxx.Hr.Models.dll, xxx.Hr.IService,xxx.Hr.Service.dll
相信从patshop学会所谓OOD宇宙真理的兄弟应该很容易看明白, Forms与是放在客户端的而Service是放在IIS上的,其他的两端都会部署的。
-----------------

这篇到这里,下一篇讲下WCF,怎么使用no svc 来避免一堆的xml(做个erp整百一个service是必需的),以及wcf中的认证,大数据传输的一些配置,后面再讲点数据库访问,数据库优化的东西当然都是适合2B程序员IQ范围的。

                

转载地址:http://wljqa.baihongyu.com/

你可能感兴趣的文章
enter键触发事件
查看>>
关于binary log一点总结[转]
查看>>
Android判断屏幕锁屏的方法总结
查看>>
文件/文件夹权限设置命令chmod的具体使用方法
查看>>
AngualrJS之服务器端通信
查看>>
【第二十六章】 hystrix-dashboard + turbine
查看>>
一个有意思的Ruby Webdriver超时问题的解决过程
查看>>
企商云惠--我的起点
查看>>
Windows下Nginx的启动、停止等命令
查看>>
[转]kaldi特征和模型空间转换
查看>>
元类与面向切面编程
查看>>
40.Node.js Web 模块
查看>>
Mac+iPhone 移动端真机调试
查看>>
02-移动端开发教程-CSS3新特性(中)
查看>>
Callable,Runnable比较及用法
查看>>
Centos7安装docker-compse踩过的坑
查看>>
细说Nullable<T>类型
查看>>
oracle 插入表数据的4种方式
查看>>
7.Ajax
查看>>
Linux vi/vim编辑器常用命令与用法总结
查看>>