📄 messagecreateaction.java
字号:
package com.whatratimes.webedu.message;
import com.whatratimes.dbms.DBHelper;
import com.whatratimes.dbms.QuerySQLExecuter;
import com.whatratimes.dbms.UserSQLExecuter;
import com.whatratimes.tables.t_user;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.util.LabelValueBean;
import org.apache.struts.validator.DynaValidatorActionForm;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.util.ArrayList;
import java.util.Hashtable;
/**
* User: Tao
* Date: Jul 15, 2003
* Time: 8:44:30 AM
*/
public class MessageCreateAction extends Action
{
public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception
{
HttpSession session = httpServletRequest.getSession();
String reply = httpServletRequest.getParameter("ReplyTo");
Integer mt = Integer.valueOf(httpServletRequest.getParameter("MT"));
String message_to = httpServletRequest.getParameter("MessageTo");
t_user user = (t_user) session.getAttribute("User");
try
{
DynaValidatorActionForm form = (DynaValidatorActionForm) actionForm;
form.initialize(actionMapping);
form.set("MessageId", new Integer(DBHelper.getNextMessageId()));
form.set("UserId", new Integer(user.UserId));
form.set("MessageType", mt);
form.set("Operation", "Create");
if (reply != null)
{
mt = new Integer(4);
form.set("MessageType", mt);
Object[] objs_reply = UserSQLExecuter.executeQuery(
"select a.UserId UserId, a.Topic, b.UserName UserName from t_messages a, t_user b where a.UserId = b.UserId AND MessageId = " + reply
);
if (objs_reply.length > 0)
{
Hashtable h = (Hashtable) objs_reply[0];
// message_to = h.get("UserName").toString();
ArrayList ml = new ArrayList();
ml.add(new LabelValueBean(h.get("UserName").toString(), h.get("UserId").toString()));
session.setAttribute("MessageToList", ml);
form.set("MessageTo", h.get("UserId"));
String topic = (String) h.get("Topic");
if (topic.startsWith("Re: "))
{
form.set("Topic", topic);
} else
{
form.set("Topic", "Re: " + topic);
}
}
} else
{
switch (mt.intValue())
{
case 4:
if (message_to != null)
{
QuerySQLExecuter sql = new QuerySQLExecuter();
sql.setReturnClassName("t_user");
sql.appendTableName("t_user");
sql.appendColumn("*");
sql.appendWhereCondition("UserId", "=", Integer.valueOf(message_to));
Object[] objs4 = sql.executeQuery();
if (objs4.length > 0)
{
t_user message_to_user = (t_user) objs4[0];
ArrayList ml = new ArrayList();
ml.add(new LabelValueBean(message_to_user.UserName, String.valueOf(message_to_user.UserId)));
session.setAttribute("MessageToList", ml);
}
} else
{
Object[] objs4 = UserSQLExecuter.executeQuery(
"select a.UserId UserId, a.UserName UserName " +
"from t_user a, t_student b, t_student c " +
"where " +
"a.UserId = b.UserId AND " +
"b.ClassId = c.ClassId AND " +
"c.UserId = " + user.UserId
);
ArrayList user_list = new ArrayList();
for (int i = 0; i < objs4.length; i++)
{
Hashtable this_user = (Hashtable) objs4[i];
user_list.add(new LabelValueBean((String) this_user.get("UserName"), this_user.get("UserId").toString()));
}
session.setAttribute("MessageToList", user_list);
}
break;
case 3: // message to class
String ss;
if (message_to != null)
{
ss = "select a.ClassId ClassId, a.ClassName ClassName " +
"from t_class a " +
"where " +
"a.ClassId = " + message_to;
} else
{
ss = "select a.ClassId ClassId, a.ClassName ClassName " +
"from t_class a " +
"where " +
"a.State = 1 ";
if (user.UserType == 2)
{
ss = "select distinct a.ClassId ClassId, a.ClassName ClassName " +
"from t_class a, t_class_course b " +
"where " +
"a.State = 1 AND b.State =1 AND a.ClassId = b.ClassId AND b.TeacherId = " + user.UserId;
} else
{
if (!"CNTR".equals(user.SchoolId))
{
ss.concat(" AND a.SchoolId = '" + user.SchoolId + "'");
}
}
}
Object[] classes = UserSQLExecuter.executeQuery(ss);
ArrayList class_list = new ArrayList();
for (int i = 0; i < classes.length; i++)
{
Hashtable this_class = (Hashtable) classes[i];
class_list.add(new LabelValueBean((String) this_class.get("ClassName"), this_class.get("ClassId").toString()));
}
session.setAttribute("MessageToList", class_list);
break;
case 2: // message to course
String ss2 = null;
if (message_to != null)
{
ss2 = "select a.CourseId CourseId, a.CourseName CourseName " +
"from t_course a " +
"where " +
"a.CourseId = " + message_to;
} else
{
ss2 = "select a.CourseId CourseId, a.CourseName CourseName " +
"from t_course a " +
"where " +
"a.CourseState = 2 ";
}
Object[] objs2 = UserSQLExecuter.executeQuery(ss2);
ArrayList course_list = new ArrayList();
for (int i = 0; i < objs2.length; i++)
{
Hashtable this_course = (Hashtable) objs2[i];
course_list.add(new LabelValueBean((String) this_course.get("CourseName"), this_course.get("CourseId").toString()));
}
session.setAttribute("MessageToList", course_list);
break;
case 1:
String ss1 = null;
if (message_to != null)
{
ss1 = "select a.SchoolId SchoolId, a.SchoolName SchoolName " +
"from t_school a " +
"where " +
"a.SchoolId = '" + message_to + "'";
} else
{
ss1 = "select a.SchoolId SchoolId, a.SchoolName SchoolName " +
"from t_school a " +
"where " +
"a.State = 1 ";
}
Object[] objs1 = UserSQLExecuter.executeQuery(ss1);
ArrayList school_list = new ArrayList();
for (int i = 0; i < objs1.length; i++)
{
Hashtable this_school = (Hashtable) objs1[i];
school_list.add(new LabelValueBean((String) this_school.get("SchoolName"), this_school.get("SchoolId").toString()));
}
session.setAttribute("MessageToList", school_list);
break;
}
}
} catch (Exception e)
{
e.printStackTrace();
throw e;
}
String direct = httpServletRequest.getParameter("Direction");
if (direct == null)
{
direct = "back";
}
session.setAttribute("Direction", direct);
return actionMapping.findForward("success");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -