assetdispatchaction.java

来自「struts做得固定资产管理系统 带毕业论文完整版」· Java 代码 · 共 251 行

JAVA
251
字号
package com.qrsx.appcam.action;

import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.qrsx.appcam.dao.AddTypeDAO;
import com.qrsx.appcam.dao.AssetDAO;
import com.qrsx.appcam.dao.AssetTypeDAO;
import com.qrsx.appcam.dao.ClientDAO;
import com.qrsx.appcam.dao.StorageDAO;
import com.qrsx.appcam.form.AssetForm;
import com.qrsx.appcam.model.Asset;

public class AssetDispatchAction extends BaseDispatchAction {

	/**
	 * 保存资产:更新、创建
	 * 
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward save(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		BaseDispatchAction.isLogon(request, response);//验证用户是否已经登陆		
		// 验证数据有效性,如果出错则在转到编辑页面
		ActionErrors errors = form.validate(mapping, request);
		if (!errors.isEmpty()) {

			saveErrors(request, errors);
			return edit(mapping, form, request, response);
		}

		AssetForm typeForm = (AssetForm) form;
		Asset asset = new Asset();
		// 把form表单中的数据复制到asset对象中
		BeanUtils.copyProperties(asset, form);

		AssetDAO dao = new AssetDAO();
		// 如果该表单中的assetId不为空则执行创建操作,否则执行更新操作
		if (typeForm.getId() == null || typeForm.getId().trim().length() == 0) {
			dao.create(asset);// 执行创建操作
			saveMessage(request, "assetForm.added", asset.getName());
		} else {
			dao.update(asset);// 执行更新操作
			saveMessage(request, "assetForm.updated", asset.getName());
		}
		return mapping.findForward("success");
	}

	/**
	 * 编辑资产:进入新建页面、进入更新页面
	 * 
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward edit(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		BaseDispatchAction.isLogon(request, response);//验证用户是否已经登陆
		String id = request.getParameter("id");

		if (id != null && id.trim().length() > 0) {
			AssetDAO dao = new AssetDAO();
			// 获取该Id对应的asset对象
			Asset asset = dao.findById(Integer.valueOf(id));

			// 将asset的值复制给form
			if (asset != null) {
				BeanUtils.copyProperties(form, asset);
			}
		}
		// 把assetType资产类型存放单独的集合中,并通过request返回到页面
		AssetTypeDAO dao1 = new AssetTypeDAO();
		List assetTypes = dao1.findAll();
		request.setAttribute("assetTypes", assetTypes);

		// 把厂家信息存放在单独的集合中,并通过request返回到页面
		ClientDAO dao2 = new ClientDAO();
		List clients = dao2.findAll();
		request.setAttribute("clients", clients);

		// 把仓库存放到单独的集合中,并通过request返回到页面
		StorageDAO dao3 = new StorageDAO();
		List storages = dao3.findAll();
		request.setAttribute("storages", storages);

		// 把资产增加类型存放到单独的集合中,并通过request返回到页面
		AddTypeDAO dao4 = new AddTypeDAO();
		List addTypes = dao4.findAll();
		request.setAttribute("addTypes", addTypes);

		return mapping.findForward("edit");
	}

	/**
	 * 删除资产
	 * 
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 * @throws Exception
	 */
	public ActionForward delete(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		BaseDispatchAction.isLogon(request, response);//验证用户是否已经登陆
		String id = request.getParameter("id");
		// 如果资产的Id不为空,则删除
		if (id != null && id.trim().length() > 0) {
			AssetDAO dao = new AssetDAO();
			// 执行删除操作
			dao.delete(Integer.valueOf(id));
			saveMessage(request, "assetForm.deleted");
		}
		return mapping.findForward("success");
	}

	/**
	 * 检索所有的资产
	 * 
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 * @throws Exception
	 */
	public ActionForward findAll(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		BaseDispatchAction.isLogon(request, response);//验证用户是否已经登陆
		AssetDAO dao = new AssetDAO();
		List<Asset> list = dao.findAll();
		request.setAttribute("assets", list);
		return mapping.findForward("list");
	}

	/**
	 * 动态检索资产
	 * 
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 * @throws Exception
	 */
	public ActionForward list(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		BaseDispatchAction.isLogon(request, response);//验证用户是否已经登陆
		Asset asset = new Asset();

		// 把form表单中的数据复制到asset对象中去,获取检索条件
		BeanUtils.copyProperties(asset, form);

		// 把assetType资产类型存放单独的集合中,并通过request返回到页面
		AssetTypeDAO dao1 = new AssetTypeDAO();
		List assetTypes = dao1.findAll();
		request.setAttribute("assetTypes", assetTypes);

		// 把asset资产存放单独的集合中,并通过request返回到页面
		AssetDAO dao = new AssetDAO();
		List<Asset> list = dao.list(asset);// 执行检索操作
		// 把检索到的列表返回到编辑页面
		request.setAttribute("assets", list);
		return mapping.findForward("list");
	}

	/**
	 * 借出检索:检索所有资产用于借出
	 * 
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 * @throws Exception
	 */
	public ActionForward lendList(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		BaseDispatchAction.isLogon(request, response);//验证用户是否已经登陆
		Asset asset = new Asset();
		// 把form表单中的数据复制到asset对象中去
		BeanUtils.copyProperties(asset, form);

		// 把厂家信息存放在单独的集合中,并通过request返回到页面
		ClientDAO dao1 = new ClientDAO();
		List clients = dao1.findAll();
		request.setAttribute("clients", clients);

		AssetDAO dao = new AssetDAO();
		List<Asset> list = dao.list(asset);// 执行检索操作
		// 把检索到的列表返回到编辑页面
		request.setAttribute("assets", list);
		return mapping.findForward("lendList");
	}

	/**
	 * 查看:进入查看页面
	 * 
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 * @throws Exception
	 */
	public ActionForward lendCheck(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		BaseDispatchAction.isLogon(request, response);//验证用户是否已经登陆
		// 获取要查看对象的id
		String id = request.getParameter("id");
		// 如果Id不为空,则检索出来该Id对应的对象,如果该对象不为空,则返回到查看页面
		if (id != null && id.trim().length() > 0) {
			AssetDAO dao = new AssetDAO();
			Asset asset = dao.findById(Integer.valueOf(id));

			if (asset != null) {

				BeanUtils.copyProperties(form, asset);
			}
		}
		return mapping.findForward("lendCheck");
	}

}

⌨️ 快捷键说明

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