资源下载地址:https://download.csdn.net/download/sheziqiong/85821146
资源下载地址:https://download.csdn.net/download/sheziqiong/85821146

一、引言

1.1 编写目的

工人工资系统,记录工人工资并导出数据。

1.2 背景说明

工地工人发放工资还是传统的手工方法,容易出现错误和丢失数据的情况,数据库系统可以有效的管理储存数据,减少操作。

1.3 预期读者和阅读建议

适合软件开发成员和项目经理阅读。

1.4 分工

苏日乐格,白松甫:需求分析

董宏毅:概念结构设计

倪安祥:逻辑结构设计

雷智杰:数据库编程

二、任务概述

2.1 目标

记录工人工资并且生成成批经办模板用于发放工资。

2.2 用户特点

项目经理可增删查改员工信息和工资。

员工可查看个人信息和工资。

数据库管理员进行数据库的运行和维护。

2.3 假定和约束

一般约束、假设及对用户的要求。

三、数据库需求分析

对现有系统(包括自动或人工的)进行简要分析。

3.1 数据项/数据结构分析

财务系统共有 5 个表,按照功能大致分为四大类:

1:员工信息,包括 employees 表。

2:公共信息,包括 bank 表和 fdl_city 表。

3:工资信息,包括 salary 表。

4:付款信息,包括 payment 表。

分析:

employees 员工 由(eno,eaccount,ename,cnaps_code,id,email,phone)7 个数据项组成

eno 员工编号 number(7) 唯一确定员工,

eaccount 员工银行账号 VARCHAR2(19)19 位银行卡号 每个员工登记一个银行卡账号,

ename 员工名称 VARCHAR2(12) 非空,

cnaps_code 联行号 VARCHAR2(12) 12 位联行号 非空 参照 bank 表,

id 城市编号 number(10) 非空 参照 biaofdl_city 表,

email 电子邮件 VARCHAR2(20) ,

phone 移动电话 VARCHAR2(17)

salary 工资 由(eno,year_month,amount)三个数据项组成

eno 员工编号 number(7) 参照 employees 表,

year_month 工资日期 date ,表示当月工资,

amount 工资 number(6) ,

eno 和 year_month 一同决定某员工当月工资。

bank 银行(cnaps_code,bname,branch)

cnaps_code 联行号 VARCHAR2(12) 12 位 唯一确定银行的支行,

bname 银行名 VARCHAR2(20) ,非空,

branch 支行名 VARCHAR2(50) ,非空

biaofdl_city(ID,serial_no,l_name,parent_id,l_level)

id 总编号 number(10) 唯一确定地区,

serial_no 独立编号 varchar2(25) ,非空 ,

l_name 省或市名称 varchar2(50) ,非空,

parent_id 市属于的省 varchar2(25) ,非空 ,

l_level 等级划分 number(4) ,非空

payment 付款信息(Account,purposes,Currency,branch,settlement_method,business_types)

Account 付款账号 VARCHAR2(19) 唯一决定付款信息,

purposes 用途 VARCHAR2(10) ,非空,

Currency 币种 VARCHAR2(10) ,非空,

branch 付款分行 VARCHAR2(50) ,非空,

settlement_method 结算方式 VARCHAR2(4) ,非空,

business_types 业务种类 varchar2(10) ,非空

通过这 5 张表,我们可以看出,整个财务系统所涉及的主要内容包括:员工信息的管理,包括银行和地区,工资的管理。

3.2 数据定义分析

表的定义:

create table employees(

eno number(7) not null PRIMARY KEY,

eaccount VARCHAR2(19) not null,

ename VARCHAR2(12) not null,

cnaps_code VARCHAR2(12) not null references bank(cnaps_code),

id number(10) not null references fdl_city(id),

email VARCHAR2(20),

phone VARCHAR2(17));



create table bank(

cnaps_code VARCHAR2(12) primary key,

bname VARCHAR2(20) not null,

branch VARCHAR2(80)not null);



CREATE TABLE fdl_city(

id number(10) not null PRIMARY KEY,

serial_no varchar2(25)  NOT NULL ,

l_name varchar2(50)  NOT NULL,

parent_id varchar2(25) NOT NULL ,

l_level number(4) NOT NULL

);



create table salary(

eno number(7) not null references employees(eno),

year_month date not null,

amount number(6),

primary key(eno,year_month));

create table payment(

Account VARCHAR2(19) not null primary key,

purposes VARCHAR2(10) not null,

Currency VARCHAR2(10),

branch VARCHAR2(50),

settlement_method VARCHAR2(4),

business_types varchar2(10)

);

insert into bank values(402191030498,'农村信用合作社','内蒙古呼和浩特金谷农村商业银行股份有限公司创业路分理处');

insert into fdl_city values ('1', '11', '北京市', '0', '1');

insert into payment values(471901379510902,'劳务收入','人民币','呼和浩特分行','普通');

3.3 数据操纵分析

需要提前录入城市信息和银行支行信息,

员工信息、工资和付款信息的增删查改由经理实现。

3.4 数据完整性分析

实体完整性:

  • employees 表 eno 为主键,唯一确定员工
  • salary 表 eno 和 year_month 为主键,一起确定员工月工资
  • bank 表 cnaps_code 为主键,唯一确定支行
  • biaofdl_city 表 id 为主键,唯一确定城市
  • payment 表 Account 为主键,唯一确定付款信息

参照完整性:

  • employees 中 id 参照 biaofdl_city 中 id,cnaps_code 参照 bank 中的 cnaps_code,员工的城市和银行必须是存在与表 biaofdl_city 和表 bank 中的。

  • salary 中的 eno 参照 employees 中的 eno,有工资的员工必须在员工表中。

用户定义完整性:

  • employees 的 eno,eaccount,ename,id,cnaps_code 不为空,保证工资可以发出去。
  • salary 的 eno,year_month 不为空,保证如果有工资,必须有记录,谁的几月的工资。
  • bank 的 cnaps_cod,ebank,branch 不为空,保证有联行号和对应的银行名,支行名。
  • biaofdl_city 的*不为空,保证有地区的全部信息,包括编号,独立编号,市属于的省,级别。

3.5 概念结构设计

E-R 图:

  • 说明:一个员工只能登记一个银行卡和对应的银行,一个银行可以办理多个员工的银行卡,对应关系 n:1。
  • 一个员工只能有一个所在地,一个城市能容纳多名员工,对应关系 n:1。
  • 一个员工能有多份工资,一份工资只属于一个人,对应关系 1:n。

3.6 逻辑结构设计

逻辑模型

关系模型:

3.7 物理结构设计

SID:使用名为 orcl 的 SID

表空间:C:\tbspace\FINANCIAL_SYSTEM_TBSPACE

四、业务功能详细描述

4.1 子系统(模块一)

4.1.1 业务功能描述

员工信息增删查改,工资增删查改,付款方式增删查改,工资表导出。

4.1.2 业务流程图

4.1.3 主题描述及用例视图

4.1.4 用例描述

  • 删除员工/工资/付款信息:从数据库中删除信息。
  • 增加员工/工资/付款信息:增加员工/工资信息到数据库中。
  • 修改员工/工资/付款信息:对数据库中的信息进行修改。
  • 查看员工/工资/付款信息:对员工/工资信息进行查看
  • 登录:连接数据库,登录到系统。
  • 注销登录:断开连接,退出系统。
  • 导出成批经办模板:导出为银行经办系统可用的 Excel 表格
4.1.4 用例名称一

【用例功能说明】

为了将信息插入到数据库,实现信息录入。

【操作描述】

输入员工的信息

点击插入按钮

【活动图、顺序图或协同图】 (可选内容)

【界面原型】 (可选内容)

4.1.4 用例名称二

【用例功能说明】

导出成批经办模板 Excel 文件,用于导入银行系统的成批经办功能。

【操作描述】

输入起始和截至时间

输入付款账号

输入导出的文件名

点击确定按钮

【活动图、顺序图或协同图】 (可选内容)

【界面原型】(可选内容)


资源下载地址:https://download.csdn.net/download/sheziqiong/85821146
资源下载地址:https://download.csdn.net/download/sheziqiong/85821146

Logo

本社区面向用户介绍CSDN开发云部门内部产品使用和产品迭代功能,产品功能迭代和产品建议更透明和便捷

更多推荐