orderaction.java

来自「《JSP网站开发典型模块与实例精讲》一书光盘源码」· Java 代码 · 共 357 行

JAVA
357
字号
// Created by MyEclipse Struts// XSL source (default):// platform:/plugin/com.genuitec.eclipse.cross.easystruts.eclipse_4.0.0/xslt/JavaClass.xslpackage book.example.photoprint.action;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;import java.util.Date;import java.util.List;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;import org.apache.struts.actions.DispatchAction;import org.apache.struts.upload.FormFile;import book.example.photoprint.exception.DBException;import book.example.photoprint.form.OrderForm;import book.example.photoprint.po.Photo;import book.example.photoprint.po.Shop;import book.example.photoprint.po.User;import book.example.photoprint.po.Userorder;import book.example.photoprint.service.AlbumService;import book.example.photoprint.service.OrderService;import book.example.photoprint.service.PhotoService;import book.example.photoprint.service.PriceService;import book.example.photoprint.service.ShopService;import book.example.photoprint.util.Compressor;public class OrderAction extends DispatchAction {	public ActionForward addPhoto(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response) {		String filename = null;		OrderForm orderForm = (OrderForm) form;		String orderId=orderForm.getId();		Date date = new Date();		String dir = String.valueOf(date.getTime());		try {			// 获得上传的相片文件			FormFile upFile = orderForm.getFile();			// 获得上传的文件名称			filename = upFile.getFileName();			String path = request.getRealPath("/photos");			// 以订单id为目录创建相片存储的文件夹			path=path+"\\"+orderId;			// 如果该目录不存在,则创建该目录			File file=new File(path);			if(!file.exists()){				file.mkdir();			}			InputStream fin = upFile.getInputStream();			OutputStream fout = new FileOutputStream(path + "\\"					+ upFile.getFileName());			byte[] buffer = new byte[8192];			int readByte = 0;			while ((readByte = fin.read(buffer, 0, 8192)) > 0) {				fout.write(buffer, 0, readByte);			}			fin.close();			fout.close();						//  同时将相片信息保存到Photo表			PhotoService photoService=new PhotoService();			Photo photo=new Photo();			photo.setAlbumid(orderForm.getAlbumid());			photo.setName(orderId+"/"+filename);			photo.setOrderid(orderId);			photoService.addPhoto(photo);		} catch (Exception e) {			e.printStackTrace();		}		return this.getPhotoList(mapping,form,request,response);	}		public ActionForward addOrder(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response) {				OrderForm orderForm = (OrderForm) form;		User user=(User)request.getSession().getAttribute("user");		Date date = new Date();				// 生成订单id		String id = user.getUsername()+String.valueOf(date.getTime());		Userorder order = new Userorder();		order.setId(id);		order.setDescription(orderForm.getDescription());		order.setShopid(orderForm.getShopid());		order.setCreatetime(new Date());		order.setStatus(new Short("1"));		order.setUser(user);		OrderService service = new OrderService();		try {			service.addOrder(order);  // 保存订单								} catch (DBException e) {			e.printStackTrace();			return mapping.findForward("error");		}				return this.getOrderListByUserid(mapping,form,request,response);	}		public ActionForward initUploadPhoto(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response) {		List list = null;		User user=(User)request.getSession().getAttribute("user");		String orderid=request.getParameter("orderid");		String shopid=request.getParameter("shopid");		try {			// 获得相册列表			AlbumService service=new AlbumService();			list=service.listByUserId(user.getId());			request.setAttribute("albumList",list);						//根据orderid获得shopid						OrderService orderService=new OrderService();			// 获得价格列表			PriceService priceService=new PriceService();			Shop shop=new Shop();			shop.setId(shopid);						list=priceService.listByShopId(shop);			request.setAttribute("priceList", list);			return mapping.findForward("uploadphoto");					} catch (DBException e) {			e.printStackTrace();			return mapping.findForward("error");		}	}	public ActionForward getShopOrder(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response) {		List list = null;		String shopId = ((Shop)request.getSession().getAttribute("shop")).getId();		OrderService service = new OrderService();		try {			list = service.getOrderListByShopId(shopId);			request.setAttribute("list", list);			return mapping.findForward("listShopOrder");		} catch (DBException e) {			e.printStackTrace();			return mapping.findForward("error");		}	}	public ActionForward getOrderList(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response) {		OrderService service = new OrderService();		List list = null;		try {			list = service.getOrderList();			request.setAttribute("list", list);		} catch (DBException e) {			e.printStackTrace();			return mapping.findForward("error");		}		return mapping.findForward("listOrder");	}	public ActionForward preAdd(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response) {		ShopService service = new ShopService();		PriceService _service = new PriceService();		AlbumService service1 = new AlbumService();		User user = (User) request.getSession().getAttribute("user");		String shopid = request.getParameter("shopid");		Shop shop = new Shop();		shop.setId(shopid);		List albumList = null;		List list1 = null;		try {			albumList = service1.listByUserId(user.getId());			list1 = _service.listByShopId(shop);			request.getSession().setAttribute("albumList", albumList);			request.getSession().setAttribute("priceList", list1);		} catch (DBException e) {			e.printStackTrace();			return mapping.findForward("error");		}		return mapping.findForward("preadd");	}	public ActionForward getOrderListByUserid(ActionMapping mapping,			ActionForm form, HttpServletRequest request,			HttpServletResponse response) {		User user = (User) request.getSession().getAttribute("user");		OrderService service = new OrderService();		List list = null;		try {			list = service.getOrderListByUserId(user);			request.setAttribute("list", list);		} catch (DBException e) {			e.printStackTrace();			return mapping.findForward("error");		}		return mapping.findForward("listUserOrder");	}	public ActionForward cancel(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response) {		String id = request.getParameter("id");		OrderService service = new OrderService();		try {			// 取消订单			service.cancel(id);		} catch (DBException e) {			e.printStackTrace();			return mapping.findForward("error");		}		return this.getOrderListByUserid(mapping,form,request,response);	}	public ActionForward confirm(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response) {		String id = request.getParameter("id");		String flag = request.getParameter("flag");		OrderService service = new OrderService();		try {			service.confirm(id, flag);		} catch (DBException e) {			e.printStackTrace();			return mapping.findForward("error");		}		return mapping.findForward("confirm_result");	}	public ActionForward viewPhoto(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response) {		List list = null;		String id = request.getParameter("id");		OrderService service = new OrderService();		try {			list = service.getOrderListByAlbumId(id);			request.setAttribute("list", list);		} catch (DBException e) {			e.printStackTrace();			return mapping.findForward("error");		}		return mapping.findForward("show_photo");	}		// 选择加盟店	public ActionForward chooseShop(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response) {		ShopService service = new ShopService();		try {			List list = service.list2();			request.setAttribute("list", list);		} catch (Exception e) {			e.printStackTrace();			return mapping.findForward("error");		}		return mapping.findForward("chooseshop");	}	public ActionForward downPhotos(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response) {		String orderId = request.getParameter("orderid"); // 订单id		String orderpath = "";		String zipFileName = orderId + ".zip";		OutputStream output = null;		FileInputStream fis = null;		try {			String path = request.getRealPath("/photos");			File file=new File(path + "/" + orderId);			if(file.exists()){			Compressor.zip(path + "/" + zipFileName, path + "/" + orderId);			response.sendRedirect("photos/"+zipFileName);			}			else{				return mapping.findForward("nophotos");			}		} catch (Exception ex) {			ex.printStackTrace();			return mapping.findForward("error");		}		return null;	}		/**	 * 查看订单的所有相片列表	 * @param mapping	 * @param form	 * @param request	 * @param response	 * @return	 */	public ActionForward getPhotoList(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response) {		String orderId = request.getParameter("orderid"); // 订单id		if(orderId==null){			OrderForm orderForm=(OrderForm)form;			orderId=orderForm.getId();		}		try {			PhotoService service = new PhotoService();			List list=service.listByOrderId(orderId);			request.setAttribute("list",list);			if(request.getParameter("shopid")==null){				return mapping.findForward("photolist");			}			else{				request.setAttribute("fromShop","1");				return mapping.findForward("photolistshop");			}		} catch (Exception ex) {			ex.printStackTrace();			return mapping.findForward("error");		}	}		/**	 * 更新订单状态	 * @param mapping	 * @param form	 * @param request	 * @param response	 * @return	 */	public ActionForward updateStatus(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response) {		String orderId = request.getParameter("orderid"); // 订单id		String status=request.getParameter("status");		try {			OrderService service=new OrderService();			service.confirm(orderId,status);		} catch (Exception ex) {			ex.printStackTrace();			return mapping.findForward("error");		}		return this.getShopOrder(mapping,form,request,response);	}}

⌨️ 快捷键说明

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