Subversion Repositories SmartDukaan

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
507 rajveer 1
package in.shop2020.serving.controllers;
2
 
3
import in.shop2020.model.v1.shoppingcart.Cart;
4
import in.shop2020.model.v1.shoppingcart.ShoppingCartException;
5
import in.shop2020.model.v1.user.Address;
6
import in.shop2020.model.v1.user.AddressType;
7
import in.shop2020.model.v1.user.UserContextService.Client;
8
import in.shop2020.serving.controllers.BaseController;
9
import in.shop2020.serving.pages.PageContentKeys;
10
import in.shop2020.serving.pages.PageEnum;
11
import in.shop2020.serving.pages.PageManager;
12
import in.shop2020.serving.utils.Utils;
13
import in.shop2020.thrift.clients.ShoppingCartClient;
14
import in.shop2020.thrift.clients.UserContextServiceClient;
15
 
16
import java.util.*;
17
 
18
import org.apache.juli.logging.Log;
19
import org.apache.juli.logging.LogFactory;
20
import org.apache.struts2.convention.annotation.Result;
21
import org.apache.struts2.convention.annotation.Results;
22
import org.apache.struts2.interceptor.ParameterAware;
23
import org.apache.struts2.rest.DefaultHttpHeaders;
24
import org.apache.struts2.rest.HttpHeaders;
25
import org.apache.thrift.TException;
26
 
27
public class AddressController extends BaseController implements ParameterAware{
28
 
29
	private static final long serialVersionUID = 1L;
30
	private static Log log = LogFactory.getLog(AddressController.class);
31
	Map<String, String[]> reqparams = null;
32
 
33
	private Map<String,String> htmlSnippets;
34
	private PageManager pageManager = null;
35
 
36
	public AddressController(){
37
		super();
38
		pageManager = PageManager.getPageManager();	
39
	}
40
 
41
	 // GET /address
42
	 public HttpHeaders index() {
43
    	long userId = 0;
44
    	boolean isSessionId = true;
45
		Map<PageContentKeys, String> params = new HashMap<PageContentKeys, String>();
46
 
47
		if(userinfo.isLoggedIn()){
48
			userId = userinfo.getUserId();
49
			isSessionId = false;
50
		}else {
51
			userId = userinfo.getSessionId();
52
			isSessionId = true;
53
		}
54
 
55
 
56
		params.put(PageContentKeys.CUSTOMER_ID, userId+"");
57
		params.put(PageContentKeys.IS_SESSION_ID, isSessionId+"");
58
		params.put(PageContentKeys.CART_ID, userinfo.getCartId()+"");
59
		params.put(PageContentKeys.ITEM_COUNT, userinfo.getTotalItems()+"");
60
 
61
		htmlSnippets = pageManager.getPageContents(PageEnum.SHIPPING_ADDRESS_PAGE, params);
62
 
63
    	return new DefaultHttpHeaders("index").disableCaching();
64
	 }
65
 
66
	// POST /address
67
	public HttpHeaders create(){
68
    	printParams();
69
 
70
		log.info("list of item ids is " + this.request.getParameter("productid"));
71
 
72
 
73
		if(userinfo.isLoggedIn()){
74
			UserContextServiceClient userContextServiceClient;
75
			try {
76
				userContextServiceClient = new UserContextServiceClient();
77
				Client userClient = userContextServiceClient.getClient();
78
 
79
				String setDefault = this.request.getParameter("setDefault");
80
				String addAddress = this.request.getParameter("addAddress");
81
 
82
				if(addAddress!=null && addAddress.equals("True")){
83
					Address address = new Address();
84
					address.setName(this.request.getParameter("customername"));
85
					address.setLine1(this.request.getParameter("line1"));
86
					address.setLine2(this.request.getParameter("line2"));
87
					address.setCity(this.request.getParameter("city"));
88
					address.setState(this.request.getParameter("state"));
89
					address.setPin(this.request.getParameter("pincode"));
90
					address.setPhone(this.request.getParameter("mobilenumber"));
91
					address.setCountry(this.request.getParameter("country"));
92
					address.setEnabled(true);
93
					userClient.addAddressForUser(address, userinfo.getUserId(), (new Date()).getTime());
94
				}
95
 
96
				if(setDefault!=null && setDefault.equals("True") && this.request.getParameter("addressId") != null){
97
					long addressId = Long.parseLong(this.request.getParameter("addressId"));
98
					userClient.setDefaultAddress(userinfo.getUserId(), addressId);
99
				}
100
				return new DefaultHttpHeaders("success");	
101
			} catch (Exception e) {
102
				e.printStackTrace();
103
				return new DefaultHttpHeaders("failure");
104
			}
105
 
106
 
107
		}else{
108
			return new DefaultHttpHeaders("failure");
109
		}
110
 
111
	}
112
 
113
    public void printParams(){
114
    	for(String param : reqparams.keySet()) {
115
    		log.info("param name is " + param);
116
    		log.info("param first is " + reqparams.get(param)[0]);
117
    	}
118
    	log.info(this.reqparams);
119
    }
120
 
121
	@Override
122
	public void setParameters(Map<String, String[]> reqmap) {
123
		log.info("setParameters:" + reqmap);
124
 
125
		this.reqparams = reqmap;
126
	}
127
 
128
    public String getHeaderSnippet(){
129
		return htmlSnippets.get("HEADER");
130
	}
131
 
132
	public String getMainMenuSnippet(){
133
		return htmlSnippets.get("MAIN_MENU");
134
	}
135
 
136
	public String getSearchBarSnippet(){
137
		return htmlSnippets.get("SEARCH_BAR");
138
	}
139
 
140
 
141
	public String getCustomerServiceSnippet(){
142
		return htmlSnippets.get("CUSTOMER_SERVICE");
143
	}
144
 
145
	public String getShippingAddressHeaderSnippet(){
146
		return htmlSnippets.get("SHIPPING_ADDRESS_HEADER");
147
	}
148
 
149
	public String getShippingAddressDetailsSnippet(){
150
		return htmlSnippets.get("SHIPPING_ADDRESS_DETAILS");
151
	}
152
 
153
	public String getMyResearchSnippet(){
154
		return htmlSnippets.get("MY_RESEARCH");
155
	}
156
 
157
	public String getFooterSnippet(){
158
		return htmlSnippets.get("FOOTER");
159
	}
160
 
161
	public String getJsFileSnippet(){
162
		return htmlSnippets.get("JS_FILES");
163
	}
164
 
165
	public String getCssFileSnippet(){
166
		return htmlSnippets.get("CSS_FILES");
167
	}
168
}