程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

基於Python的工人員工工資管理系統

編輯: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,'勞務收入','人民幣','呼和浩特分行','普通');

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


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved