⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 proassignreqhandler.java.svn-base

📁 一个timesheet程序,用来统计开发人员的度量衡web在线程序.用于软件行业
💻 SVN-BASE
字号:
package com.nsi.components.projassign;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import com.nsi.constants.AppConstants;
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.control.web.util.WebModelUtil;
import com.nsi.util.ValHelper;

/**
 * @author Chris Ye, created on Oct 8, 2008
 *
 * ProAssignReqHandler
 */
public class ProAssignReqHandler implements ReqHandler
{
	private static Log log = LogFactory.getLog(ProAssignReqHandler.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");
		log.debug("processRequest() -- action[" + action + "]");		
		NsiEvent event = null;
		if( ValHelper.getInstance().isNotNullAndEmpty(action))
		{
			String projstatus = request.getParameter("projectstatus") != null ? request.getParameter("projectstatus") : "";
			ProAssignWebInfo info = (ProAssignWebInfo)request.getSession().getAttribute("pawebinfo");
			if(info == null)
			{
				info = new ProAssignWebInfo();
				request.getSession().setAttribute("pawebinfo", info);
			}
			info.setProjstatus(projstatus);
			info.setAddnum("0");
			if(action.equalsIgnoreCase("updateProAssign")) event = createUpdateProAssignEvent(request);
			else if(action.equalsIgnoreCase("displayProAssign")) event = createDisplayProAssignEvent(request);
			else if(action.equalsIgnoreCase("addProAssign"))
			{
				setAddInfo(info, request);
				event = createUpdateProAssignEvent(request);
			}
		}
		return event;
	}
	private NsiEvent createDisplayProAssignEvent(HttpServletRequest req) throws NsiEventException
	{
		ProAssignEvent event = new ProAssignEvent(1);
		String projectid = req.getParameter("projectid").trim();
		ProAssignInfo info = new ProAssignInfo();
		info.setProjectid(projectid);
		ModelManager mm = (ModelManager)req.getSession().getAttribute(AppConstants.ModelManagerKey);
		WebModelUtil.getInstance().getProAssignModel(mm).copy(info);
		event.setInfo(info);
		return event;
	}
	private NsiEvent createUpdateProAssignEvent(HttpServletRequest req) throws NsiEventException
	{
		ProAssignEvent event = new ProAssignEvent(2);
		ModelManager mm = (ModelManager)req.getSession().getAttribute(AppConstants.ModelManagerKey);
		String loginuser = mm.getLoginuser().getResourceid();
		String projectid = req.getParameter("projectid").trim();
		ProAssignInfo info = new ProAssignInfo();
		info.setProjectid(projectid);
		int rows = Integer.parseInt(req.getParameter("rownum"));
		for (int i = 0; i < rows; i++)
		{
			ProAssignDetail detail = new ProAssignDetail();
			detail.setProjassignid(req.getParameter("proassid" + i).trim());
			detail.setProjectid(projectid);
			detail.setResourceid(req.getParameter("resourceid" + i).trim());
			detail.setProjroleid(req.getParameter("projectroleid" + i).trim());
			detail.setChargetypeid(req.getParameter("chargetypeid" + i).trim());
			detail.setBillable(req.getParameter("billable" + i).trim());
			detail.setPercentageload(req.getParameter("percentageload" + i).trim());
			detail.setBudgetamount(req.getParameter("budgetamount" + i).trim());
			detail.setBudgetdays(req.getParameter("budgetdays" + i).trim());
			detail.setFromdate(req.getParameter("fromdate" + i).trim());
			detail.setEnddate(req.getParameter("enddate" + i).trim());
			info.getDetaillist().add(detail);
		}
		WebModelUtil.getInstance().getProAssignModel(mm).copy(info);
		event.setLoginUser(loginuser.trim());
		event.setInfo(info);
		return event;
	}
	private void setAddInfo(ProAssignWebInfo info, HttpServletRequest req)
	{
		String addnum = req.getParameter("addlines");
		info.setAddnum(addnum.trim());
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -