Subversion Repositories SmartDukaan

Rev

Rev 23405 | Rev 23568 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 23405 Rev 23419
Line 1... Line 1...
1
package com.spice.profitmandi.web.controller;
1
package com.spice.profitmandi.web.controller;
2
 
2
 
-
 
3
import java.time.LocalDateTime;
3
import java.util.ArrayList;
4
import java.util.ArrayList;
4
import java.util.HashSet;
5
import java.util.HashSet;
5
import java.util.List;
6
import java.util.List;
6
import java.util.Set;
7
import java.util.Set;
7
 
8
 
Line 131... Line 132...
131
					LOGGER.error("Data Inconsistent", pmbe);
132
					LOGGER.error("Data Inconsistent", pmbe);
132
				}
133
				}
133
			}
134
			}
134
			String redirectUrl = Utils.getRedictUrlFromLogin(fofoDetails);
135
			String redirectUrl = Utils.getRedictUrlFromLogin(fofoDetails);
135
			if(!redirectUrl.equals("/login")){
136
			if(!redirectUrl.equals("/login")){
-
 
137
				user.setLoginTimestamp(LocalDateTime.now());
-
 
138
				userRepository.persist(user);
136
				this.addCookiesToResponse(fofoDetails, request, response);
139
				this.addCookiesToResponse(fofoDetails, request, response);
137
				LOGGER.info("Requested token email_id is valid, user login to system, shoud be redirect to {}", redirectUrl);
140
				LOGGER.info("Requested token email_id is valid, user login to system, shoud be redirect to {}", redirectUrl);
138
				model.addAttribute("response", mvcResponseSender.createResponseString("RTLR_OK_1002", true, request.getContextPath() + redirectUrl));
141
				model.addAttribute("response", mvcResponseSender.createResponseString("RTLR_OK_1002", true, request.getContextPath() + redirectUrl));
139
			}else{
142
			}else{
140
				LOGGER.error("Requested token email_id is not valid, please try to login");
143
				LOGGER.error("Requested token email_id is not valid, please try to login");
Line 172... Line 175...
172
	}
175
	}
173
	
176
	
174
	@RequestMapping(value = "/logout", method = RequestMethod.GET)
177
	@RequestMapping(value = "/logout", method = RequestMethod.GET)
175
	public String logout(HttpServletRequest request, @ModelAttribute("model") ModelMap model, HttpServletResponse response) throws Exception{
178
	public String logout(HttpServletRequest request, @ModelAttribute("model") ModelMap model, HttpServletResponse response) throws Exception{
176
		try{
179
		try{
-
 
180
			LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
-
 
181
			User user = null;
-
 
182
			try{
-
 
183
				user = userRepository.selectByEmailId(loginDetails.getEmailId());
-
 
184
			}catch(ProfitMandiBusinessException profitMandiBusinessException){
-
 
185
				LOGGER.error("User not found with given emailId", profitMandiBusinessException);
-
 
186
			}
-
 
187
			if(user == null){
-
 
188
				user = userRepository.selectBySecondryEmailId(loginDetails.getEmailId());
-
 
189
			}
-
 
190
			user.setLogoutTimestamp(LocalDateTime.now());
-
 
191
			userRepository.persist(user);
177
			cookiesProcessor.removeCookies(request, response);
192
			cookiesProcessor.removeCookies(request, response);
178
			LOGGER.info("Logout is successfull, should be redirect to /login");
193
			LOGGER.info("Logout is successfull, should be redirect to /login");
179
			return "redirect:/login";
194
			return "redirect:/login";
180
		}catch(ProfitMandiBusinessException profitMandiBusinessException){
195
		}catch(ProfitMandiBusinessException profitMandiBusinessException){
181
			LOGGER.info("Error occured while removing requested cookies, should be redirect to /login");
196
			LOGGER.info("Error occured while removing requested cookies, should be redirect to /login");
182
			return "redirect:/login";
197
			return "redirect:/login";
183
		}
198
		}
184
	}
199
	}
185
	
200
	
186
	
-
 
187
	
-
 
188
}
201
}