📄 usermanageframe.java
字号:
}else{
baseInforCheckBoxes[i].setSelected(false);
}
}
}
//设置进货模块复选框的方法
public void setStockAuthorityCheckBox(int stockFunction){
int power = 0;
//设置进货模块的复选框
for(int i = 0; i < stockCheckBoxes.length; i++){
power = (int)Math.pow(2, i);
if((stockFunction & power) == power){
stockCheckBoxes[i].setSelected(true);
}else{
stockCheckBoxes[i].setSelected(false);
}
}
}
//设置库存模块复选框的方法
public void setStockManageAuthorityCheckBox(int stockManageFunction){
int power = 0;
//设置库存模块的复选框
for(int i = 0; i < stockManageCheckBoxes.length; i++){
power = (int)Math.pow(2, i);
if((stockManageFunction & power) == power){
stockManageCheckBoxes[i].setSelected(true);
}else{
stockManageCheckBoxes[i].setSelected(false);
}
}
}
//设置销售模块复选框的方法
public void setSaleAuthorityCheckBox(int saleFunction){
int power = 0;
//设置销售模块的复选框
for(int i = 0; i < saleCheckBoxes.length; i++){
power = (int)Math.pow(2, i);
if((saleFunction & power) == power){
saleCheckBoxes[i].setSelected(true);
}else{
saleCheckBoxes[i].setSelected(false);
}
}
}
protected void processWindowEvent(WindowEvent e) {
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
exit();
}
}
//退出方法
public void exit(){
//隐藏窗口
this.setVisible(false);
}
//设置用户的方法
public void setUser(User user) {
this.user = user;
}
//恢复所有复选框的方法
public void restoreAllCheckBoxes(){
setBaseInforAuthorityCheckBox(baseInforFunction);
setStockAuthorityCheckBox(stockFunction);
setStockManageAuthorityCheckBox(stockManageFunction);
setSaleAuthorityCheckBox(saleFunction);
}
//选择所有复选框的方法
public void selectAllCheckBoxes(){
setBaseInforAuthorityCheckBox(4095);
setStockAuthorityCheckBox(511);
setStockManageAuthorityCheckBox(4095);
setSaleAuthorityCheckBox(127);
}
//清空界面方法
public void clearInterface(){
//清空编辑框
jTextField2.setText("");
jTextField3.setText("");
//清空权限变量
baseInforFunction = 0;
stockFunction = 0;
stockManageFunction = 0;
saleFunction = 0;
//清空复选框
restoreAllCheckBoxes();
}
public void searchUser(){
//清空列表框和用户类数组
listData.clear();
selectedUsers = null;
String userName = jTextField1.getText().trim();
String[][] userNames = stockManagementData.getUserByUserName(userName);
//创建用户类数组
selectedUsers = new User[userNames.length];
for(int i = 0; i < userNames.length; i++){
//添加列表框的内容
listData.addElement(userNames[i][0]);
//创建用户
selectedUsers[i] = new User(userNames[i][0], userNames[i][1],
Integer.parseInt(userNames[i][2]),
Integer.parseInt(userNames[i][3]),
Integer.parseInt(userNames[i][4]),
Integer.parseInt(userNames[i][5]));
}
}
//动作接收器的方法
public void actionPerformed(ActionEvent e) {
//取得按钮的动作字符串
String actionCommand = e.getActionCommand().trim();
//单击查询按钮
if (actionCommand.equals("search")) {
searchUser();
}
else if (actionCommand.equals("selectAllCheckboxes")) {
selectAllCheckBoxes();
}
else if (actionCommand.equals("restoreAllCheckBoxes")) {
restoreAllCheckBoxes();
}
else if (actionCommand.equals("baseInforSelectCheckBoxes")) {
setBaseInforAuthorityCheckBox(4095);
}
else if (actionCommand.equals("baseInforRestoreCheckBoxes")) {
setBaseInforAuthorityCheckBox(baseInforFunction);
}
else if (actionCommand.equals("stockSelectCheckBoxes")) {
setStockAuthorityCheckBox(511);
}
else if (actionCommand.equals("stockRestoreCheckBoxes")) {
setStockAuthorityCheckBox(stockFunction);
}
else if (actionCommand.equals("stockManageSelectCheckBoxes")) {
setStockManageAuthorityCheckBox(4095);
}
else if (actionCommand.equals("stockManageRestoreCheckBoxes")) {
setStockManageAuthorityCheckBox(stockManageFunction);
}
else if (actionCommand.equals("saleSelectCheckBoxes")) {
setSaleAuthorityCheckBox(127);
}
else if (actionCommand.equals("saleRestoreCheckBoxes")) {
setSaleAuthorityCheckBox(saleFunction);
}
else if (actionCommand.equals("add")) {
//清空界面
clearInterface();
//检查按钮状态
checkBtn(true);
action = "add";
}
else if (actionCommand.equals("update")) {
if(jList1.getSelectedIndex() == -1){
JOptionPane.showMessageDialog(null, "请选择用户.");
return;
}
checkBtn(true);
action = "update";
}
else if (actionCommand.equals("delete")) {
if(jList1.getSelectedIndex() == -1){
JOptionPane.showMessageDialog(null, "请选择用户.");
return;
}
checkBtn(true);
action = "delete";
}
else if (actionCommand.equals("ok")) {
String userName = jTextField2.getText().trim();
String userPassword = jTextField3.getText().trim();
if((userName.length() == 0) | (userPassword.length() == 0)){
JOptionPane.showMessageDialog(null, "用户名和密码不能为空.");
return;
}
if (action.equals("update") | action.equals("delete")) {
//取得列表框的用户类的名字
String selectedUserName = (String) listData.getElementAt(jList1.
getSelectedIndex());
if (!selectedUserName.equals(userName)) {
JOptionPane.showMessageDialog(null, "列表框的选择用户名和编辑框的用户名不相同,不能进行更新和删除操作.");
return;
}
}
//取得用户权限数字
int tempBaseInforFunction = 0;
int tempStockFunction = 0;
int tempStockManageFunction = 0;
int tempSaleFunction = 0;
//取得基础信息模块的权限
for(int i = 0; i < baseInforCheckBoxes.length; i++){
if(baseInforCheckBoxes[i].isSelected()){
tempBaseInforFunction += Math.pow(2, i);
}
}
//取得进货模块的权限
for(int i = 0; i < stockCheckBoxes.length; i++){
if(stockCheckBoxes[i].isSelected()){
tempStockFunction += Math.pow(2, i);
}
}
//取得库存模块的权限
for(int i = 0; i < stockManageCheckBoxes.length; i++){
if(stockManageCheckBoxes[i].isSelected()){
tempStockManageFunction += Math.pow(2, i);
}
}
//取得销售模块的权限
for(int i = 0; i < saleCheckBoxes.length; i++){
if(saleCheckBoxes[i].isSelected()){
tempSaleFunction += Math.pow(2, i);
}
}
//创建用户类
User tempUser = new User(userName, userPassword, tempBaseInforFunction,
tempStockFunction, tempStockManageFunction, tempSaleFunction);
//执行添加操作
if(action.equals("add")){
int result = stockManagementData.createUser(tempUser);
if(result == 1){
//为列表框添加用户名
listData.addElement(userName);
//更新用户数组
User[] tempUsers = new User[selectedUsers.length + 1];
System.arraycopy(selectedUsers, 0, tempUsers, 0, selectedUsers.length);
tempUsers[selectedUsers.length] = tempUser;
selectedUsers = tempUsers;
JOptionPane.showMessageDialog(null, "成功添加用户(" + userName + ").");
}else{
JOptionPane.showMessageDialog(null, "添加用户失败.");
}
}
//执行更新操作
else if(action.equals("update")){
int result = stockManagementData.updateUser(tempUser);
if(result == 1){
JOptionPane.showMessageDialog(null, "成功更新用户(" + userName + ").");
//更新用户列表的用户类
selectedUsers[jList1.getSelectedIndex()] = tempUser;
}else{
JOptionPane.showMessageDialog(null, "更新用户失败.");
}
}
//执行删除操作
else if(action.equals("delete")){
int result = stockManagementData.deleteUser(tempUser);
if(result == 1){
int selectedIndex = jList1.getSelectedIndex();
//为列表框删除用户名
listData.remove(selectedIndex);
//更新用户数组
User[] tempUsers = new User[selectedUsers.length - 1];
int line = 0;
for(int i = 0; i < selectedUsers.length; i++){
if(i == selectedIndex){
continue;
}else{
tempUsers[line] = selectedUsers[i];
line++;
}
}
selectedUsers = tempUsers;
JOptionPane.showMessageDialog(null, "成功删除用户(" + userName + ").");
}else{
JOptionPane.showMessageDialog(null, "删除用户失败.");
}
}
checkBtn(false);
}
else if (actionCommand.equals("cancel")) {
checkBtn(false);
//激活列表框的选择方法
userNameList_valueChanged(null);
}
else if (actionCommand.equals("exit")) {
exit();
}
}
//检查按钮enabled状态的方法
public void checkBtn(boolean manipulated){
//增、删、改状态
if(manipulated){
jButton12.setEnabled(false);
jButton13.setEnabled(false);
jButton14.setEnabled(false);
jButton15.setEnabled(true);
jButton16.setEnabled(true);
}else{
jButton12.setEnabled(true);
jButton13.setEnabled(true);
jButton14.setEnabled(true);
jButton15.setEnabled(false);
jButton16.setEnabled(false);
}
}
//列表内容改变方法
void userNameList_valueChanged(ListSelectionEvent e) {
//取得选择项的位置
int selectIndex = jList1.getSelectedIndex();
if(selectIndex > -1){
//显示用户名和密码
jTextField2.setText(selectedUsers[selectIndex].getUserName());
jTextField3.setText(selectedUsers[selectIndex].getUserPassword());
//根据用户重新设置所有复选框
setAllAuthorityCheckBox(selectIndex);
}else{
//使所有控件回复到空状态
clearInterface();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -