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 + -
显示快捷键?