• 基于Python的工人员工工资管理系统


    资源下载地址: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,'劳务收入','人民币','呼和浩特分行','普通');
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75

    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

  • 相关阅读:
    Kubernetes源码阅读环境搭建
    【工具】咸鱼之王辅助小助手来了!
    Selenium基础 — 浏览器弹窗操作
    智能家居的实用性设置有哪些?智汀小米的怎么样?
    分布式任务调度平台 xxl-job 搭建
    1.C语言初学——两数相加求和
    【uniapp】Google Maps
    Linux程序地址
    http模块中----------res响应对象 与服务器相关的数据和属性
    Web3:数字身份与隐私保护的新篇章
  • 原文地址:https://blog.csdn.net/newlw/article/details/125517545