📄 checkoutaction.java
字号:
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.shopping.struts.action.order;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Hashtable;
import java.util.Iterator;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.shopping.dao.UnifyDao;
import com.shopping.factory.DAOFactory;
import com.shopping.struts.form.CheckOutForm;
import com.shopping.vo.Item;
import com.shopping.vo.Lineitem;
import com.shopping.vo.Salesorder;
import com.shopping.vo.User;
public class CheckOutAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
CheckOutForm checkOutForm = (CheckOutForm) form;// TODO Auto-generated
// method stub
UnifyDao ud = null;
try {
ud = (UnifyDao) DAOFactory
.getBean("com.shopping.dao.imp.ItemDaoImp");
} catch (InstantiationException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IllegalAccessException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
UnifyDao userDao = null;
try {
userDao = (UnifyDao) DAOFactory
.getBean("com.shopping.dao.imp.UserDaoImp");
} catch (InstantiationException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IllegalAccessException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
UnifyDao orderDao = null;
try {
orderDao = (UnifyDao) DAOFactory
.getBean("com.shopping.dao.imp.OrderDaoImp");
} catch (InstantiationException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IllegalAccessException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
String payment = checkOutForm.getPayment();
String comment = checkOutForm.getComment();
String shipping = checkOutForm.getShipping();
String email = checkOutForm.getEmail();
String fullName = checkOutForm.getFullName();
String postcode = checkOutForm.getPostalCode();
String phone = checkOutForm.getPhone();
String address = checkOutForm.getAddress();
double totalprice = (Double) request.getSession().getAttribute(
"totalPrice");
int total_quantity = (Integer) request.getSession().getAttribute(
"total_quantity");
String username = (String) request.getSession()
.getAttribute("username");
Hashtable<Integer, Integer> ht = (Hashtable) request.getSession()
.getAttribute("ht");
User user = (User) userDao.getTableByName(username);
// System.out.println(comment);
Salesorder order = new Salesorder();
order.setAddr(address);
order.setComment(comment);
order.setEmail(email);
order.setOdate(new Date());
order.setName(fullName);
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
String nowdate = sdf.format(new Date());
String no = Long.parseLong(nowdate)
+ new Double(Math.random() * System.currentTimeMillis())
.toString().substring(0, 9);
order.setOrderno(no);
order.setPayment(payment);
order.setPostcode(postcode);
order.setTotalprice(totalprice);
order.setShippingWay(shipping);
order.setStatus("[未确认]");
order.setPhone(phone);
order.setUser(user);
Integer item_id;
Integer item_quantity;
Item item;
for (Iterator it = ht.keySet().iterator(); it.hasNext();) {
item_id = (Integer) it.next();
// System.out.println(item_id);
item = (Item) ud.getTableById(item_id);
item.setProStorage(item.getProStorage()-1);
ud.updateTable(item);
item_quantity = ht.get(item_id);
// System.out.println(item_quantity);
double baseprice = item.getPrice() * item_quantity;
Lineitem lineitem = new Lineitem(item, order, item_quantity,
baseprice);
order.getLineitems().add(lineitem);
}
if (orderDao.insertTable(order)) {
ht = new Hashtable<Integer, Integer>();
request.getSession().setAttribute("ht", ht);
request.getSession().setAttribute("totalPrice", 0);
request.getSession().setAttribute("total_quantity", 0);
request.getSession().setAttribute("order", order);
return mapping.findForward("success");
}
return mapping.getInputForward();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -