Emp_ms
1.0.0
プロジェクト起草時期: 2022 年 4 月 3 日
プロジェクト開始時期:2022年5月7日
プロジェクト終了時期: 2022 年 5 月 14 日
プロジェクト利用者:システム管理者、部門長、一般社員
系统管理员: 更改部门主管
部门主管: 管理员工信息, 管理职位信息, 管理薪资信息
普通员工: 查看工资信息, 查看修改个人信息
Java
B/S
MySQL
Vue
、 Mybatis
、 ElementUI
、 Servlet
人事給与管理システムは、給与の一元管理を実現するシステムです。 財務担当者は、部門の人員と賃金を追加、削除、変更、照会するために使用でき、人事管理および賃金支払いの合計を自動的に計算することもできます。人事・賃金の管理状況を多角的に調査します。従業員はシステムを通じて自分の給与詳細を照会できます。
人事給与管理に関わる組織構造には、管理者、部門、従業員、役職が含まれます。 システムには、管理者と一般ユーザーの 2 つの主なタイプのユーザーが存在します。システムユーザーは、システム管理パスワードを使用して、管理者ユーザーを追加および削除できます。管理者ユーザーは、従業員管理、部門管理、役職管理、給与管理の操作を行うことができます。一般のユーザーは、個人情報の照会と変更、給与の照会、その他の操作を行うことができます。 1 つの部門の下に複数の従業員がいますが、1 人の従業員は 1 つの部門にのみ所属します。 従業員は 1 つのポジションのみを持ち、複数の従業員が同じポジションを持つことができます。 ポジションは部門に属し、部門は複数のポジションを持つことができます。
1. 従業員の職務:
1)员工登录:实现普通员工登录。
2)信息查询:员工可以查看自己的基本信息。
3)信息维护:员工可以维护自己的基本信息,如地址、电话等。
2. 管理者機能:
1)部门管理:实现对部门进行管理,管理员通过这个功能实现对部门信息的查询,部门员工的查询,对部门信息的更新,
对部门下职位的查询,对部门的增加、修改、删除以及查看所有部门信息等功能。
2)员工管理:实现对员工进行管理,管理员通过这个功能实现对员工信息的更新,对员工所在部门的修改,
对员工的删除、增加等一系列操作。
3)职位管理:实现对员工职位进行管理,包括对职位所在部门的调动,对职位的增加、删除。
4)薪资管理:实现对员工薪资进行管理,管理员通过这个功能实现对员工薪资进行修改。
3. 情報要件:
1)管理员信息:管理员的编号,管理员账户,管理员密码。
2)员工信息:员工编号,员工姓名,员工密码,性别,出生日期,身份证号码,
民族,籍贯,联系电话,住址,部门编号,职位编号。
3)部门信息:部门编号,部门名称,部门负责人。
4)职位信息:职位编号,职位名称,部门编号。
4.安全要件:
1)系统设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;
2)系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;
3)系统应对不同用户设置不同的权限,区分不同的用户,如普通职工和管理员。
普通职工(只能查询个人、薪资信息和更新个人信息);
管理员(可以管理部门、员工、职位、薪资等信息);
系统管理密码拥有者(可以增加和删除管理员)。
5. 完全性要件:
1)各种信息记录的完整性,信息记录内容不能为空;
2)各种数据间相互的联系的正确性;
3)相同的数据在不同记录中的一致性。
-- auto-generated definition
create table employee
(
id int ,
name varchar ( 255 ) not null ,
passwd varchar ( 255 ) not null ,
sex char ( 2 ) not null ,
rate float default 0 null ,
birth date not null ,
address varchar ( 255 ) not null ,
cardId varchar ( 20 ) not null ,
tel varchar ( 20 ) not null ,
dep_id int not null ,
job_id int not null ,
constraint employee_ibfk_1
foreign key (dep_id) references department (id),
constraint employee_ibfk_3
foreign key (job_id) references job (id),
constraint employee_ibfk_4
foreign key (dep_id) references department (id)
)
engine = InnoDB;
create index dep_id
on employee (dep_id);
create index idx_emp_id
on employee (id);
create index idx_name
on employee (name);
create index job_id
on employee (job_id);
alter table employee
add primary key (id);
alter table employee
modify id int auto_increment;
-- auto-generated definition
create table department
(
id int auto_increment primary key ,
dep_name varchar ( 255 ) not null ,
manager_id int not null ,
constraint department_ibfk_1
foreign key (manager_id) references employee (id),
constraint department_ibfk_2
foreign key (manager_id) references employee (id)
)
engine = InnoDB;
create index idx_name
on department (dep_name);
create index manager_id
on department (manager_id);
grant select on table department to leo;
-- auto-generated definition
create table job
(
id int auto_increment
primary key ,
job_name varchar ( 255 ) not null ,
dep_id int not null ,
salary int not null ,
constraint job_ibfk_1
foreign key (dep_id) references department (id)
on update cascade on delete cascade
)
engine = InnoDB;
create index dep_id
on job (dep_id);
create index name_idx
on job (job_name);
-- auto-generated definition
create table manager
(
id int auto_increment
primary key ,
name varchar ( 20 ) not null ,
passwd varchar ( 20 ) not null
)
engine = InnoDB;