Commit 4bf4f957 authored by sam.x.wang's avatar sam.x.wang

提交sso问题

parent c47bd1cc
...@@ -116,6 +116,10 @@ public class IndexController { ...@@ -116,6 +116,10 @@ public class IndexController {
try { try {
logger.info("jumpto=" + jumpto + "code=" + code); logger.info("jumpto=" + jumpto + "code=" + code);
String ticketStr = getTicket(code); String ticketStr = getTicket(code);
Cookie ddTicket = new Cookie("ddTicket", URLEncoder.encode(ticketStr, "UTF-8"));
ddTicket.setPath("/");
ddTicket.setMaxAge(18000);
response.addCookie(ddTicket);
response.sendRedirect(jumpto + "?code=" + code + "&ticketStr=" + ticketStr); response.sendRedirect(jumpto + "?code=" + code + "&ticketStr=" + ticketStr);
} catch (Exception e) { } catch (Exception e) {
logger.error("ddSSOCallback error", e); logger.error("ddSSOCallback error", e);
...@@ -212,7 +216,7 @@ public class IndexController { ...@@ -212,7 +216,7 @@ public class IndexController {
public String getCookie( HttpServletRequest request, public String getCookie( HttpServletRequest request,
HttpServletResponse response) { HttpServletResponse response) {
orangeHeapService.getDDTicketByCookie(); orangeHeapService.getDDTicketByCookie(request);
return null; return null;
} }
......
...@@ -4,8 +4,6 @@ package pwc.taxtech.atms.web.controller; ...@@ -4,8 +4,6 @@ package pwc.taxtech.atms.web.controller;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.ResponseBody;
...@@ -14,7 +12,7 @@ import pwc.taxtech.atms.dto.ApiResultDto; ...@@ -14,7 +12,7 @@ import pwc.taxtech.atms.dto.ApiResultDto;
import pwc.taxtech.atms.web.service.OrangeHeapService; import pwc.taxtech.atms.web.service.OrangeHeapService;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.Optional; import javax.servlet.http.HttpServletRequest;
@RestController @RestController
@RequestMapping("/OrangeHeap") @RequestMapping("/OrangeHeap")
...@@ -36,94 +34,94 @@ public class OrangeHeapController { ...@@ -36,94 +34,94 @@ public class OrangeHeapController {
@ResponseBody @ResponseBody
@GetMapping("getTableauTaxCategoryUnreturnedTax") @GetMapping("getTableauTaxCategoryUnreturnedTax")
public ApiResultDto getTableauTaxCategoryUnreturnedTax() { public ApiResultDto getTableauTaxCategoryUnreturnedTax(HttpServletRequest request) {
logger.info("进入税种未返还税金分析=~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); logger.info("进入税种未返还税金分析=~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
return ApiResultDto.success(tableauService.getTableauTaxCategoryUnreturnedTax().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauTaxCategoryUnreturnedTax(request).orElse(StringUtils.EMPTY));
} }
@ResponseBody @ResponseBody
@GetMapping("getTableauDistrictUnreturnedTax") @GetMapping("getTableauDistrictUnreturnedTax")
public ApiResultDto getTableauDistrictUnreturnedTax() { public ApiResultDto getTableauDistrictUnreturnedTax(HttpServletRequest request) {
logger.info("地区未返还税金分析=~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); logger.info("地区未返还税金分析=~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
return ApiResultDto.success(tableauService.getTableauDistrictUnreturnedTax().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauDistrictUnreturnedTax(request).orElse(StringUtils.EMPTY));
} }
@ResponseBody @ResponseBody
@GetMapping("getTableauUnreturnedAndReturnedTax") @GetMapping("getTableauUnreturnedAndReturnedTax")
public ApiResultDto getTableauUnreturnedAndReturnedTax() { public ApiResultDto getTableauUnreturnedAndReturnedTax(HttpServletRequest request) {
return ApiResultDto.success(tableauService.getTableauUnreturnedAndReturnedTax().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauUnreturnedAndReturnedTax(request).orElse(StringUtils.EMPTY));
} }
@ResponseBody @ResponseBody
@GetMapping("getTableauCostAnalysis") @GetMapping("getTableauCostAnalysis")
public ApiResultDto getTableauCostAnalysis() { public ApiResultDto getTableauCostAnalysis(HttpServletRequest request) {
return ApiResultDto.success(tableauService.getTableauCostAnalysis().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauCostAnalysis(request).orElse(StringUtils.EMPTY));
} }
@ResponseBody @ResponseBody
@GetMapping("getTableauDistrictProfitAndLoss") @GetMapping("getTableauDistrictProfitAndLoss")
public ApiResultDto getTableauDistrictProfitAndLoss() { public ApiResultDto getTableauDistrictProfitAndLoss(HttpServletRequest request) {
return ApiResultDto.success(tableauService.getTableauDistrictProfitAndLoss().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauDistrictProfitAndLoss(request).orElse(StringUtils.EMPTY));
} }
@ResponseBody @ResponseBody
@GetMapping("getTableauCompanyProfitAndLoss") @GetMapping("getTableauCompanyProfitAndLoss")
public ApiResultDto getTableauCompanyProfitAndLoss() { public ApiResultDto getTableauCompanyProfitAndLoss(HttpServletRequest request) {
return ApiResultDto.success(tableauService.getTableauCompanyProfitAndLoss().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauCompanyProfitAndLoss(request).orElse(StringUtils.EMPTY));
} }
@ResponseBody @ResponseBody
@GetMapping("getTableauDriverAndEmployee") @GetMapping("getTableauDriverAndEmployee")
public ApiResultDto getTableauDriverAndEmployee() { public ApiResultDto getTableauDriverAndEmployee(HttpServletRequest request) {
return ApiResultDto.success(tableauService.getTableauDriverAndEmployee().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauDriverAndEmployee(request).orElse(StringUtils.EMPTY));
} }
@ResponseBody @ResponseBody
@GetMapping("getTableauGmvAndSubsidy") @GetMapping("getTableauGmvAndSubsidy")
public ApiResultDto getTableauGmvAndSubsidy() { public ApiResultDto getTableauGmvAndSubsidy(HttpServletRequest request) {
return ApiResultDto.success(tableauService.getTableauGmvAndSubsidy().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauGmvAndSubsidy(request).orElse(StringUtils.EMPTY));
} }
@ResponseBody @ResponseBody
@GetMapping("getTableauFileArrangement") @GetMapping("getTableauFileArrangement")
public ApiResultDto getTableauFileArrangement() { public ApiResultDto getTableauFileArrangement(HttpServletRequest request) {
return ApiResultDto.success(tableauService.getTableauFileArrangement().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauFileArrangement(request).orElse(StringUtils.EMPTY));
} }
@ResponseBody @ResponseBody
@GetMapping("getTableauGlobalOverview") @GetMapping("getTableauGlobalOverview")
public ApiResultDto getTableauGlobalOverview() { public ApiResultDto getTableauGlobalOverview(HttpServletRequest request) {
return ApiResultDto.success(tableauService.getTableauGlobalOverview().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauGlobalOverview(request).orElse(StringUtils.EMPTY));
} }
@ResponseBody @ResponseBody
@GetMapping("getTableauGlobalBusiness") @GetMapping("getTableauGlobalBusiness")
public ApiResultDto getTableauGlobalBusiness() { public ApiResultDto getTableauGlobalBusiness(HttpServletRequest request) {
return ApiResultDto.success(tableauService.getTableauGlobalBusiness().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauGlobalBusiness(request).orElse(StringUtils.EMPTY));
} }
@ResponseBody @ResponseBody
@GetMapping("getTableauMexicanTax") @GetMapping("getTableauMexicanTax")
public ApiResultDto getTableauMexicanTax() { public ApiResultDto getTableauMexicanTax(HttpServletRequest request) {
return ApiResultDto.success(tableauService.getTableauMexicanTax().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauMexicanTax(request).orElse(StringUtils.EMPTY));
} }
@ResponseBody @ResponseBody
@GetMapping("getTableauAustralianTax") @GetMapping("getTableauAustralianTax")
public ApiResultDto getTableauAustralianTax() { public ApiResultDto getTableauAustralianTax(HttpServletRequest request) {
return ApiResultDto.success(tableauService.getTableauAustralianTax().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauAustralianTax(request).orElse(StringUtils.EMPTY));
} }
@ResponseBody @ResponseBody
@GetMapping("getTableauBrazilianTax") @GetMapping("getTableauBrazilianTax")
public ApiResultDto getTableauBrazilianTax() { public ApiResultDto getTableauBrazilianTax(HttpServletRequest request) {
return ApiResultDto.success(tableauService.getTableauBrazilianTax().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauBrazilianTax(request).orElse(StringUtils.EMPTY));
} }
@ResponseBody @ResponseBody
@GetMapping("getTableauOtherTaxAnalysis") @GetMapping("getTableauOtherTaxAnalysis")
public ApiResultDto getTableauOtherTaxAnalysis() { public ApiResultDto getTableauOtherTaxAnalysis(HttpServletRequest request) {
return ApiResultDto.success(tableauService.getTableauOtherTaxAnalysis().orElse(StringUtils.EMPTY)); return ApiResultDto.success(tableauService.getTableauOtherTaxAnalysis(request).orElse(StringUtils.EMPTY));
} }
} }
...@@ -9,13 +9,15 @@ import org.apache.http.impl.client.CloseableHttpClient; ...@@ -9,13 +9,15 @@ import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients; import org.apache.http.impl.client.HttpClients;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.Assert; import org.springframework.util.Assert;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import pwc.taxtech.atms.common.DDUserInfoRes; import pwc.taxtech.atms.common.DDUserInfoRes;
import pwc.taxtech.atms.common.HttpUtil; import pwc.taxtech.atms.common.HttpUtil;
import pwc.taxtech.atms.web.OrangeHeapConfig; import pwc.taxtech.atms.web.OrangeHeapConfig;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.Cookie; import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
...@@ -33,11 +35,6 @@ public class OrangeHeapService { ...@@ -33,11 +35,6 @@ public class OrangeHeapService {
private static Logger logger = LoggerFactory.getLogger(OrangeHeapService.class); private static Logger logger = LoggerFactory.getLogger(OrangeHeapService.class);
@Autowired
private HttpServletRequest request;
@Autowired
private HttpServletResponse response;
@Value("${get_user_info_url}") @Value("${get_user_info_url}")
private String getUserInfoUrl; private String getUserInfoUrl;
...@@ -53,12 +50,12 @@ public class OrangeHeapService { ...@@ -53,12 +50,12 @@ public class OrangeHeapService {
CloseableHttpClient httpClient = null; CloseableHttpClient httpClient = null;
try { try {
String ticketUrl = String.format(systemConfig.getTableauGetTicket(), username); String ticketUrl = String.format(systemConfig.getTableauGetTicket(), username);
logger.info("进去获取tableau的url"+ticketUrl); logger.info("进去获取tableau的url" + ticketUrl);
httpClient = HttpClients.createDefault(); httpClient = HttpClients.createDefault();
HttpPost httpPost = new HttpPost(ticketUrl); HttpPost httpPost = new HttpPost(ticketUrl);
HttpResponse httpResponse = httpClient.execute(httpPost); HttpResponse httpResponse = httpClient.execute(httpPost);
String response = IOUtils.toString(httpResponse.getEntity().getContent(), "UTF-8"); String response = IOUtils.toString(httpResponse.getEntity().getContent(), "UTF-8");
logger.info("获取tableau的结果"+response); logger.info("获取tableau的结果" + response);
return StringUtils.equals(response, "-1") ? Optional.empty() : Optional.of(response); return StringUtils.equals(response, "-1") ? Optional.empty() : Optional.of(response);
} catch (Exception e) { } catch (Exception e) {
logger.error("getTicket error.", e); logger.error("getTicket error.", e);
...@@ -82,102 +79,102 @@ public class OrangeHeapService { ...@@ -82,102 +79,102 @@ public class OrangeHeapService {
// } // }
public Optional<String> getTableauTaxCategoryUnreturnedTax() { public Optional<String> getTableauTaxCategoryUnreturnedTax(HttpServletRequest request) {
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauTaxCategoryUnreturnedTax(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauTaxCategoryUnreturnedTax(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
public Optional<String> getTableauDistrictUnreturnedTax() { public Optional<String> getTableauDistrictUnreturnedTax(HttpServletRequest request) {
//TODO //TODO
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauDistrictUnreturnedTax(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauDistrictUnreturnedTax(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
public Optional<String> getTableauUnreturnedAndReturnedTax() { public Optional<String> getTableauUnreturnedAndReturnedTax(HttpServletRequest request) {
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauUnreturnedAndReturnedTax(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauUnreturnedAndReturnedTax(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
public Optional<String> getTableauCostAnalysis() { public Optional<String> getTableauCostAnalysis(HttpServletRequest request) {
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauCostAnalysis(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauCostAnalysis(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
public Optional<String> getTableauDistrictProfitAndLoss() { public Optional<String> getTableauDistrictProfitAndLoss(HttpServletRequest request) {
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauDistrictProfitAndLoss(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauDistrictProfitAndLoss(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
public Optional<String> getTableauCompanyProfitAndLoss() { public Optional<String> getTableauCompanyProfitAndLoss(HttpServletRequest request) {
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauCompanyProfitAndLoss(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauCompanyProfitAndLoss(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
public Optional<String> getTableauDriverAndEmployee() { public Optional<String> getTableauDriverAndEmployee(HttpServletRequest request) {
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauDriverAndEmployee(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauDriverAndEmployee(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
public Optional<String> getTableauGmvAndSubsidy() { public Optional<String> getTableauGmvAndSubsidy(HttpServletRequest request) {
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauGmvAndSubsidy(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauGmvAndSubsidy(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
public Optional<String> getTableauFileArrangement() { public Optional<String> getTableauFileArrangement(HttpServletRequest request) {
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauFileArrangement(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauFileArrangement(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
public Optional<String> getTableauGlobalOverview() { public Optional<String> getTableauGlobalOverview(HttpServletRequest request) {
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauGlobalOverview(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauGlobalOverview(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
public Optional<String> getTableauGlobalBusiness() { public Optional<String> getTableauGlobalBusiness(HttpServletRequest request) {
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauGlobalBusiness(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauGlobalBusiness(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
public Optional<String> getTableauMexicanTax() { public Optional<String> getTableauMexicanTax(HttpServletRequest request) {
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauMexicanTax(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauMexicanTax(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
public Optional<String> getTableauAustralianTax() { public Optional<String> getTableauAustralianTax(HttpServletRequest request) {
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauAustralianTax(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauAustralianTax(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
public Optional<String> getTableauBrazilianTax() { public Optional<String> getTableauBrazilianTax(HttpServletRequest request) {
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauBrazilianTax(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauBrazilianTax(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
public Optional<String> getTableauOtherTaxAnalysis() { public Optional<String> getTableauOtherTaxAnalysis(HttpServletRequest request) {
Optional<String> optional = Optional.of(getDDUserName()); Optional<String> optional = Optional.of(getDDUserName(request));
return optional.map(s -> String.format(systemConfig.getTableauOtherTaxAnalysis(), getTicket(s).orElse(StringUtils.EMPTY))); return optional.map(s -> String.format(systemConfig.getTableauOtherTaxAnalysis(), getTicket(s).orElse(StringUtils.EMPTY)));
} }
//sso通过cookie获取登录的DD用户 //sso通过cookie获取登录的DD用户
public String getDDUserName() { public String getDDUserName(HttpServletRequest request) {
logger.info("进入 获取DD user的方法~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); logger.info("进入 获取DD user的方法~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
String ticket = getDDTicketByCookie(); String ticket = getDDTicketByCookie( request);
logger.info("ticket=~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"+ticket); logger.info("ticket=~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" + ticket);
return findUsernameByDDTicket(ticket); return findUsernameByDDTicket(ticket);
} }
//通過cookie 取出ddTicket //通過cookie 取出ddTicket
public String getDDTicketByCookie() { public String getDDTicketByCookie(HttpServletRequest request) {
logger.info("进去获取cookie方法"); logger.info("进去获取cookie方法");
Map<String,Cookie> cookieMap = ReadCookieMap(); Map<String, Cookie> cookieMap = ReadCookieMap( request);
//TODO 修改token的名字到配置文件,判断ddTicket是否过期 //TODO 修改token的名字到配置文件,判断ddTicket是否过期
if(cookieMap.containsKey("ddTicket")){ if (cookieMap.containsKey("ddTicket")) {
logger.info("ddTicket=~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"+Optional.ofNullable(cookieMap.get("ddTicket")).map(s->s.getValue()).orElse("")); logger.info("ddTicket=~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" + Optional.ofNullable(cookieMap.get("ddTicket")).map(s -> s.getValue()).orElse(""));
return Optional.ofNullable(cookieMap.get("ddTicket")).map(s->s.getValue()).orElse(""); return Optional.ofNullable(cookieMap.get("ddTicket")).map(s -> s.getValue()).orElse("");
}else{ } else {
logger.info("code=~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"+Optional.ofNullable(cookieMap.get("code")).map(z->z.getValue()).orElse("")); logger.info("code=~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" + Optional.ofNullable(cookieMap.get("code")).map(z -> z.getValue()).orElse(""));
return getDDTicket(Optional.ofNullable(cookieMap.get("code")).map(z->z.getValue()).orElse("")); return getDDTicket(Optional.ofNullable(cookieMap.get("code")).map(z -> z.getValue()).orElse(""));
} }
} }
...@@ -205,38 +202,41 @@ public class OrangeHeapService { ...@@ -205,38 +202,41 @@ public class OrangeHeapService {
/** /**
* 将cookie封装到Map里面 * 将cookie封装到Map里面
*
* @return * @return
*/ */
private Map<String,Cookie> ReadCookieMap(){ private Map<String, Cookie> ReadCookieMap(HttpServletRequest request) {
Map<String,Cookie> cookieMap = new HashMap<String,Cookie>(); Map<String, Cookie> cookieMap = new HashMap<String, Cookie>();
Cookie[] cookies = request.getCookies(); Cookie[] cookies = request.getCookies();
if(null!=cookies){ if (null != cookies) {
for(Cookie cookie : cookies){ for (Cookie cookie : cookies) {
cookieMap.put(cookie.getName(), cookie); cookieMap.put(cookie.getName(), cookie);
} }
} }
return cookieMap; return cookieMap;
} }
//copy過來的 沒對象 //copy過來的 沒對象
public String getDDTicket(String code) { public String getDDTicket(String code) {
logger.info("code=~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"+code); logger.info("code=~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" + code);
try{ try {
JSONObject object; JSONObject object;
String ddResponse = HttpUtil.post(getUserInfoUrl + "check_code", "code=" + code + "&app_key=" + appKey+ "&app_id=" + appId, "application/x-www-form-urlencoded", "UTF-8", 10000, 10000); String ddResponse = HttpUtil.post(getUserInfoUrl + "check_code", "code=" + code + "&app_key=" + appKey + "&app_id=" + appId, "application/x-www-form-urlencoded", "UTF-8", 10000, 10000);
object = JSONObject.parseObject(ddResponse); object = JSONObject.parseObject(ddResponse);
Map<String, Object> res = object.getInnerMap(); Map<String, Object> res = object.getInnerMap();
int errno = (int) res.get("errno"); int errno = (int) res.get("errno");
if (errno != 0) { if (errno != 0) {
logger.warn(String.format("DDTicket get Failed:[%s]", object.toJSONString())); logger.warn(String.format("DDTicket get Failed:[%s]", object.toJSONString()));
return null; return null;
}else{ } else {
Map<String, String> dataMap = (Map)res.get("data"); Map<String, String> dataMap = (Map) res.get("data");
Cookie cookie=new Cookie("ddTicket",dataMap.get("ticket")); Cookie cookie = new Cookie("ddTicket", dataMap.get("ticket"));
HttpServletResponse response = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getResponse();
response.addCookie(cookie); response.addCookie(cookie);
return dataMap.get("ticket"); return dataMap.get("ticket");
} }
}catch (Exception e){ } catch (Exception e) {
logger.error(String.format("通过code:[%s]获取Ticket失败",code)); logger.error(String.format("通过code:[%s]获取Ticket失败", code));
} }
return null; return null;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment