從零開始學Java之出入門衛管理(二)
這個系統包含了四塊,第一塊就是人員管理,經理分配三位分別有“ABC"許可權的人,分別管理請假申請,請假審批,門衛登記管理。同時不屬於本公司的內部人員,如別的公司的人員如果想到本公司訪問,也是先通過這”ABC“許可權的三個人代為寫來訪申請,來訪審批,來訪門衛登記管理。
具體步驟如下:
因為後面都會用到很多相同的方法,和相同的屬性,所以我先建立了兩個介面讓後面的方法類和屬性類都實現這兩個介面,這樣就降低了耦合度。
從零開始學Java之出入門衛管理(一)裡面包含了我所建立屬性介面、方法介面以及 經理管理賦予“ABC”許可權及解除許可權的介面,我寫了預設的三個賬號跟密碼(許可權A:賬號1001 密碼:1314 許可權B:賬號1002 密碼:1314
許可權C:賬號1003 密碼:1314
這一次我先將主函式展示給大家:主函式中包含了經理登入的 賬號:admin 密碼:admin。以及各方面登入後各個不同許可權人呼叫不同的管理介面:
1.主函式,進入口。前面只發布了經理管理介面,所以只能進入ev.main();別的方法有待更新。後面加入了許可權B的程式碼介面類
程式碼為:
2.特殊類:裡面包含了一個特殊方法----這個方法是將 我本來定義的五種狀態轉化成文字來覆蓋這個用數字代表的狀態:0--代表申請 1--代表批准 2--代表駁回 3--代表出門衛 4--代表返回。主要是使用者看不懂我們所寫的01234代表什麼,所以為了方便我就寫了這個方法,這個方法與別的類都沒有直接的關係,所以我單獨寫了一個類:package com.jereh.discrepancy; import java.util.Scanner; public class Test { GoRequestView gbv = new GoRequestView(); GuestsView gv = new GuestsView(); Employeer emp = new Employeer(); EmployeerBiz empb = new EmployeerBiz(); EmployeerView ev = new EmployeerView(); ExamineView exa = new ExamineView(); ManegerView mv = new ManegerView(); Scanner input = new Scanner(System.in); public void judge(){ System.out.println("#####################################################"); System.out.println("#################1.外出申請 2.來訪申請################"); System.out.print("#################請輸入你要選擇的選項編號:"); int i = input.nextInt(); if(i==1){ gbv.goMain(); }else if(i==2){ gv.guestsMain(); }else System.out.println("@@@@@@@=======沒有這個選項!
[email protected]@@@@@"); } public void check(){ empb.as(); System.out.print("\[email protected]@@@請輸入賬號:"); String in = input.next(); System.out.print("\[email protected]@@@請輸入密碼:"); String pwd = input.next(); emp = empb.deng(in, pwd); if(emp==null){ System.out.println("@@@@@@你輸入的賬號密碼不匹配!######"); }else{ if(emp.getLev().equals("T")){ ev.main(); }else if(emp.getLev().equals("A")){ judge(); }else if(emp.getLev().equals("B")){ exa.examineMain(); }else if(emp.getLev().equals("C")){ mv.managerMain(); } } } public static void main(String[] args) { Test test = new Test(); test.check(); } }
程式碼為:
package com.jereh.discrepancy;
public class Replenish {
public String tran(int i){ //轉化:將狀態0,1,2,3的轉化成文字,然後返回
if(i==0){
return "申請ing";
}else if(i==1){
return "審批通過";
}else if(i==2){
return "駁回";
}else if(i==3){
return "過安檢";
}else if(i==4){
return "已過安檢";
}else
return null;
}
}
3.批准類:即遞交申請後,許可權B的人審批這張申請單,申請通過狀態為1,申請被駁回狀態為2.因為在門衛的介面中要顯示所有通過批准的人員資訊,然後輸入編號,如果該編號存在就可通過門衛出去:
程式碼為:
package com.jereh.discrepancy;
import java.util.Scanner;
public class ExamineView {
Scanner input = new Scanner(System.in);
GuestsBiz gb = new GuestsBiz();
GoRequestBiz gr = new GoRequestBiz();
public void addView(){
while(true){
System.out.println("***************審批管理**********************");
System.out.println("\t員工工號\t\t員工姓名\t\t外出事由\t\t外出時間\t\t" +
"返回時間\t\t狀態\t\t");
gr.show0();
System.out.println("=======================================================");
System.out.print("$$$$$$$$======== 1.批准 2.駁回 3. 退出:");
int n = input.nextInt();
System.out.print("@@@@@@@@========請輸入你要操作的選項編號:");
int num = input.nextInt();
if(n==3){
System.exit(0);
}else if(gr.change(num, n)&&(n==1||n==2)){
System.out.println("*************操作成功!恭喜領導又斬獲一匹黑馬!*****");
}else
System.out.println("+++++++++your mother 飛了++++++++++");
}
}
public void showView(){
while(true){
System.out.println("***************審批管理**********************");
System.out.println("\t來訪編號\t\t來訪者姓名\t\t來訪事由\t\t來訪者所在公司\t" +
"來訪時間\t\t狀態\t\t");
gb.show0();
System.out.println("=======================================================");
System.out.print("$$$$$$$$======== 1.批准 2.駁回 3. 退出:");
int n = input.nextInt();
System.out.print("@@@@@@@@========請輸入你要操作的選項編號:");
int num = input.nextInt();
if(n==3){
System.exit(0);
}else if(gb.change(num, n)&&(n==1||n==2)){
System.out.println("*************操作成功!恭喜領導又斬獲一匹黑馬!*****");
}else
System.out.println("+++++++++your mother 飛了++++++++++");
}
}
public void examineMain(){
while(true){
System.out.println("&&&&&&&&&&&&&&&&&&&&申請審批&&&&&&&&&&&&&&&&&&&&&&&");
System.out.println("$$$$$$$$$$$$===1.外出申請審批===$$$$$$$$$$$$");
System.out.println("$$$$$$$$$$$$===2.來訪申請審批===$$$$$$$$$$$$");
System.out.println("$$$$$$$$$$$$====================$$$$$$$$$$$$");
System.out.print("請輸入您要操作的選項編號:");
int in = input.nextInt();
if(in==1){
addView();
}else if(in==2){
showView();
}else
System.out.println("*********===親,沒有你要的特殊服務===*********");
}
}
}
這次就寫到這,未完待續.......
相關推薦
從零開始學Java之出入門衛管理(二)
這個系統包含了四塊,第一塊就是人員管理,經理分配三位分別有“ABC"許可權的人,分別管理請假申請,請假審批,門衛登記管理。同時不屬於本公司的內部人員,如別的公司的人員如果想到本公司訪問,也是先通過這”ABC“許可權的三個人代為寫來訪申請,來訪審批,來訪門衛登記管理
從零開始學 Web 之 JS 高級(二)原型鏈,原型的繼承
console 多少 程序 cat hub inf 當前 構造函數 調用 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔 博客園:
從零開始學 Web 之 JS 高級(三)apply與call,bind,閉包和沙箱
master 操作 console 概念 釋放 分享圖片 成功 num 命名沖突 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔
從零開始學Java之五種內部類將執行緒隱藏類中
1.使用普通內部類繼承Thread類 <code class="hljs java has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box;
從零開始學Java之單例模式:懶漢模式和飽漢模式
單例模式:單例模式是一種常用的軟體設計模式。在它的核心結構中只包含一個被稱為單例類的特殊類。通過單例模式可以保證系統中一個類只有一個例項而且該例項易於外界訪問,從而方便對例項個數的控制並節約系統資源。
從零開始學Java之 編寫簡單的工程
筆者本人從最初開始接觸C語言、C++、VC++、彙編到後來接觸PHP以及Java,在這些語言的使用過程中深刻感受到這些語言都是相同的編寫思路,程式碼編寫的方式也是大同小異,目前認為Java語言的亮點是package以及反射機制。 package不僅提供
【SpringMvc】從零開始學SpringMvc之實現使用者管理(四)
大家好,在上一篇中,我們實現了使用者登入,這一篇我們來實現使用者的增刪改查。由於在第2篇中,我們已經建立好了資料庫,這裡就不在詳述了。 準備 這裡,我們用到了騰訊的前端模板引擎art-template,不熟悉的小夥伴可以先了解一番,或者有熟悉其他模板引擎的,也
從零開始學Kotlin-類和對象(5)
int 文件中 cls 間接 main dcl this 調用 定義類 從零開始學Kotlin基礎篇系列文章 定義一個類 定義一個類,使用關鍵字class聲明,後面跟類名(不使用new) class demo5 {//定義一個類,使用關鍵字class聲明,後面跟類名
從零開始學微信小程式開發(一)
從我學習開發小程式到現在,已經有好幾款上線了。雖然都是一些益智類的小程式,不難,但是也從裡面學到了一些知識。 1.準備工作 首先需要去官網註冊一個小程式的帳號。註冊好賬號以後,就可以設定補充小程式的資訊
如何從零開始學Java編程
零基礎 簡單的 核心技術 為什麽 而且 log 更多 課程 比較 Java語言的學習開始,很多同學不知道從哪入手?如果你也想知道如何從零開始學Java?怎樣學Java最有效? 雖然Java面象對象很多東西都是被封裝好的直接用,相對其他語言沒那麽復雜,但是學的東西也沒有那麽的
從零開始學 Web 之 DOM(一)DOM的概念,對標簽操作
關註 1.5 pan 什麽 tin p標簽 nod text == 大家好,這裏是「 Daotin的夢囈 」從零開始學 Web 系列教程。此文首發於「 Daotin的夢囈 」公眾號,歡迎大家訂閱關註。在這裏我會從 Web 前端零基礎開始,一步步學習 Web 相關的知識點,
從零開始學 Web 之 DOM(四)節點
def clas scrip while p標簽 設置 ner 操作 text 大家好,這裏是「 Daotin的夢囈 」從零開始學 Web 系列教程。此文首發於「 Daotin的夢囈 」公眾號,歡迎大家訂閱關註。在這裏我會從 Web 前端零基礎開始,一步步學習 Web 相
從零開始學 Web 之 BOM(三)offset,scroll,變速動畫函數
樣式 清理 java mar dde sof mov har width 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔 博客園:
從零開始學 Web 之 jQuery(二)獲取和操作元素的屬性
eight images idt 隱藏 lis 屬性 ner master lin 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔
從零開始學 Web 之 jQuery(六)為元素綁定多個相同事件,解綁事件
png 好用 添加 方式 執行 存在 區別 也會 地址 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔 博客園:http://ww
從零開始學 Web 之 jQuery(七)事件冒泡,事件參數對象,鏈式編程原理
eval uri turn 定位 return 也會 否則 ont sele 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔 博客
從零開始學 Web 之 Ajax服務器相關概念OA現金盤平臺制作
臺電 如何 lamp ajax mysql 個人 客戶端 ipc httpd 一、服務器和客戶端服務器和客戶端都是電腦OA現金盤平臺制作 QQ2952777280【話仙源碼論壇】http://hxforum.com 【木瓜源碼論壇】http://papayabbs.com
從零開始學 Web 之 Ajax(三)Ajax 概述,快速上手
lan 技術分享 php 概述 由於 val asc logs 更新 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之巔 博客園:ht
從零開始學 Web 之 Ajax(五)同步異步請求,數據格式
遊記 document 空閑 name center 20px 實現 resp 也會 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web前端之
從零開始學 Web 之 Ajax(六)jQuery中的Ajax
var 技術分享 else parse cnblogs 我會 clas alt jquer 大家好,這裏是「 從零開始學 Web 系列教程 」,並在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公眾號:Web