Winform开发框架之通用人员信息管理

我在随笔《Winform开发框架之通用短信邮件通知模块》和《Winform开发框架之通用附件管理模块》等多篇文章中都有介绍我总体的一个Winform开发框架的规划,其实就是开发一个集成度高的Winform开发框架,然后尽可能开发一些日常项目用到的模块,我称之为通用模块(可重复利用,或稍微调整可以适应项目需求),这样就形成了一个良好的生态体系,能够极快提高开发效率,同时也能规范化项目产品的开发工作,松耦合的集成能提供更高层的整合和利用。本文主要介绍我的Winform开发框架体系里面的一个新的模块,通用人员信息管理模块,这个模块其实在很多场合都可能用到,如企业员工管理、科室员工管理等等,这些要求登记人员详细资料及图片等信息的系统模块,就是我这里提到的人员信息管理模块。

首先我们来回顾一下,我的Winform开发框架体系,以及人员信息管理模块在其中所处的位置。Winform开发框架是我集多年开发经验以及积累而成,很多细节之处润物细无声,但却是精粹心得所至,很多地方都希望是精益求精,力求把框架中的模块当成一把把神兵利器,用到的时候,马上就可以派生用场解决问题,这样可以避免给客户开发业务的时候,延误战机,或者因为事无巨细,都要从头来过,效率大打折扣,而且时间和金钱的大投入也未见得取得好的效果。

 1、模块设计

整个人员模块,我们预想需要管理人员基本信息,学习情况,职称情况,履历情况,出国情况,家庭情况,受奖情况,以及相关的附件信息,当然人员数据还有一些字典管理,因此该模块同时也整合通用附件管理模块,以及通用字典管理模块,是一个小综合性的集成模块了。

人员信息管理,一般需要导出一个标准型的Word文档,方便人员资料打印操作,我们预想是导出这样的文档的。

因此设计模块的数据库如下所示,其中包括了通用字典管理和通用附件模块的数据库设计。

完成以上的文档规划以及数据库的模型设计,就可以着手开始我们的系统模块功能,以及界面的设计工作了。

2、软件使用界面

和其他通用表格一个,需要展示一个列表集合,把相关功能集成在其中,包括查询、新建、按模板的导入、导出功能,当然更多的功能,集成在分页控件的(列表)右键菜单中,其中一些字典项目,采用下列列表方式,方便填写或者从中选择。

详细的数据编辑窗体,就是综合各种人员信息的填写和展现了,包括前面提到的基本信息(含肖像管理)、学习情况、职称情况、履历情况、出国情况、家庭情况、个人图片、科研和受奖情况、个人文件资料等功能模块,其中整合了字典管理、附件管理,所以功能使用也很方便,下面就是一个基本资料的主界面情况。

为了更好展现整个人员管理数据内容的情况,我们在看看其中家庭和个人图片的管理界面,其中家庭情况,可以在其中添加、删除、刷新、位置上移、位置下移等操作,个人图片则是集成了附件管理的模块,因此也方便集成进去。

 

3、报表导出

刚才说到,我们的目的之一,就是需要导出一个符合规格的Word文档,这样方便我们正常的数据交换和打印显示。为了更好的实现固定报表的导出,对于表格的绑定,这里使用了Aspose.Cell的MailMerge功能了,先在固定模板中插入并定义好相关的域引用,如下所示。

然后,插入一些常规的书签(单字段),这样绑定数据就很方便了,最后设计好的Word模板如下所示。至于了Aspose.Cell的MailMerge功能操作,有空再独立的随笔中介绍吧。

4、模块集成使用

由于模块是独立开发,支持集成整合的,因此,把相关的数据库部署到具体的环境上,然后简单调用下面的代码就可以了。

        private void btnAddStaff_Click(object sender, EventArgs e)
        {
            FrmEditStaff dlg = new FrmEditStaff();
            dlg.ShowDialog();
        }

        private void btnStaffList_Click(object sender, EventArgs e)
        {
            FrmStaff dlg = new FrmStaff();
            dlg.ShowDialog();
        }

 以上就是我开发人员管理的一些思路和总结,介于篇幅原因,细节地方以后会逐步介绍一下。整个模块除了能够有效管理人员基本信息外,还比较方便对人员列表数据,如家庭情况,履历情况等列表性的数据合理的管理,还可以通过附件管理(详细功能可以参考一下《Winform开发框架之通用附件管理模块》),这样集成,既能达到满足功能需求,又能更好实现松耦合的集成使用,在今后的开发项目中多次运用,达到提高效率,提高代码质量和稳定性的目的。

希望本随笔文章对大家有帮助,有启发。

本文转自博客园伍华聪的博客,原文链接:Winform开发框架之通用人员信息管理,如需转载请自行联系原博主。

时间: 2024-10-17 09:41:05

Winform开发框架之通用人员信息管理的相关文章

Winform开发框架之通用人员信息管理实现代码介绍

我在上一篇<Winform开发框架之通用人员信息管理>随笔中介绍了这个通用人员信息管理的大致实现界面和思路,本篇就其中的实现细节做进一步的分析和共享,希望大家对其中的实现代码进行一个了解,并希望多多提出宝贵意见.通用人员信息管理模块,这个模块其实在很多场合都可能用到,如企业员工管理.科室员工管理等等,这些要求登记人员详细资料及图片等信息的系统模块. 1.项目框架布局 以上几个模块分开是为了适应更多的项目需要,如可能用到WCF模块,那么实体类需要独立引用.但是如果是纯粹的Winform模块,以最

Winform开发框架之通用定时服务管理

做项目的时候,或多或少需要和其他外部系统或者接口进行数据交互,有些是单向的获取,有些可能是修改状态后再写回去,不管如何,这个都可以称之为数据同步操作,如人员信息同步.业务数据同步.第三方接口数据同步等等. 数据同步涉及到一个同步时间的问题,一般不敏感的数据,一天或者一周左右同步一次就可以了,有些可能需要间隔更短一点. 同步的逻辑不同,有些可能写数据库就可以了,有些可能需要访问WebService或者其他接口,然后在进行数据获取,保存等操作,回写的时候,也一般是调用WebService这样的接口修

Winform开发框架之通用附件管理模块

在做Winform项目的时候,一直有一个梦想,就是希望把所有的组件模块组合即可组装成一个完整的项目系统(或者至少可以大部分完成).这即使是梦想,我也一直为之奋斗,每前进一步,我们离梦想就靠近一步.因此,本着这个梦想,我一路走来,开发整理了一系列的组件模块,包括底层的公用类库.Winform分页控件.通用的适应多数据库的查询组件,以及相对高层次一点的组件模块:通用权限管理系统.通用字典管理模块.通用程序自动更新模块.以及本篇随笔介绍的通用附件管理模块,当然还会有更多的组件模块会吸引我继续朝着梦想前

Winform开发框架之通用数据导入导出操作的事务性操作完善

1.通用数据导入导出操作模块回顾 在我的Winfrom开发框架里面,有一个通用的导入模块,它在默默处理这把规范的Excel数据导入到不 同的对象表里面,一直用它来快速完成数据导入的工作.很早在随笔<Winform开发框架之通用数据导入 导出操作>里面就很全面的介绍过它的相关功能了,在代码生成工具Database2Sharp里面,生成的 Winfrom界面代码也已经把它的调用代码放进去了,因此使用起来真是很好,很开心. 在不断的项目实践中,发现使用基于Sqlite的客户端作为单机版的操作也越来越

Winform开发框架之通用高级查询模块

最近一直忙于公司的事情,虽然一直在做一些相关的技术研究,但是很久没能静下心来好好写写博客文章了,想想也有半个月之多了,这半个月来,也一直致力于改善我的WInform开发框架,使得自己及客户使用起来更加方便,更加友好,更加高效.本篇文章就是介绍最近框架改善的其中一个闪光点"通用高级查询模块",高级查询模块,在很多程序模块中都很常见,也是给客户扩展查询的一个很好的补充,由于我一直希望我的Winform开发框架能够精益求精,所以做了这个模块,希望对今后我自己所有的项目以及框架本身,都能高效的

Winform开发框架之通用定时服务管理2---如何开发定时服务应用

在上篇随笔<Winform开发框架之通用定时服务管理>介绍了我的框架体系中,通用定时服务管理模块的设计以及一些相关功能的展示.我们在做项目的时候,或多或少需要和其他外部系统或者接口进行数据交互,有些是单向的获取,有些是双向的操作.这个定时操作(可能是间隔的时间,也可以能是定在某一个时刻,也可以能是让它在某天某时刻运行),那么这就需要定时服务程序来管理了,通常我们把他寄宿在Windows服务里面(这也是一种最佳的方式),这种方式最好的地方,就是它的生命周期可以随着电脑的启动而启动,而且很少需要用

Winform开发框架之通用数据导入导出操作

做了很多Winform的项目,对于数据导入,一直也有自己的理解,由于一般的业务系统,经常性的数据导入时很正常的业务需求,因为毕竟使用Excel来操作数据也很方便,或者由于系统之间的数据交换需要,我们需要提供一个入口给客户导入所需要的数据.但是导入数据的时候,不同的业务数据对应不同的Excel文件,很难做到统一,但如果是每个业务模型,都创建一个不同的导入界面来操作Excel数据,又会觉得可能某种程度上重复劳动,增加开发及维护成本. 那么有无一种介于两者之间的方法,来实现效率的最优化,并且能够统一利

Winform开发框架之通用短信邮件通知模块

在做Winform项目的时候,一直有一个梦想,就是希望把所有的组件模块组合即可组装成一个完整的项目系统(或者至少可以大部分完成).在之前介绍的<Winform开发框架之通用附件管理模块>里面介绍了我的Winform开发框架的版图,里面包含了我对Winform模块化的一系列规划的组件,组件尽可能是适用于大多数的业务环境组合,以达到最大程度的重用和高效开发. Winform开发框架是我集多年开发经验以及积累而成,很多细节之处润物细无声,但却是精粹心得所至,很多地方都希望是精益求精,力求把框架中的模

Winform开发框架之通用自动更新模块

在网络化的环境中,特别是基于互联网发布的Winform程序,程序的自动更新功能是比较重要的操作,这样可以避免挨个给使用者打电话.发信息通知或者发送软件等,要求其对应用程序进行升级.实现程序的自动更新,在后期发布维护过程中,一个可以快速相应修正相关的Bug或者增加功能,二个可以避免给使用客户隔三差五的发送修改好的程序,省心省力.本文也是基于这个思想,在Winform开发框架中再引入一个自动升级更新的通用模块,这个自动升级的通用模块除了具备一般的功能外,可以通过配置程序标题.升级路径方式等方式,实现