Commit b705bc48 authored by 曾水平's avatar 曾水平

多环境配置

parent ef6c1beb
...@@ -7,13 +7,14 @@ import cn.com.duiba.jdactivity.developer.jd.domain.JosParameters; ...@@ -7,13 +7,14 @@ import cn.com.duiba.jdactivity.developer.jd.domain.JosParameters;
import cn.com.duiba.jdactivity.developer.jd.utils.AccessTokenUtils; import cn.com.duiba.jdactivity.developer.jd.utils.AccessTokenUtils;
import cn.com.duiba.jdactivity.developer.jd.utils.ApiUtil; import cn.com.duiba.jdactivity.developer.jd.utils.ApiUtil;
import cn.com.duiba.jdactivity.developer.jd.utils.LoginUtils; import cn.com.duiba.jdactivity.developer.jd.utils.LoginUtils;
import cn.com.duiba.jdactivity.dto.TbShopAccessTokenDto;
import com.jd.open.api.sdk.domain.seller.ShopSafService.response.query.ShopJosResult; import com.jd.open.api.sdk.domain.seller.ShopSafService.response.query.ShopJosResult;
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.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping; 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.bind.annotation.RestController;
import javax.annotation.Resource; import javax.annotation.Resource;
...@@ -23,10 +24,10 @@ import javax.annotation.Resource; ...@@ -23,10 +24,10 @@ import javax.annotation.Resource;
* @author zsp (zengshuiping@duiba.com.cn) * @author zsp (zengshuiping@duiba.com.cn)
* @date 2021/5/13 13:58 * @date 2021/5/13 13:58
*/ */
@RestController @Controller
@RequestMapping("/shop") @RequestMapping("/app")
public class ShopController { public class AppController {
public static final Logger LOGGER = LoggerFactory.getLogger(ShopController.class); public static final Logger LOGGER = LoggerFactory.getLogger(AppController.class);
@Resource @Resource
private AccessTokenUtils accessTokenUtils; private AccessTokenUtils accessTokenUtils;
...@@ -34,25 +35,32 @@ public class ShopController { ...@@ -34,25 +35,32 @@ public class ShopController {
@Resource @Resource
private ApiUtil apiUtil; private ApiUtil apiUtil;
/**
* 应用插件启动唤起页
*/
@RequestMapping("/login") @RequestMapping("/login")
public String login( public String login(
String code, String code,
String state) { @RequestParam(required = false) String state) {
LOGGER.info("login,code={},state={}", code, state); LOGGER.info("login,code={},state={}", code, state);
if (StringUtils.isAnyBlank(code, state)) { if (StringUtils.isAnyBlank(code)) {
return "参数缺失"; return "参数缺失";
} }
JosParameters josParameters = LoginUtils.getStateParam(state); // 获取appKey
String appKey = AppEnum.DUIBA.getAppKey();
if (StringUtils.isBlank(state)) {
JosParameters josParameters = LoginUtils.getStateParam(state);
appKey = josParameters.getApp_key();
}
AppEnum appEnum = AppEnum.getAppByAppKey(josParameters.getApp_key()); AppEnum appEnum = AppEnum.getAppByAppKey(appKey);
if (appEnum == null) { if (appEnum == null) {
return "appKey参数不合法"; return "appKey参数不合法";
} }
AccessTokenResponse accessTokenByCode = accessTokenUtils.getAccessTokenByCode(appEnum, code); AccessTokenResponse accessTokenByCode = accessTokenUtils.getAccessTokenByCode(appEnum, code);
if (!accessTokenByCode.isOk()) { if (!accessTokenByCode.isOk()) {
Result<ShopJosResult> shopJosResultResult = apiUtil.venderShopQuery(appEnum, accessTokenByCode.getAccess_token()); Result<ShopJosResult> shopJosResultResult = apiUtil.venderShopQuery(appEnum, accessTokenByCode.getAccess_token());
if (shopJosResultResult.getSuccess()) { if (shopJosResultResult.getSuccess()) {
ShopJosResult data = shopJosResultResult.getData(); ShopJosResult data = shopJosResultResult.getData();
...@@ -63,34 +71,13 @@ public class ShopController { ...@@ -63,34 +71,13 @@ public class ShopController {
// 保存入库 // 保存入库
} }
return "/shop/index";
return null;
} }
@RequestMapping("/getShopInfoVO") @RequestMapping("/getShopInfoVO")
public String getShopInfoVO( public String getShopInfoVO(Long venderId, Long shopId) {
@RequestParam(required = false, defaultValue = "B0F491866BC8C8BA5954B4DFCCF283CC") String appKey, TbShopAccessTokenDto accessToken = accessTokenUtils.getAccessToken(venderId, shopId);
String code,
@RequestParam(required = false) String state) {
if (StringUtils.isBlank(code)) {
return "code参数缺失";
}
AppEnum appEnum = AppEnum.getAppByAppKey(appKey);
if (appEnum == null) {
return "appKey参数不合法";
}
if (StringUtils.isNoneBlank(state)) {
JosParameters josParameters = LoginUtils.getStateParam(state);
}
AccessTokenResponse accessTokenByCode = accessTokenUtils.getAccessTokenByCode(appEnum, code);
if (!accessTokenByCode.isOk()) {
// 保存入库
}
return null; return null;
} }
......
package cn.com.duiba.jdactivity.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @author zsp (zengshuiping@duiba.com.cn)
* @date 2021/5/18 12:51
*/
@Controller
@RequestMapping("/")
public class IndexController {
}
...@@ -13,6 +13,8 @@ import com.alibaba.fastjson.JSONValidator; ...@@ -13,6 +13,8 @@ import com.alibaba.fastjson.JSONValidator;
import com.jd.open.api.sdk.domain.seller.ShopSafService.response.query.ShopJosResult; import com.jd.open.api.sdk.domain.seller.ShopSafService.response.query.ShopJosResult;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import javax.annotation.Resource; import javax.annotation.Resource;
...@@ -28,6 +30,8 @@ import java.util.TreeMap; ...@@ -28,6 +30,8 @@ import java.util.TreeMap;
*/ */
@Component @Component
public class AccessTokenUtils { public class AccessTokenUtils {
public static final Logger LOGGER = LoggerFactory.getLogger(AccessTokenUtils.class);
private static final String TO_LOGIN_SUFFIX = "/to_login"; private static final String TO_LOGIN_SUFFIX = "/to_login";
private static final String ACCESS_TOKEN_SUFFIX = "/access_token"; private static final String ACCESS_TOKEN_SUFFIX = "/access_token";
private static final String NULL = "null"; private static final String NULL = "null";
...@@ -59,6 +63,8 @@ public class AccessTokenUtils { ...@@ -59,6 +63,8 @@ public class AccessTokenUtils {
String url = UrlUtils.assembleUrl(urlConstants.getOauthUrl() + ACCESS_TOKEN_SUFFIX, param); String url = UrlUtils.assembleUrl(urlConstants.getOauthUrl() + ACCESS_TOKEN_SUFFIX, param);
String s = httpClientUtil.sendGet(url); String s = httpClientUtil.sendGet(url);
LOGGER.info("getAccessTokenByCode,code={},s={}", code, s);
if (StringUtils.isNotBlank(s) if (StringUtils.isNotBlank(s)
&& !StringUtils.equalsIgnoreCase(NULL, s) && !StringUtils.equalsIgnoreCase(NULL, s)
&& JSONValidator.from(s).validate()) { && JSONValidator.from(s).validate()) {
......
#MySQL配置 注意这是内网地址
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/mydb?serverTimezone=UTC&useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=utf-8
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#redis 注意这是内网地址
spring.redis.host=localhost
spring.redis.timeout=1000
spring.redis.jedis.pool.max-wait=100
spring.redis.jedis.pool.min-idle=1
#MySQL配置 注意这是内网地址
spring.datasource.url=jdbc:mysql://mysql-cn-north-1-5321aee1b70d421c.rds.jdcloud.com:3306?serverTimezone=UTC&useSSL=false&allowPublicKeyRetrieval=true
spring.datasource.username=jd_activity
spring.datasource.password=kP6oWdeYU78tHee70bcs
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#redis 注意这是内网地址
spring.redis.host=redis-x4n822igaxnu-proxy-nlb.jvessel-open-hb.jdcloud.com
spring.redis.password=kP6oWdeYU78tHee
spring.redis.timeout=1000
spring.redis.jedis.pool.max-wait=100
spring.redis.jedis.pool.min-idle=1
spring.application.name=jd-activity spring.application.name=jd-activity
spring.profiles.active=dev spring.profiles.active=prod
#先排除一些autoconfigure #先排除一些autoconfigure
spring.autoconfigure.exclude= spring.autoconfigure.exclude=
# tomcat # tomcat
...@@ -7,25 +7,10 @@ server.port=8080 ...@@ -7,25 +7,10 @@ server.port=8080
server.tomcat.accesslog.enabled=false server.tomcat.accesslog.enabled=false
server.tomcat.uri-encoding=UTF-8 server.tomcat.uri-encoding=UTF-8
server.tomcat.threads.max=300 server.tomcat.threads.max=300
#MySQL配置 注意这是内网地址
#spring.datasource.url=jdbc:mysql://mysql-cn-north-1-5321aee1b70d421c.rds.jdcloud.com:3306?serverTimezone=UTC&useSSL=false&allowPublicKeyRetrieval=true
#spring.datasource.username=jd_activity
#spring.datasource.password=kP6oWdeYU78tHee70bcs
#jdbc:mysql://${MYSQL_HOST:localhost}:3306/db_example
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/mydb?serverTimezone=UTC&useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=utf-8
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# logging # logging
logging.file.path=${user.home}/logs/${spring.application.name} logging.file.path=${user.home}/logs/${spring.application.name}
# MyBatis 配置 # MyBatis 配置
mybatis.config-location=classpath:mybatis/mybatis-config.xml mybatis.config-location=classpath:mybatis/mybatis-config.xml
mybatis.mapper-locations=classpath:mybatis/*/*.xml mybatis.mapper-locations=classpath:mybatis/*/*.xml
#redis 注意这是内网地址
#spring.redis.host=redis-x4n822igaxnu-proxy-nlb.jvessel-open-hb.jdcloud.com
#spring.redis.password=kP6oWdeYU78tHee
spring.redis.host=localhost
spring.redis.timeout=1000
spring.redis.jedis.pool.max-wait=100
spring.redis.jedis.pool.min-idle=1
...@@ -91,7 +91,7 @@ ...@@ -91,7 +91,7 @@
function getToken() { function getToken() {
console.log("获取token", window.location.href) console.log("获取token", window.location.href)
JSSDK.Isv.requestIsvToken({ JSSDK.Isv.requestIsvToken({
url: window.location.href url: 'https://duiba-isv.isvjcloud.com'
}, callBackToken); }, callBackToken);
} }
......
package cn.com.duiba.jdactivity; package cn.com.duiba.jdactivity;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
import org.springframework.http.MediaType; import org.springframework.http.MediaType;
...@@ -22,7 +21,7 @@ public class ControllerTest extends BaseTest { ...@@ -22,7 +21,7 @@ public class ControllerTest extends BaseTest {
@Autowired @Autowired
private MockMvc mvc; private MockMvc mvc;
@Test // @Test
public void getHello() throws Exception { public void getHello() throws Exception {
mvc.perform(MockMvcRequestBuilders.get("/") mvc.perform(MockMvcRequestBuilders.get("/")
.accept(MediaType.APPLICATION_JSON)) .accept(MediaType.APPLICATION_JSON))
......
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