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

📄 clientproductionaction.java

📁 客户关系管理系统主要管理新老客户的一些信息并可以发现潜在客户
💻 JAVA
字号:
package com.qrsx.qrsxcrm.action;

import java.lang.reflect.InvocationTargetException;
import java.util.List;

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

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.qrsxcrm.dao.ClientDAO;
import com.qrsx.qrsxcrm.dao.ClientProductionDAO;
import com.qrsx.qrsxcrm.dao.ClientTypeDAO;
import com.qrsx.qrsxcrm.dao.EmployeeDAO;
import com.qrsx.qrsxcrm.dao.ProductionTypeDAO;
import com.qrsx.qrsxcrm.form.ClientProductionForm;
import com.qrsx.qrsxcrm.model.Client;
import com.qrsx.qrsxcrm.model.ClientProduction;
import com.qrsx.qrsxcrm.model.ClientType;
import com.qrsx.qrsxcrm.model.Employee;
import com.qrsx.qrsxcrm.model.ProductionType;
import com.qrsx.qrsxcrm.web.Pager;

public class ClientProductionAction extends BaseDispatchAction {
	/**
	 * 检索所有客户产品信息,转发到列表页面
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 * @throws IllegalAccessException
	 * @throws InvocationTargetException
	 */
	@SuppressWarnings("unchecked")
	public ActionForward list(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws IllegalAccessException, InvocationTargetException {
		
//		HttpSession session = request.getSession();
//		String flag = (String) session.getAttribute("wrong");
//		if(  flag != null && ! flag.equals(""))
//		{
//			request.setAttribute("sorry", "数据已被使用,请释放后再删除!");
//		}
//		session.setAttribute("wrong", "");
		
		
		ClientProduction clientProduction = new ClientProduction();
		BeanUtils.copyProperties(clientProduction, form);
		
		try {
			Pager pager = null;
			ClientProductionDAO cpdao = new ClientProductionDAO(ClientProduction.class);
			List results = cpdao.findAll("from ClientProduction");//得到总数据
			
			pager = new Pager(); // 构造分页对象
			int totalRows = results.size(); // 得到总数据量
			pager.init(totalRows);

			if (request.getParameter("action") != null) {
				pager.doAction(request.getParameter("action").toString());
			}
			// 使用分页标签的方法
			List list = cpdao.findAllByPage(clientProduction, (pager.getCurrentPage() - 1)* pager.getPageSize(),pager.getPageSize());
			request.getSession().setAttribute("pagerstruts", pager);
			request.setAttribute("clientProductions", list);
		} catch (Exception e) {
			e.printStackTrace();
		}

		return mapping.findForward("list");
	}
	/**
	 * 编辑客户产品信息,并转发到编辑页面
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 * @throws IllegalAccessException
	 * @throws InvocationTargetException
	 */
	public ActionForward edit(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws IllegalAccessException, InvocationTargetException {

		String id = request.getParameter("id");
		
		ClientProductionDAO cpdao = new ClientProductionDAO(ClientProduction.class);
		
		// 组装客户
		ClientDAO cDao=new ClientDAO(Client.class); 
		List clients=cDao.findAll("from Client");
		request.setAttribute("clients", clients);
		//组装产品类型
		ProductionTypeDAO ptdao=new ProductionTypeDAO(ProductionType.class);
		List productionTypes=ptdao.findAll("from ProductionType");
		request.setAttribute("productionTypes", productionTypes);
		
		if (id != null && id.trim().length() > 0) {
			ClientProduction clientProduction = (ClientProduction) cpdao.findById(ClientProduction.class, id);
			
			if(clientProduction.getClient()!=null){
				clientProduction.setClientId(clientProduction.getClient().getId());
			}
			if(clientProduction.getProductionType()!=null){
				clientProduction.setProductionTypeId(clientProduction.getProductionType().getId());
			}
			if (clientProduction != null) {
				BeanUtils.copyProperties(form, clientProduction);	
			}
		}
		
		return mapping.findForward("edit");
	}
	
	/**
	 * 保存客户产品信息,并转发到列表页面
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 * @throws IllegalAccessException
	 * @throws InvocationTargetException
	 */
	@SuppressWarnings({ "deprecation", "unchecked" })
	public ActionForward save(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws IllegalAccessException, InvocationTargetException {

		ActionErrors errors = form.validate(mapping, request);
		if (!errors.isEmpty()) {
			saveErrors(request, errors);
			return edit(mapping, form, request, response);
		}
		
		ClientProductionForm clientProductionForm=(ClientProductionForm)form;
		ClientProduction clientProduction=new ClientProduction();
		BeanUtils.copyProperties(clientProduction, form);//将from组装到client对象中
		//组装一个产品类型
		ProductionTypeDAO ptdao=new ProductionTypeDAO(ProductionType.class);
		clientProduction.setProductionType((ProductionType)ptdao.findById(ProductionType.class, clientProduction.getProductionTypeId()));
		
		//组装一个客户
		ClientDAO cDao=new ClientDAO(Client.class);
		clientProduction.setClient((Client)cDao.findById(Client.class, clientProduction.getClientId()));
		
		ClientProductionDAO cpdao=new ClientProductionDAO(ClientProduction.class);
		if(clientProductionForm.getId()==null||clientProductionForm.getId().trim().length()==0){
			cpdao.create(clientProduction);
			saveMessage(request, "announcementForm.added", clientProduction.getClientProductionName());
			//saveMessage创建成功
		}
		else{
			cpdao.updates(clientProduction);
			saveMessage(request, "announcementForm.updated", clientProduction.getClientProductionName());
			//saveMessage更新成功
		}
		return mapping.findForward("success");
	}
	/**
	 * 删除客户产品信息,并转发到列表页面
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	@SuppressWarnings("unchecked")
	public ActionForward delete(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response){
		String id=request.getParameter("id");
		if(id!=null&&id.trim().length()>0){
			ClientProductionDAO cpdao=new ClientProductionDAO(ClientProduction.class);
			ClientProduction clientProduction=(ClientProduction) cpdao.findById(ClientProduction.class, id);
			cpdao.delete(clientProduction);
//			saveMessage(request, "announcementForm.deleted", clientProduction.getClientProductionName());
			//saveMessage
		}
		return mapping.findForward("success");
	}
	/**
	 * 检索客户产品信息,并转发到列表页面
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward info(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response){
		String id=request.getParameter("id");
		if(id!=null&&id.trim().length()>0){
			ClientProductionDAO cpdao=new ClientProductionDAO(ClientProduction.class);
			ClientProduction clientProduction=(ClientProduction) cpdao.findById(ClientProduction.class, id);
			request.setAttribute("clientProduction", clientProduction);
			//saveMessage
		}
		return mapping.findForward("info");
	}
}

⌨️ 快捷键说明

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