generated from root/miduo_server
灵动sdk接入
parent
7ae35afd90
commit
51a8fc36ca
|
@ -43,7 +43,7 @@ public class MHTRechargeController {
|
|||
@Resource
|
||||
private CUserDao cuserDao;
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(MHTRechargeController.class);
|
||||
private static Gson gson = new Gson();
|
||||
// private static Gson gson = new Gson();
|
||||
|
||||
@RequestMapping(value = "/MHTcallback")
|
||||
public String MHTcallback( HttpServletRequest request) throws Exception {
|
||||
|
@ -52,91 +52,110 @@ public class MHTRechargeController {
|
|||
LOGGER.info( "data is null");
|
||||
return "FAIL";
|
||||
}
|
||||
String source = parameterMap.keySet().iterator().next();
|
||||
source = source.replaceAll(" ", "+");
|
||||
LOGGER.info(source);
|
||||
MHTRechargeRequestBean rechargeRequestBean = gson.fromJson(source, MHTRechargeRequestBean.class);
|
||||
|
||||
MHTRechargeRequestBean.DataBean data = rechargeRequestBean.getData();
|
||||
if(data == null){
|
||||
LOGGER.info( "data is null");
|
||||
return "FAIL";
|
||||
}
|
||||
|
||||
String consumerid = data.getConsumerid();
|
||||
String consumerName = data.getConsumerName();
|
||||
String orderNo = data.getOrderNo();
|
||||
String sign = data.getSign();
|
||||
String sig = getMySign(rechargeRequestBean);
|
||||
|
||||
String goodID;
|
||||
if(consumerName.isEmpty()){
|
||||
LOGGER.info("callback==>roleUid={},sin derify fail,mine sign={} ",consumerid,sig);
|
||||
return "FAIL";
|
||||
}
|
||||
String[] split1 = consumerName.split("#");
|
||||
goodID = split1[0];
|
||||
if(null==goodID||goodID.isEmpty()){
|
||||
LOGGER.info("callback==>roleUid={},sin derify fail,mine sign={} ,consumerName={}",consumerid,sig,consumerName);
|
||||
}
|
||||
if (!sig.equals(sign)){
|
||||
LOGGER.info("callback==>roleUid={},sin derify fail,mine sign={} ",consumerid,sig);
|
||||
return "FAIL";
|
||||
}
|
||||
|
||||
CUserInfo cUserInfo = cuserDao.findUserInfo(Integer.valueOf(consumerid));
|
||||
if(cUserInfo == null){
|
||||
LOGGER.info( "该用户无此角色"+consumerid);
|
||||
return "FAIL";
|
||||
}
|
||||
|
||||
CPayOrder cPayOrder = cuserDao.getCpayOrderByOrderId(orderNo);
|
||||
// String source = parameterMap.keySet().iterator().next();
|
||||
// source = source.replaceAll(" ", "+");
|
||||
// LOGGER.info(source);
|
||||
// MHTRechargeRequestBean rechargeRequestBean = gson.fromJson(source, MHTRechargeRequestBean.class);
|
||||
//
|
||||
// MHTRechargeRequestBean.DataBean data = rechargeRequestBean.getData();
|
||||
// if(data == null){
|
||||
// LOGGER.info( "data is null");
|
||||
// return "FAIL";
|
||||
// }
|
||||
String response = "SUCCESS";
|
||||
if (cPayOrder != null) {
|
||||
LOGGER.info("callback==>creditId={},uId={} orderId is exit!!!",cUserInfo.getId(),cUserInfo.getOpenId());
|
||||
return "FAIL";
|
||||
} else {
|
||||
DateFormat dateTimeformat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
|
||||
String date = dateTimeformat.format(new Date());
|
||||
cPayOrder = new CPayOrder();
|
||||
cPayOrder.setOrderId(orderNo);
|
||||
cPayOrder.setServerId(cUserInfo.getServerid());
|
||||
cPayOrder.setDelivery_time(date);
|
||||
cPayOrder.setUserId(consumerid);
|
||||
Result result = null;
|
||||
String userAddress = cuserDao.findUserAddress(cUserInfo.getId());
|
||||
if (userAddress != null) {
|
||||
LOGGER.info("callback==>userAddress={} ",userAddress);
|
||||
String[] split = userAddress.split(":");
|
||||
String ip = split[0];
|
||||
String port = split[1];
|
||||
LOGGER.info("RPC address --> IP : " + ip + "; PORT : " + port);
|
||||
ClientAdapterPo<RPCRequestIFace.Client> rPCClient = null;
|
||||
String serviceKey = JsonUtil.getServiceKey(ServiceKey.RPCCore, ip, port);
|
||||
LOGGER.info("serviceKey : " + serviceKey);
|
||||
try {
|
||||
rPCClient = ClientAdapterPo.getClientAdapterPo(serviceKey);
|
||||
result = rPCClient.getClient().deliveryRecharge(cUserInfo.getId(),Integer.parseInt(goodID),consumerid, orderNo,0,0);
|
||||
} catch (Exception e) {
|
||||
LOGGER.info("callback=>",e);
|
||||
}finally {
|
||||
if (rPCClient != null){
|
||||
rPCClient.returnObject(serviceKey);
|
||||
}else{
|
||||
LOGGER.info("callback=> rPCClient is null ");
|
||||
}
|
||||
}
|
||||
}else{
|
||||
LOGGER.info("not get the user url,the openID={} ",consumerid);
|
||||
response = "FAIL";
|
||||
try {
|
||||
String consumerid = parameterMap.get("consumerid");
|
||||
String consumerName =parameterMap.get("consumername");
|
||||
String gameCurrency ="0";
|
||||
String mhtOrderAmt =parameterMap.get("mhtOrderAmt");
|
||||
String orderDetail =parameterMap.get("orderDetail");
|
||||
String orderNo =parameterMap.get("orderNo");
|
||||
String time =parameterMap.get("time");
|
||||
String sign = parameterMap.get("sign");
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
stringBuilder.append("consumerid").append("=").append(consumerid).append("&");
|
||||
stringBuilder.append("consumerName").append("=").append(consumerName).append("&");
|
||||
stringBuilder.append("gameCurrency").append("=").append(gameCurrency).append("&");
|
||||
stringBuilder.append("mhtOrderAmt").append("=").append(mhtOrderAmt).append("&");
|
||||
stringBuilder.append("orderDetail").append("=").append(orderDetail).append("&");
|
||||
stringBuilder.append("orderNo").append("=").append(orderNo).append("&");
|
||||
stringBuilder.append("time").append("=").append(time);
|
||||
String plain = stringBuilder.toString() + MD5Util.encrypByMd5(MHTSDKConstans.secretKey);
|
||||
String sig = MD5Util.encrypByMd5(plain);
|
||||
|
||||
String goodID;
|
||||
if(consumerName.isEmpty()){
|
||||
LOGGER.info("callback==>roleUid={},sin derify fail,mine sign={} ",consumerid,sig);
|
||||
return "FAIL";
|
||||
}
|
||||
if (result != null && result.getResultCode() == 1) {
|
||||
LOGGER.info(" callback==>RPC result : ResultCode : " + result.getResultCode() + "; ResultMsg : " + result.getResultMsg());
|
||||
cuserDao.addCpayOrder(cPayOrder);
|
||||
String[] split1 = consumerName.split("#");
|
||||
goodID = split1[0];
|
||||
if(null==goodID||goodID.isEmpty()){
|
||||
LOGGER.info("callback==>roleUid={},sin derify fail,mine sign={} ,consumerName={}",consumerid,sig,consumerName);
|
||||
}
|
||||
if (!sig.equals(sign)){
|
||||
LOGGER.info("callback==>roleUid={},sin derify fail,mine sign={} ",consumerid,sig);
|
||||
return "FAIL";
|
||||
}
|
||||
|
||||
CUserInfo cUserInfo = cuserDao.findUserInfo(Integer.valueOf(consumerid));
|
||||
if(cUserInfo == null){
|
||||
LOGGER.info( "该用户无此角色"+consumerid);
|
||||
return "FAIL";
|
||||
}
|
||||
|
||||
CPayOrder cPayOrder = cuserDao.getCpayOrderByOrderId(orderNo);
|
||||
|
||||
if (cPayOrder != null) {
|
||||
LOGGER.info("callback==>creditId={},uId={} orderId is exit!!!",cUserInfo.getId(),cUserInfo.getOpenId());
|
||||
return "FAIL";
|
||||
} else {
|
||||
response = "FAIL";
|
||||
DateFormat dateTimeformat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
|
||||
String date = dateTimeformat.format(new Date());
|
||||
cPayOrder = new CPayOrder();
|
||||
cPayOrder.setOrderId(orderNo);
|
||||
cPayOrder.setServerId(cUserInfo.getServerid());
|
||||
cPayOrder.setDelivery_time(date);
|
||||
cPayOrder.setUserId(consumerid);
|
||||
Result result = null;
|
||||
String userAddress = cuserDao.findUserAddress(cUserInfo.getId());
|
||||
if (userAddress != null) {
|
||||
LOGGER.info("callback==>userAddress={} ",userAddress);
|
||||
String[] split = userAddress.split(":");
|
||||
String ip = split[0];
|
||||
String port = split[1];
|
||||
LOGGER.info("RPC address --> IP : " + ip + "; PORT : " + port);
|
||||
ClientAdapterPo<RPCRequestIFace.Client> rPCClient = null;
|
||||
String serviceKey = JsonUtil.getServiceKey(ServiceKey.RPCCore, ip, port);
|
||||
LOGGER.info("serviceKey : " + serviceKey);
|
||||
try {
|
||||
rPCClient = ClientAdapterPo.getClientAdapterPo(serviceKey);
|
||||
result = rPCClient.getClient().deliveryRecharge(cUserInfo.getId(),Integer.parseInt(goodID),consumerid, orderNo,0,0);
|
||||
} catch (Exception e) {
|
||||
LOGGER.info("callback=>",e);
|
||||
}finally {
|
||||
if (rPCClient != null){
|
||||
rPCClient.returnObject(serviceKey);
|
||||
}else{
|
||||
LOGGER.info("callback=> rPCClient is null ");
|
||||
}
|
||||
}
|
||||
}else{
|
||||
LOGGER.info("not get the user url,the openID={} ",consumerid);
|
||||
response = "FAIL";
|
||||
}
|
||||
if (result != null && result.getResultCode() == 1) {
|
||||
LOGGER.info(" callback==>RPC result : ResultCode : " + result.getResultCode() + "; ResultMsg : " + result.getResultMsg());
|
||||
cuserDao.addCpayOrder(cPayOrder);
|
||||
} else {
|
||||
response = "FAIL";
|
||||
}
|
||||
}
|
||||
}catch (Exception e){
|
||||
LOGGER.info("callback==>err "+e.toString());
|
||||
response = "FAIL";
|
||||
}
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue