可以試試看啊
以下方法實現了用戶界面登陸
import java.awt.*;
import java.awt.event.*;
public class DengLuJieMian extends Frame implements ActionListener
{
Label username=new Label("用戶名:");//使用文本創建一個用戶名標簽
TextField t1=new TextField();//創建一個文本框對象
Label password=new Label("密碼:");//創建一個密碼標簽
TextField t2=new TextField();
Button b1=new Button("登陸");//創建登陸按鈕
Button b2=new Button("取消");//創建取消按鈕
public DengLuJieMian()
{
this.setTitle("學生信息管理系統");//設置窗口標題
this.setLayout(null);//設置窗口布局管理器
username.setBounds(50,40,60,20);//設置姓名標簽的初始位置
this.add(username);// 將姓名標簽組件添加到容器
t1.setBounds(120,40,80,20);// 設置文本框的初始位置
this.add(t1);// 將文本框組件添加到容器
password.setBounds(50,100,60,20);//密碼標簽的初始位置
this.add(password);//將密碼標簽組件添加到容器
t2.setBounds(120,100,80,20);//設置密碼標簽的初始位置
this.add(t2);//將密碼標簽組件添加到容器
b1.setBounds(50,150,60,20);//設置登陸按鈕的初始位置
this.add(b1);//將登陸按鈕組件添加到容器
b2.setBounds(120,150,60,20);//設置取消按鈕的初始位置
this.add(b2);// 將取消按鈕組件添加到容器
b1.addActionListener(this);//給登陸按鈕添加監聽器
b2.addActionListener(this);// 給取消按鈕添加監聽器
this.setVisible(true);//設置窗口的可見性
this.setSize(300,200);//設置窗口的大小
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});//通過內部類重寫關閉窗體的方法
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==b1)//處理登陸事件
{
String name=t1.getText();
String pass=t2.getText();
if(name!=null&&pass.equals("000123"))//判斷語句
{
new StudentJieMian();
}
}
}
public static void main(String args[])//主函數
{
new DengLuJieMian();
}
}
以下方法實現了學生界面設計
import java.awt.*;
import java.awt.event.*;
class StudentJieMian extends Frame implements ActionListener
{
MenuBar m=new MenuBar();//創建菜單欄
Menu m1=new Menu("信息");//創建菜單「信息」
MenuItem m11=new MenuItem("插入");//創建「插入」的菜單項
MenuItem m12=new MenuItem("查詢");
Menu m2=new Menu("成績");//創建菜單「成績」
MenuItem m21=new MenuItem("查詢");
public StudentJieMian()
{
this.setTitle("學生界面");//設置窗口標題
this.setLayout(new CardLayout());//設置窗口布局管理器
this.setMenuBar(m);//將菜單欄組件添加到容器
m.add(m1);//將信息菜單放入菜單欄
m.add(m2);
m1.add(m11);//將「插入」菜單項添加到「信息」菜單
m1.add(m12); //將「查詢」菜單項添加到「信息」菜單
m2.add(m21); //將「查詢」菜單項添加到「成績」菜單
m11.addActionListener(this); //給「插入」菜單項添加監聽器
m12.addActionListener(this); //給「查詢」菜單項添加監聽器
m21.addActionListener(this); //給「查詢」菜單項添加監聽器
this.setVisible(true); //設置窗口的可見性
this.setSize(300,200); //設置窗口的大小
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);//關閉窗口
}
});
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==m11) //處理「添加信息」事件
{
new AddStudent();
}
if(e.getSource()==m12) //處理「查詢信息」事件
{
new SelectStudent();
}
if(e.getSource()==m21) //處理「查詢成績」事件
{
new ChengJiStudent();
}
}
public static void main(String args[])
② 用java編的銀行賬戶系統代碼
package pack.money.persistent;import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;import pack.money.entity.Client;
import pack.money.entity.ClientMessage;
public class ClientPersistent {
//private static int a=0;
private static String t,b;//t是password b是clinetname
private static ClientPersistent sp;
public static ClientPersistent getClientPersistent() {
if (sp == null) {
sp = new ClientPersistent();
}
return sp;
}
private ClientMessage getClientMessage(ResultSet rs) throws Exception{
ClientMessage student=new ClientMessage();
student.setMoney(rs.getFloat("money"));
student.setType(rs.getString("type"));
student.setClientName(rs.getString("ClientName"));
student.setTransactionID(rs.getInt("TransactionID"));
return student;
}
public Client login(Connection con,String ClientName,String password) throws Exception{
String sql="select balance,password,ClientName from Client where ClientName=? and password=?";
PreparedStatement ps=con.prepareStatement(sql);
ps.setString(1, ClientName);
ps.setString(2, password);
ResultSet rs=ps.executeQuery();
t=password;
b=ClientName;
System.out.println(t);
System.out.println(b);
if(rs.next()){
Client client=new Client();
client.setClientName(rs.getString("ClientName"));
client.setPassword(rs.getString("password"));
return client; }
throw new Exception("Can not login, the accountID or password has error. ");
} public void save(Connection con ,String money)throws Exception
{ // a++;
String s="save";
float g=Float.parseFloat(money);
String sql="update Client set balance=balance+? where ClientName=?";
String sql1="insert into ATMTransaction(ClientName,Type,money) values(?,?,?) ";
PreparedStatement ps=con.prepareStatement(sql);
PreparedStatement ps1=con.prepareStatement(sql1);
ps.setFloat(1, g);
ps.setString(2,b);
//ps1.setInt(1,a);
ps1.setString(1,b);
ps1.setString(2,s);
ps1.setFloat(3,g);
ps.executeUpdate();
ps1.executeUpdate();
}
public void withDraw (Connection con ,String money)throws Exception
{ //a++;
String s="WithDraw";
float x=Float.parseFloat(money);
String sql="update Client set balance=balance-? where ClientName=?";
String sql1="insert into ATMTransaction(ClientName,Type,money) values(?,?,?)";
PreparedStatement ps=con.prepareStatement(sql);
PreparedStatement ps1=con.prepareStatement(sql1);
ps.setFloat(1, x);
ps.setString(2,b);
//ps1.setInt(1,a);
ps1.setString(1,b);
ps1.setString(2,s);
ps1.setFloat(3,x);
ps.executeUpdate();
ps1.executeUpdate();
}
public String changePassword(Connection con, String OldPassWord,String newPassWord1,String newPassWord2)
throws Exception
{
if(t.equals(OldPassWord))
{
if(newPassWord1.equals(newPassWord2))
{
String sql="update Client set password=? where ClientName=?";
PreparedStatement ps=con.prepareStatement(sql);
ps.setString(1, newPassWord1);
ps.setString(2,b);
ps.executeUpdate();
String j="dsfasdf";
return j;
}
else
{System.out.print("確認密碼錯誤!");<br> return null;}
}
else
{ return null;
}
}
public ArrayList<ClientMessage> disPlayAll(Connection con ) throws Exception
{
String sql="select * from ATMTransaction where ClientName=? ";
PreparedStatement ps=con.prepareStatement(sql);
ps.setString(1,b);
System.out.println(b+"****b****");
ResultSet rs=ps.executeQuery();
ArrayList<ClientMessage> message=new ArrayList<ClientMessage>();
while(rs.next()){
message.add(this.getClientMessage(rs));
}
return message;
}
public float showBalance(Connection con ) throws Exception
{
String sql="select balance from Client where ClientName=?";
PreparedStatement ps=con.prepareStatement(sql);
ps.setString(1, b);
ResultSet rs=ps.executeQuery();
if(rs.next())
{
float s;
s=rs.getFloat("balance");
return s;
}
else return 0 ;
}
}
③ 用java來編寫一個銀行類賬戶和信用卡類的賬戶,信用卡類賬戶繼承銀行賬戶,求源碼
public class Account {
protected String accId;
protected String name;
protected double money;
public Account (String accId,String name){
this(accId,name,0);
}
public Account (String accId,String name,double money){
this.accId = accId;
this.name = name;
this.money = money;
}
public void saveMoney(double money){
if(money <= 0){
System.out.println("存款金額必須大於0");
}
this.money += money;
System.out.println("存款成功");
}
public double getMoney(double money){
if(money <= 0){
System.out.println("取款金額必須大於0");
return 0;
}
if(this.money <= money){
System.out.println("余額不足,無法取款");
return 0;
}
this.money -= money;
System.out.println("取款成功");
return money;
}
public double getBalance(){
return this.money;
}
protected double getOverdraft(){
return 0;
}
// 實現了equals方法,list比較時才能正確
@Override
public boolean equals(Object obj) {
if(obj == null){
return false;
}
if(this == obj){
return true;
}
if(obj instanceof Account){
return this.accId.equals(((Account)obj).accId);
}
return false;
}
@Override
public String toString() {
return "賬戶=" + accId + ",名字=" + name + ",余額=" + money;
}
}
public class Bank {
// Account實現了equals方法,list查找時才能正確
private List<Account> usersAccounts;
public Bank() {
usersAccounts = new ArrayList<Account>();
}
public void addAccount(Account account) {
if (usersAccounts.contains(account)) {
System.out.println("添加失敗,不能添加同樣的賬戶");
return;
}
usersAccounts.add(account);
}
public boolean delAccount(Account account) {
return usersAccounts.remove(account);
}
public boolean delAccount(String accId) {
return delAccount(new Account(accId, null));
}
public boolean existAccount(Account account) {
return usersAccounts.contains(account);
}
public boolean existAccount(String accId) {
return existAccount(new Account(accId, null));
}
public Account getAccount(String accId){
return usersAccounts.get(usersAccounts.indexOf(new Account(accId, null)));
}
public double getAllMoney() {
// 不考慮是否溢出,只是把所有用戶余額相加
double result = 0;
for (Account account : usersAccounts) {
result += account.getBalance();
}
return result;
}
public double getAllOverdraft() {
// 不考慮是否溢出
double result = 0;
for (Account account : usersAccounts) {
result += account.getOverdraft();
}
return result;
}
public int getAccountNum() {
return usersAccounts.size();
}
public int getCreditAccountNum() {
int num = 0;
for (Account account : usersAccounts) {
// instanceof 性能沒有簡單的方法快。
if (account instanceof CreditAccount) {
num++;
}
}
return num;
}
public int getSavingAccountNum() {
int num = 0;
for (Account account : usersAccounts) {
if (account instanceof SavingAccount) {
num++;
}
}
return num;
}
public List<Account> getAllAccount() {
return usersAccounts;
}
}
public class CreditAccount extends Account{
private double overdraft;
public CreditAccount(String accId,String name){
super(accId, name);
this.overdraft = 1000;
}
public CreditAccount(String accId,String name,double money){
this(accId, name,money,1000);
}
public CreditAccount(String accId,String name,double money,double overdraft){
super(accId, name,money);
this.overdraft = overdraft;
}
@Override
public double getMoney(double money) {
if(money <= 0){
System.out.println("取款金額必須大於0");
return 0;
}
if(this.money + overdraft <= money){
System.out.println("余額不足,無法取款");
return 0;
}
this.money -= money;
System.out.println("取款成功");
return money;
}
@Override
public double getOverdraft(){
return overdraft;
}
@Override
public String toString() {
return "賬戶=" + accId + ",名字=" + name + ",余額=" + money + ",透支=" + overdraft;
}
}
public class SavingAccount extends Account {
public SavingAccount(String accId, String name) {
super(accId, name);
}
public SavingAccount(String accId, String name, double money) {
super(accId, name, money);
}
@Override
public double getMoney(double money) {
return super.getMoney(money);
}
@Override
public double getOverdraft() {
return super.getOverdraft();
}
}
public class Test {
private static Bank bank = new Bank();
public static void main(String[] args) {
Test.genAccount();
// 開戶
Account a1 = new CreditAccount("1", "1", 200, 2000);
Account a2 = new SavingAccount("2", "2", 300);
Account a3 = new SavingAccount("3", "3", 400);
Account a4 = new CreditAccount("4", "4", 500, 2000);
Account a5 = new CreditAccount("4", "5", 600, 2000); // 帳號4重
bank.addAccount(a1);
bank.addAccount(a2);
bank.addAccount(a3);
bank.addAccount(a4);
bank.addAccount(a5);
showNowAccount();
// 銷戶
bank.delAccount("1");
bank.delAccount("2");
showNowAccount();
// 存款
if(bank.existAccount("3")){
Account acc = bank.getAccount("3");
acc.saveMoney(100);
}
showNowAccount();
// 取款
if(bank.existAccount("3")){
Account acc = bank.getAccount("3");
System.out.println("余額=" + acc.getBalance());
acc.getMoney(100);
System.out.println("余額=" + acc.getBalance());
acc.getMoney(1000);
System.out.println("余額=" + acc.getBalance());
}
if(bank.existAccount("4")){
Account acc = bank.getAccount("4");
System.out.println("余額=" + acc.getBalance());
acc.getMoney(100);
System.out.println("余額=" + acc.getBalance());
acc.getMoney(1000);
System.out.println("余額=" + acc.getBalance());
acc.getMoney(10000);
System.out.println("余額=" + acc.getBalance());
}
System.out.println(bank.getAccountNum());
System.out.println(bank.getAllMoney());
System.out.println(bank.getAllOverdraft());
System.out.println(bank.getCreditAccountNum());
System.out.println(bank.getSavingAccountNum());
}
public static void genAccount(){
String s = "1000 0000 0000 000";
Account a = null;
for(int i = 1; i < 11; i ++){
if((i & 2) == 0){
a = new CreditAccount(s + String.valueOf(i), "賬戶" + String.valueOf(i));
} else {
a = new SavingAccount(s + String.valueOf(i), "賬戶" + String.valueOf(i));
}
bank.addAccount(a);
}
}
public static void showNowAccount(){
for(Account account : bank.getAllAccount()){
System.out.println(account);
}
}
}
④ 用JAVA語言編寫程序,模擬銀行賬戶功能。要有: 屬性:賬號、儲戶姓名、地址、存款余額、最小余額。
package com.cshr.test;
public class bank {
private String card;//賬號
private String uname;//儲戶姓名
private String address;//地址
private double money;//存款余額
public static final double minMoney=0;//最小余額
public bank(){}
public String getCard() {
return card;
}
public void setCard(String card) {
this.card = card;
}
public String getUname() {
return uname;
}
public void setUname(String uname) {
this.uname = uname;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public double getMoney() {
return money;
}
public void setMoney(double money) {
this.money = money;
}
public static double getMinmoney() {
return minMoney;
}
}
package com.cshr.test;
import java.util.List;
import org.hibernate.Session;
import com.utils.HibernateSessionFactory;
public class bankDao {
//存款
public void addMoney(double money,double Sqlmoney,String card){
Session session=HibernateSessionFactory.getSession();
try{
session.beginTransaction();
String hql="update bank b set b.money+="+money+Sqlmoney+" where b.card='"+card+"'";
session.createQuery(hql).executeUpdate();
session.beginTransaction().commit();
}catch(Exception e){
e.printStackTrace();
session.beginTransaction().rollback();
}finally{
HibernateSessionFactory.closeSession();
}
}
//取款
public void delMoney(double money,double Sqlmoney,String card){
Session session=HibernateSessionFactory.getSession();
try{
session.beginTransaction();
String hql="update bank b set b.money+="+(Sqlmoney-money)+" where b.card='"+card+"'";
session.createQuery(hql).executeUpdate();
session.beginTransaction().commit();
}catch(Exception e){
e.printStackTrace();
System.out.println("取款失敗");
session.beginTransaction().rollback();
}finally{
HibernateSessionFactory.closeSession();
}
}
//查詢所有
public List<bank> selectfind(){
Session session=HibernateSessionFactory.getSession();
session.beginTransaction();
String hql="select b from bank b ";
List<bank> list=session.createQuery(hql).list();
return list;
}
}
⑤ 用JAVA編程設計一個銀行賬戶類,其中包括以下內容,並用字元界面模擬存款和取款過程。
import java.util.Scanner;
public class ZH {
private String zh;//賬戶
private String password;//密碼
private String openTime;//開戶時間
private String sfz;//身份證號
private double je;//存款金額
public String getZh() {
return zh;
}
public void setZh(String zh) {
this.zh = zh;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getOpenTime() {
return openTime;
}
public void setOpenTime(String openTime) {
this.openTime = openTime;
}
public String getSfz() {
return sfz;
}
public void setSfz(String sfz) {
this.sfz = sfz;
}
public double getJe() {
return je;
}
public void setJe(double je) {
this.je = je;
}
//存款方法
public void ck(double je){
this.je=this.je+je;//存入的金額加上原有的金額
}
//取款方法
public void qk(double je){
if(je>this.je){//取款金額大於余額
System.out.println("存款余額不足");
}else{
this.je=this.je-je;//原有的金額減去取出的金額
}
}
public static void main(String[] args) {
ZH zh = new ZH();//初始化一個賬戶信息
zh.setJe(10000.0);//向zh賬戶添加余額
zh.setOpenTime("2013.12.3");//向zh賬戶添加開發時間
zh.setPassword("123456");//向zh賬戶添加密碼
zh.setSfz("123456789");//向zh賬戶添加身份證
zh.setZh("zhangsan");//向zh賬戶添加賬號
System.out.println("歡迎光臨模擬銀行");
Scanner scan = new Scanner(System.in);
int count=0;//記錄輸入錯誤的次數
while(1==1){//循環
System.out.println("請輸入賬號");
String zhm=scan.next();
System.out.println("請輸入密碼");
String mm=scan.next();
if(zhm.equals(zh.getZh()) && mm.equals(zh.getPassword())){//輸入的信息與zh賬戶信息的密碼和賬號一致
while(1==1){
System.out.println("當前余額為:"+zh.getJe()+"元。請選擇操作:1.存款;2.取款;3.退出(只能輸入數字)");
String cz=scan.next();
switch (Integer.parseInt(cz)) {
case 1:
System.out.println("請輸入存款金額(輸入小數)");
double ckje=scan.nextDouble();
zh.ck(ckje);
System.out.println("實施存款:"+ckje+"元,當前余額為"+zh.getJe()+"元");
break;
case 2:
System.out.println("請輸入取款金額(輸入小數)");
double qkje=scan.nextDouble();
zh.qk(qkje);
System.out.println("實施取款:"+qkje+"元,當前余額為"+zh.getJe()+"元");
break;
case 3:
break;
default:
System.out.println("暫無此功能");//輸入1或者2、3以外的操作
break;
}
if("3".equals(cz)){
break;
}
}
System.out.println("退出操作");
break;
}else{
if(count>=3){
System.out.println("已輸入錯誤三次,賬號被鎖");
break;//結束循環
}else{
System.out.println("賬號或密碼錯誤,請重新輸入");
count++;//錯誤一次count+1
continue;//進入下次循環
}
}
}
}
}
⑥ 求JAVA源代碼,要有注釋,所有財富都在下面了
每天有時間的話 , 會回答一兩個圖形界面的問題, 但是分數最好還是高點才有興趣.
具體代碼和詳細的注釋如下
員工類
publicclassEmp{
privateintnum;//工號
privateStringname;//姓名
privatedoublebasicPay;//基本工資
privatedoublemeritPay;//績效工資
publicEmp(){//無參數構造器
}
publicEmp(intnum,Stringname,doublebasicPay,doublemeritPay){//有參數構造器
super();
this.num=num;
this.name=name;
this.basicPay=basicPay;
this.meritPay=meritPay;
}
//重寫Object的toString方法
publicStringtoString(){
return"工號:"+num+" 姓名:"+name+" 基本工資:"+basicPay+" 績效工資"+meritPay;
}
//下面是屬性的set和get
publicintgetNum(){
returnnum;
}
publicvoidsetNum(intnum){
this.num=num;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicdoublegetBasicPay(){
returnbasicPay;
}
publicvoidsetBasicPay(doublebasicPay){
this.basicPay=basicPay;
}
publicdoublegetMeritPay(){
returnmeritPay;
}
publicvoidsetMeritPay(doublemeritPay){
this.meritPay=meritPay;
}
}
輸入界面類
importjava.awt.*;
importjava.awt.event.*;
importjava.io.*;
importjavax.swing.*;
{
JTextFieldjtfnum,jtfname,jtfbp,jtfmp;
JButtonjbwtf;
publicEmpFrome(){
JLabeljl1=newJLabel("工號");
jtfnum=newJTextField(8);
add(jl1);
add(jtfnum);
JLabeljl2=newJLabel("姓名");
jtfname=newJTextField(8);
add(jl2);
add(jtfname);
JLabeljl3=newJLabel("基本工資");
jtfbp=newJTextField(8);
add(jl3);
add(jtfbp);
JLabeljl4=newJLabel("績效工資");
jtfmp=newJTextField(8);
add(jl4);
add(jtfmp);
JLabeljl5=newJLabel();
jbwtf=newJButton("寫入文件");
jbwtf.addActionListener(this);
add(jl5);
add(jbwtf);
setLayout(newGridLayout(5,2));
setTitle("員工信息錄入");
setSize(290,230);
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
publicvoidactionPerformed(ActionEvente){
Stringcmd=e.getActionCommand();
if(cmd.equals("寫入文件")){
try{
//獲取數據
intnum=Integer.parseInt(jtfnum.getText().trim());
Stringname=jtfname.getText().trim();
doublebp=Double.parseDouble(jtfbp.getText().trim());
doublemp=Double.parseDouble(jtfmp.getText().trim());
Empemp=newEmp(num,name,bp,mp);
writeToFile(emp);
JOptionPane.showMessageDialog(this,"錄入成功");//提示成功
//清空文本框
jtfnum.setText("");
jtfname.setText("");
jtfbp.setText("");
jtfmp.setText("");
}catch(Exceptionex){
//當輸入不符合規范時,提示錯誤
JOptionPane.showMessageDialog(this,"請輸入正確的數據: 工號整型,工資浮點型","錄入錯誤",JOptionPane.ERROR_MESSAGE);
}
}
}
//定義的文件路徑
finalstaticStringFILE_PATH="employee.dat";
publicvoidwriteToFile(Empemp){//IO操作,追加寫入
BufferedWriterbw=null;
try{
bw=newBufferedWriter(newFileWriter(newFile(FILE_PATH),true));//為true表示追加
bw.write(emp.toString());//寫入員工信息
bw.newLine();//換行
}catch(IOExceptione){
e.printStackTrace();
}finally{
if(bw!=null){
try{
bw.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
}
}
}
測試類
publicclassEmpTest{
publicstaticvoidmain(String[]args){
newEmpFrome();
}
}
測試效果
⑦ 求個JAVA 人力資源管理系統 源代碼和模版界面以及需求分析,求參考
星原人力資源管理系統 結構如下,
產品說明: 人力資源規劃 組織管理 招聘管理 人力測評
人事管理
培訓管理
考勤管理
薪酬福利
績效管理
行政事務
員工關系 人力分析和輔助決策
文控管理 工作流
領導查詢和員工自助查詢
SA8000人權驗廠方案
系統概覽
一、人力資源規劃
◇通過企業發展階段設置,設定適應各發展期的人力資源管理政策;
◇適應年度培訓計劃體系、三級培訓體系、崗位培訓體系、ISO管理培訓體系;
◇自動生成培訓到課與缺課統計,對比崗位任職與培訓需求,為晉升與上崗提供依據;
◇針對ISO體系驗證,為繁雜的培訓記錄及文檔管理提供自動生成核對功能,防止漏訓或資料的不一致;
◇自定義培訓費用項目;
◇提供培訓需求調查表,統一管理培訓教材,簡化教材的不致性與版本混亂;
◇可直接在系統中製作培訓通知單;
◇提供培訓心得報告;
◇提供培訓效果調查表,統一考核管理,加強培訓效果,評估成本效益;
◇能對個人、部門的培訓成績及效果進行分析,並輸出各種分析報表;
◇簡化培訓操作;
◇培訓規劃可根據用戶需要直接轉入到培訓安排中。
返回頂端
二、組織管理
1、組織機構管理
◇提供對集團公司組織管理的支持,自定義組織層級,不限組織層次;
◇對不同時期的組織職能變更進行動態管理;
◇能夠導出樹狀和矩狀的組織架構圖;
◇可以進行部門合並、部門升降,並有歷史記錄記載。
2、崗位管理
◇可以對崗位層級關系進行管理,通過設立崗位層次、級別、職系、職類、職位進行人力分析與規劃,建立組織架構與權責體系;
◇可以對不同時期的崗位職責進行管理,並有歷史記錄記載;
◇可以建立在職級、職務、職類體繫上的工作分析、含職位工作說明、職務任職資格、
◇工作量評估、權責體系、工作流分析、工資結構與權重、薪點數等管理職能表格;並有歷史記錄記載;
◇可以對不同時期的崗位任職資格進行管理,並有歷史記錄記載;
◇可以對內容進行管理,並有歷史記錄記載;
◇可設計該崗位的職業發展通道,使員工在此崗位上有很好的前景展望;
◇可設計該崗位的不同時期的績效考評指標(KPI),並有歷史記錄記載;
◇可以進行崗位的升遷、降級處理,並有歷史記錄記載;
◇對不同崗位市場成本調查,按崗位制度公司薪酬體系,對各崗位的評估上限與下限值,根據任職資格與個人資料評估薪酬;
◇通過崗位職責分類,控制直接與間接人員數量與成本比例,使管理成本更合理。
3、年度編制計劃與編制管理
◇可對各年度各部門崗位進行人員編制管理;
◇與人力資源規劃、招聘模塊關聯,自動產生招聘申請需求及招聘標准;
◇按既定編制招聘人手,判斷是否超編。
◇支持各種計劃性、臨時性、租賃、外包等多種用工招聘模式;
◇按人力資源規劃確定各組織人員需求層次,按崗位分析與任職要求制定測評指標;
◇參照人力資源規劃需求、組織架構與崗位編制制定出相應的招聘計劃;
◇制定對內招聘與晉升計劃,激發員工學習與工作能力;
◇按組織規劃確認面試者薪酬結構與標准;
◇參照組織管理中崗位規劃屬性,結合當前人事檔案的年齡、藉貫、性別、學歷等統計分析報表,確定招聘申請人員標准;
◇記錄招聘渠道信息,及相關廣告、費用等;
◇招聘關鍵環節的申報審批功能;
◇從招聘計劃開始對每個關鍵環節詳細跟蹤,實現動態信息記載;
◇對應聘人員從填寫應聘簡歷到面試、測評錄用進行全程跟蹤記載;
◇把應聘人員轉入到人事檔案中並設置此人的狀態,很好的與人事檔案結合到一起;
◇內部儲備人才和外部儲備人才進行分別管理;
◇對一段時間內各部門人員需求單的分類統計;
◇對已審批的部門需求單直接轉入到招聘安排中;
◇面試通知單可直接在系統中通過郵件的形式發送給面試者;
◇提供通用的報表形式,如錄用通知單,招聘通知單等;
◇可直接從系統中生成招聘發布信息,也可直接把招聘需求發送給人才市場;
◇對招聘渠道、招聘成功率、留任率、人均成本等招聘結果進行綜合全面的分析;
◇對未審批的招聘計劃、已審批的招聘計劃、未審批的人員需求單、已審批的人力需求單及時提醒用戶;
◇可與人力測評結合使用,對應聘人員的各方面素質進行測試記載。
返回頂端
三、招聘管理
◇支持各種計劃性、臨時性、租賃、外包等多種用工招聘模式;
◇按人力資源規劃確定各組織人員需求層次,按崗位分析與任職要求制定測評指標;
◇參照人力資源規劃需求、組織架構與崗位編制制定出相應的招聘計劃;
◇制定對內招聘與晉升計劃,激發員工學習與工作能力;
◇按組織規劃確認面試者薪酬結構與標准;
◇參照組織管理中崗位規劃屬性,結合當前人事檔案的年齡、藉貫、性別、學歷等統計分析報表,確定招聘申請人員標准;
◇記錄招聘渠道信息,及相關廣告、費用等;
◇招聘關鍵環節的申報審批功能;
◇從招聘計劃開始對每個關鍵環節詳細跟蹤,實現動態信息記載;
◇對應聘人員從填寫應聘簡歷到面試、測評錄用進行全程跟蹤記載;
◇把應聘人員轉入到人事檔案中並設置此人的狀態,很好的與人事檔案結合到一起;
◇內部儲備人才和外部儲備人才進行分別管理;
◇對一段時間內各部門人員需求單的分類統計;
◇對已審批的部門需求單直接轉入到招聘安排中;
◇面試通知單可直接在系統中通過郵件的形式發送給面試者;
◇提供通用的報表形式,如錄用通知單,招聘通知單等;
◇可直接從系統中生成招聘發布信息,也可直接把招聘需求發送給人才市場;
◇對招聘渠道、招聘成功率、留任率、人均成本等招聘結果進行綜合全面的分析;
◇對未審批的招聘計劃、已審批的招聘計劃、未審批的人員需求單、已審批的人力需求單及時提醒用戶;
◇可與人力測評結合使用,對應聘人員的各方面素質進行測試記載。
返回頂端
四、人力評測
◇系統支持各種測試模式,自定義測評類別與試題,例如通過導入一般職業適合性測驗、心理測試、領導測評類測評試題或工具,對任職指標、智力、語言能力、算術、書寫知覺、空間判斷能力、形狀知覺、協同動作、運動速度、手指靈活度、手靈活度、領導類型、能力、職業興趣、個性,LPC領導有效性測評、領導與部屬關系測量、工作結構測量、職位權力測量等各項指標進行測評;
◇可按測評職位、標准任職資格指標庫等自動推薦測評方案、項目、權重等;
◇ 提供測評方式維護;
◇可利用電腦進行人力在線測評,方便控制時間與測評效果;
◇人力測評登記;
◇人力測評查詢;
◇ 崗位匹配性分析;
◇情景測試:公文處理測試等;
◇對應各測試類別的測試的方法與題目:所有試題給出總分值、測試目標與功能,合格分、勝任分、優秀分值及否決項;
◇測評項目與職位指標相對應部份自動對比,計算匹配度;
◇ 按各測試項的測試目標、總分值、實得分值,自動分析出各項優秀、合格、不合格層次及總層次;
◇測評結果可以用不同方式查詢與設計報表。
返回頂端
五、人事管理
◇提供身份證識別設備供驗證身份證真偽,同時將身份證相片及姓名、號碼、住址等自動讀入系統,減少輸入錯誤、提高效率,自動判斷年齡等合法性;
◇預先統計時間點在職、離職等各種人員狀態,為生產計劃、招聘計劃提供依據;
◇提供員工狀態管理,了解各類員工比例;
◇通過各種統計報表了解人員各種比例,分析可能存在的同籍貫風險、年齡或學歷不合理等,為招聘與調配提供依據;
◇通過統計流失率及離職原因分析,查找人員流失率主因,為行政工作決策提供依據;
◇對個人檔案管理增加了對個人的技能檔案管理、計生檔案管理、崗位職責查詢;
◇自動統計員工學習、工作、培訓、考核、異動、加薪履歷,對比組織管理崗位規劃,作為晉升、調動、加薪等依據;
◇個人職業生涯規劃;
◇個人離職記錄查詢,對有多次離職記錄人員進行記載跟蹤;
◇人事檔案中人事動態跟蹤,用戶可自定義人員狀態,並記載各狀態下的發生信息。比如可定義離職申請狀態、離職已審批狀態、已離職狀態;
◇人事黑名單管理,對在公司犯有重大錯誤的人納入到黑名單中,系統提醒是否錄用。
返回頂端
六、培訓管理
◇適應年度培訓計劃體系、三級培訓體系、崗位培訓體系、ISO管理培訓體系;
◇自動生成培訓到課與缺課統計,對比崗位任職與培訓需求,為晉升與上崗提供依據;
◇針對ISO體系驗證,為繁雜的培訓記錄及文檔管理提供自動生成核對功能,防止漏訓或資料的不一致;
◇自定義培訓費用項目;
◇提供培訓需求調查表,統一管理培訓教材,簡化教材的不致性與版本混亂;
◇可直接在系統中製作培訓通知單;
◇提供培訓心得報告;
◇提供培訓效果調查表,統一考核管理,加強培訓效果,評估成本效益;
◇能對個人、部門的培訓成績及效果進行分析,並輸出各種分析報表;
◇簡化培訓操作;
◇培訓規劃可根據用戶需要直接轉入到培訓安排中。
返回頂端
七、考勤管理
◇豐富的參數設置,適應不同企業班制特殊性;
◇提供了與多種型號IC卡、條碼、指紋考勤機數據介面;
◇能處理頻繁倒班、調班、停工待料、中途請假等靈活的出勤管理;
◇能處理臨時加班,周末加班、節假日加班、班前、班中、班後加班以及通宵加班等各種加班的管理;可根據最大加班管控指標預警,並通過各種加班報表分析加班的必要性,以控制加班成本;與門禁系統結合可規范員工行為,培養員工良好的工作習慣與優秀的公司文化;
◇能處理跨72小時連班作業(跨兩天);
◇可根據各項加班最大加班管控指標預警,並通過各種加班報表顯示;
◇分析加班的必要性,以控制加班成本與防範違反法規,分析產值加班負荷率;
◇自定義各種假期,如事假、病假、工傷假、調休、年假、累計假等有薪、無薪、半薪假的管理可處理存假自動與請假抵消,各種復雜的調休等;
◇能輸出各種請假單、加班單、排班表、班製作休時間;
◇能輸出並查詢年、月、日及任意時間段任意部門人的出勤情況報表、異常出勤表並進行各種匯總分析;
◇運用了自動找班和多種靈活排班技術,極大地減輕了考勤人員工作量;
◇運用了先進的考勤演算法,處理5000人一個月的考勤報表只需3-5分鍾,提高了考勤管理的時效性及管理效率,高度開放的二次開發平台,可最大程度調整考勤項目與計算方法;
◇系統支持多用戶和網路,通過嚴格的許可權控制技術、使得考勤日常管理(分散和集中)做到隨心所欲,實時控制;
◇自定義各類遲到、早退、曠工、加班超時等異常查詢邏輯顯示顏色,一目瞭然、處理快捷
◇自定義簽卡控制次數,簽卡顯示以顏色區分;
◇可定義入職或離職當天是否計出勤;
◇提供海量數據處理機制,解決大型企業歷史數據累積導致系統性能下降問題;
◇考勤與門禁系統結合分析上班期間外出情況,可規范員工出勤行為;
◇考勤與消費系統結合,使上班時間與就餐時間對應,公司可以視情況確定是否補貼與是否允許就餐;
◇提醒機制:系統提供默認遲到、早退、曠工、超時加班等提醒功能,同時提供自定義提醒項目需求;
◇安全機制:提供加班、請假、簽卡、調休、考勤結果審核功能,防止生效後結果被人為更改或因制度改變重算影響歷史數據;
◇考勤項目直接匯入工資計算,考勤、工資、消費數據整合;
◇自定義各種考勤明細、匯總報表,加班、缺勤、異常等報表;
◇支持集團性多套帳或驗廠用到的多帳套演算法。
返回頂端
八、薪酬福利管理
◇可對薪資項目進行分類管理,如:崗位工資、福利、獎金,實現用戶自定義設定和自定義計算,適應各種薪資體系與工資計算方式經常變動;
◇解決了一個月多次調薪的計算難題;
◇可按薪資等級或薪點數根據崗位進行設置,並可設定多個調薪方案;
◇支持多個薪酬體系,不同組織、崗位、職級不同的薪資方案的計算方法,可根據崗位設計標准成本與實際薪資對比,部門預算與實際薪資對比;
◇每個月可計算多個帳套;
◇各帳套可支持不同財務周期演算法;
◇支持非自然月為財務周期的工資計算方式,財務周期起止日期可支持自定義;
◇帳套間可共用每月錄入數據及介面數據;
◇薪資計算可從考勤、績效導入數據;
◇支持銀行報盤,所得稅計算與申報;
◇豐富的薪酬福利報表;
◇支持借款扣除;
◇支持自離或曠工多日自動薪資凍結,也支持手動凍結與解凍;
◇對於其客觀存在系統的數據完全共享,如計件工資、考勤、考評、獎懲、水電費、就餐資產等數據與本系統實現了無縫聯接,實時調用,只要一次錄入,不用重復錄入或轉換。
返回頂端
九、績效管理
◇系統支持自定義考核模型或工具:排名表、面談表、組織考核表、KPI、MBO、360度;
◇績效參數設置:包括績效指標庫管理,績效指標可以根據職位績效指標引入績效考評指標,並可在此基礎上進行自定義其它指標庫;
◇績效層次設置:每個績效層次有相應的績效變數及職位;
◇在支持量化指標考核同時,也支持關鍵工作事項等不能量化的考核項目考核與跟蹤;
◇績效考評級別管理,根據績效考評級別可以進行多層次、多方位的考評,可以更准確的了解考評者的績效狀況,考評級別依賴於考評分類,每個考評級別所需要的考評級別及每個級別所佔的比重是不一樣的;
◇績效考評模板管理,個人績效考評表及組織績效考評表可在績效考評模板基礎上生成;
◇組織績效考評包括引入組織、定義考評分類及考評要點、製作考評表,查看考核信息;
◇個人績效考評根據個人所在的考評層次及考評周期設置考評分類及考評要點,並根據每個考評級別製作考評表,最後根據每個考評級別及考評周期生成綜合考評信息;
◇系統支持自定義考評工具及相關考評表格式;
◇按考評分值與權重自動統計考核結果,自動比對標桿;
◇自動提醒針對考核不合格的培訓項目;
◇自動對比各期考核結果,跟蹤考核項目改善狀況;
◇支持對考核者直接評分;
◇支持領導多級點評、修正、審核;
◇考核結果自動應用於晉升、調職、薪資計算、培訓等相關功能模塊,起到預警提醒作用;
◇考核結果查詢支持:絕對分值比較、相對標准比較、客觀標准比較;
◇支持排序法,代表人物法、強制正態分布法(預先設定優良中及格差比例)統計方法;
◇支持績效考核結果申訴,設定提交、受理、處理、結案周期;
◇考核結果可以通過自定義演算法,直接應用於薪酬,異動等子系統。
返回頂端
十、行政事務管理
1、會議管理
系統通過對會議室及物品配套、會議室安排排程、會議參會人員與時間核算會議成本。通過會議申請,提前規范會議內容以 提高會議效率,避免管理中的文山會海;同時,提高會議記錄管理,對會議決議跟蹤,避免會議流於形式,每次會議決議、跟進責任人、進度、結案做自動跟蹤,管 理者通過系統查詢,跟進工作,保證決議得以執行。
通過會議管理系統,避免諸多企業會而不議、議而不決、決而不行、行而不果的會議怪圈與高昂的會議成本。
2、工傷管理
工傷管理,通過對工傷等級劃分,確認各級別對應處理預案。對單個工傷案例每一個社保步驟進度跟蹤記錄,同時保持對應的文件。可隨時產生所有工傷案例進度表,員工離職是可避免工傷未結案帶來的風險。
3、宿舍管理
◇對宿舍基本資料、床位床號的設置;
◇可隨時查詢各宿舍的入住情況及空床位;可自定義按部門,班組等自動建議床位分配;
◇對各宿舍進行物品配置及管理;
◇對住宿安排、變更、退宿進行全面管理;
◇對外宿人員的登記管理;
◇對宿舍水電費價格的設定,水電表的登記、水電費用等的登記、計算;
◇水電等費用的分攤;相關費用與薪資系統的鏈接,並可直接從工資中扣除;
◇宿舍日常的維修維護、物品租賃的登記管理等。
4、圖書管理
用於企業內部文化室(或圖書館)的計算機化管理。可對所有圖書、報刊、雜志、傳記、專業資料書籍等進行分類登記;對內部員工的借閱、歸還進行跟蹤管理;對破損、遺失、賠償等進行登記跟蹤管理。
5、資產管理
對人力資源部門通常管理的辦公用品、工衣等物品進行分類編碼;對辦公用品的購進、 分發、領用、歸還、賠償等進行登記跟蹤管理;對庫存物品可進行盤點操作;對所有數據的分類分析等。與員工離職相關聯,保證先退保管資產,後辦離職發工資的 手續。在規定時間內重復領用系統自動提示。可核算人均辦公費用等管理指標。
6、保險管理
管理企業內部的各類福利保險;自定義保險險種、員工、企業的繳費記錄、明細分攤;處理員工參保,停保操作,與系統的工資等其它功能模塊相關聯進行匯總和查詢分析。
7、醫療管理
記錄員工入職時及各次體檢記錄,對在企業內部葯品的分發、使用、回收、醫葯費進行管理;對醫療服務的過程進行跟蹤記錄;對醫療服務的類型、費用等進行分類、分析等。
8、車輛管理
規范企業的公務用車管理。從申請、批復等環節對公務用車進行有效的管控;對外出路線、逗留時間、維修保養、路橋費、油費等進行有效有據的跟蹤記錄,從而達到降低費用,提高效用的目的。
返回頂端
十一、員工關系
◇對相關法律法規條款重要性與內容案例解讀,可能風險性預估;
◇明確公司規章各項條款與對應措施,量化必要的指標,更好貫徹各項規章;
◇公司公告的發布、公示與保管等,協助達到制度、公告的最大公示性;
◇法律法規、公司規章、公司公告明確責任到相關執行與保管人員,量化必要數據,保留原始憑據體系,以降低公司人力資源風險;
◇需求調查與處理、員工建議、文娛管理,結合公司理念,協助公司文化建設,提高員工滿意度,加強公司員工凝聚力;
◇職代會管理、工會管理:建立公司各種會議架構,明確職責。並對公司相關制度決議討論,對接國家對企業工會、職代會制度要求,有利公司和諧經營,從文化上降低經營風險與推行企業文化理念;
◇員工跟蹤:對員工計劃事項進行跟進,防止工作漏失;
◇離職員工訪談與跟蹤,針對離職原因切實改善管理;
◇合同管理:可對新員工自動產生合同,進行分類型管理,明確各類合同法定事項,保存各類相關原始文本與變更記錄,合同外約定附件等;
◇提供合同批次管理可按簽訂日期分合同批次,避免每日續簽合同,也防止漏簽或遲簽;
◇工傷管理:提供各工傷案的原始文件,處理步驟流程與進度維護。對各種工種鑒定級別做相應的理培事項;
◇證件管理:對各種證件的有無與有效期管理,自動提醒;
◇體檢管理:關注員工健康,對各工種員工按法規或公司制度進行體檢管理。按周期要求自動提醒需求;
◇文娛管理:對公司文娛計劃與執行,相關經費預算與實際應用進行管理;
◇◇對企業內部公告、通知、新聞消息等的登記、發布、跟蹤、反饋等進行分類管理與分析;
◇總經理信箱:在公司內部架設一個上下級之間可以快速、直接的溝通渠道。可對信息進行分類管理,並有保密措施。
返回頂端
十二、人力分析和輔助決策
◇包括人力成本分析、組織績效分析、合理化建議分析、薪資實驗分析、薪資分布分析;
◇自定義和輸出多種報表和圖表,靈活生成和輸出各種多維統計報表,分析人力資源的組成、成本和效益,發掘和預測人力資源的發展趨勢;
◇系統內置分析型數據倉庫,提供在線實時(OLAP)數據統計分析功能;
◇人員供給分析(根據生產情況及現有人員分析);
◇勞動生產率分析。
返回頂端
十三、文檔辦工流管理
◇支持文檔櫃管理,保證電子文檔與紙質文檔保管台帳對應,方便查找;
◇支持文件多級審批與會簽;
◇支持文件分類管理,內置常用法律法規、公司制度、通知通告等類別;
◇支持其它子系統調用相關文件;
◇可制定各類別文件對應不同審批流程、管控流程;
◇支持文件號、文件多版本管理;
◇通過文檔收發記錄,實時查詢文件起草、審批、公布、收發、保管履歷;
◇支持文件集中備份。
返回頂端
十四、工作流
◇支持針對不同單據而不同職位自定義工作流程;
◇支持自動提醒當前各類需要審批工作流單據;
◇支持工作流程許可權公式定義,例如每個職位可審批的請假天數;
◇支持多人會簽;
◇支持前後審批人員審批意見是否可見;
◇支持離崗期間指定職位替代,替代時可以按流程指定多人替代,是否可查看本人以前單據審批記錄
返回頂端
十五、領導查詢和員工自助查詢
◇XY-WEB星原人力資源查詢系統,採用完全的B/S結構,提高軟體的可維護性和可擴充性;
◇提供使用戶進行二次開發的通用模塊,用戶可以方便地擴展軟體的功能;
◇提供統一友好的操作界面和豐富的數據管理分析功能;
◇為企業的信息發布交流提供人性化的操作平台,使企業的規章制度、新聞簡報、技術交流、公告事項等及時傳播,使企業員工能及時了解企業發展動態;
◇改變傳統的集中辦公方式,擴大辦公區域,企業用戶可在家中、城市各地甚至世界各個角落通過網路連接隨時辦公;
◇系統地利用企業積累的信息資源,改進企業的創新能力和快速響應能力,以提高效率;
◇對客戶端機器的硬體要求較低,可以在保留原有的軟體和硬體的基礎上運行新的應用系統,不影響原有資源;
◇基於WEB方式的辦公系統只需在伺服器上作配置和維護,大大降低了用戶用於軟體系統維護和升級的難度及費用,使系統更加容易實施。
返回頂端
十六、SA8000人權驗廠方案
人權驗廠主要是政府部門、歐美客戶檢查企業執行勞動法的情況,主要表現在員工是否有超時加班和符合當地最低工資標准以及保險福利、安全保護情況。其核心就是人事、考勤和薪酬福利部分。
主持驗廠的對象及特點:
◇政府部門(勞動、稅務、海關)查廠:除了考勤和工資部門要調整外,人數、身份證和保險也應為關注調整重點。企業與政府保持良好的關系也是重要因素; ◇歐美客戶直接驗廠:由於不熟悉大陸情況比較容易應對;
◇客戶委託第三方驗廠:專業從事驗廠工作,對我國情況了如指掌,最難應對,既要符合標准,又要處理好關系。
驗廠的應對方式:
普遍採用的是針對不同的驗廠對象設立多套賬和多套制度,不同的方式,費用和效果差別很大。傳統手工和紙卡考勤方式 工作量大、費用高主要表現在處理考勤和工資項目以及對員工培訓的項目上。為了避免在處理人事考勤工資多套賬時耗用大量的人力和物力,我公司結合近千家工廠 一卡通驗廠實施經驗,總結了多套一卡通驗廠實施方案。
⑧ 基於Java的簡單的銀行賬戶管理程序
什麼都不會,甚至連個界面都不會寫,我只能說兩個字,「勸退」。
⑨ 求大神!!!java密碼管理系統源代碼
java密碼管理系統源代碼類似這樣操作就可以了。
⑩ java編寫一個登陸和注冊信息的源代碼,最簡單的就可以,不需要資料庫的那種
你這個不用資料庫真的是有點難搞
我寫了個用集合存儲的,你看看,能否幫上你
java.util.List<String>list=newArrayList<String>();
list.add("qq=123");//存儲的時候用(用戶名=密碼)的形式
list.add("ww=456");
Stringusername="qq";
Stringpassword="123";
for(inti=0;i<list.size();i++){
Stringnum=username+"="+password;
if(num.equals(list.get(i))){
System.out.println("登錄成功");
break;
}
}