?? tsmissingreqhandler.java.svn-base
字號:
package com.nsi.components.tsmissing;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import javax.mail.SendFailedException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import com.nsi.components.util.ResourceUtil;
import com.nsi.components.util.TsMissingUtil;
import com.nsi.constants.AppConstants;
import com.nsi.control.event.NoBackEndEvent;
import com.nsi.control.event.NsiEvent;
import com.nsi.control.exceptions.NsiEventException;
import com.nsi.control.web.ModelManager;
import com.nsi.control.web.handles.ReqHandler;
import com.nsi.util.ValHelper;
/**
* @author Chris Ye, created on Oct 9, 2008
*
* TsMissingReqHandler
*/
public class TsMissingReqHandler implements ReqHandler
{
private static Log log = LogFactory.getLog(TsMissingReqHandler.class);
/**
* @see com.nsi.control.web.handles.ReqHandler#processRequest(javax.servlet.http.HttpServletRequest)
*/
public NsiEvent processRequest(HttpServletRequest request,HttpServletResponse response) throws NsiEventException
{
String action = request.getParameter("action");
if( ValHelper.getInstance().isNotNullAndEmpty(action))
{
log.debug("processRequest() -- action[" + action + "]");
HttpSession session = request.getSession();
TsMissingWebInfo info = (TsMissingWebInfo)session.getAttribute("tsmwbinfo");
if(info == null)
{
info = new TsMissingWebInfo();
session.setAttribute("tsmwbinfo", info);
}
ModelManager mm = (ModelManager)session.getAttribute(AppConstants.ModelManagerKey);
TsMissingInfo tsmissinfo = mm.getTsmissedinfo();
if(tsmissinfo == null)
{
tsmissinfo = new TsMissingInfo();
mm.setTsmissedinfo(tsmissinfo);
}
if(action.equalsIgnoreCase("TsReminding")) sendReminding(request,tsmissinfo);
else if(action.equalsIgnoreCase("TsMissedDisplay")) displayTsMissed(request, info, tsmissinfo);
}
return new NoBackEndEvent();
}
private void displayTsMissed(HttpServletRequest req, TsMissingWebInfo info, TsMissingInfo tsmissinfo ) throws NsiEventException
{
String searchtype = req.getParameter("searchtype");
String deptid = req.getParameter("deptid");
info.setSearchtype(searchtype);
info.setDeptid(deptid);
int weeks = 1;
if(req.getParameter("weeks") != null) weeks = Integer.parseInt(req.getParameter("weeks"));
info.setWeeks(weeks);
TsMissingUtil.getInstance().prepareTsMissInfo(tsmissinfo, searchtype, weeks, deptid);
}
private void sendReminding(HttpServletRequest req, TsMissingInfo tsmissinfo ) throws NsiEventException
{
Map<String,TsMissingDetails> tsmissdtlmap = tsmissinfo.getTsmissdtlmap();
if(!tsmissdtlmap.isEmpty())
{
SendingMailWebInfo sendingmailwebinfo = (SendingMailWebInfo)req.getSession().getAttribute("smwbinfo");
if(sendingmailwebinfo == null)
{
sendingmailwebinfo = new SendingMailWebInfo();
req.getSession().setAttribute("smwbinfo", sendingmailwebinfo);
}
String deptid = req.getParameter("deptid");
if(("2".equals(deptid) || "3".equals(deptid)))
{
Map<String, String> hrRecordmap = ResourceUtil.getInstance().getHRRecord("TSMISS");
String name = ResourceUtil.getInstance().getHRName(hrRecordmap);
String email = ResourceUtil.getInstance().getHREmail(hrRecordmap);
if( ValHelper.getInstance().isNotNullAndEmpty(email))
{
try
{
TsMissingUtil.getInstance().mailling(tsmissdtlmap, name, email, deptid);
sendingmailwebinfo.getSendmap().put(name, email);
}
catch(SendFailedException sendfailedexception)
{
sendingmailwebinfo.getFailmap().put(name, email);
}
catch(Exception ex)
{
sendingmailwebinfo.getFailmap().put(name, email);
}
}
}
Set<String> keyset = tsmissdtlmap.keySet();
Iterator<String> iter = keyset.iterator();
while( iter.hasNext())
{
String resourceid = iter.next();
TsMissingDetails tsmissingdetails = tsmissdtlmap.get(resourceid);
String resourcename = tsmissingdetails.getResourcename();
String email = tsmissingdetails.getEmail();
try
{
TsMissingUtil.getInstance().mailling(tsmissingdetails, resourcename, email);
sendingmailwebinfo.getSendmap().put(resourcename, email);
}
catch(SendFailedException sendfailedexception1)
{
sendingmailwebinfo.getFailmap().put(resourcename, email);
}
catch(Exception e)
{
sendingmailwebinfo.getFailmap().put(resourcename, email);
}
}
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -