📄 attributehelper.java
字号:
package com.whatratimes.edu.webedu;
import com.whatratimes.dbms.QuerySQLExecuter;
import com.whatratimes.dbms.UserSQLExecuter;
import com.whatratimes.tables.t_course;
import com.whatratimes.tables.t_question;
import com.whatratimes.tables.t_question_choice;
import com.whatratimes.tables.t_question_point;
import com.whatratimes.util.ConstHelper;
import org.apache.struts.util.LabelValueBean;
import org.apache.struts.validator.DynaValidatorActionForm;
import org.apache.struts.action.DynaActionForm;
import javax.servlet.http.HttpSession;
import java.util.ArrayList;
import java.util.Hashtable;
/**
* User: Tao
* Date: May 15, 2003
* Time: 6:01:00 PM
*
*/
public class AttributeHelper
{
public static int NumberOfRowsInOnePage = 10;
private static ArrayList getCouseNames()
{
ArrayList cn = new ArrayList();
QuerySQLExecuter sql = new QuerySQLExecuter();
sql.setReturnClassName("t_course");
sql.appendTableName("t_course");
sql.appendColumn("CourseId");
sql.appendColumn("CourseName");
Object[] courses = sql.executeQuery();
if (courses != null && courses.length > 0)
{
for (int i = 0; i < courses.length; i++)
{
t_course this_course = (t_course) courses[i];
cn.add(new LabelValueBean(this_course.CourseName, String.valueOf(this_course.CourseId)));
}
}
return cn;
}
public static void setCourseNames(String attribute, HttpSession session)
{
ArrayList cn = getCouseNames();
session.setAttribute(attribute, cn);
}
public static void setCourseNameSearch(String attribute, HttpSession session)
{
ArrayList cn = getCouseNames();
cn.add(0, new LabelValueBean("请选择", "0"));
session.setAttribute(attribute, cn);
}
public static void setCourse(String attribute, Integer course_id, HttpSession session)
{
QuerySQLExecuter sql = new QuerySQLExecuter();
sql.setReturnClassName("t_course");
sql.appendColumn("*");
sql.appendTableName("t_course");
sql.appendWhereCondition("CourseId", "=", course_id);
Object[] courses = sql.executeQuery();
if (courses.length > 0)
{
session.setAttribute(attribute, courses[0]);
}
}
public static void setCourses(String attribute, HttpSession session)
{
QuerySQLExecuter sql = new QuerySQLExecuter();
sql.setReturnClassName("t_course");
sql.appendColumn("*");
sql.appendTableName("t_course");
Object[] courses = sql.executeQuery();
session.setAttribute(attribute, courses);
}
public static void setExams(String attribute, Integer course_id, DynaActionForm form, HttpSession session, int page)
{
QuerySQLExecuter sql = new QuerySQLExecuter();
sql.appendTableName("t_exam");
sql.appendWhereCondition("CourseId", "=", course_id);
if ( !form.get("ExamType").equals(new Integer(0)))
{
sql.appendWhereCondition("ExamType", "=", form.get("ExamType"));
}
if ( !form.get("QuestionType").equals(new Integer(0)))
{
sql.appendWhereCondition("QuestionType", "=", form.get("QuestionType"));
}
if ( form.get("ExamName").toString().length()>0)
{
sql.appendWhereClause("ExamName LIKE '%" + form.get("ExamName") + "%'");
}
if (page == 0)
{
// set pages
sql.appendColumn("count(*)", "nCount");
Object[] objs = sql.executeQuery();
Integer rows = (Integer) ((Hashtable) objs[0]).get("nCount");
session.setAttribute("TotalRows", rows);
session.setAttribute("TotalPages", new Integer((rows.intValue() - 1 + AttributeHelper.NumberOfRowsInOnePage) / AttributeHelper.NumberOfRowsInOnePage));
sql.clearAllColumns();
page = 1;
}
session.setAttribute("CurrentPage", new Integer(page));
sql.appendColumn("*");
sql.setReturnClassName("t_exam");
sql.setRowLimit((page - 1) * AttributeHelper.NumberOfRowsInOnePage, AttributeHelper.NumberOfRowsInOnePage);
Object[] objs = sql.executeQuery();
session.setAttribute(attribute, objs);
}
public static void setExam(String attribute, Integer exam_id, HttpSession session)
{
QuerySQLExecuter sql = new QuerySQLExecuter();
sql.setReturnClassName("t_exam");
sql.appendColumn("*");
sql.appendTableName("t_exam");
sql.appendWhereCondition("ExamId", "=", exam_id);
Object[] objs = sql.executeQuery();
if (objs.length > 0)
{
session.setAttribute(attribute, objs[0]);
}
}
public static void setSearchedQuestions(String attribute, DynaValidatorActionForm form, HttpSession session, int page)
{
QuerySQLExecuter sql = new QuerySQLExecuter();
sql.appendTableName("t_question", "q");
sql.appendTableName("t_course", "c");
sql.appendWhereClause("q.CourseId = c.CourseId");
setSearchQuestionsCondition(form, sql);
if (page == 0)
{
// set pages
sql.appendColumn("count(*)", "nCount");
Object[] objs = sql.executeQuery();
Integer rows = (Integer) ((Hashtable) objs[0]).get("nCount");
session.setAttribute("TotalRows", rows);
session.setAttribute("TotalPages", new Integer((rows.intValue() - 1 + AttributeHelper.NumberOfRowsInOnePage) / AttributeHelper.NumberOfRowsInOnePage));
sql.clearAllColumns();
page = 1;
}
session.setAttribute("CurrentPage", new Integer(page));
sql.appendColumn("q.QuestionId", "QuestionId");
sql.appendColumn("c.CourseName", "CourseName");
sql.appendColumn("q.QuestionType", "QuestionType");
sql.appendColumn("q.ExamType", "ExamType");
sql.appendColumn("q.Content", "Content");
sql.appendColumn("q.UsageCounter", "UsageCounter");
sql.appendColumn("q.UsageLimit", "UsageLimit");
sql.appendOrderByASC("q.QuestionId");
sql.setRowLimit((page - 1) * AttributeHelper.NumberOfRowsInOnePage, AttributeHelper.NumberOfRowsInOnePage);
Object[] objs = sql.executeQuery();
session.setAttribute(attribute, objs);
}
private static void setSearchQuestionsCondition(DynaValidatorActionForm form, QuerySQLExecuter sql)
{
Integer course_id = (Integer) form.get("CourseId");
Integer question_type = (Integer) form.get("QuestionType");
Integer exam_type = (Integer) form.get("ExamType");
String question_content = (String) form.get("QuestionContent");
Integer question_id = null;
try
{
question_id = Integer.valueOf( form.get("QuestionId").toString());
} catch (NumberFormatException e)
{
// e.printStackTrace();
}
if (question_id != null )
{
sql.appendWhereCondition("q.QuestionId", "=", question_id);
} else
{
if (course_id.intValue() > 0)
{
sql.appendWhereCondition("q.CourseId", "=", course_id);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -