用户办公软件系统

开发一个自动化软件系统,该系统将提供给这些办事处的管理者(role=1)和普通用户(role=0)用于管理信息。

根据以上描述,要求实现系统的用户模
块和办事处模块,包含以下功能:

用户模块:

  1. 用户添加
  2. 密码修改
  3. 个人信息查看
  4. 账号状态修改(禁用0、启用1)
  5. 用户登录(被禁用账号无法登录并提示友好的消息)
  6. 修改用户角色(设置取消管理员)
  7. 用户列表
  8. 查询指定办事处的员工
  9. 删除用户

办事处模块

  1. 办事处添加
  2. 办事处列表

参考类如下:

用户类(User):

账号(username),密码(passord),年龄(age),角色(role),邮
箱(email),办事处id(officeID),账户状态(status)

办事处类(Office):

办公室id,办公室名(officeName)

实现代码如下:
User类:
package com.peng.pengzhentest.office;

public class User {

	private String username;
	private String password;
	private int age;
	private int role;
	private String email;
	private Office officeID;
	private int status;
	
	
	
	public User() {
		super();
	}

	public User(String username, String password, int age, int role, String email, Office officeID, int status) {
		super();
		this.username = username;
		this.password = password;
		this.age = age;
		this.role = role;
		this.email = email;
		this.officeID = officeID;
		this.status = status;
	}

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}

	public int getRole() {
		return role;
	}

	public void setRole(int role) {
		this.role = role;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public Office getOfficeID() {
		return officeID;
	}

	public void setOfficeID(Office officeID) {
		this.officeID = officeID;
	}

	public int getStatus() {
		return status;
	}

	public void setStatus(int status) {
		this.status = status;
	}

	
	public void details() {
		System.out.println("username=" + username + ", password=" + password + ", age=" + age + ", role=" + role + ", email="
				+ email + ", officeID=" + officeID.getOfficeName() + ", status=" + status);
	}

	
}

UserModule类:
package com.peng.pengzhentest.office;

import java.util.ArrayList;
import java.util.Scanner;

public class UserModule {

	ArrayList<User> list = new ArrayList<>(100);

	// 用户添加
	public void userAdd(User u) {
		list.add(u);
	}

	// 密码修改
	public void alterPassWord(User u, String newpassword) {
		if (u != null) {
			u.setPassword(newpassword);
			System.out.println("账号:" + u.getUsername() + "\t密码修改成功");
		}
	}

	// 个人信息查看
	public void showInfo(String username) {
		for (User u : list) {
			if (u != null && u.getUsername().equals(username)) {
				u.details();
			}
		}
	}

	// 根据用户名进行账号状态修改
	public void alterStatus(String username) {
		for (User u : list) {
			if (u != null && u.getUsername().equals(username)) {
				if (u.getStatus() == 1) {
					u.setStatus(0);
					System.out.println(u.getUsername() + "状态已成功修改为" + u.getStatus());
					break;
				} else {
					u.setStatus(1);
					System.out.println(u.getUsername() +"状态已成功修改为" + u.getStatus());
					break;
				}
			}
		}
	}

	// 用户登录
	public void enter() {
		Scanner sc = new Scanner(System.in);
		System.out.println("输入账号username:");
		String uname = sc.nextLine();
		System.out.println("输入密码password:");
		String pword = sc.nextLine();
		for (int i = 0; i < list.size(); i++) {

			if (list.get(i) != null && list.get(i).getUsername().equals(uname)
					&& list.get(i).getPassword().equals(pword) && list.get(i).getStatus() == 1) {
				System.out.println("登录成功");
				break;
			}

			if (i == list.size() - 1) {
				System.out.println("密码或账号错误或账号已禁用!请重新登录");
			}
		}
	}

	// 根据用户名修改用户角色
	public void alterRole(String username) {
		for (User u : list) {
			if (u != null && u.getUsername().equals(username)) {
				if (u.getRole() == 1) {
					u.setStatus(0);
					System.out.println("取消管理员成功");
				}
			}
		}
	}

	// 用户列表
	public void showAll() {
		for (User u : list) {
			if (u != null) {
				u.details();
			}
		}
	}

	// 查询指定办事处的员工
	public void searchUserByOfficeId(Office officeID) {
		for (User u : list) {
			if (u != null && u.getOfficeID() == officeID) {
				u.details();
			}
		}
	}

	// 删除用户
	public void delUser(String username) {
		for (User u : list) {
			if (u != null && u.getUsername().equals(username)) {
				u = null;
				System.out.println("删除用户成功");
			}
		}
	}
}

Office类:
package com.peng.pengzhentest.office;

public class Office {

	private int id;
	private String officeName;

	public Office(int id, String officeName) {
		super();
		this.id = id;
		this.officeName = officeName;
	}

	public Office() {
		super();

	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getOfficeName() {
		return officeName;
	}

	public void setOfficeName(String officeName) {
		this.officeName = officeName;
	}

	public void show() {
		System.out.println("id:"+ id + ",officeName:" + officeName);
	}
}

OfficeModule类:
package com.peng.pengzhentest.office;

import java.util.ArrayList;

public class OfficeModule {

	ArrayList<Office> list = new ArrayList<>(20);
	
	//办事处添加
	public void officeAdd(Office of) {
		list.add(of);
	}
	
	//办事处列表
	public void showAll() {
		for (Office of : list) {
			if(of != null) {
				of.show();
			}
		}
	}
}

测试Test类:
package com.peng.pengzhentest.office;

public class Test {

	public static void main(String[] args) {
		UserModule um = new UserModule();
		OfficeModule om = new OfficeModule();
		Office office1 = new Office(1001, "上忍办公室");
		Office office2 =new Office(1002,"暗部办公室");
		Office office3 =new Office(1003,"拖油瓶办公室");
		om.officeAdd(office1);
		om.officeAdd(office2);
		om.officeAdd(office3);
		
		
		
		User user1 = new User("鸣人", "123123", 20, 1, "111@mr", office1, 1);
		User user2 =  new User("鼬", "456456", 26, 1, "787@you", office2, 0);
		User user3 = new User("佐助", "123456", 20, 1, "323@zuoz", office2, 1);
		User user4 = new User("水门", "666666", 40, 1, "12112@shui", office1, 1);
		User user5 = new User("雏田", "321321", 19, 1, "1893@chut", office1, 0);
		User user6 = new User("小樱", "654321", 19, 1, "1673@xy", office3, 1);
		User user7 = new User("纲手", "696969", 58, 1, "134@da", office2, 0);
		um.userAdd(user1);
		um.userAdd(user2);
		um.userAdd(user3);
		um.userAdd(user4);
		um.userAdd(user5);
		um.userAdd(user6);
		um.userAdd(user7);
		
		om.showAll();
		System.out.println("======================================");
		um.showAll();
		um.alterPassWord(user4, "789789");
		um.enter();

		um.showInfo("水门");
	
		um.alterStatus("雏田");
		um.showInfo("雏田");	
	}
}

测试效果:

测试效果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值