📄 orderaction.java
字号:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi
// Source File Name: OrderAction.java
package com.keyshop.shop.order.controller;
import beartool.MD5;
import com.keyshop.pub.controller.PubAction;
import com.keyshop.pub.controller.PubForm;
import com.keyshop.pub.util.*;
import com.keyshop.shop.order.bo.OrderBO;
import com.keyshop.shop.order.model.*;
import com.keyshop.shop.order.util.*;
import com.keyshop.shop.product.model.Product;
import com.keyshop.shop.system.manager.SystemManager;
import com.keyshop.shop.system.model.*;
import com.keyshop.shop.system.util.SystemConst;
import com.keyshop.shop.user.model.User;
import com.keyshop.shop.user.util.UserConst;
import com.keyshop.shop.user.util.UserHelper;
import java.io.IOException;
import java.io.PrintStream;
import java.util.*;
import javax.servlet.http.*;
import org.apache.struts.action.*;
// Referenced classes of package com.keyshop.shop.order.controller:
// OrderForm
public class OrderAction extends PubAction
{
public boolean isRedirect;
public OrderAction()
{
isRedirect = false;
}
public String getSelectSQL()
{
String sql = " from Order as order1 where 1=1";
OrderForm form = (OrderForm)thisform;
String init = httpRequest.getParameter("init");
if("true".equals(init))
{
form.clear();
form.setChange("true");
}
String change = form.getChange();
if("true".equals(change))
{
String dateType = "2";
if(!StringUtil.isEmpty(startDate))
sql = sql + " and order1.orderDate >='" + FormatHelper.parseTimestamp(startDate, true) + "'";
if(!StringUtil.isEmpty(endDate))
sql = sql + " and order1.orderDate <='" + FormatHelper.parseTimestamp(endDate, false) + "'";
} else
{
OrderForm oform = (OrderForm)thisform;
Order order = (Order)oform.getBean();
if(!StringUtil.isEmpty(oform.getStartDate()))
sql = sql + " and order1.orderDate >='" + FormatHelper.parseTimestamp(oform.getStartDate(), true) + "'";
if(!StringUtil.isEmpty(oform.getEndDate()))
sql = sql + " and order1.orderDate <='" + FormatHelper.parseTimestamp(oform.getEndDate(), false) + "'";
}
System.out.println("sql = " + sql);
return sql;
}
public void initClassName()
{
boClass = "com.keyshop.shop.order.bo.OrderBO";
beanClass = "com.keyshop.shop.order.model.Order";
formBeanClass = "com.keyshop.shop.order.controller.OrderForm";
}
public ActionForward performUpdate(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
{
OrderForm oform = (OrderForm)form;
String id = request.getParameter("bean.id");
String status = request.getParameter("bean.status");
try
{
OrderBO bo = new OrderBO();
Order order = (Order)bo.get(id);
if(order == null)
{
if(order.getStatus().equals(status))
request.setAttribute("status_error", "true");
} else
{
request.setAttribute("no_order_error", "true");
}
order.setStatus(status);
if(OrderHelper.GET_FIT_STATUS.equals(status))
UserHelper.addUserOrderIntegral(order.getId());
String opertor = "";
if(request.getSession() != null)
{
Manager manager = (Manager)request.getSession().getAttribute(SystemConst.MANAGER);
opertor = manager.getId();
}
OrderHelper.addTrace(order, opertor, order.getId(), opertor, status);
bo.updateBean(order);
oform.setBean(order);
}
catch(Exception ex)
{
ex.printStackTrace();
}
return mapping.findForward("view");
}
public ActionForward performSave(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
{
verifycode = getVerifycode(request);
OrderForm orderForm = (OrderForm)form;
Order order = (Order)orderForm.getBean();
User user = (User)session.getValue("User");
CartManager cartManager = null;
if(user != null)
cartManager = user.getCartManager();
order.getOrderAddress().setOrder(order);
if(cartManager != null && cartManager.getProducts() != null && cartManager.getProducts().size() > 0)
{
ShipType shiptype = OrderHelper.getShipType(order.getShipType());
double totalCost = cartManager.getTotalAmount(user);
if(user != null && !UserConst.ADVANCEUSERTYPE.equals(user.getUsertype()))
{
if("rate".equals(shiptype.getChargeType()))
totalCost *= 1.0D + (double)shiptype.getAmount() / 100D;
else
totalCost += shiptype.getAmount();
totalCost = FormatHelper.getDouble(totalCost, 2);
}
order.setTotalCost(totalCost);
for(int i = 0; i < cartManager.getProducts().size(); i++)
{
com.keyshop.shop.order.model.CartManager.CartManagerProduct product = (com.keyshop.shop.order.model.CartManager.CartManagerProduct)cartManager.getProducts().get(i);
OrderDetail orderDetail = new OrderDetail();
orderDetail.setListPrice(product.getProduct().getListPrice());
orderDetail.setUnitPrice(product.getProduct().getUnitPrice());
orderDetail.setOmorder(order);
orderDetail.setProductId(product.getId());
orderDetail.setQuantity(product.getNumber());
orderDetail.setTotalPrice((double)product.getNumber() * orderDetail.getUnitPrice());
orderDetail.setProductName(product.getProduct().getName());
orderDetail.setOrderDate(DateUtil.getSysDateString());
orderDetail.setUnitType(product.getProduct().getUnit());
order.getChildList().add(orderDetail);
}
try
{
OrderBO orderbo = new OrderBO();
order.setCreator(user.getId());
order.setStatus(OrderHelper.NO_DEAL_STATUS);
order.getOrderAddress().setOrder(order);
if(orderForm.isEquals())
syncOrderAddress(order.getOrderAddress(), order.getOrderConsigneeAddress());
order.getOrderConsigneeAddress().setOrder(order);
OrderHelper.addTrace(order, user.getId(), order.getId(), "", OrderHelper.NO_DEAL_STATUS);
String serialNo = OrderHelper.createOrderNo();
order.setSerialNo(serialNo);
if(order.getChildList().size() > 0)
order.setProductNumber(order.getChildList().size());
orderbo.addBean(order);
order = (Order)orderbo.get(order.getId());
orderForm.setBean(order);
sendOrderMail(order, "user");
}
catch(Exception ex)
{
ex.printStackTrace();
}
} else
{
request.setAttribute("sub_error", "true");
return mapping.findForward("error");
}
user.setCartManager(new CartManager());
try
{
PayConfig capInfoConfig = SystemManager.getCapInfoConfig(request);
if(capInfoConfig != null)
{
order = (Order)orderForm.getBean();
String vmid = capInfoConfig.getUsername();
String orderId = DateUtil.getNoSpSysDateString() + "-" + vmid + "-" + order.getSerialNo();
String v_rcvname = vmid;
String v_rcvaddr = order.getOrderConsigneeAddress().getAddress();
String v_rcvtel = order.getOrderConsigneeAddress().getTelephone();
String v_rcvpost = order.getOrderConsigneeAddress().getZipCode();
String v_amount = (int)order.getTotalCost() + ".00";
String orderDate = DateUtil.getNoSpSysDateString();
String v_orderstatus = "1";
String v_ordername = order.getOrderAddress().getName();
String v_moneytype = "0";
String returnUrl = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + "/" + "shop/order/capInfoListen.do";
StringBuffer sb = new StringBuffer();
sb.append(v_moneytype);
sb.append(orderDate);
sb.append(v_amount);
sb.append(v_rcvname);
sb.append(orderId);
sb.append(vmid);
sb.append(returnUrl);
String key = capInfoConfig.getPassword();
String md5info = PayUtil.getDigestString(sb.toString(), key);
CapInfoPayInfo info = new CapInfoPayInfo();
info.setVmid(vmid);
info.setOrderId(orderId);
info.setV_rcvname(v_rcvname);
info.setV_rcvaddr(v_rcvaddr);
info.setV_rcvtel(v_rcvtel);
info.setV_rcvpost(v_rcvpost);
info.setV_amount(v_amount);
info.setOrderDate(orderDate);
info.setV_orderstatus(v_orderstatus);
info.setV_ordername(v_ordername);
info.setV_moneytype(v_moneytype);
info.setReturnUrl(returnUrl);
info.setV_md5info(md5info);
request.setAttribute("capInfo", info);
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
try
{
PayConfig chinabankInfoConfig = SystemManager.getChinabankInfoConfig(request);
if(chinabankInfoConfig != null)
{
order = (Order)orderForm.getBean();
String v_mid = chinabankInfoConfig.getUsername();
String v_oid = DateUtil.getNoSpSysDateString() + "-" + v_mid + "-" + order.getSerialNo();
String v_rcvname = v_mid;
String v_rcvaddr = order.getOrderConsigneeAddress().getAddress();
String v_rcvtel = order.getOrderConsigneeAddress().getTelephone();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -