Rev 421 | Blame | Last modification | View Log | RSS feed
package in.shop2020.serving.controllers;import in.shop2020.model.v1.order.LineItem;import in.shop2020.model.v1.order.OrderInfo;import in.shop2020.model.v1.order.Transaction;import in.shop2020.model.v1.shoppingcart.Cart;import in.shop2020.model.v1.shoppingcart.Line;import in.shop2020.model.v1.shoppingcart.ShadowCart;import in.shop2020.model.v1.shoppingcart.ShoppingCartException;import in.shop2020.serving.controllers.BaseController;import in.shop2020.serving.pages.PageContentKeys;import in.shop2020.serving.pages.PageEnum;import in.shop2020.serving.pages.PageManager;import in.shop2020.thrift.clients.ShoppingCartClient;import in.shop2020.thrift.clients.TransactionServiceClient;import in.shop2020.thrift.clients.UserContextServiceClient;import java.util.*;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServletRequest;import org.apache.commons.lang.StringUtils;import org.apache.juli.logging.Log;import org.apache.juli.logging.LogFactory;import org.apache.struts2.convention.annotation.Result;import org.apache.struts2.convention.annotation.Results;import org.apache.struts2.interceptor.ParameterAware;import org.apache.struts2.interceptor.ServletRequestAware;import org.apache.struts2.rest.DefaultHttpHeaders;import org.apache.struts2.rest.HttpHeaders;import org.apache.thrift.TException;import com.opensymphony.xwork2.ValidationAwareSupport;@Results({@Result(name="success", type="redirectAction",params = {"actionName" , "order"})})public class OrderController extends BaseController implements ParameterAware {private static final long serialVersionUID = 1L;private Map<String, String[]> reqparams;private Map<String, Object> sessions;private String redirectURL;private static Log log = LogFactory.getLog(OrderController.class);private String cartId;//HttpServletRequest request;private Map<String,String> htmlSnippets;public OrderController(){}// GET /entitypublic HttpHeaders index() {return new DefaultHttpHeaders("index").disableCaching();}// POST /entitypublic String create() {log.info("OrderController.create");if(!userinfo.isLoggedIn()){//redirect to the login or signIn page and it should be redirected back once user is logged in}else{//Display the cart, amount, payment options and address along with pay buttonlong userId = this.userinfo.getUserId();createOrderFromCart(userId);}return "success";}private void createOrderFromCart(long userId){ShoppingCartClient shoppingCartClient = null;in.shop2020.model.v1.shoppingcart.ShoppingCartService.Client cartClient = null;try{shoppingCartClient = new ShoppingCartClient();cartClient = shoppingCartClient.getClient();long cartId = cartClient.getCurrentCart(userId, false).getId();cartClient.commitCart(cartId);} catch (ShoppingCartException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (TException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}@Overridepublic void setParameters(Map<String, String[]> reqmap) {log.info("setParameters:" + reqmap);this.reqparams = reqmap;}// @Override// public void setServletRequest(HttpServletRequest request) {// this.request = request;// }//}