终于,经历了一次次修改,更新了一次次需求,项目即将落下帷幕。
这次开发周期经历了快两个月,期间有十几位小伙伴参与到此次项目中。这个项目,给我的历练很大,不局于技术,也包括性格,沟通能力,以及处事方式的磨练。
这次项目中,我主要负责了基础模块--人员模块--信息上传--数据展示模块四个模块的内容。负责的模块比较多,虽然并不是最核心的模块,但也让我从中受益匪浅。
基础模块改造时,给我困惑最大的无非就是系统权限的设计以及部门结构的构建。原框架中职务和部门是没有关联的,初版需求中,我需要将二者关联起来,为了理清这一块的关联思路,同时保证权限的正常,前后花了快两天时间开发这一模块。虽然后来需求变更将二者的关联取消了,但是却让我理清了权限设计的思路。
看这一排排被注释掉不用的代码,是不是有一丝心疼呢?(切,这才冰山一角)
人员模块涉及到这个项目的主要业务,不过这一块总体业务比较简单。唯一困扰我的就是人员的批量插入功能,因为我们人员对象有两个,被反映人与反映人,同时又包含信访登记时的人员实时信息状态表,而且被反映人对象包含人或部门,也就是一个批量添加的操作,我需要同时维护5张表,并且还要校验数据的重复等等。。。(小小场面,能力有限,这个功能也就1000行代码左右)这一块是我耗时最长的一个模块,前前后后为了适应需求的变化经历了好多次修改,最终完成。这一块给我体会最大的,无非就是每次重新修改代码时,回顾自己之前的代码,才明白自己写的是多么的烂。
信息上传这,说不上一个模块,充其量算是人员模块那里的一个个小功能,为什么要单独提出来呢?肯定是花费的精力大啊。这个功能主要是提供人员信息的上传,即将Excel中的信息添加到数据库中,如果文件信息有误,要将有问题的信息标红并说明问题原因,重新返回给使用者修改。之前没接触过Java处理Excel,所有就需要从头开荒,但是我第一步就走错了,我第一步做的不是看官方文档,而是扒拉博客,结果初版做出来时,问题贼多。
怎么样,这个问题报告文件是不是很好看
数据统计这个模块原本并不是我的,但是负责这一块的同学实习了,我就接了过来。刚接过来时,压力挺大的,因为在原有的基础上,要对数据进行月-季度-半年-年的划分。当时感觉天空都不明了,感觉需求略微的变态(其实并不是简单的划分,是。。。。自己太菜了),记得当时我花了一中午时间,写了一个解决方案,搞完之后,求教学长有没有更好的处理方式。好的吧,学长听了我的解决方案,当即给pass了,花了15分钟又搞了一版,好嘞吧,请收下我的膝盖。再接着,是时间段划分的格式,我在纸上画逻辑思路,最终理清之后,我找学长辩解,说如果这样做我要做十几次数据的判断等等,好嘞吧。学长俩小时,几行代码解决吧,再次收下我的膝盖吧。学长成功地给我铺好了地基,我就只需要撸代码了,好嘞吧。我又遇到了繁杂的业务(其实简单的一批),构建一个部门树,本身项目中已有这个功能,但是我看不懂。(其实是太牛批了,自己也想写一个)不,不是想,而是最初学长让我构建,结果发现框架中可以通过权限直接获取到,我就使用了那个,但是这个功能不是很灵活。所以我就又构建了一棵,好嘞吧,我原本以为很难,没想到理清了思路搞是那么地爽。