|
|
import Base.User;
|
|
|
import Deal.Deal_paper;
|
|
|
import Deal.Deal_user;
|
|
|
|
|
|
import java.util.Scanner;
|
|
|
|
|
|
public class Math_System {
|
|
|
private User now_user;
|
|
|
private Deal_paper d_paper;
|
|
|
private Deal_user d_user;
|
|
|
private Scanner scanner;
|
|
|
|
|
|
public Math_System(){
|
|
|
now_user=null;
|
|
|
d_paper=null;
|
|
|
d_user=new Deal_user();
|
|
|
}
|
|
|
|
|
|
public void main_menu(){
|
|
|
scanner=new Scanner(System.in);
|
|
|
while(true){
|
|
|
if (now_user==null){
|
|
|
login_in();
|
|
|
}
|
|
|
else {
|
|
|
generator();
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
public void login_in(){
|
|
|
System.out.println("请输入用户名和密码(空格分隔):");
|
|
|
String input = scanner.nextLine().trim();
|
|
|
|
|
|
if (input.equalsIgnoreCase("exit")) {
|
|
|
System.exit(0);
|
|
|
}
|
|
|
|
|
|
String[] parts = input.split("\\s+"); //空格
|
|
|
|
|
|
if (parts.length != 2){
|
|
|
System.out.println("请输入正确的用户名、密码");
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
String username=parts[0];
|
|
|
String psw=parts[1];
|
|
|
|
|
|
if (d_user.login(username,psw)==null) {
|
|
|
now_user=null;
|
|
|
System.out.println("请输入正确的用户名、密码");
|
|
|
}
|
|
|
else {
|
|
|
now_user=d_user.login(username,psw);
|
|
|
d_paper=new Deal_paper(now_user);
|
|
|
System.out.println("当前选择为 " + now_user.getUserType() + " 出题");
|
|
|
}
|
|
|
}
|
|
|
|
|
|
public void generator(){
|
|
|
System.out.println("准备生成"+now_user.getUserType()+"数学题目,请输入生成题目数量(输入-1将退出当前用户,重新登录):");
|
|
|
String input = scanner.nextLine().trim();
|
|
|
|
|
|
if (input.equals("-1")){
|
|
|
now_user=null;
|
|
|
d_paper=null;
|
|
|
return;
|
|
|
}
|
|
|
if (input.startsWith("切换为")) {
|
|
|
change_mode(input);
|
|
|
return;
|
|
|
}
|
|
|
try {
|
|
|
int count = Integer.parseInt(input);
|
|
|
if (count<10||count>30){
|
|
|
System.out.println("题目数量应在10-30之间。");
|
|
|
return;
|
|
|
}
|
|
|
d_paper.g_paper(count,now_user.getUsername());
|
|
|
}catch (NumberFormatException e){
|
|
|
System.out.println("请正确输入题目数量。");
|
|
|
}
|
|
|
}
|
|
|
|
|
|
public void change_mode(String new_mode){
|
|
|
String[] parts=new_mode.split("切换为");
|
|
|
String type=parts[1].trim();
|
|
|
if ((!type.equals("小学") && !type.equals("初中") && !type.equals("高中")) || parts.length!=2){
|
|
|
System.out.println("请输入小学、初中和高中三个选项中的一个");
|
|
|
}
|
|
|
else{
|
|
|
now_user.change_type(type);
|
|
|
d_paper=new Deal_paper(now_user);
|
|
|
System.out.println("成功切换为"+type);
|
|
|
}
|
|
|
}
|
|
|
}
|