📄 engageexamaction.java
字号:
List qlist=this.engageSubjectsBiz.findByPro(engageSubjects);
//该类问题的数量
int questionmount=engageExamDetails2.getQuestionAmount();
//从试题中选出所需试题
int qulist[]=new int[questionmount];
//计数器,累计抽出的试题的数量
int counts=0;
while(counts<questionmount){
Random qr=new Random();
int nowqid=qr.nextInt(qlist.size());
boolean suc=true;
for (int j = 0; j < counts; j++) {
if(qulist[j]==nowqid)
suc=false;
}
if(suc){
qulist[counts]=nowqid;
counts++;
}
}
//将抽出的试题存入qlists
for (int j = 0; j < qulist.length; j++) {
EngageSubjects engageSubjects2=(EngageSubjects)qlist.get(qulist[j]);
qlists.add(engageSubjects2);
}
}
//定义答题信息
EngageAnswer engageAnswer=new EngageAnswer();
engageAnswer.setAnswerNumber(this.engageAnswerBiz.findNewId());
engageAnswer.setExamNumber(engageExamDetails.getExamNumber()); //试题编号
engageAnswer.setHumanIdcard(ucardid);
engageAnswer.setHumanName(uname);
engageAnswer.setMajorId(engageExam3.getMajorId());
engageAnswer.setMajorKindId(engageExam3.getMajorKindId());
engageAnswer.setMajorKindName(engageExam3.getMajorKindName());
engageAnswer.setMajorName(engageExam3.getMajorName());
engageAnswer.setResumeId(((EngageResume)list.get(0)).getResId());
engageAnswer.setTestTime(new Timestamp(new Date().getTime()));
this.engageAnswerBiz.add(engageAnswer);
HttpSession session=request.getSession();
session.setAttribute("qlist", qlists);
session.setAttribute("answers", engageAnswer);
request.setAttribute("alltime", engageExam3.getLimiteTime());
request.setAttribute("allqu", qlists.size());
return mapping.findForward("toanswer");
}
//考试页面
public ActionForward doAnswer(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception {
EngageExamForm engageExamForm = (EngageExamForm) form;
HttpSession session=request.getSession();
List qlists=(List)session.getAttribute("qlist");
//总分
int allscore=0;
EngageAnswer engageAnswer=(EngageAnswer)session.getAttribute("answers");
//答题详细信息
for (int i = 0; i < qlists.size(); i++) {
EngageSubjects engageSubjects=(EngageSubjects)qlists.get(i);
EngageAnswerDetails answerDetails=new EngageAnswerDetails();
answerDetails.setAnswerNumber(engageAnswer.getAnswerNumber());
answerDetails.setSubjectId(engageSubjects.getSubId());
//获取用户答案
String temp[]=request.getParameterValues("answer"+i);
String daan="";
for (int j = 0; j < temp.length; j++) {
daan+=temp[j];
}
answerDetails.setAnswer(daan);
this.engageAnswerDetailBiz.add(answerDetails);
//System.out.println("添加答案详细信息"+answerDetails.getAnswer());
if(engageSubjects.getCorrectKey().equals(daan)){
allscore++;
}
}
//计算总分
engageAnswer.setTotalPoint(this.computScroe(qlists.size(), allscore));
this.engageAnswerBiz.update(engageAnswer);
//更改用户考试状态
EngageResume engageResume=this.engageResumeBiz.findById(engageAnswer.getResumeId());
engageResume.setCheckStatus(Short.parseShort("3"));
//更改用户考试次数
if(engageResume.getTestAmount()==null){
engageResume.setTestAmount(Short.parseShort("1"));
}
else {
engageResume.setTestAmount(Short.parseShort(engageResume.getTestAmount()+1+""));
}
//更改用户考试成绩
engageResume.setTotalPoints(Float.parseFloat(engageAnswer.getTotalPoint().toString()));
this.engageResumeBiz.update(engageResume);
PrintWriter out=response.getWriter();
out.print("<script>alert('提交成功!');location.href='engageExam.do?opee=toAnswerLogin'</script>");
return null;
}
//计算总分
private double computScroe(int qamount,int ramount){
if(ramount==0){
return 0;
}
else {
return 100-100/qamount*(qamount-ramount);
}
}
//到到阅卷查询页面
public ActionForward toExamReader(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
EngageExamForm engageExamForm = (EngageExamForm) form;
PageResult pageResult=engageExamForm.getPageResult();
this.engageAnswerBiz.setPageResult(null, pageResult);
return mapping.findForward("toanswerread");
}
//到阅卷页面
public ActionForward toReader(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
EngageExamForm engageExamForm = (EngageExamForm) form;
//取答案信息
Short eid=Short.parseShort(request.getParameter("eid"));
EngageAnswer engageAnswer=this.engageAnswerBiz.findById(eid);
request.setAttribute("answers", engageAnswer);
//获取答案详细信息
EngageAnswerDetails answerDetails=new EngageAnswerDetails();
answerDetails.setAnswerNumber(engageAnswer.getAnswerNumber());
List list=this.engageAnswerDetailBiz.find(answerDetails); //答案详细信息
List list2=new ArrayList(); //存储题目详细信息
System.out.println("list"+list.size());
//取试题详细信息
for (int i = 0; i < list.size(); i++) {
EngageAnswerDetails answerDetails2 =(EngageAnswerDetails)list.get(i);
list2.add(this.engageSubjectsBiz.findById(answerDetails2.getSubjectId()));
}
System.out.println("list2"+list2.size());
request.setAttribute("answerlist", list);
request.setAttribute("qlist", list2);
return mapping.findForward("toread");
}
//到筛选查询页面
public ActionForward toFilterFind(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
EngageExamForm engageExamForm = (EngageExamForm) form;
PageResult pageResult=engageExamForm.getPageResult();
this.engageAnswerBiz.setPageResult(null, pageResult);
return mapping.findForward("tofilterfind");
}
//到筛选页面
public ActionForward toFilter(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
EngageExamForm engageExamForm = (EngageExamForm) form;
Short eid=Short.parseShort(request.getParameter("eid"));
//获取答案
EngageAnswer engageAnswer=this.engageAnswerBiz.findById(eid);
//获取简历信息
EngageResume engageResume=this.engageResumeBiz.findById(engageAnswer.getResumeId());
request.setAttribute("answermes", engageAnswer);
request.setAttribute("ermes", engageResume);
return mapping.findForward("tofilter");
}
//筛选
public ActionForward doFilter(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception {
EngageExamForm engageExamForm = (EngageExamForm) form;
Short eid=Short.parseShort(request.getParameter("rid"));
//获取简历信息
EngageResume engageResume=this.engageResumeBiz.findById(eid);
//获取设置筛选时间
String times=request.getParameter("times");
try {
SimpleDateFormat format =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date=format.parse(times);
//设置登记时间
engageResume.setTestCheckTime(new Timestamp(date.getTime()));
} catch (ParseException e) {
e.printStackTrace();
}
//获取设置筛选人
String uname=request.getParameter("person");
engageResume.setTestChecker(uname);
//获取结果
String result=request.getParameter("result");
if(result.equals("删除简历")){
//取该简历所有面试结果
EngageInterview engageInterview2=new EngageInterview();
engageInterview2.setResumeId(engageResume.getResId());
List list=this.engageInterviewBiz.find(engageInterview2);
//删除该简历的所有面试结果
for (int i = 0; i < list.size(); i++) {
EngageInterview engageInterview3=(EngageInterview)list.get(i);
this.engageInterviewBiz.del(engageInterview3.getEinId());
}
//获取试卷信息并删除
EngageAnswer engageAnswer=new EngageAnswer();
engageAnswer.setResumeId(engageResume.getResId());
List list2=this.engageAnswerBiz.findByPro(engageAnswer);
for (int i = 0; i < list2.size(); i++) {
EngageAnswer engageAnswer2=(EngageAnswer)list2.get(i);
//获取答题的详细信息
EngageAnswerDetails engageAnswerDetails=new EngageAnswerDetails();
engageAnswerDetails.setAnswerNumber(engageAnswer2.getAnswerNumber());
List list3=this.engageAnswerDetailBiz.find(engageAnswerDetails);
for (int j = 0; j < list3.size(); j++) {
EngageAnswerDetails engageAnswerDetails2=(EngageAnswerDetails)list3.get(j);
System.out.println("************************"+engageAnswerDetails2.getAndId());
this.engageAnswerDetailBiz.del(engageAnswerDetails2.getAndId());
}
this.engageAnswerBiz.del(engageAnswer2.getAnsId());
}
this.engageResumeBiz.del(engageResume.getResId());
PrintWriter out=response.getWriter();
out.print("<script>alert('删除成功');location.href='engageExam.do?opee=toFilterFind'</script>");
return null;
}else{
//如果筛选结果为'建议录用'则其状态为1,如果筛选结果为"建议笔试",则其状态为2(是否能进行笔试的条件).
if(result.equals("建议录用")){
engageResume.setCheckStatus(Short.parseShort("1"));
this.engageResumeBiz.update(engageResume);
}
PrintWriter out=response.getWriter();
out.print("<script>alert('筛选成功');location.href='engageExam.do?opee=toFilterFind'</script>");
return null;
}
}
public void setEngageAnswerBiz(IEngageAnswerBiz engageAnswerBiz) {
this.engageAnswerBiz = engageAnswerBiz;
}
public void setEngageInterviewBiz(IEngageInterviewBiz engageInterviewBiz) {
this.engageInterviewBiz = engageInterviewBiz;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -