Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
J
jd-activity
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
曾水平
jd-activity
Commits
e7dadea9
Commit
e7dadea9
authored
Nov 17, 2021
by
郝增润
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
兼容微信端
parent
a5eba71a
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
393 additions
and
3 deletions
+393
-3
Open2DuibaController.java
...com/duiba/jdactivity/controller/Open2DuibaController.java
+5
-2
TaobaoController.java
.../cn/com/duiba/jdactivity/controller/TaobaoController.java
+387
-0
application.properties
src/main/resources/application.properties
+1
-1
No files found.
src/main/java/cn/com/duiba/jdactivity/controller/Open2DuibaController.java
View file @
e7dadea9
...
@@ -180,12 +180,10 @@ public class Open2DuibaController {
...
@@ -180,12 +180,10 @@ public class Open2DuibaController {
try
{
try
{
LOGGER
.
info
(
"autologin,autologinParam={}"
,
JSON
.
toJSONString
(
autologinParam
));
LOGGER
.
info
(
"autologin,autologinParam={}"
,
JSON
.
toJSONString
(
autologinParam
));
String
token
=
autologinParam
.
getToken
();
String
token
=
autologinParam
.
getToken
();
// String source = JdTokenSourceEnum.JD.getSource();
String
source
=
Optional
.
ofNullable
(
autologinParam
.
getSource
()).
orElse
(
JdTokenSourceEnum
.
JD
.
getSource
());
String
source
=
Optional
.
ofNullable
(
autologinParam
.
getSource
()).
orElse
(
JdTokenSourceEnum
.
JD
.
getSource
());
LOGGER
.
info
(
"source,source={}"
,
source
);
LOGGER
.
info
(
"source,source={}"
,
source
);
String
redirectUrl
=
autologinParam
.
getRedirectUrl
();
String
redirectUrl
=
autologinParam
.
getRedirectUrl
();
String
env
=
autologinParam
.
getEnv
();
String
env
=
autologinParam
.
getEnv
();
Long
venderId
=
autologinParam
.
getVenderId
();
Long
venderId
=
autologinParam
.
getVenderId
();
Long
shopId
=
autologinParam
.
getShopId
();
Long
shopId
=
autologinParam
.
getShopId
();
if
(
venderId
==
null
&&
shopId
==
null
)
{
if
(
venderId
==
null
&&
shopId
==
null
)
{
...
@@ -236,6 +234,11 @@ public class Open2DuibaController {
...
@@ -236,6 +234,11 @@ public class Open2DuibaController {
* 生成免登url
* 生成免登url
*/
*/
private
String
autologin
(
DuibaAppEnum
duibaApp
,
String
uid
,
String
nickName
,
String
avatar
,
String
redirectUrl
,
String
env
,
String
credits
)
{
private
String
autologin
(
DuibaAppEnum
duibaApp
,
String
uid
,
String
nickName
,
String
avatar
,
String
redirectUrl
,
String
env
,
String
credits
)
{
if
(
env
.
equals
(
"taobao"
))
{
return
redirectUrl
+
"&avatar="
+
avatar
+
"&nickname="
+
nickName
+
"&uid="
+
uid
;
}
CreditTool
tool
=
new
CreditTool
(
duibaApp
.
getAppKey
(),
duibaApp
.
getAppSecret
());
CreditTool
tool
=
new
CreditTool
(
duibaApp
.
getAppKey
(),
duibaApp
.
getAppSecret
());
Map
<
String
,
String
>
params
=
new
HashMap
<>();
Map
<
String
,
String
>
params
=
new
HashMap
<>();
...
...
src/main/java/cn/com/duiba/jdactivity/controller/TaobaoController.java
0 → 100644
View file @
e7dadea9
package
cn
.
com
.
duiba
.
jdactivity
.
controller
;
import
cn.com.duiba.credits.sdk.SignTool
;
import
cn.com.duiba.jdactivity.common.utils.AESCS7Util
;
import
cn.com.duiba.jdactivity.common.utils.RequestTool
;
import
cn.com.duiba.jdactivity.common.vo.Result
;
import
cn.com.duiba.jdactivity.common.vo.ResultBuilder
;
import
cn.com.duiba.jdactivity.developer.duiba.DuibaAppEnum
;
import
cn.com.duiba.jdactivity.developer.jd.constant.JdAppEnum
;
import
cn.com.duiba.jdactivity.developer.jd.utils.AccessTokenUtils
;
import
cn.com.duiba.jdactivity.developer.jd.utils.JdApiUtil
;
import
cn.com.duiba.jdactivity.dto.*
;
import
cn.com.duiba.jdactivity.exception.BizException
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.google.common.collect.Maps
;
import
com.jd.open.api.sdk.domain.crm.VenderCustomerClientJsfService.response.getCustomer.EssentialCustomerInfo
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Objects
;
/**
* @ClassName:TaobaoController
* @Description:描述
* @Author:haozengrun
* @Date:2021/11/17 上午9:50
* @Versiion:1.0
*/
@RestController
@RequestMapping
(
"/taobao"
)
public
class
TaobaoController
{
public
static
final
Logger
LOGGER
=
LoggerFactory
.
getLogger
(
TaobaoController
.
class
);
public
static
final
String
ENCRYPT_KEY
=
"JuGi3FCECD1dA2BPL1lCWC=="
;
//默认超时或提前5分钟
private
static
final
long
DEFAULT_EXPIRE_TIME
=
5
*
60
*
1000L
;
@Resource
private
JdApiUtil
jdApiUtil
;
@Resource
private
AccessTokenUtils
accessTokenUtils
;
/**
* 签名校验
*/
private
static
void
signVerify
(
String
method
)
throws
BizException
{
//后期若多个项目调用可改为注解方式
HttpServletRequest
request
=
RequestTool
.
getHttpServletRequest
();
final
Map
<
String
,
String
>
parameterMap
=
RequestTool
.
getRequestParamMap
(
request
);
LOGGER
.
info
(
method
+
"参数:"
+
JSON
.
toJSONString
(
parameterMap
));
//前后5分钟内有效
String
timestamp
=
request
.
getParameter
(
"timestamp"
);
String
sign
=
request
.
getParameter
(
"sign"
);
long
clientTimestamp
=
timestamp
==
null
?
0L
:
Long
.
parseLong
(
timestamp
);
long
now
=
System
.
currentTimeMillis
();
if
(
Math
.
abs
(
now
-
clientTimestamp
)
>
DEFAULT_EXPIRE_TIME
)
{
throw
new
BizException
(
String
.
format
(
"请同步服务器与客户端时间为%s分钟之内"
,
DEFAULT_EXPIRE_TIME
));
}
//验签sign
Map
<
String
,
String
>
signMap
=
new
HashMap
<>(
parameterMap
);
signMap
.
remove
(
"sign"
);
String
correctSign
=
SignTool
.
sign
(
signMap
);
boolean
signVerify
=
Objects
.
equals
(
correctSign
,
sign
);
LOGGER
.
info
(
"signVerify={},verify={},correctSign={}"
,
signVerify
,
correctSign
);
// 二选一,只要有一个正确就通过
if
(!
signVerify
)
{
throw
new
BizException
(
"签名校验不正确"
);
}
}
/**
* 是否关注店铺
*/
@PostMapping
(
"/isFollowShop"
)
public
Result
<
Boolean
>
isFollowShop
(
@RequestParam
String
uid
,
@RequestParam
Long
shopId
,
@RequestParam
Long
venderId
)
{
try
{
uid
=
uid
.
replaceAll
(
" "
,
"+"
);
signVerify
(
"是否关注店铺"
);
TbShopAccessTokenDto
accessToken
=
accessTokenUtils
.
getAccessTokenWithCache
(
venderId
,
shopId
);
JdAppEnum
appEnum
=
JdAppEnum
.
getAppByAppKey
(
accessToken
.
getAppKey
());
String
pin
=
convert2Pin
(
appEnum
,
accessToken
.
getAccessToken
(),
uid
);
Result
<
Boolean
>
follow
=
jdApiUtil
.
isFollowByPinAndVid
(
appEnum
,
pin
,
shopId
);
LOGGER
.
info
(
"是否关注店铺,follow={},uid={},pin={}"
,
JSON
.
toJSONString
(
follow
),
uid
,
pin
);
return
follow
;
}
catch
(
BizException
e
)
{
return
ResultBuilder
.
fail
(
e
.
getMessage
());
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"isFollowShop 异常"
,
e
);
return
ResultBuilder
.
fail
(
"发生异常"
);
}
}
public
static
String
convert2Pin
(
JdAppEnum
appByAppKey
,
String
accessToken
,
String
uid
)
throws
BizException
{
try
{
String
pin
=
AESCS7Util
.
AES256Decrypt
(
uid
,
ENCRYPT_KEY
);
LOGGER
.
info
(
"uid解密,pin={},uid={}"
,
pin
,
uid
);
return
pin
;
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"uid解密失败,uid={}"
,
uid
,
e
);
throw
new
BizException
(
"uid解密失败"
);
}
}
/**
* 关注店铺
*/
@PostMapping
(
"/followShop"
)
public
Result
<
Boolean
>
followShop
(
@RequestParam
String
uid
,
@RequestParam
Long
shopId
,
@RequestParam
Long
venderId
)
{
try
{
uid
=
uid
.
replaceAll
(
" "
,
"+"
);
signVerify
(
"关注店铺"
);
TbShopAccessTokenDto
accessToken
=
accessTokenUtils
.
getAccessTokenWithCache
(
venderId
,
shopId
);
JdAppEnum
appEnum
=
JdAppEnum
.
getAppByAppKey
(
accessToken
.
getAppKey
());
String
pin
=
convert2Pin
(
appEnum
,
accessToken
.
getAccessToken
(),
uid
);
Result
<
Boolean
>
follow
=
jdApiUtil
.
followByPinAndVid
(
appEnum
,
pin
,
shopId
,
accessToken
.
getAccessToken
());
LOGGER
.
info
(
"关注店铺,follow={},uid={},pin={}"
,
JSON
.
toJSONString
(
follow
),
uid
,
pin
);
return
follow
;
}
catch
(
BizException
e
)
{
return
ResultBuilder
.
fail
(
e
.
getMessage
());
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"isMember 异常"
,
e
);
return
ResultBuilder
.
fail
(
"发生异常"
);
}
}
/**
* 是否是会员
*/
@PostMapping
(
"/isMember"
)
public
Result
<
Boolean
>
isMember
(
@RequestParam
String
uid
,
@RequestParam
Long
shopId
,
@RequestParam
Long
venderId
)
{
try
{
uid
=
uid
.
replaceAll
(
" "
,
"+"
);
signVerify
(
"是否是会员"
);
TbShopAccessTokenDto
accessToken
=
accessTokenUtils
.
getAccessTokenWithCache
(
venderId
,
shopId
);
JdAppEnum
appEnum
=
JdAppEnum
.
getAppByAppKey
(
accessToken
.
getAppKey
());
String
pin
=
convert2Pin
(
appEnum
,
accessToken
.
getAccessToken
(),
uid
);
Result
<
EssentialCustomerInfo
>
result
=
jdApiUtil
.
getCustomer
(
appEnum
,
accessToken
.
getAccessToken
(),
pin
);
boolean
isMember
=
result
.
getSuccess
()
&&
result
.
getData
()
!=
null
&&
(
result
.
getData
().
getLevelAtShop
()
!=
null
||
result
.
getData
().
getCustomerPin
()
!=
null
);
LOGGER
.
info
(
"是否是会员,isMember={},uid={},pin={}"
,
isMember
,
uid
,
pin
);
return
ResultBuilder
.
success
(
isMember
);
}
catch
(
BizException
e
)
{
return
ResultBuilder
.
fail
(
e
.
getMessage
());
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"isMember 异常"
,
e
);
return
ResultBuilder
.
fail
(
"发生异常"
);
}
}
private
static
String
getUid
(
String
uid2
)
{
String
uid
=
uid2
;
uid
=
uid
.
replaceAll
(
" "
,
"+"
);
return
uid
;
}
/**
* 发放优惠券
*/
@PostMapping
(
"/sendCouponId"
)
public
Result
<
Boolean
>
sendCouponId
(
@RequestParam
String
uid
,
@RequestParam
Long
couponId
,
@RequestParam
String
uuid
,
@RequestParam
Long
shopId
,
@RequestParam
Long
venderId
)
{
try
{
uid
=
uid
.
replaceAll
(
" "
,
"+"
);
signVerify
(
"发放优惠券"
);
TbShopAccessTokenDto
accessToken
=
accessTokenUtils
.
getAccessTokenWithCache
(
venderId
,
shopId
);
JdAppEnum
appEnum
=
JdAppEnum
.
getAppByAppKey
(
accessToken
.
getAppKey
());
String
pin
=
convert2Pin
(
appEnum
,
accessToken
.
getAccessToken
(),
uid
);
Result
<
Boolean
>
sendCouponResult
=
jdApiUtil
.
pushCoupon
(
appEnum
,
accessToken
.
getAccessToken
(),
couponId
,
pin
,
uuid
);
LOGGER
.
info
(
"发放优惠券,sendCouponResult={},uid={},pin={},uuid={}"
,
JSON
.
toJSONString
(
sendCouponResult
),
uid
,
pin
,
uuid
);
return
sendCouponResult
;
}
catch
(
BizException
e
)
{
return
ResultBuilder
.
fail
(
e
.
getMessage
());
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"发券异常"
,
e
);
return
ResultBuilder
.
fail
(
"发券失败"
);
}
}
/**
* 会员信息,包含首次成为会员的时间、会员等级、总订单金额、总下单次数、客单价、最新订单时间
*/
@PostMapping
(
"/memberInfo"
)
public
Result
<
EssentialCustomerInfo
>
memberInfo
(
@RequestBody
DuibaUserParam
duibaUserParam
)
{
try
{
String
uid
=
getUid
(
duibaUserParam
.
getUid
());
signVerify
(
"会员信息"
);
TbShopAccessTokenDto
accessToken
=
accessTokenUtils
.
getAccessTokenWithCache
(
duibaUserParam
);
JdAppEnum
appEnum
=
JdAppEnum
.
getAppByAppKey
(
accessToken
.
getAppKey
());
String
pin
=
convert2Pin
(
appEnum
,
accessToken
.
getAccessToken
(),
uid
);
Result
<
EssentialCustomerInfo
>
result
=
jdApiUtil
.
getCustomer
(
appEnum
,
accessToken
.
getAccessToken
(),
pin
);
if
(!
result
.
getSuccess
())
{
return
result
;
}
EssentialCustomerInfo
customerInfo
=
result
.
getData
();
boolean
isMember
=
customerInfo
!=
null
&&
(
customerInfo
.
getLevelAtShop
()
!=
null
||
customerInfo
.
getCustomerPin
()
!=
null
);
if
(!
isMember
)
{
return
ResultBuilder
.
success
();
}
LOGGER
.
info
(
"会员信息,customerInfo={},uid={},pin={}"
,
JSON
.
toJSONString
(
customerInfo
),
uid
,
pin
);
return
ResultBuilder
.
success
(
customerInfo
);
}
catch
(
BizException
e
)
{
return
ResultBuilder
.
fail
(
e
.
getMessage
());
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"会员信息异常"
,
e
);
return
ResultBuilder
.
fail
(
"会员信息异常"
);
}
}
/**
* 发放店铺积分
*/
@PostMapping
(
"/sendPoints"
)
public
Result
<
Boolean
>
sendPoints
(
@RequestBody
DuibaSendPointsParam
param
)
{
try
{
String
uid
=
getUid
(
param
.
getUid
());
signVerify
(
"互动积分发放积分"
);
TbShopAccessTokenDto
accessToken
=
accessTokenUtils
.
getAccessTokenWithCache
(
param
);
JdAppEnum
appEnum
=
JdAppEnum
.
getAppByAppKey
(
accessToken
.
getAppKey
());
String
pin
=
convert2Pin
(
appEnum
,
accessToken
.
getAccessToken
(),
uid
);
Result
<
Boolean
>
result
=
jdApiUtil
.
sendPoints
(
appEnum
,
pin
,
param
.
getBusinessId
(),
param
.
getPoints
(),
param
.
getDesc
(),
accessToken
.
getAccessToken
());
LOGGER
.
info
(
"互动积分发放积分,result={},uid={},pin={}"
,
JSON
.
toJSONString
(
result
),
uid
,
pin
);
return
result
;
}
catch
(
BizException
e
)
{
return
ResultBuilder
.
fail
(
e
.
getMessage
());
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"互动积分发放积分,异常"
,
e
);
return
ResultBuilder
.
fail
(
"互动积分发放积分异常"
);
}
}
/**
* 消费店铺积分
*/
@PostMapping
(
"/consumePoints"
)
public
Result
<
Boolean
>
consumePoints
(
@RequestBody
DuibaSendPointsParam
param
)
{
try
{
String
uid
=
getUid
(
param
.
getUid
());
signVerify
(
"互动积分消费积分"
);
TbShopAccessTokenDto
accessToken
=
accessTokenUtils
.
getAccessTokenWithCache
(
param
);
JdAppEnum
appEnum
=
JdAppEnum
.
getAppByAppKey
(
accessToken
.
getAppKey
());
String
pin
=
convert2Pin
(
appEnum
,
accessToken
.
getAccessToken
(),
uid
);
Result
<
Boolean
>
result
=
jdApiUtil
.
consumePoints
(
appEnum
,
pin
,
param
.
getBusinessId
(),
param
.
getPoints
(),
param
.
getDesc
(),
accessToken
.
getAccessToken
());
LOGGER
.
info
(
"互动积分消费积分,result={},uid={},pin={}"
,
JSON
.
toJSONString
(
result
),
uid
,
pin
);
return
result
;
}
catch
(
BizException
e
)
{
return
ResultBuilder
.
fail
(
e
.
getMessage
());
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"互动积分消费积分,异常"
,
e
);
return
ResultBuilder
.
fail
(
"互动积分消费积分异常"
);
}
}
/**
* 获取用户积分值
*/
@PostMapping
(
"/getCustomerPoints"
)
public
Result
<
Long
>
getCustomerPoints
(
@RequestBody
DuibaUserParam
param
)
{
try
{
String
uid
=
getUid
(
param
.
getUid
());
signVerify
(
"获取用户积分"
);
TbShopAccessTokenDto
accessToken
=
accessTokenUtils
.
getAccessTokenWithCache
(
param
);
JdAppEnum
appEnum
=
JdAppEnum
.
getAppByAppKey
(
accessToken
.
getAppKey
());
String
pin
=
convert2Pin
(
appEnum
,
accessToken
.
getAccessToken
(),
uid
);
Result
<
Long
>
result
=
jdApiUtil
.
getCustomerPoints
(
appEnum
,
pin
,
accessToken
.
getAccessToken
());
LOGGER
.
info
(
"获取用户积分,result={},uid={},pin={}"
,
JSON
.
toJSONString
(
result
),
uid
,
pin
);
return
result
;
}
catch
(
BizException
e
)
{
return
ResultBuilder
.
fail
(
e
.
getMessage
());
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"获取用户积分,异常"
,
e
);
return
ResultBuilder
.
fail
(
"获取用户积分异常"
);
}
}
/**
* 通过用户pin加入购物车
*/
@PostMapping
(
"/addCartItemByPin"
)
public
Result
<
Boolean
>
addCartItemByPin
(
@RequestBody
DuibaAddCartParam
param
)
{
try
{
String
uid
=
param
.
getUid
();
Integer
num
=
param
.
getNum
();
String
itemId
=
param
.
getItemId
();
uid
=
uid
.
replaceAll
(
" "
,
"+"
);
signVerify
(
"通过用户pin加入购物车"
);
TbShopAccessTokenDto
accessToken
=
accessTokenUtils
.
getAccessTokenWithCache
(
param
);
JdAppEnum
appEnum
=
JdAppEnum
.
getAppByAppKey
(
accessToken
.
getAppKey
());
String
pin
=
convert2Pin
(
appEnum
,
accessToken
.
getAccessToken
(),
uid
);
Result
<
Boolean
>
result
=
jdApiUtil
.
addCartItemByPin
(
appEnum
,
pin
,
itemId
,
num
,
accessToken
.
getAccessToken
());
LOGGER
.
info
(
"通过用户pin加入购物车,result={}"
,
JSON
.
toJSONString
(
result
));
return
result
;
}
catch
(
BizException
e
)
{
return
ResultBuilder
.
fail
(
e
.
getMessage
());
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"通过用户pin加入购物车,异常"
,
e
);
return
ResultBuilder
.
fail
(
"通过用户pin加入购物车失败"
);
}
}
/**
* 通过用户pin加入购物车
*/
@PostMapping
(
"/sendBean"
)
public
Result
<
Boolean
>
sendBean
(
@RequestBody
DuibaSendBeanParam
param
)
{
try
{
String
uid
=
param
.
getUid
();
uid
=
uid
.
replaceAll
(
" "
,
"+"
);
signVerify
(
"发送京豆"
);
TbShopAccessTokenDto
accessToken
=
accessTokenUtils
.
getAccessTokenWithCache
(
param
);
JdAppEnum
appEnum
=
JdAppEnum
.
getAppByAppKey
(
accessToken
.
getAppKey
());
String
pin
=
convert2Pin
(
appEnum
,
accessToken
.
getAccessToken
(),
uid
);
Result
<
Boolean
>
result
=
jdApiUtil
.
sendBean
(
appEnum
,
accessToken
.
getAccessToken
(),
param
.
getRequestId
(),
param
.
getBeanNum
(),
accessToken
.
getVenderId
(),
param
.
getPlanId
(),
pin
,
param
.
getDesc
());
LOGGER
.
info
(
"发送京豆,result={}"
,
JSON
.
toJSONString
(
result
));
return
result
;
}
catch
(
BizException
e
)
{
return
ResultBuilder
.
fail
(
e
.
getMessage
());
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"发送京豆,异常"
,
e
);
return
ResultBuilder
.
fail
(
"通过用户pin加入购物车失败"
);
}
}
/**
* 关注商品
*/
@PostMapping
(
"/followGood"
)
public
Result
<
Boolean
>
followGood
(
@RequestBody
FollowGoodParam
param
)
{
try
{
String
uid
=
param
.
getUid
();
Long
productId
=
param
.
getProductId
();
uid
=
uid
.
replaceAll
(
" "
,
"+"
);
signVerify
(
"关注商品"
);
TbShopAccessTokenDto
accessToken
=
accessTokenUtils
.
getAccessTokenWithCache
(
param
);
JdAppEnum
appEnum
=
JdAppEnum
.
getAppByAppKey
(
accessToken
.
getAppKey
());
String
pin
=
convert2Pin
(
appEnum
,
accessToken
.
getAccessToken
(),
uid
);
Result
<
Boolean
>
result
=
jdApiUtil
.
followGood
(
appEnum
,
pin
,
productId
,
accessToken
.
getAccessToken
());
LOGGER
.
info
(
"关注商品,result={}"
,
JSON
.
toJSONString
(
result
));
return
result
;
}
catch
(
BizException
e
)
{
return
ResultBuilder
.
fail
(
e
.
getMessage
());
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"关注商品,异常"
,
e
);
return
ResultBuilder
.
fail
(
"关注商品失败"
);
}
}
}
src/main/resources/application.properties
View file @
e7dadea9
spring.application.name
=
jd-activity
spring.application.name
=
jd-activity
spring.profiles.active
=
prod
spring.profiles.active
=
dev
# 先排除一些autoconfigure
# 先排除一些autoconfigure
spring.autoconfigure.exclude
=
spring.autoconfigure.exclude
=
# tomcat
# tomcat
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment