这个是自己写的一个个人管理项目,已经开源在github中。
演示地址
github地址
大学的时候,自己有写日记,稍微记一下账单,但是苦于没有好工具可用。有找过类似日事清等一些软件,但这些软件
所以我基本上很少使用这些工具,总的来说原因就是这些工具并没有给我带来方便。
最开始的时候使用的txt文本来记录,这样的缺点也很明显:
2018-06-日记
,2018-06-账单
2018-07-日记
2018-07-账单
个样子,结果后面数量太多。中间有段时间把日记,账单,行程安排等全部在同一个excel的不同sheet中做,在excel中做有很多好处,解决了txt的缺点:
就一个文件,备份也只需备份这个文件。不管全量还是增量都方便了很多。
使用excel的自带的统计功能也能做一些简单的统计。
但到后面也觉得不方便:
所以大学期间就想做一个这样的系统,用来管理自己的一些东西。最近乘着有空,就根据自己的需求做了一个简单版本的。虽然这个项目并不是什么优秀的项目,但一方面是如果有人和我一样正在寻找一种解决方案,希望这个项目可以帮到你(虽然这个项目是按着我自己的需求做的,不过日记账单这些应该是通用的,同时如果需要你可以任意修改代码)。另一方面我是一个开源爱好者,在享受到其它开源项目的便利时,我也希望参与其中。
我自己也将持续使用这个项目作为个人管理,如果想到什么好主意也会持续添加到项目中。
该项目使用到了以下技术/工具
日记列表:中规中矩的列表界面,可按日期范围进行搜索
注:该项目直接使用layui后台模板,不过做了一些修改:把顶端导航栏缩小,只留下左边和导航栏一样的宽度,给主面板留下足够的空间。
添加日记:根据我自己的需求,有日期,天气,写日记地点,心情,日记内容这五项需要输入。
账单列表:提供根据账单的日期,账单的标签(每个账单只能有一个标签,标签在配置页面中增删改)进行查询日期。
添加账单:日期,金额,支付类型(现付/未现付 有些可能使用支付宝的花呗或者京东白条进行支付的),标签(一个账单只能选择一个标签)
在构建任务模块的时候考虑的比较多。
然后根据我自己的需求,主要分为长期任务,周任务和天任务。
长期任务很简单,就任务内容,状态,开始时间和结束时间。主要写一些需要长时间完成的任务,或者留到日后再进行的任务。
周任务大部分是参考长期任务的,该周完成正在进行中的长期任务的部分。
但是因为周任务可能不仅仅包括长期任务,可能还有其他一些本周需要做的但不处于长期任务之列,所以我这里没有将长期任务直接列入周任务,而需要手动添加周任务。
添加周任务,此处是根据PDCA来的,虽然只是四个简单的文本域。
在介绍天任务之前需要看一下任务管理和任务安排两个模块。
任务管理列表页面,根据任务优先级倒序排列。我根据自己的需求,创建任务时按照如下优先级创建任务
任务安排,在任务管理的添加的任务,都能够在这里进行安排。安排某任务可以选择一个日期范围。
通常,我会在
今年年末安排下一年的年任务。
本月月末安排下一月的月任务。
在天任务列表,使用右侧日期选择器查看某一天的任务。任务有是否完成按钮(完成后勾选)和状态按钮(放弃/未能完成该任务后时去掉勾选)。
所以整个任务模块的思路:长期任务(进行中的长期任务)–>周任务(进行中的长期任务的部分+本周需要完成的其他任务)–>天任务(周任务+固定的周任务+固定的天任务)
这样,只需要每周末安排,然后接下来的一周每天看当天任务即可。
下面这些模块是为了个人定制的,所以可能不太适合。
看书难免有一些读后感,比如读胡适文集,就特别有一些感想吧。之前有在excel中记录读了哪些书以及一些读后感。所以这次也在这个系统中加了一个图书管理模块。
添加图书界面,书名,作者,标签(和账单标签一样在配置页面中增删改),读后感。
图书列表
添加大事件:日期,类型(固定了三个类型:关于我,认识的人,社会上),事件,感想
大事件列表:这个是为了记录一些特别的时间点,也有部分原因是由于发现layui有timeline的功能,所以才打算加入这个模块。
0.0 每个时期的心理都不同,写一写,未来看一看,回味一下。
其实这几个模块都是根据我自己的excel中的记录变化而来。因为脑子是不可靠的,没办法记住每个人的一些细节,所以我会在这里进行一些记录。
总有一些喜欢的话,所以特地弄了一个页面来记录。
下图中,
这个一般不需要变动,除非你自己添加了功能,则需要在其中进行配置。
分组ID用于指示该url属于哪个分组
type=url&groupId=bigThing
这两个条件来获取的属性ID用于指示url的用途,比如
这个我都有统一命名。
菜单的type为menu。
分组ID:相同分组ID将会出现在同一个菜单栏下。根据分组ID正序排列。
图书标签根据自己的需要进行新建,注意类型一定要为bookTag即可。
分组ID相同的会被视为同一组,在图书列表界面同一组的会排在一起,如下图
也和bookTag差不多
只有日记和人物小传的字段使用了text,可以输入较多文字。
其他一些文本字段使用的是varchar,文字数量是有限制的。
如果觉得哪个字段长度不够用,可以进行相应的扩大。(注意要事先备份好数据)
目录结构:
有两种方式,一种是部署源码,一种是直接使用war包。
环境要求
步骤:
在Mysql中运行mysql_script/selfmanager.sql
脚本,其中有建库命令,建表命令,以及配置表的初始化数据。
解压source
文件夹中的selfmananger.rar
文件。
src/main/resources/config/database/mysql.properties
中的下面几项为你自己的配置。 在Mysql中运行mysql_script/selfmanager.sql
脚本,其中有建库命令,建表命令,以及配置表的初始化数据。
复制war/selfmanager.war
到你的tomcat目录/webapps/
目录下
src/main/resources/config/database/mysql.properties
中的下面几项为你自己的配置。 备份很重要,备份太勤快又累,懒于备份又要时时刻刻当心数据的丢失。
现在我是一周一备份,丢失一周的数据对我来说是可承受的。之前也次误操作删除了一月的数据,那心情简直沮丧到极点,尤其是日记数据的丢失。
图表展示:账单,任务完成情况等后期可能加入图表展示。
报表数据导出/导入。
感谢 layui ,使用既有的前端框架使得开发速度变快了很多。
感谢404页面的提供者 。
当然像maven,spring这些工具/框架就更不用说了。
如果发现bug或者有什么好的建议或意见(比如添加什么模块之类的),可以给我发邮件。
我的邮箱:[email protected]
MIT