《考勤管理系统——部分模块》项目研发阶段性总结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_44537838/article/details/86550281

开发工具:MyEclipse 10 Aad SQLyogEnt
关键技术:MyBaits + SpringMVC + Spring + H5 + Bootstrap + JQuery + Css
完成模块功能:编号管理、工作机构管理、工组管理、部门管理、员工信息管理
一、功能实现

编号管理:
见图1,编号管理实现界面。
编号管理模块主要是管理各个模块的编号信息。
在这里插入图片描述
图1 编号管理模块
根据输入的模块编号名称或者前缀进行模糊筛选所有的编号信息
点击 “查询”按钮查询出根据“考勤”所查询的数据,界面如图2,
在这里插入图片描述
图2 根据条件“考勤”所查询的编号数据
点击“操作”按钮可以对编号信息进行新增修改删除操作
在这里插入图片描述
图3 显示编号管理模块的操作信息
新增编号信息
点击图3“新增”按钮打开图4新增编号信息界面
在这里插入图片描述
点击图中的“关闭”按钮可关闭当前显示的新增Modal,点击“重置”按钮可对图中的数据进行重置。
在这里插入图片描述
新增成功后显示的编号数据如下
在这里插入图片描述

修改编号信息
选中图中的某一条数据,点击“修改”对此条数据进行修改
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
删除编号信息
选中图中数据(多条数据),点击“删除”对选择的数据进行删除
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

工作机构管理:
机构管理界面:可根据机构条件(机构编号、机构名称)、机构创建时间和机构所在城市 进行查询
在这里插入图片描述

机构条件:可对机构编号和机构名称进行模糊查询
在这里插入图片描述
创建时间:根据时间范围段进行查询
在这里插入图片描述
所在城市:模糊查询所在城市,根据选择的城市查询工作机构
在这里插入图片描述
新增机构信息
机构编号:根据数据库的编号前缀生成特定的机构编号(不可编辑)
机构名称:机构名称(可输入/必填)
上级机构:选择该机构的上级机构(自选)
机构负责人:所负责此机构的员工(不可编辑/必选)
省份:选择该机构所在的省份(不可编辑/必选)
城市:选中省份后解禁,根据省份id获取所在省份的所有城市(不可编辑/必选)
区域:选中城市后解禁,根据城市id获取所在城市的所有区域(不可编辑/必选)
机构地址:机构所在地址(可输入/必填)
机构说明:机构一些需要说明的信息(选填)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

修改机构信息
机构编号:根据数据库的编号前缀生成特定的机构编号(不可编辑)
机构名称:机构名称(可输入/必填)
上级机构:选择该机构的上级机构(自选)
机构负责人:所负责此机构的员工(不可编辑/必选)
省份:选择该机构所在的省份(不可编辑/必选)
城市:选中省份后解禁,根据省份id获取所在省份的所有城市(不可编辑/必选)
区域:选中城市后解禁,根据城市id获取所在城市的所有区域(不可编辑/必选)
机构地址:机构所在地址(可输入/必填)
机构说明:机构一些需要说明的信息(选填)
在这里插入图片描述
在这里插入图片描述

机构启用否
已启用的数据不可进行修改以及删除操作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
是否启用此条数据
在这里插入图片描述
在这里插入图片描述
删除机构信息
已启用的数据不可删除,先禁用才可操作
在这里插入图片描述
在这里插入图片描述

部门管理:
部门管理:根据部门名称、创建时间和隶属机构 查询部门信息
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
新增部门信息
部门名称:部门名称(可输入/必填)
创建时间:系统自动实时获取当前时间(默认已填写)
隶属机构:该部门所隶属的机构(不可编辑/必选)
部门负责人:此部门的负责人(不可编辑/必选)
部门说明:部门所负责的信息(选填)
在这里插入图片描述
修改部门信息
部门名称:部门名称(可输入/必填)
创建时间:系统自动实时获取当前时间(默认已填写)
隶属机构:该部门所隶属的机构(不可编辑/必选)
部门负责人:此部门的负责人(不可编辑/必选)
部门说明:部门所负责的信息(选填)
在这里插入图片描述
删除部门信息
删除部门信息:判断此条数据是否启用,启用的数据不可删除
在这里插入图片描述
工作组管理:
工组管理:根据选中的部门进行数据的查询、绑定
在这里插入图片描述
新增工组信息
隶属部门:所隶属的部门名称(默认已填写)
创建时间:系统自动实时获取当前时间(默认已填写)
工组编码:系统默认生成,根据工组编码前缀拼接(默认已填写)
工组名称:工组名称(可编辑/必填)
上级工组:该工组的上级工组(不可编辑/必选)
节假安排:节假日安排(自选)
公休安排:公休日安排(自选)
工组负责人:该工组的负责人(不可编辑/必选)
工组说明:该工组的说明(选填)
在这里插入图片描述
在这里插入图片描述
修改工组信息
隶属部门:所隶属的部门名称(默认已填写)
创建时间:系统自动实时获取当前时间(默认已填写)
工组编码:系统默认生成,根据工组编码前缀拼接(默认已填写)
工组名称:工组名称(可编辑/必填)
上级工组:该工组的上级工组(不可编辑/必选)
节假安排:节假日安排(自选)
公休安排:公休日安排(自选)
工组负责人:该工组的负责人(不可编辑/必选)
工组说明:该工组的说明(选填)
在这里插入图片描述
删除工组信息
删除工组信息:判断此条数据是否启用,启用的数据不可删除
在这里插入图片描述
员工信息管理:
根据员工信息、入职时间和隶属工组来查询员工信息
在这里插入图片描述
员工信息:根据输入的员工编号、员工姓名和身份证号来模糊查询
在这里插入图片描述
入职时间:根据选中的一个时间范围来查询员工数据
在这里插入图片描述
隶属工组:根据员工所在的工组为条件来查询
在这里插入图片描述
详细信息:显示该员工的详细信息(不可编辑)
在这里插入图片描述
新增员工信息
员工照片:选择本地图片上传路径到数据库(可编辑/必填)
员工姓名:员工姓名(可编辑/必填)
联系电话:员工手机号码(可编辑/必填)
婚姻状况:已婚或未婚(不可编辑/必选)
电子邮箱:该员工的邮箱(可编辑/必填)
身份证:输入员工身份证绑定员工生日、性别、年龄,限制长度18,(有输入验证/可编辑/必填)
居住地址:该员工所居住的地址(可编辑/必填)
员工编号:系统根据员工编号前缀生成特定编号(默认已填)
入职时间:获取当前创建的时间(默认已填)
隶属工组:该员工所在的工组(不可编辑/必选)
职位:员工所处职位(不可编辑/必选)
员工状态:在职或离职(不可编辑/必选)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
修改员工信息
员工照片:选择本地图片上传路径到数据库(可编辑/必填)
员工姓名:员工姓名(可编辑/必填)
联系电话:员工手机号码(可编辑/必填)
婚姻状况:已婚或未婚(不可编辑/必选)
电子邮箱:该员工的邮箱(可编辑/必填)
身份证:输入员工身份证绑定员工生日、性别、年龄,限制长度18,(有输入验证/可编辑/必填)
居住地址:该员工所居住的地址(可编辑/必填)
员工编号:系统根据员工编号前缀生成特定编号(默认已填)
入职时间:获取当前创建的时间(默认已填)
隶属工组:该员工所在的工组(不可编辑/必选)
职位:员工所处职位(不可编辑/必选)
员工状态:在职或离职(不可编辑/必选)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
删除员工信息
删除员工信息:判断此条数据是否启用,启用的数据不可删除
在这里插入图片描述
二、经典代码
根据身份证号获取生日、性别、年龄

var MyIDCard = "11204416541220243X";//身份证号
var MyBirthday;//出生日期
var MySex;//性别
var MyAge;//年龄
//根据身份证号获取生日、性别、年龄
function IDCardData() {
    if (MyIDCard != "") {
        //根据身份证号获取出生日期
        MyBirthday = MyIDCard.substring(6, 10) + "-" + MyIDCard.substring(10, 12) + "-" + MyIDCard.substring(12, 14);

        //根据身份证号获取性别
        if (parseInt(MyIDCard.substr(16, 1)) % 2 == 1)
        { MySex = "男"; }
        else { MySex = "女"; }

        //根据身份证号获取年龄
        var MyDate = new Date();
        MyAge = MyDate.getFullYear() - MyIDCard.substring(6, 10) - 1;
    }
}

三、开发总结(不少于500字)
        刚刚接触Java这方面的时候很懵,因为我是在企业学习中途回来学java的所以有很多不理解的地方,好在有一帮热心的同学在旁边帮助我快速进入状态。
        以前一直觉得Java特别特别难,那种触不可及的难。进入学习状态后觉得Java也没有想象中那么恐怖,发现Java开发其实跟C#的开发很多语法有一样的共同点他们都是面向对象的语言,也就是说,它们都能实现面向对象的思想(封装,继承,多态),只有部分的细节有不同而已。
比如:
        c#中的命名空间是namespace类似于Java中的package(包),在Java中导入包用import而c#中用using。
        数据类型:Java跟c#基本都差不多,但是Java的String类型的首字母必须大写,而c#中可以小写也可以大写,还有布尔型,Java中是boolean,c#中是bool。
        变量的命名:Java中可以用$符号,而c#中不可以使用。
        继承:Java中用关键字extends,c#只用":"就行了.调用父类的构造方法Java用super关键字,而c#用base关键字。
        多态:抽象类和抽象方法两种语言都用abstract关键字。Java中另外一个类如果继承了它,实现直接重写此方法就可以了;而c#必须加上关键字override实现。C#还比Java多一种虚方法来实现多态。
        输出:c#有三种方式输出:Cosole.WriteLine(); Cosole.WriteLine(要输出的值); Cosole.WriteLine(“格式字符串”,变量列表); 前两种的用法与Java中的ystem.out.println()方法的用法相同,第三种方式是根据占位符输出的,比Java更方便了。等等等等……(很多很多,就不一一列举出来了)
        现在的我已经掌握Java的大概编程风格了,但还有部分Java开发技术点不熟悉,我会继续跟Java磨合,相信用不了多久我就能像当初掌握C#MVC那样完全掌握Java开发技术。

猜你喜欢

转载自blog.csdn.net/weixin_44537838/article/details/86550281