|
@@ -18,6 +18,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
|
import org.springframework.web.servlet.ModelAndView;
|
|
import org.springframework.web.servlet.ModelAndView;
|
|
|
|
|
|
|
|
|
|
+import javax.servlet.http.HttpServletRequest;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
import java.io.IOException;
|
|
import java.io.IOException;
|
|
|
import java.time.Duration;
|
|
import java.time.Duration;
|
|
@@ -52,7 +53,7 @@ public class QywxAuthController {
|
|
|
@RequestMapping(value = "/api/authorize")
|
|
@RequestMapping(value = "/api/authorize")
|
|
|
public ModelAndView authorize(@RequestParam(value = "code") String code, @RequestParam(value = "agent") String agent,
|
|
public ModelAndView authorize(@RequestParam(value = "code") String code, @RequestParam(value = "agent") String agent,
|
|
|
@RequestParam(value = "master", required = false) String master,
|
|
@RequestParam(value = "master", required = false) String master,
|
|
|
- @RequestParam(value = "url") String url, HttpServletResponse response) throws IOException {
|
|
|
|
|
|
|
+ @RequestParam(value = "url") String url, HttpServletRequest request, HttpServletResponse response) throws IOException {
|
|
|
DataCenter dataCenter = DataCenter.INSTANCE;
|
|
DataCenter dataCenter = DataCenter.INSTANCE;
|
|
|
if (null == dataCenter) {
|
|
if (null == dataCenter) {
|
|
|
return new ModelAndView("/error");
|
|
return new ModelAndView("/error");
|
|
@@ -81,6 +82,10 @@ public class QywxAuthController {
|
|
|
return new ModelAndView("/error");
|
|
return new ModelAndView("/error");
|
|
|
}
|
|
}
|
|
|
QywxAgent uasAgent = agentService.findByCode("Uas");
|
|
QywxAgent uasAgent = agentService.findByCode("Uas");
|
|
|
|
|
+ QywxAgent UasProdAgent = agentService.findByCode("UasProd");
|
|
|
|
|
+ if(request.getRequestURL().indexOf(uasAgent.getOuterUrl()) < 0) {
|
|
|
|
|
+ uasAgent = UasProdAgent;
|
|
|
|
|
+ }
|
|
|
redisTemplate.opsForValue().set(code, employee.getEm_id(), Duration.ofMinutes(1));
|
|
redisTemplate.opsForValue().set(code, employee.getEm_id(), Duration.ofMinutes(1));
|
|
|
response.sendRedirect(String.format("%sopen/authorize.action?token=%s&master=%s&url=%s",
|
|
response.sendRedirect(String.format("%sopen/authorize.action?token=%s&master=%s&url=%s",
|
|
|
uasAgent.getOuterUrl(), code, master == null ? "" : master, url));
|
|
uasAgent.getOuterUrl(), code, master == null ? "" : master, url));
|