Toggle navigation
Toggle navigation
This project
Loading...
Sign in
YOHOBUY
/
yohobuy-union
·
Commits
Go to a project
GitLab
Go to group
Project
Activity
Files
Commits
Pipelines
0
Builds
0
Graphs
Milestones
Issues
0
Merge Requests
0
Members
Labels
Wiki
Forks
Network
Create a new issue
Download as
Email Patches
Plain Diff
Browse Files
Authored by
ping
9 years ago
Commit
38be4a5e6e8693d7986608d18c7741c7c3801ad7
1 parent
281b96c2
update
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
562 additions
and
335 deletions
common/src/main/java/com/yoho/unions/common/constant/UnionConstant.java
server/src/main/java/com/yoho/unions/server/restapi/ActivateUnionRest.java
server/src/main/java/com/yoho/unions/server/restapi/MainUnionRest.java
server/src/main/java/com/yoho/unions/server/restapi/UnionRest.java
server/src/main/java/com/yoho/unions/server/service/MainUnionService.java
server/src/main/java/com/yoho/unions/server/service/MainUnionService_bak.java
server/src/main/java/com/yoho/unions/server/service/impl/DDServiceImpl.java
server/src/main/java/com/yoho/unions/server/service/impl/GDTServiceImpl.java
web/.settings/org.eclipse.wst.common.component
web/src/main/resources/META-INF/spring/spring-mvc.xml
common/src/main/java/com/yoho/unions/common/constant/UnionConstant.java
0 → 100644
View file @
38be4a5
/**
*
*/
package
com
.
yoho
.
unions
.
common
.
constant
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* 描述:
*
* @author ping.huang
* 2016年3月16日
*/
public
class
UnionConstant
{
/**
* 安卓系统需要实现的联盟
*/
public
static
List
<
String
>
andriodServiceList
=
new
ArrayList
<
String
>();
/**
* iOS系统需要实现的联盟
*/
public
static
List
<
String
>
iOSServiceList
=
new
ArrayList
<
String
>();
static
{
//andriod系统
//iSO系统
iOSServiceList
.
add
(
"dDServiceImpl"
);
}
}
...
...
server/src/main/java/com/yoho/unions/server/restapi/ActivateUnionRest.java
0 → 100644
View file @
38be4a5
/**
*
*/
package
com
.
yoho
.
unions
.
server
.
restapi
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
com.yoho.service.model.union.request.ActivateUnionRequestBO
;
import
com.yoho.service.model.union.request.ActivateUnionRequestVO
;
import
com.yoho.service.model.union.response.ActiveUnionResponseBO
;
import
com.yoho.unions.common.constant.UnionConstant
;
import
com.yoho.unions.common.utils.SpringContextUtil
;
import
com.yoho.unions.server.service.MainUnionService
;
/**
* 描述:
* 激活联盟入口
* @author ping.huang
* 2016年3月16日
*/
@Controller
@RequestMapping
(
"/ActivateUnionRest"
)
public
class
ActivateUnionRest
{
static
Logger
log
=
LoggerFactory
.
getLogger
(
ActivateUnionRest
.
class
);
/**
* 激活联盟
* @param request
* @return
*/
@RequestMapping
(
"/activateUnion"
)
@ResponseBody
public
ActiveUnionResponseBO
activateUnion
(
ActivateUnionRequestVO
vo
)
{
log
.
info
(
"addUnion with param is {}"
,
vo
);
ActivateUnionRequestBO
bo
=
new
ActivateUnionRequestBO
();
BeanUtils
.
copyProperties
(
vo
,
bo
);
MainUnionService
service
=
null
;
//处理安卓的服务
for
(
String
str
:
UnionConstant
.
andriodServiceList
)
{
//捕获异常,不影响后面的联盟
try
{
service
=
SpringContextUtil
.
getBean
(
str
,
MainUnionService
.
class
);
service
.
activeUnion
(
bo
);
}
catch
(
Exception
e
)
{
log
.
warn
(
"addUnion error with param is {}"
,
vo
);
}
}
//处理iOS的服务
for
(
String
str
:
UnionConstant
.
iOSServiceList
)
{
//捕获异常,不影响后面的联盟
try
{
service
=
SpringContextUtil
.
getBean
(
str
,
MainUnionService
.
class
);
service
.
activeUnion
(
bo
);
}
catch
(
Exception
e
)
{
log
.
warn
(
"addUnion error with param is {}"
,
vo
);
}
}
return
new
ActiveUnionResponseBO
(
200
,
"success"
);
}
}
...
...
server/src/main/java/com/yoho/unions/server/restapi/MainUnionRest.java
deleted
100644 → 0
View file @
281b96c
/**
*
*/
package
com
.
yoho
.
unions
.
server
.
restapi
;
import
java.util.Map
;
import
javax.servlet.http.HttpServletRequest
;
import
org.apache.commons.lang3.StringUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
com.alibaba.fastjson.JSONObject
;
import
com.yoho.service.model.union.request.MainUnionRequestBO
;
import
com.yoho.service.model.union.response.ActiveUnionResponseBO
;
import
com.yoho.service.model.union.response.MainUnionResponseBO
;
import
com.yoho.unions.adapter.UnionServiceAdapter
;
import
com.yoho.unions.common.enums.UnionTypeEnum
;
import
com.yoho.unions.common.utils.SpringContextUtil
;
import
com.yoho.unions.server.service.MainUnionService
;
/**
* 描述:
* 统一的联盟的入口
* @author ping.huang
* 2016年3月10日
*/
@Controller
@RequestMapping
(
"/MainUnionRest"
)
public
class
MainUnionRest
{
static
Logger
log
=
LoggerFactory
.
getLogger
(
MainUnionRest
.
class
);
/**
* 添加联盟
* @param req
* @return
*/
@RequestMapping
(
"/addUnion"
)
@ResponseBody
public
JSONObject
addUnion
(
HttpServletRequest
request
)
{
Map
<
String
,
String
[]>
requestMap
=
request
.
getParameterMap
();
log
.
info
(
"enter addunions with param is {}"
,
requestMap
);
String
unionType
=
request
.
getParameter
(
"unionType"
);
log
.
info
(
"addUnion with unionType={}"
,
unionType
);
JSONObject
response
=
new
JSONObject
();
//请求的对象中必须要包含unionType字段,而且该值必须是数字
if
(
StringUtils
.
isEmpty
(
unionType
))
{
response
.
put
(
"msg"
,
"unionType must not be null"
);
response
.
put
(
"isSuccess"
,
false
);
return
response
;
}
//unionType必须是数字
if
(!
unionType
.
matches
(
"\\d+"
))
{
response
.
put
(
"msg"
,
"unionType must be a number"
);
response
.
put
(
"isSuccess"
,
false
);
return
response
;
}
//根据unionType获取具体的实现类
UnionTypeEnum
union
=
UnionServiceAdapter
.
getUnionService
(
Integer
.
parseInt
(
unionType
.
toString
()));
MainUnionService
service
=
null
;
try
{
service
=
SpringContextUtil
.
getBean
(
union
.
getBeanName
(),
MainUnionService
.
class
);
}
catch
(
Exception
e
)
{
log
.
error
(
"getUnionService error with unionType={}"
,
unionType
,
e
);
service
=
null
;
}
if
(
service
==
null
)
{
//该类型的服务不存在
response
.
put
(
"msg"
,
"unionType error"
);
response
.
put
(
"isSuccess"
,
false
);
return
response
;
}
//转换为所需的对象
MainUnionRequestBO
requestBO
=
service
.
toAddRequestBO
(
request
,
union
.
getAddRequestClass
());
log
.
info
(
"addUnion with param is {}"
,
requestBO
);
//调用添加接口
MainUnionResponseBO
responseBO
=
service
.
addUnionInfo
(
requestBO
);
//转换为返回对象
response
=
service
.
toResponse
(
responseBO
);
return
response
;
}
/**
* 激活联盟
* @param request
* @return
*/
@RequestMapping
(
"/activateUnion"
)
@ResponseBody
public
ActiveUnionResponseBO
activateUnion
(
HttpServletRequest
request
)
{
Map
<
String
,
String
[]>
requestMap
=
request
.
getParameterMap
();
log
.
info
(
"enter activateUnion with param is {}"
,
requestMap
);
String
unionType
=
request
.
getParameter
(
"unionType"
);
log
.
info
(
"activateUnion with unionType={}"
,
unionType
);
//请求的对象中必须要包含unionType字段,而且该值必须是数字
if
(
StringUtils
.
isEmpty
(
unionType
))
{
return
new
ActiveUnionResponseBO
(
600
,
"unionType must not be null"
);
}
//unionType必须是数字
if
(!
unionType
.
matches
(
"\\d+"
))
{
return
new
ActiveUnionResponseBO
(
601
,
"unionType must be a number"
);
}
//根据unionType获取具体的实现类
UnionTypeEnum
union
=
UnionServiceAdapter
.
getUnionService
(
Integer
.
parseInt
(
unionType
.
toString
()));
MainUnionService
service
=
null
;
try
{
service
=
SpringContextUtil
.
getBean
(
union
.
getBeanName
(),
MainUnionService
.
class
);
}
catch
(
Exception
e
)
{
log
.
error
(
"getUnionService error with unionType={}"
,
unionType
,
e
);
service
=
null
;
}
if
(
service
==
null
)
{
//该类型的服务不存在
return
new
ActiveUnionResponseBO
(
602
,
"unionType error"
);
}
//转换为所需的对象
MainUnionRequestBO
requestBO
=
service
.
toActivateRequestBO
(
request
,
union
.
getActivateRequestClass
());
log
.
info
(
"activateUnion with param is {}"
,
requestBO
);
//调用激活接口
MainUnionResponseBO
responseBO
=
service
.
activateUnionInfo
(
requestBO
);
//转换为返回对象
if
(!
responseBO
.
getIsSuccess
())
{
return
new
ActiveUnionResponseBO
(
400
,
responseBO
.
getMsg
());
}
else
{
return
new
ActiveUnionResponseBO
(
200
,
"success"
);
}
}
}
server/src/main/java/com/yoho/unions/server/restapi/UnionRest.java
View file @
38be4a5
...
...
@@ -9,11 +9,10 @@ import org.springframework.web.bind.annotation.RequestMapping;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
com.alibaba.fastjson.JSON
;
import
com.
yoho.service.model.union.request.ActiveUnionRequestBO
;
import
com.
alibaba.fastjson.JSONObject
;
import
com.yoho.service.model.union.request.AddUnionRequestBO
;
import
com.yoho.service.model.union.response.ActiveUnionResponseBO
;
import
com.yoho.service.model.union.response.UnionResponseBO
;
import
com.yoho.unions.server.service.
Dingdang
Service
;
import
com.yoho.unions.server.service.
MainUnion
Service
;
@Controller
@RequestMapping
(
"/UnionRest"
)
...
...
@@ -22,7 +21,7 @@ public class UnionRest {
static
Logger
log
=
LoggerFactory
.
getLogger
(
UnionRest
.
class
);
@Resource
DingdangService
dingdangService
;
MainUnionService
dDServiceImpl
;
/**
* 添加顶当
...
...
@@ -30,47 +29,47 @@ public class UnionRest {
* @return
*/
@RequestMapping
(
value
=
"/addUnion"
)
@ResponseBody
public
UnionResponseBO
addUnion
(
AddUnionRequestBO
req
)
{
@ResponseBody
public
JSONObject
addUnion
(
AddUnionRequestBO
req
)
{
log
.
info
(
"enter unionsRest.addunions with param is {}"
,
req
);
UnionResponseBO
bo
=
null
;
JSONObject
response
=
null
;
try
{
bo
=
dingdangService
.
addUnion
(
req
);
response
=
dDServiceImpl
.
addUnion
(
req
);
}
catch
(
Exception
e
)
{
log
.
error
(
"addunions error with param is {}"
,
req
,
e
);
bo
=
new
UnionResponseBO
();
bo
.
setIsSuccess
(
false
);
bo
.
setMsg
(
"error"
);
response
=
new
JSONObject
();
response
.
put
(
"isSuccess"
,
false
);
response
.
put
(
"msg"
,
"error"
);
}
return
bo
;
return
response
;
}
/**
* 激活顶当
* @param req
* @return
*/
@RequestMapping
(
value
=
"/activeUnion"
)
@ResponseBody
public
ActiveUnionResponseBO
activeUnion
(
ActiveUnionRequestBO
req
)
{
log
.
info
(
"enter unionsRest.activeunions with param is {}"
,
req
);
ActiveUnionResponseBO
response
=
new
ActiveUnionResponseBO
();
try
{
UnionResponseBO
bo
=
dingdangService
.
activeUnion
(
req
);
if
(!
bo
.
getIsSuccess
())
{
response
.
setCode
(
400
);
response
.
setMessage
(
bo
.
getMsg
());
}
else
{
response
.
setCode
(
200
);
response
.
setMessage
(
"success"
);
response
.
setData
(
bo
);
}
}
catch
(
Exception
e
)
{
log
.
error
(
""
,
e
);
response
.
setCode
(
500
);
response
.
setMessage
(
"error"
);
}
return
response
;
}
// /**
// * 激活顶当
// * @param req
// * @return
// */
// @RequestMapping(value = "/activeUnion")
// @ResponseBody public ActiveUnionResponseBO activeUnion(ActiveUnionRequestBO req) {
// log.info("enter unionsRest.activeunions with param is {}", req);
// ActiveUnionResponseBO response = new ActiveUnionResponseBO();
// try {
// UnionResponseBO bo = dingdangService.activeUnion(req);
// if (!bo.getIsSuccess()) {
// response.setCode(400);
// response.setMessage(bo.getMsg());
// } else {
// response.setCode(200);
// response.setMessage("success");
// response.setData(bo);
// }
// } catch (Exception e) {
// log.error("", e);
// response.setCode(500);
// response.setMessage("error");
// }
// return response;
// }
@RequestMapping
(
value
=
"/test"
)
@ResponseBody
public
UnionResponseBO
test
()
{
...
...
server/src/main/java/com/yoho/unions/server/service/MainUnionService.java
View file @
38be4a5
...
...
@@ -3,18 +3,12 @@
*/
package
com
.
yoho
.
unions
.
server
.
service
;
import
java.util.List
;
import
javax.servlet.http.HttpServletRequest
;
import
org.apache.commons.beanutils.BeanUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
com.alibaba.fastjson.JSONObject
;
import
com.yoho.service.model.union.request.MainUnionRequestBO
;
import
com.yoho.service.model.union.response.MainUnionResponseBO
;
import
com.yoho.unions.common.utils.ObjectUtil
;
import
com.yoho.service.model.union.request.ActivateUnionRequestBO
;
import
com.yoho.service.model.union.response.UnionResponseBO
;
/**
* 描述:联盟的主函数入口
...
...
@@ -25,168 +19,18 @@ public interface MainUnionService {
static
Logger
log
=
LoggerFactory
.
getLogger
(
MainUnionService
.
class
);
/////添加开始---------------------------------------------------------------
/**
* 添加联盟,转换对象为具体联盟的请求对象
* @param request
* @param addRequestClass
* @return
*/
default
public
MainUnionRequestBO
toAddRequestBO
(
HttpServletRequest
request
,
Class
<?
extends
MainUnionRequestBO
>
addRequestClass
)
{
if
(
request
==
null
)
{
log
.
warn
(
"request is null"
);
return
null
;
}
if
(
addRequestClass
==
null
)
{
log
.
warn
(
"addRequestClass is null"
);
return
null
;
}
MainUnionRequestBO
obj
=
null
;
try
{
obj
=
addRequestClass
.
newInstance
();
List
<
String
>
fields
=
ObjectUtil
.
getFields
(
addRequestClass
,
true
);
if
(
fields
==
null
)
{
return
obj
;
}
for
(
String
field
:
fields
)
{
BeanUtils
.
setProperty
(
obj
,
field
,
request
.
getParameter
(
field
));
}
}
catch
(
Exception
e
)
{
log
.
error
(
""
,
e
);
}
return
obj
;
}
/**
* 添加联盟的检查
* @param request
* @return
*/
public
MainUnionResponseBO
addUnionCheck
(
MainUnionRequestBO
request
);
/**
* 调用联盟添加
*
* @param requestBO
* @return
* @throws Exception
*/
default
public
MainUnionResponseBO
addUnionInfo
(
MainUnionRequestBO
requestBO
)
{
//检查输入参数
MainUnionResponseBO
responseBO
=
addUnionCheck
(
requestBO
);
if
(!
responseBO
.
getIsSuccess
())
{
return
responseBO
;
}
try
{
// 调用添加接口
responseBO
=
addUnion
(
requestBO
);
}
catch
(
Exception
e
)
{
log
.
error
(
"addUnionInfo error with request is {}"
,
requestBO
,
e
);
return
responseBO
;
}
return
responseBO
;
}
/**
* 添加联盟
* @param request
* @return
*/
public
MainUnionResponseBO
addUnion
(
MainUnionRequestBO
request
);
/**
* 具体的返回对象转为jsonObject 该方法一般情况下,子类不需要实现
*
* @param responseBO
* @return
* @throws Exception
*/
default
public
JSONObject
toResponse
(
MainUnionResponseBO
responseBO
)
{
if
(
responseBO
==
null
)
{
return
null
;
}
JSONObject
json
=
ObjectUtil
.
getDeclaredFields
(
responseBO
,
true
);
return
json
;
}
/////添加结束---------------------------------------------------------------
/////激活开始--------------------------------------------------------------
/**
* 激活联盟,转换对象为具体联盟的请求对象
* @param request
* @param activateRequestClass
* @return
*/
default
public
MainUnionRequestBO
toActivateRequestBO
(
HttpServletRequest
request
,
Class
<?
extends
MainUnionRequestBO
>
activateRequestClass
)
{
if
(
request
==
null
)
{
log
.
warn
(
"request is null"
);
return
null
;
}
if
(
activateRequestClass
==
null
)
{
log
.
warn
(
"activateRequestClass is null"
);
return
null
;
}
MainUnionRequestBO
obj
=
null
;
try
{
obj
=
activateRequestClass
.
newInstance
();
List
<
String
>
fields
=
ObjectUtil
.
getFields
(
activateRequestClass
,
true
);
if
(
fields
==
null
)
{
return
obj
;
}
for
(
String
field
:
fields
)
{
BeanUtils
.
setProperty
(
obj
,
field
,
request
.
getParameter
(
field
));
}
}
catch
(
Exception
e
)
{
log
.
error
(
""
,
e
);
}
return
obj
;
}
/**
* 激活联盟的检查
* @param request
* @param obj
* @return
*/
public
MainUnionResponseBO
activateUnionCheck
(
MainUnionRequestBO
request
);
/**
* 调用联盟激活
*
* @param requestBO
* @return
* @throws Exception
*/
default
public
MainUnionResponseBO
activateUnionInfo
(
MainUnionRequestBO
requestBO
)
{
//检查输入参数
MainUnionResponseBO
responseBO
=
activateUnionCheck
(
requestBO
);
if
(!
responseBO
.
getIsSuccess
())
{
return
responseBO
;
}
try
{
// 调用激活接口
responseBO
=
activateUnion
(
requestBO
);
}
catch
(
Exception
e
)
{
log
.
error
(
"activityUnionInfo error with request is {}"
,
requestBO
,
e
);
return
responseBO
;
}
return
responseBO
;
}
public
JSONObject
addUnion
(
Object
obj
);
/**
* 激活联盟
* @param request
* @return
*/
public
MainUnionResponseBO
activateUnion
(
MainUnionRequestBO
request
);
public
UnionResponseBO
activeUnion
(
ActivateUnionRequestBO
request
);
/////激活结束--------------------------------------------------------------
}
...
...
server/src/main/java/com/yoho/unions/server/service/MainUnionService_bak.java
0 → 100644
View file @
38be4a5
/**
*
*/
package
com
.
yoho
.
unions
.
server
.
service
;
import
java.util.List
;
import
javax.servlet.http.HttpServletRequest
;
import
org.apache.commons.beanutils.BeanUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
com.alibaba.fastjson.JSONObject
;
import
com.yoho.service.model.union.request.MainUnionRequestBO
;
import
com.yoho.service.model.union.response.MainUnionResponseBO
;
import
com.yoho.unions.common.utils.ObjectUtil
;
/**
* 描述:联盟的主函数入口
*
* @author ping.huang 2016年3月9日
*/
public
interface
MainUnionService_bak
{
static
Logger
log
=
LoggerFactory
.
getLogger
(
MainUnionService_bak
.
class
);
/////添加开始---------------------------------------------------------------
/**
* 添加联盟,转换对象为具体联盟的请求对象
* @param request
* @param addRequestClass
* @return
*/
default
public
MainUnionRequestBO
toAddRequestBO
(
HttpServletRequest
request
,
Class
<?
extends
MainUnionRequestBO
>
addRequestClass
)
{
if
(
request
==
null
)
{
log
.
warn
(
"request is null"
);
return
null
;
}
if
(
addRequestClass
==
null
)
{
log
.
warn
(
"addRequestClass is null"
);
return
null
;
}
MainUnionRequestBO
obj
=
null
;
try
{
obj
=
addRequestClass
.
newInstance
();
List
<
String
>
fields
=
ObjectUtil
.
getFields
(
addRequestClass
,
true
);
if
(
fields
==
null
)
{
return
obj
;
}
for
(
String
field
:
fields
)
{
BeanUtils
.
setProperty
(
obj
,
field
,
request
.
getParameter
(
field
));
}
}
catch
(
Exception
e
)
{
log
.
error
(
""
,
e
);
}
return
obj
;
}
/**
* 添加联盟的检查
* @param request
* @return
*/
public
MainUnionResponseBO
addUnionCheck
(
MainUnionRequestBO
request
);
/**
* 调用联盟添加
*
* @param requestBO
* @return
* @throws Exception
*/
default
public
MainUnionResponseBO
addUnionInfo
(
MainUnionRequestBO
requestBO
)
{
//检查输入参数
MainUnionResponseBO
responseBO
=
addUnionCheck
(
requestBO
);
if
(!
responseBO
.
getIsSuccess
())
{
return
responseBO
;
}
try
{
// 调用添加接口
responseBO
=
addUnion
(
requestBO
);
}
catch
(
Exception
e
)
{
log
.
error
(
"addUnionInfo error with request is {}"
,
requestBO
,
e
);
return
responseBO
;
}
return
responseBO
;
}
/**
* 添加联盟
* @param request
* @return
*/
public
MainUnionResponseBO
addUnion
(
MainUnionRequestBO
request
);
/**
* 具体的返回对象转为jsonObject 该方法一般情况下,子类不需要实现
*
* @param responseBO
* @return
* @throws Exception
*/
default
public
JSONObject
toResponse
(
MainUnionResponseBO
responseBO
)
{
if
(
responseBO
==
null
)
{
return
null
;
}
JSONObject
json
=
ObjectUtil
.
getDeclaredFields
(
responseBO
,
true
);
return
json
;
}
/////添加结束---------------------------------------------------------------
/////激活开始--------------------------------------------------------------
/**
* 激活联盟,转换对象为具体联盟的请求对象
* @param request
* @param activateRequestClass
* @return
*/
default
public
MainUnionRequestBO
toActivateRequestBO
(
HttpServletRequest
request
,
Class
<?
extends
MainUnionRequestBO
>
activateRequestClass
)
{
if
(
request
==
null
)
{
log
.
warn
(
"request is null"
);
return
null
;
}
if
(
activateRequestClass
==
null
)
{
log
.
warn
(
"activateRequestClass is null"
);
return
null
;
}
MainUnionRequestBO
obj
=
null
;
try
{
obj
=
activateRequestClass
.
newInstance
();
List
<
String
>
fields
=
ObjectUtil
.
getFields
(
activateRequestClass
,
true
);
if
(
fields
==
null
)
{
return
obj
;
}
for
(
String
field
:
fields
)
{
BeanUtils
.
setProperty
(
obj
,
field
,
request
.
getParameter
(
field
));
}
}
catch
(
Exception
e
)
{
log
.
error
(
""
,
e
);
}
return
obj
;
}
/**
* 激活联盟的检查
* @param request
* @return
*/
public
MainUnionResponseBO
activateUnionCheck
(
MainUnionRequestBO
request
);
/**
* 调用联盟激活
*
* @param requestBO
* @return
* @throws Exception
*/
default
public
MainUnionResponseBO
activateUnionInfo
(
MainUnionRequestBO
requestBO
)
{
//检查输入参数
MainUnionResponseBO
responseBO
=
activateUnionCheck
(
requestBO
);
if
(!
responseBO
.
getIsSuccess
())
{
return
responseBO
;
}
try
{
// 调用激活接口
responseBO
=
activateUnion
(
requestBO
);
}
catch
(
Exception
e
)
{
log
.
error
(
"activityUnionInfo error with request is {}"
,
requestBO
,
e
);
return
responseBO
;
}
return
responseBO
;
}
/**
* 激活联盟
* @param request
* @return
*/
public
MainUnionResponseBO
activateUnion
(
MainUnionRequestBO
request
);
/////激活结束--------------------------------------------------------------
}
...
...
server/src/main/java/com/yoho/unions/server/service/impl/DDServiceImpl.java
0 → 100644
View file @
38be4a5
/**
*
*/
package
com
.
yoho
.
unions
.
server
.
service
.
impl
;
import
javax.annotation.Resource
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang3.tuple.Pair
;
import
org.apache.http.HttpStatus
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.stereotype.Service
;
import
com.alibaba.fastjson.JSONObject
;
import
com.netflix.config.DynamicIntProperty
;
import
com.netflix.config.DynamicPropertyFactory
;
import
com.yoho.core.cache.CacheClient
;
import
com.yoho.service.model.union.request.ActivateUnionRequestBO
;
import
com.yoho.service.model.union.request.AddUnionRequestBO
;
import
com.yoho.service.model.union.response.UnionResponseBO
;
import
com.yoho.unions.common.enums.SourceEnum
;
import
com.yoho.unions.common.utils.DateUtil
;
import
com.yoho.unions.common.utils.HttpUtils
;
import
com.yoho.unions.dal.IUnionsActiveRecordDAO
;
import
com.yoho.unions.dal.model.UnionsActiveRecord
;
import
com.yoho.unions.server.service.MainUnionService
;
/**
* 描述:
* 顶当的联盟实现
* @author ping.huang
* 2016年3月16日
*/
@Service
(
"dDServiceImpl"
)
public
class
DDServiceImpl
implements
MainUnionService
{
static
Logger
log
=
LoggerFactory
.
getLogger
(
DDServiceImpl
.
class
);
static
Logger
addDingdang
=
LoggerFactory
.
getLogger
(
"addDingdang"
);
static
Logger
activeDingdang
=
LoggerFactory
.
getLogger
(
"activeDingdang"
);
@Resource
CacheClient
cacheClient
;
@Resource
IUnionsActiveRecordDAO
unionsActiveRecordDAO
;
private
static
final
String
unions_KEY
=
"yh:unions:dingdang_"
;
@Override
public
JSONObject
addUnion
(
Object
obj
)
{
AddUnionRequestBO
request
=
(
AddUnionRequestBO
)
obj
;
log
.
debug
(
"addUnion with param is {}"
,
request
);
log
.
debug
(
"addUnion with param is {}"
,
request
);
String
app
=
request
.
getApp
();
String
udid
=
request
.
getUdid
();
String
type
=
request
.
getType
();
String
callbackurl
=
request
.
getCallbackurl
();
JSONObject
response
=
new
JSONObject
();
if
(
StringUtils
.
isEmpty
(
app
))
{
log
.
warn
(
"addunions error app is null with param is {}"
,
request
);
response
.
put
(
"isSuccess"
,
false
);
response
.
put
(
"msg"
,
"APP IS NULL"
);
return
response
;
}
if
(
StringUtils
.
isEmpty
(
udid
))
{
log
.
warn
(
"addunions error udid is null with param is {}"
,
request
);
response
.
put
(
"isSuccess"
,
false
);
response
.
put
(
"msg"
,
"UDID IS NULL"
);
return
response
;
}
if
(
StringUtils
.
isEmpty
(
callbackurl
))
{
log
.
warn
(
"addunions error callbackurl is null with param is {}"
,
request
);
response
.
put
(
"isSuccess"
,
false
);
response
.
put
(
"msg"
,
"CALLBACKURL IS NULL"
);
return
response
;
}
//检查memcached中是否已经有该udid
String
cacheUdid
=
cacheClient
.
get
(
unions_KEY
+
app
+
"_"
+
udid
,
String
.
class
);
log
.
info
(
"addunions get cache key={}, cacheUdid={}"
,
unions_KEY
+
app
+
"_"
+
udid
,
cacheUdid
);
if
(
StringUtils
.
isNotEmpty
(
cacheUdid
))
{
log
.
warn
(
"addunions error app and udid is added with param is {}"
,
request
);
response
.
put
(
"isSuccess"
,
false
);
response
.
put
(
"msg"
,
"APP UDID IS EXISTS"
);
return
response
;
}
//保存到memcached,时间,一个小时
DynamicIntProperty
activeTime
=
DynamicPropertyFactory
.
getInstance
().
getIntProperty
(
"activeTime"
,
60
*
60
);
cacheClient
.
set
(
unions_KEY
+
app
+
"_"
+
udid
,
activeTime
.
get
(),
udid
);
log
.
debug
(
"addunions set cache success"
);
//插入数据库
try
{
UnionsActiveRecord
unions
=
new
UnionsActiveRecord
();
unions
.
setApp
(
app
);
unions
.
setUdid
(
udid
);
unions
.
setCallbackurl
(
callbackurl
);
unions
.
setType
(
type
);
log
.
debug
(
"add to unionsLog db with param is {}"
,
unions
);
unionsActiveRecordDAO
.
insert
(
unions
);
}
catch
(
Exception
e
)
{
log
.
error
(
""
,
e
);
}
log
.
info
(
"addunions success with param is {}"
,
request
);
addDingdang
.
info
(
"addunions success with param is {}"
,
request
);
response
.
put
(
"isSuccess"
,
true
);
response
.
put
(
"msg"
,
"成功"
);
return
response
;
}
@Override
public
UnionResponseBO
activeUnion
(
ActivateUnionRequestBO
request
)
{
log
.
debug
(
"activeunions with param is {}"
,
request
);
UnionResponseBO
response
=
new
UnionResponseBO
();
if
(
StringUtils
.
isEmpty
(
request
.
getAppid
()))
{
log
.
warn
(
"activeunions error app is null with param is {}"
,
request
);
response
.
setIsSuccess
(
false
);
response
.
setMsg
(
"APP IS NULL"
);
return
response
;
}
if
(
StringUtils
.
isEmpty
(
request
.
getUdid
()))
{
log
.
warn
(
"activeunions error udid is null with param is {}"
,
request
);
response
.
setIsSuccess
(
false
);
response
.
setMsg
(
"UDID IS NULL"
);
return
response
;
}
String
memKey
=
unions_KEY
+
request
.
getAppid
()
+
"_"
+
request
.
getUdid
();
//检查memcached中是否已经有该udid
String
cacheUdid
=
cacheClient
.
get
(
memKey
,
String
.
class
);
log
.
info
(
"activeUnion get cache key={}, cacheUdid={}"
,
memKey
,
cacheUdid
);
if
(
StringUtils
.
isEmpty
(
cacheUdid
))
{
log
.
warn
(
"activeunions error app and udid is not exists with param is {}"
,
request
);
response
.
setIsSuccess
(
false
);
response
.
setMsg
(
"APP UDID IS NOT EXISTS IN CACHE"
);
return
response
;
}
//检查该app和udid是否已经激活
UnionsActiveRecord
unions
=
new
UnionsActiveRecord
();
unions
.
setApp
(
request
.
getAppid
());
unions
.
setUdid
(
request
.
getUdid
());
unions
.
setType
(
request
.
getClient_type
());
UnionsActiveRecord
u
=
unionsActiveRecordDAO
.
selectByUdidAndApp
(
unions
);
if
(
u
==
null
)
{
log
.
warn
(
"activeunions error app and udid is not exists with param is {}"
,
request
);
response
.
setIsSuccess
(
false
);
response
.
setMsg
(
"database has not exists this udid but cache exists"
);
return
response
;
}
//已经激活
if
(
"1"
.
equals
(
u
.
getIsActive
()))
{
log
.
warn
(
"activeunions error app is actived with param is {}"
,
request
);
response
.
setIsSuccess
(
false
);
response
.
setMsg
(
"app udid had actived"
);
return
response
;
}
//调用联盟激活接口
int
repeatCount
=
0
;
Pair
<
Integer
,
String
>
pair
=
null
;
JSONObject
json
=
null
;
boolean
isSuccess
=
false
;
String
url
=
""
;
while
(
true
)
{
//如果已经成功,或者重试次数大于3次,则不再调用
if
(
isSuccess
||
repeatCount
>=
3
)
{
break
;
}
try
{
url
=
u
.
getCallbackurl
();
pair
=
HttpUtils
.
httpGet
(
url
);
if
(
pair
.
getLeft
()
==
HttpStatus
.
SC_OK
)
{
log
.
debug
(
"call "
+
u
.
getCallbackurl
()
+
" url success return message is {}"
,
pair
.
getRight
());
json
=
JSONObject
.
parseObject
(
pair
.
getRight
());
isSuccess
=
json
.
getBooleanValue
(
"isSuccess"
);
}
}
catch
(
Exception
e
)
{
log
.
error
(
""
,
e
);
}
repeatCount
++;
}
log
.
info
(
"call "
+
u
.
getCallbackurl
()
+
" url return message is {}"
,
pair
.
getRight
());
//更新数据库
if
(
isSuccess
)
{
unions
.
setIsActive
(
"1"
);
unions
.
setId
(
u
.
getId
());
unionsActiveRecordDAO
.
updateByPrimaryKey
(
unions
);
//激活成功,从memcached中删除
cacheClient
.
delete
(
memKey
);
log
.
debug
(
"activeUnion delete cache success key={}"
,
memKey
);
response
.
setMsg
(
"激活成功"
);
response
.
setIsSuccess
(
true
);
}
else
{
unions
.
setIsActive
(
"0"
);
unions
.
setId
(
u
.
getId
());
unionsActiveRecordDAO
.
updateByPrimaryKey
(
unions
);
response
.
setMsg
(
"激活失败"
);
response
.
setIsSuccess
(
false
);
}
try
{
//组装大数据分析的日志
JSONObject
j
=
new
JSONObject
();
j
.
put
(
"apptype"
,
request
.
getClient_type
());
j
.
put
(
"appid"
,
request
.
getAppid
());
j
.
put
(
"ifda"
,
request
.
getUdid
());
j
.
put
(
"dateid"
,
DateUtil
.
getcurrentDateTime
());
SourceEnum
e
=
SourceEnum
.
getSourceEnumByValue
(
u
.
getType
());
j
.
put
(
"source"
,
e
==
null
?
""
:
e
.
getName
());
j
.
put
(
"ip"
,
request
.
getClientIp
());
j
.
put
(
"collect_ip"
,
""
);
activeDingdang
.
info
(
j
.
toString
());
}
catch
(
Exception
e
)
{
log
.
error
(
""
,
e
);
}
return
response
;
}
}
...
...
server/src/main/java/com/yoho/unions/server/service/impl/GDTServiceImpl.java
View file @
38be4a5
...
...
@@ -35,7 +35,7 @@ import com.yoho.unions.server.service.MainUnionService;
* @author yoho
*
*/
@Service
(
"gdtServiceImpl"
)
//
@Service("gdtServiceImpl")
public
class
GDTServiceImpl
implements
MainUnionService
{
static
Logger
log
=
LoggerFactory
.
getLogger
(
GDTServiceImpl
.
class
);
...
...
web/.settings/org.eclipse.wst.common.component
View file @
38be4a5
...
...
@@ -13,13 +13,13 @@
<dependent-module
archiveName=
"yoho-unions-common-1.0.0-SNAPSHOT.jar"
deploy-path=
"/WEB-INF/lib"
handle=
"module:/resource/yoho-unions-common/yoho-unions-common"
>
<dependency-type>
uses
</dependency-type>
</dependent-module>
<dependent-module
archiveName=
"error-code-1.0.
5
-SNAPSHOT.jar"
deploy-path=
"/WEB-INF/lib"
handle=
"module:/resource/error-code/error-code"
>
<dependent-module
archiveName=
"error-code-1.0.
6
-SNAPSHOT.jar"
deploy-path=
"/WEB-INF/lib"
handle=
"module:/resource/error-code/error-code"
>
<dependency-type>
uses
</dependency-type>
</dependent-module>
<dependent-module
archiveName=
"union-service-model-1.0.
5
-SNAPSHOT.jar"
deploy-path=
"/WEB-INF/lib"
handle=
"module:/resource/union-service-model/union-service-model"
>
<dependent-module
archiveName=
"union-service-model-1.0.
6
-SNAPSHOT.jar"
deploy-path=
"/WEB-INF/lib"
handle=
"module:/resource/union-service-model/union-service-model"
>
<dependency-type>
uses
</dependency-type>
</dependent-module>
<dependent-module
archiveName=
"users-service-model-1.0.
5
-SNAPSHOT.jar"
deploy-path=
"/WEB-INF/lib"
handle=
"module:/resource/users-service-model/users-service-model"
>
<dependent-module
archiveName=
"users-service-model-1.0.
6
-SNAPSHOT.jar"
deploy-path=
"/WEB-INF/lib"
handle=
"module:/resource/users-service-model/users-service-model"
>
<dependency-type>
uses
</dependency-type>
</dependent-module>
<property
name=
"java-output-path"
value=
"/yoho-unions-web/target/classes"
/>
...
...
web/src/main/resources/META-INF/spring/spring-mvc.xml
View file @
38be4a5
...
...
@@ -58,7 +58,7 @@
</bean>
<mvc:interceptors>
<!--
<ref bean="securityInterceptor" />
-->
<!--
<ref bean="securityInterceptor" />
-->
<ref
bean=
"threadProfileInterceptor"
/>
</mvc:interceptors>
</beans>
...
...
Please
register
or
login
to post a comment