jieling-delivery

master
wangyuan 2019-07-03 11:32:11 +08:00
parent 6922a6dfb1
commit 38830b0670
29 changed files with 120 additions and 1712 deletions

View File

@ -1,13 +1,6 @@
package com.jmfy;
import com.jmfy.Handler.BaseHandler;
import com.jmfy.Handler.ManagerManager;
import com.jmfy.controller.ManagerController;
import com.jmfy.redisProperties.RedisAutoConfiguration;
import com.jmfy.server.ServerConfiguration;
import com.jmfy.server.ServerProperties;
import com.jmfy.thrift.pool.ThriftPoolUtils;
import com.jmfy.util.JsonUtil;
import com.jmfy.util.MyStringRedisTemplate;
import com.jmfy.util.RedisUtil;
import org.slf4j.Logger;
@ -30,20 +23,7 @@ public class Application {
LOGGER.info("ThrowableProxy is name ={}",name);
//初使化连接池util类
ThriftPoolUtils.getInstance().initContext(configurableApplicationContext);
ServerConfiguration serverConfiguration = configurableApplicationContext.getBean(ServerConfiguration.class);
ServerProperties serverProperties = serverConfiguration.getServerProperties();
// ManagerManager handlerManager = ManagerManager.getInstance();
// KProducer kProducer = configurableApplicationContext.getBean(KProducer.class);
// KProducer.init();
//redis初始化
MyStringRedisTemplate myStringRedisTemplate = configurableApplicationContext.getBean(MyStringRedisTemplate.class);
RedisUtil.getInstence().init(myStringRedisTemplate.getRedisObjectTemplate());
RedisUtil.getInstence().initServerIPandProt(serverProperties);
// Map<String, BaseHandler> commandHanderMap = configurableApplicationContext.getBeansOfType(BaseHandler.class);
// for (BaseHandler handler : commandHanderMap.values()){
// handlerManager.addHandler(handler);
// }
LOGGER.info("======> delivery server start success ...");
}
}

View File

@ -1,5 +0,0 @@
package com.jmfy.Handler;
public abstract class BaseHandler {
}

View File

@ -1,22 +0,0 @@
package com.jmfy.Handler;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.stereotype.Component;
@Component
public class ManagerManager {
private static final Logger LOGGER = LoggerFactory.getLogger(ManagerManager.class);
private static ManagerManager instance;
private ConfigurableApplicationContext configurableApplicationContext;
public static ManagerManager getInstance(){
if (instance == null){
instance = new ManagerManager();
}
return instance;
}
}

View File

@ -1,75 +0,0 @@
package com.jmfy.controller;
import com.jmfy.dto.CPayOrder;
import com.jmfy.dto.CUserDao;
import com.jmfy.util.JsonUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.*;
@RestController
public class GetOrderController {
@Resource
private CUserDao cuserDao;
private static final Logger LOGGER = LoggerFactory.getLogger(GetOrderController.class);
@RequestMapping(value = "/getorder")
public String getorder(HttpServletRequest request) {
HashMap<String, String> parameterMap = JsonUtil.getInstence().getParameterMap(request);
String date = parameterMap.get("date");
String agoDate = JsonUtil.getSpecifiedDayBefore(date);
List<CPayOrder> orderInfoBydate = cuserDao.getOrderInfoBydate(agoDate);
StringBuilder result = new StringBuilder();
for (CPayOrder cPayOrder :orderInfoBydate){
if (result.length() == 0){
result = new StringBuilder()
.append(cPayOrder.getDelivery_time())
.append("|")
.append(cPayOrder.getServerId())
.append("|")
.append(cPayOrder.getUserId())
.append("|")
.append(cPayOrder.getOrderId())
.append("|")
.append(cPayOrder.getCpOrderId())
.append("|")
.append(cPayOrder.getCurrency())
.append("|")
.append(cPayOrder.getAmount())
.append("|")
.append(cPayOrder.getGameCurrency())
.append("|")
.append(cPayOrder.getPayType())
.append("|")
.append(cPayOrder.getCreditId());
}else{
result.append( "\r\n")
.append(cPayOrder.getDelivery_time())
.append("|")
.append(cPayOrder.getServerId())
.append("|")
.append(cPayOrder.getUserId())
.append("|")
.append(cPayOrder.getOrderId())
.append("|")
.append(cPayOrder.getCpOrderId())
.append("|")
.append(cPayOrder.getCurrency())
.append("|")
.append(cPayOrder.getAmount())
.append("|")
.append(cPayOrder.getGameCurrency())
.append("|")
.append(cPayOrder.getPayType())
.append("|")
.append(cPayOrder.getCreditId());
}
}
LOGGER.info("GetOrderController==> result={}",result.toString());
return result.toString();
}
}

View File

@ -1,120 +0,0 @@
package com.jmfy.controller;
import com.jmfy.dto.CUserDao;
import com.jmfy.dto.JsonResult;
import com.jmfy.thrift.idl.RPCRequestIFace;
import com.jmfy.thrift.idl.Result;
import com.jmfy.thrift.pool.ClientAdapterPo;
import com.jmfy.thrift.pool.ServiceKey;
import com.jmfy.util.JsonUtil;
import com.jmfy.util.YsjConstant;
import com.jmfy.util.tencentutil.SnsSigCheck;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Enumeration;
import java.util.HashMap;
@RestController
public class IAPManagerController {
private static final Logger LOGGER = LoggerFactory.getLogger(IAPManagerController.class);
@Resource
private CUserDao cuserDao;
@RequestMapping(value = "/iapmanager")
public JsonResult deliveryGoods(HttpServletRequest request){
try {
LOGGER.info("======>iap start midas request...");
HashMap<String, String> map = JsonUtil.getInstence().getParameterMap(request);
String sig = map.get("sig");
String[] serverParam = map.get("channel_id").split("-");
int gameServer = Integer.parseInt(serverParam[serverParam.length-5]);
int userId = Integer.parseInt(serverParam[serverParam.length-4]);
int goodsId = Integer.parseInt(serverParam[serverParam.length-3]);
int sendBox = Integer.parseInt(serverParam[serverParam.length-2]);
String openid = map.get("openid");
String payitem = map.get("payitem");
String billno = map.get("billno");
String amt = map.get("amt");
String channel_id = map.get("channel_id");
String token = map.get("token");
String final_appkey = YsjConstant.Midas_Buy_Ios_Appkey_Test;
if (sendBox == 0){
final_appkey = YsjConstant.Midas_Buy_Ios_Appkey;
}
LOGGER.info("final_appkey : "+ final_appkey);
boolean checkSign = SnsSigCheck.verifySig("GET", "/delivery/iapmanager", map, final_appkey+"&", sig);
if (!checkSign){
JsonResult jsonResult = new JsonResult();
jsonResult.setRet(5);
jsonResult.setMsg("sign error");
LOGGER.info("sign error ...");
LOGGER.info("======> end midas request...");
return jsonResult;
}
LOGGER.info("checkSign Success !!! ");
String userAddress = cuserDao.findUserInfo(gameServer,userId);
LOGGER.info("userAddress : "+ userAddress);
String ip;
String port;
//TODO RPC 发货
Result result = null;
if (userAddress != null){
String[] split = userAddress.split(":");
ip = split[0];
port = split[1];
LOGGER.info("RPC address --> IP : "+ ip + "; PORT : "+ port);
ClientAdapterPo<RPCRequestIFace.Client> rPCClient = null;
String serviceKey = getServiceKey(ServiceKey.RPCCore,ip,port);
LOGGER.info("serviceKey : "+ serviceKey);
try {
LOGGER.info("before RPC ... ");
rPCClient = ClientAdapterPo.getClientAdapterPo(serviceKey);
result = rPCClient.getClient().iapDeliveryGood(openid,userId,payitem,billno,amt,channel_id,token);
// result = rPCClient.getClient().testdeliveryGood(userId,"1002#200#2");
LOGGER.info("after RPC ... ");
} catch (Exception e) {
e.printStackTrace();
} finally {
rPCClient.returnObject(serviceKey);
}
}
JsonResult jsonResult = new JsonResult();
jsonResult.setRet(result.getResultCode());
jsonResult.setMsg(result.getResultMsg());
LOGGER.info("RPC result : ResultCode : "+ result.getResultCode()+"; ResultMsg : "+ result.getResultMsg());
LOGGER.info("======> end midas request...");
return jsonResult;
} catch (Exception e) {
e.printStackTrace();
JsonResult jsonResult = new JsonResult();
jsonResult.setRet(1);
jsonResult.setMsg("system error");
LOGGER.info("======> end midas request...");
return jsonResult;
}
}
public static String getServiceKey(String serviceName, String host, String port) {
StringBuilder sb = new StringBuilder();
return sb.append(serviceName).append("|")
.append(host).append("|")
.append(port).toString();
}
}

View File

@ -1,136 +0,0 @@
package com.jmfy.controller;
import com.jmfy.dto.CUserDao;
import com.jmfy.dto.JsonResult;
import com.jmfy.thrift.idl.RPCRequestIFace;
import com.jmfy.thrift.idl.Result;
import com.jmfy.thrift.pool.ClientAdapterPo;
import com.jmfy.thrift.pool.ServiceKey;
import com.jmfy.util.JsonUtil;
import com.jmfy.util.YsjConstant;
import com.jmfy.util.tencentutil.SnsSigCheck;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Enumeration;
import java.util.HashMap;
@RestController
public class ManagerController {
private static final Logger LOGGER = LoggerFactory.getLogger(ManagerController.class);
@Resource
private CUserDao cuserDao;
@RequestMapping(value = "/manager")
public JsonResult deliveryGoods(HttpServletRequest request){
try {
LOGGER.info("======> start midas request...");
HashMap<String, String> map = JsonUtil.getInstence().getParameterMap(request);
// String app_metadata = new StringBuffer()
// // ios 0/android 1
// .append(cbiData.getPlatId()).append("*")
// //wx:1;qq:2(和idip保持一致)
// .append(cbiData.getMyLoginChannel()).append("*")
// // 登录的游戏服务器大区id
// .append(cbiData.getGameSvrId()).append("*")
// // 登录的游戏服务器小区编号
// .append(this.coreServerAutoConfiguration.getConfig().getArea()).append("*")
// //用户id
// .append(cbiData.getUid()).append("*")
// //1:内网测试0:正常线上
// .append(this.serverProperties.getIsLAN()).append("*")
// //游戏自生成orderid
// .append(orderId).toString();
String sig = map.get("sig");
String[] serverParam = map.get("appmeta").split("\\*");
int plat = Integer.parseInt(serverParam[0]);
int channel = Integer.parseInt(serverParam[1]);
int gameServer = Integer.parseInt(serverParam[2]);
int area = Integer.parseInt(serverParam[3]);
int userId = Integer.parseInt(serverParam[4]);
int sendBox = Integer.parseInt(serverParam[5]);
String serverOrder = serverParam[6];
String openid = map.get("openid");
String payitem = map.get("payitem");
String billno = map.get("billno");
String amt = map.get("amt");
String channel_id = map.get("channel_id");
String token = map.get("token");
String final_appkey = YsjConstant.Midas_Buy_Android_Appkey_Test;
if (sendBox == 0){
final_appkey = YsjConstant.Midas_Buy_Android_Appkey;
}
LOGGER.info("final_appkey : "+ final_appkey);
boolean checkSign = SnsSigCheck.verifySig("GET", "/delivery/manager", map, final_appkey+"&", sig);
if (!checkSign){
JsonResult jsonResult = new JsonResult();
jsonResult.setRet(5);
jsonResult.setMsg("sign error");
LOGGER.info("sign error ...");
LOGGER.info("======> end midas request...");
return jsonResult;
}
LOGGER.info("checkSign Success !!! ");
String userAddress = cuserDao.findUserInfo(gameServer,userId);
LOGGER.info("userAddress : "+ userAddress);
String ip;
String port;
//TODO RPC 发货
Result result = null;
if (userAddress != null){
String[] split = userAddress.split(":");
ip = split[0];
port = split[1];
LOGGER.info("RPC address --> IP : "+ ip + "; PORT : "+ port);
ClientAdapterPo<RPCRequestIFace.Client> rPCClient = null;
String serviceKey = getServiceKey(ServiceKey.RPCCore,ip,port);
LOGGER.info("serviceKey : "+ serviceKey);
try {
LOGGER.info("before RPC ... ");
rPCClient = ClientAdapterPo.getClientAdapterPo(serviceKey);
result = rPCClient.getClient().deliveryGood(openid,userId,payitem,billno,amt,channel_id,token,serverOrder);
LOGGER.info("after RPC ... ");
} catch (Exception e) {
e.printStackTrace();
} finally {
rPCClient.returnObject(serviceKey);
}
}
JsonResult jsonResult = new JsonResult();
jsonResult.setRet(result.getResultCode());
jsonResult.setMsg(result.getResultMsg());
LOGGER.info("RPC result : ResultCode : "+ result.getResultCode()+"; ResultMsg : "+ result.getResultMsg());
LOGGER.info("======> end midas request...");
return jsonResult;
} catch (Exception e) {
e.printStackTrace();
JsonResult jsonResult = new JsonResult();
jsonResult.setRet(1);
jsonResult.setMsg("system error");
LOGGER.info("======> end midas request...");
return jsonResult;
}
}
public static String getServiceKey(String serviceName, String host, String port) {
StringBuilder sb = new StringBuilder();
return sb.append(serviceName).append("|")
.append(host).append("|")
.append(port).toString();
}
}

View File

@ -6,8 +6,8 @@ import com.jmfy.thrift.idl.Result;
import com.jmfy.thrift.pool.ClientAdapterPo;
import com.jmfy.thrift.pool.ServiceKey;
import com.jmfy.util.JsonUtil;
import com.jmfy.util.KTSDKConstans;
import com.jmfy.util.MD5Util;
import com.jmfy.util.YsjConstant;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestMapping;
@ -27,65 +27,43 @@ public class RechargeController {
@RequestMapping(value = "/callback")
public String callback(HttpServletRequest request) throws Exception {
HashMap<String, String> parameterMap = JsonUtil.getInstence().getParameterMap(request);
String pOrderId = parameterMap.get("pOrderId");
String orderId = parameterMap.get("orderId");
String userId = parameterMap.get("userId");
String creditId = parameterMap.get("creditId");
String currency = parameterMap.get("currency");
String amount = parameterMap.get("amount");
String rCurrency = parameterMap.get("RCurrency");
String rAmount = parameterMap.get("RAmount");
String gameCode = parameterMap.get("gameCode");
String serverCode = parameterMap.get("serverCode");
String stone = parameterMap.get("stone");
String stoneType = parameterMap.get("stoneType");
String activityExtra = parameterMap.get("activityExtra");
String productID = parameterMap.get("productID");
int amount = Integer.parseInt(parameterMap.get("amount"));
String orderTime = parameterMap.get("orderTime");
String sign = parameterMap.get("sign");
String time = parameterMap.get("time");
String remark = parameterMap.get("remark");
String productId = parameterMap.get("productId");
String payType = parameterMap.get("payType");
String sig = MD5Util.encrypByMd5(pOrderId+serverCode+creditId+userId+amount+stone+time+YsjConstant.TW_GameKey);
String roleUid = parameterMap.get("roleUid");
String sig = MD5Util.encrypByMd5(orderId+userId+productID+userId+amount+orderTime+roleUid+ KTSDKConstans.appkey);
if (!sig.equals(sign)){
LOGGER.info("callback==>creditId={},sin derify fail ",creditId);
FindPlayerResult findPlayerResult = new FindPlayerResult("1010","sign derify failed",null);
return JsonUtil.getInstence().getGson().toJson(findPlayerResult);
}
String plat = "android";
if (gameCode.equals(YsjConstant.TW_IOS_GameCode)){
plat = "ios";
}
CUserInfo cUserInfo = cuserDao.getUserInfobyNameAndServerId(userId, Integer.parseInt(serverCode),plat);
if (Integer.parseInt(creditId) != cUserInfo.getUserId()){
LOGGER.info("callback==>creditId={},uId={}",creditId,cUserInfo.getUserId());
ResultVo resultVo = new ResultVo("1038", "该用户无此角色");
LOGGER.info("callback==>roleUid={},sin derify fail ",roleUid);
ResultVo resultVo = new ResultVo(9, "sign fail");
return JsonUtil.getInstence().getGson().toJson(resultVo);
}
int isOfficial = 1; // 0: 官方充值 1:第三方充值
if (YsjConstant.GOOGLE.equals(payType) ||YsjConstant.APPSTORE.equals(payType) || YsjConstant.TSTORE.equals(payType) ){
isOfficial = 0;
CUserInfo cUserInfo = cuserDao.findUserInfo(Integer.parseInt(roleUid));
if(cUserInfo == null || !userId.equals(cUserInfo.getOpenId()) ){
ResultVo resultVo = new ResultVo(10, "该用户无此角色");
return JsonUtil.getInstence().getGson().toJson(resultVo);
}
CPayOrder cPayOrder = cuserDao.getCpayOrderByOrderId(pOrderId);
CPayOrder cPayOrder = cuserDao.getCpayOrderByOrderId(orderId);
ResultVo resultVo;
if (cPayOrder != null) {
LOGGER.info("callback==>creditId={},uId={} pOrderId is exit!!!",creditId,cUserInfo.getUserId());
resultVo = new ResultVo("0000", "send reward success !!!!");
LOGGER.info("callback==>creditId={},uId={} orderId is exit!!!",cUserInfo.getId(),cUserInfo.getOpenId());
resultVo = new ResultVo(12, "send reward success !!!!");
} else {
DateFormat dateTimeformat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String date = dateTimeformat.format(new Date());
cPayOrder = new CPayOrder();
cPayOrder.setOrderId(pOrderId);
cPayOrder.setServerId(serverCode);
cPayOrder.setOrderId(orderId);
cPayOrder.setServerId(cUserInfo.getServerid());
cPayOrder.setDelivery_time(date);
cPayOrder.setUserId(userId);
cPayOrder.setCpOrderId(remark);
cPayOrder.setCurrency(currency);
cPayOrder.setAmount(amount);
cPayOrder.setGameCurrency(stone);
cPayOrder.setPayType(payType);
cPayOrder.setCreditId(creditId);
Result result = null;
String userAddress = cuserDao.findUserInfo(Integer.parseInt(serverCode), Integer.parseInt(creditId));
String userAddress = cuserDao.findUserAddress(cUserInfo.getId());
if (userAddress != null) {
LOGGER.info("callback==>userAddress={} ",userAddress);
String[] split = userAddress.split(":");
@ -97,7 +75,7 @@ public class RechargeController {
LOGGER.info("serviceKey : " + serviceKey);
try {
rPCClient = ClientAdapterPo.getClientAdapterPo(serviceKey);
result = rPCClient.getClient().deliveryRecharge(Integer.parseInt(creditId),stone,productId, amount,activityExtra,isOfficial,plat,payType,pOrderId);
result = rPCClient.getClient().deliveryRecharge(cUserInfo.getId(),Integer.parseInt(productID),userId, orderId,Long.parseLong(orderTime),amount);
} catch (Exception e) {
LOGGER.info("callback=>",e);
}finally {
@ -108,18 +86,38 @@ public class RechargeController {
}
}
}
if (result != null && result.getResultCode() == 0) {
if (result != null && result.getResultCode() == 1) {
LOGGER.info(" callback==>RPC result : ResultCode : " + result.getResultCode() + "; ResultMsg : " + result.getResultMsg());
cuserDao.addCpayOrder(cPayOrder);
resultVo = new ResultVo("0000", "send reward success !!!!");
resultVo = new ResultVo(1, "send reward success !!!!");
} else {
resultVo = new ResultVo("0010", "send reward fail !!!!");
resultVo = new ResultVo(11, "send reward fail !!!!");
}
}
return JsonUtil.getInstence().getGson().toJson(resultVo);
}
public static void main (String [] args){
String s = MD5Util.encrypByMd5("test1323456789"+10074+10005686+"111112"+0.99+60+1550828074000L+YsjConstant.TW_GameKey);
System.out.println(s);
public static void main(String[] args) {
String orderId = "123";
String userId ="wy2588320";
String productID = "1";
int amount = 100;
String orderTime = "" + System.currentTimeMillis();
String roleUid ="10005403";
String sig = MD5Util.encrypByMd5(orderId+userId+productID+userId+amount+orderTime+roleUid+ KTSDKConstans.appkey);
System.out.println(sig);
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("orderId=").append(orderId).append("&");
stringBuilder.append("userId=").append(userId).append("&");
stringBuilder.append("productID=").append(productID).append("&");
stringBuilder.append("amount=").append(amount).append("&");
stringBuilder.append("orderTime=").append(orderTime).append("&");
stringBuilder.append("roleUid=").append(roleUid).append("&");
stringBuilder.append("sign=").append(sig);
System.out.println(stringBuilder);
}
}

View File

@ -1,116 +0,0 @@
package com.jmfy.controller;
import com.jmfy.dto.*;
import com.jmfy.thrift.idl.RPCRequestIFace;
import com.jmfy.thrift.idl.Result;
import com.jmfy.thrift.pool.ClientAdapterPo;
import com.jmfy.thrift.pool.ServiceKey;
import com.jmfy.util.JsonUtil;
import com.jmfy.util.MD5Util;
import com.jmfy.util.YsjConstant;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.net.URLDecoder;
import java.util.HashMap;
@RestController
public class SendMailController {
@Resource
private CUserDao cuserDao;
private static final Logger LOGGER = LoggerFactory.getLogger(SendMailController.class);
@RequestMapping(value = "/efun_reward")
public String efun_reward(HttpServletRequest request) throws Exception {
HashMap<String, String> parameterMap = JsonUtil.getInstence().getParameterMap(request);
String userId = parameterMap.get("userId");
String roleId = parameterMap.get("roleId");
String serialNo = parameterMap.get("serialNo");
String gameCode = parameterMap.get("gameCode");
String serverCode = parameterMap.get("serverCode");
String packageId = parameterMap.get("packageId");
String activityCode = parameterMap.get("activityCode");
String title = parameterMap.get("title");
String content = parameterMap.get("content");
String sign = parameterMap.get("sign");
//验证sign
String sig = MD5Util.encrypByMd5(userId+roleId+serverCode+gameCode+serialNo+packageId+YsjConstant.TW_GameKey);
if (!sig.equals(sign)){
LOGGER.info("efun_reward==>userId={},sin derify fail ",userId);
ResultVo resultVo = new ResultVo("1010", "sign derify failed");
return JsonUtil.getInstence().getGson().toJson(resultVo);
}
boolean isExist =cuserDao.getMailSeriaNo(serialNo);
//发奖流水号 不能重复
if (isExist){
LOGGER.info("efun_reward==>userId={},serialNo is exist ",userId);
ResultVo resultVo = new ResultVo("1006", "serialNo is exist");
return JsonUtil.getInstence().getGson().toJson(resultVo);
}
String plat = "android";
if (gameCode.equals(YsjConstant.TW_IOS_GameCode)){
plat = "ios";
}
CUserInfo cUserInfo = cuserDao.getUserInfobyNameAndServerId(userId, Integer.parseInt(serverCode),plat);
if (Integer.parseInt(roleId) != cUserInfo.getUserId()){
ResultVo resultVo = new ResultVo("1038", "no userInfo");
return JsonUtil.getInstence().getGson().toJson(resultVo);
}
// String rewardItems = packageId.replaceAll(",","#").replaceAll(";","|");
String rewardItems = getNewRewardItem(packageId);
String userAddress = cuserDao.findUserInfo(Integer.parseInt(serverCode), cUserInfo.getUserId());
LOGGER.info("efun_reward ==> userAddress={},rewardItems={} ",userAddress,rewardItems);
Result result = null;
if (userAddress != null){
String[] split = userAddress.split(":");
String ip = split[0];
String port = split[1];
LOGGER.info("efun_reward ==>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().sendMail(cUserInfo.getUserId(), rewardItems, URLDecoder.decode(title, "UTF-8"), URLDecoder.decode(content, "UTF-8"));
cuserDao.addMailSeriaNo(serialNo);
} catch (Exception e) {
e.printStackTrace();
}finally {
if (rPCClient != null){
rPCClient.returnObject(serviceKey);
}else{
LOGGER.info("callback=> rPCClient is null ");
}
}
}
ResultVo resultVo;
if (result!= null && result.getResultCode() == 0) {
resultVo = new ResultVo("1000", "send reward success !!!!");
} else {
resultVo = new ResultVo("1002", "send reward fail !!!!");
}
return JsonUtil.getInstence().getGson().toJson(resultVo);
}
private String getNewRewardItem(String packageId) {
StringBuilder rewardItems = new StringBuilder();
String[] split = packageId.split(";");
for (String string :split){
String[] split1 = string.split(",");
if (rewardItems.length() == 0){
rewardItems = new StringBuilder(split1[1] + "#" + split1[2] + "#" + split1[0]);
}else {
rewardItems.append("|").append(split1[1]).append("#").append(split1[2]).append("#").append(split1[0]);
}
}
return rewardItems.toString();
}
public static void main (String [] args){
String s = MD5Util.encrypByMd5("111112"+10005686+10074+"TWDK"+"skdfjskfdjslakdfjals"+"1,1001,100;1,1002,1000"+YsjConstant.TW_GameKey);
System.out.println(s);
}
}

View File

@ -1,64 +0,0 @@
package com.jmfy.controller;
import com.jmfy.dto.CUserDao;
import com.jmfy.dto.JsonResult;
import com.jmfy.thrift.idl.RPCRequestIFace;
import com.jmfy.thrift.idl.Result;
import com.jmfy.thrift.pool.ClientAdapterPo;
import com.jmfy.thrift.pool.ServiceKey;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@RestController
public class TestController {
private static final Logger LOGGER = LoggerFactory.getLogger(TestController.class);
@Resource
private CUserDao cuserDao;
@RequestMapping(value = "/test")
public JsonResult deliveryGoods(HttpServletRequest request){
int serverId = Integer.parseInt(request.getParameter("serverId"));
int userId = Integer.parseInt(request.getParameter("userId"));
String payitem = request.getParameter("payitem");
JsonResult jsonResult = new JsonResult();
String userAddress = cuserDao.findUserInfo(serverId,userId);
if (userAddress != null){
String[] split = userAddress.split(":");
String ip = split[0];
String port = split[1];
//TODO RPC 发货
Result result = null;
ClientAdapterPo<RPCRequestIFace.Client> rPCClient = null;
String serviceKey = getServiceKey(ServiceKey.RPCCore,ip,port);
try {
rPCClient = ClientAdapterPo.getClientAdapterPo(serviceKey);
result = rPCClient.getClient().testdeliveryGood(userId,payitem);
} catch (Exception e) {
e.printStackTrace();
} finally {
rPCClient.returnObject(serviceKey);
}
jsonResult.setRet(result.getResultCode());
jsonResult.setMsg(result.getResultMsg());
}else{
jsonResult.setRet(100);
jsonResult.setMsg("NO user !!!!");
}
return jsonResult;
}
public static String getServiceKey(String serviceName, String host, String port) {
StringBuilder sb = new StringBuilder();
return sb.append(serviceName).append("|")
.append(host).append("|")
.append(port).toString();
}
}

View File

@ -1,58 +0,0 @@
package com.jmfy.controller;
import com.jmfy.dto.*;
import com.jmfy.util.JsonUtil;
import com.jmfy.util.MD5Util;
import com.jmfy.util.YsjConstant;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@RestController
public class UserController {
@Resource
private CUserDao cuserDao;
private static final Logger LOGGER = LoggerFactory.getLogger(UserController.class);
@RequestMapping(value = "/getRoles")
public String getRoles(HttpServletRequest request) throws Exception {
HashMap<String, String> parameterMap = JsonUtil.getInstence().getParameterMap(request);
String userId = parameterMap.get("userId");
String serverCode = parameterMap.get("serverCode");
String sign = parameterMap.get("sign");
String sig = MD5Util.encrypByMd5(YsjConstant.TW_GameKey + userId + serverCode);
if (!sig.equals(sign)){
FindPlayerResult findPlayerResult = new FindPlayerResult("1010","sign derify failed",null);
return JsonUtil.getInstence().getGson().toJson(findPlayerResult);
}
List<CUserInfo> cUserInfoList = cuserDao.getUserInfo(userId, Integer.parseInt(serverCode));
if (null == cUserInfoList || cUserInfoList.size() == 0){
LOGGER.info("getRoles=>userName={},serverId={},cUserInfo is null",userId,serverCode);
FindPlayerResult findPlayerResult = new FindPlayerResult("1038","no userInfo",null);
return JsonUtil.getInstence().getGson().toJson(findPlayerResult);
}else {
List<PlayerInfo> playerInfos = new ArrayList<>();
for (CUserInfo cUserInfo:cUserInfoList){
CUser cUser = cuserDao.getCUser(cUserInfo.getUserId(), cUserInfo.getServerid());
if (cUser == null){
continue;
}
playerInfos.add(new PlayerInfo(cUser.getUserName(),cUser.getLevel(),String.valueOf(cUser.getId()),serverCode));
}
FindPlayerResult findPlayerResult = new FindPlayerResult("1000","success",playerInfos);
return JsonUtil.getInstence().getGson().toJson(findPlayerResult);
}
}
public static void main (String [] args){
String s = MD5Util.encrypByMd5(YsjConstant.TW_GameKey + "9000709253" + 10074);
System.out.println(s);
}
}

View File

@ -16,7 +16,7 @@ public class CPayOrder {
private String delivery_time;//发货时间
@Field(value = "serverId")
private String serverId;// 充值回调中的serverCode
private int serverId;//
@Field(value = "userId")
private String userId;//充值回调中的userId
@ -24,101 +24,58 @@ public class CPayOrder {
@Field(value = "cpOrderId")
private String cpOrderId;//原厂订单号通常为google或者ios充值才有充值回调中的remark
@Field(value = "currency")
private String currency;//币种
@Field(value = "amount")
private String amount;// 充值回调中的amount,通常为美金
@Field(value = "gameCurrency")
private String gameCurrency ;//充值回调中的stone, 不包含赠送部分 游戏币
@Field(value = "payType")
private String payType ;//充值类型
@Field(value = "creditId")
private String creditId ;//充值回调中的creditId
private int amount;// 充值回调中的amount,单位为分
public String getOrderId() {
return orderId;
}
public void setOrderId(String orderId) {
this.orderId = orderId;
}
public String getDelivery_time() {
return delivery_time;
}
public void setDelivery_time(String delivery_time) {
this.delivery_time = delivery_time;
public int getServerId() {
return serverId;
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getCpOrderId() {
return cpOrderId;
}
public void setOrderId(String orderId) {
this.orderId = orderId;
}
public void setDelivery_time(String delivery_time) {
this.delivery_time = delivery_time;
}
public void setServerId(int serverId) {
this.serverId = serverId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public void setCpOrderId(String cpOrderId) {
this.cpOrderId = cpOrderId;
}
public String getCurrency() {
return currency;
}
public void setCurrency(String currency) {
this.currency = currency;
}
public String getAmount() {
public int getAmount() {
return amount;
}
public void setAmount(String amount) {
public void setAmount(int amount) {
this.amount = amount;
}
public String getGameCurrency() {
return gameCurrency;
}
public void setGameCurrency(String gameCurrency) {
this.gameCurrency = gameCurrency;
}
public String getPayType() {
return payType;
}
public void setPayType(String payType) {
this.payType = payType;
}
public String getCreditId() {
return creditId;
}
public void setCreditId(String creditId) {
this.creditId = creditId;
}
public String getServerId() {
return serverId;
}
public void setServerId(String serverId) {
this.serverId = serverId;
}
@Override
public String toString() {
return "CPayOrder{" +
@ -126,11 +83,7 @@ public class CPayOrder {
", delivery_time='" + delivery_time + '\'' +
", userId='" + userId + '\'' +
", cpOrderId='" + cpOrderId + '\'' +
", currency='" + currency + '\'' +
", amount='" + amount + '\'' +
", gameCurrency='" + gameCurrency + '\'' +
", payType='" + payType + '\'' +
", creditId='" + creditId + '\'' +
'}';
}
}

View File

@ -1,648 +0,0 @@
package com.jmfy.dto;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;
import org.springframework.data.mongodb.core.mapping.Field;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
/**
* Created by justin on 14-7-28.
*
* mongodbDocument
*/
@Document(collection = "c_user")
public class CUser implements java.io.Serializable {
@Id
private int id;
@Field(value = "userName")
private String userName;
@Field(value = "sUserId")
private int sUserId;//模板id
@Field(value = "permission")
private int permission;
/**
*
*/
@Field(value = "level")
private int level;//用户等级
@Field(value = "exp")
private int exp;//当前经验
@Field(value = "vipLevel")
private int vipLevel; //用户vip等级
@Field(value = "img")
private String img;//头像
@Field(value = "createTime")
private long createTime; //创建时间
@Field(value = "lastLoginTime")
private long lastLoginTime; //最近一次登录
@Field(value = "outLineTime")
private long outLineTime; //离线时间
@Field(value = "cumulative_online_time")
private long cumulativeOnlineTime; //总累计时间
@Field(value = "curStamina")
private int curStamina;//体力
@Field(value = "maxStamina")
private int maxStamina;//体力
@Field(value = "gold")
private int gold;//金币
@Field(value = "gem")
private int gem;//宝石
@Field(value = "sys_gem")
private int sysGem;//宝石
@Field(value = "honorPoint")
private int honorPoint; // 荣誉点
@Field(value = "mHonorPoint")
private int mHonorPoint; // 中级荣誉点
@Field(value = "hHonorPoint")
private int hHonorPoint; // 高级荣誉点
@Field(value = "friendHeart")
private int friendHeart;//友情点
@Field(value = "banTime")
private long banTime;//禁言时间
@Field(value = "banReason")
private String banReason;//禁言原因
@Field(value = "vip_flush_time")
private long vipFlushTime;
@Field(value = "zero_flush_time")
private long zeroFlushTime;
@Field(value = "systemSetting") // 保存系统设置
private String systemSetting;
@Field(value = "totalForces")
private int totalForces; // 总战斗力
@Field(value = "award_level_set")
private Set<Integer> awardLevelSet;
@Field(value = "area_id")
private int areaId;
@Field(value = "award_stamina_time")
private long awardStaminaTime;//获取体力值得最后时间
@Field(value = "population_upper_limit")
private int populationUpperLimit;//关卡人口上限
@Field(value = "is_first_fail")
private int isFirstFail; //0:未触发 1:已触发
@Field(value = "novice_guide_id")
private String noviceGuideId; //新手引导BI记录Id
@Field(value = "danmu")
private String danmu; // 是否显示弹幕 "1" 显示, "0"不显示
@Field(value = "take_stamina_map")
private Map<Integer, Integer> takeStaminaMap = new ConcurrentHashMap<>();
@Field(value = "captain_id")
private String captainId; // 设为队长的英雄id
@Field(value = "skip_newer")
private int skipNewer; // 跳过剧情==1
@Field(value = "cum_login_time")
private int CumLoginTime;
@Field(value = "draw_daily_time")
private int drawDailyTime;//每日抽签累计领取次数
@Field(value = "draw_daily_state")
private int drawDailyState;//每日抽签1可领取 0不可领取
@Field(value = "is_privilege")
private int isPrivilege; //特权登录 0否 1是
@Field(value = "privilegedLoginTime")
private long privilegedLoginTime;
@Field(value = "recall")
private int recall;
@Field(value = "cumulative_recharge")
private int cumulativeRecharge;
@Field(value = "skinGold")
private int skinGold;
@Field(value = "head")
private int head;
@Field(value = "headFrame")
private int headFrame;
@Field(value = "clientVersion")
private String clientVersion;
@Field(value = "recNoticeTime")
private long recNoticeTime;
@Field(value = "core_address")
private String coreAddress;
@Field(value = "mission")
private UserMission mission;
@Field(value = "firstLogin")
private boolean firstLogin;
@Field(value = "friendTip")
private boolean friendTip;
@Field(value = "qq_vip")
private int qq_vip;//0不是会员1qq会员2超级会员
@Field(value = "error_gem")
private int errorGem;
@Field(value = "online")//1在线 0不在线
private int online;
@Field(value = "QQ_Group")//会长绑定QQ群号
private String QQGroup;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public int getsUserId() {
return sUserId;
}
public void setsUserId(int sUserId) {
this.sUserId = sUserId;
}
public int getPermission() {
return permission;
}
public void setPermission(int permission) {
this.permission = permission;
}
public int getLevel() {
return level;
}
public void setLevel(int level) {
this.level = level;
}
public int getExp() {
return exp;
}
public void setExp(int exp) {
this.exp = exp;
}
public int getVipLevel() {
return vipLevel;
}
public void setVipLevel(int vipLevel) {
this.vipLevel = vipLevel;
}
public String getImg() {
return img;
}
public void setImg(String img) {
this.img = img;
}
public long getCreateTime() {
return createTime;
}
public void setCreateTime(long createTime) {
this.createTime = createTime;
}
public long getLastLoginTime() {
return lastLoginTime;
}
public void setLastLoginTime(long lastLoginTime) {
this.lastLoginTime = lastLoginTime;
}
public long getOutLineTime() {
return outLineTime;
}
public void setOutLineTime(long outLineTime) {
this.outLineTime = outLineTime;
}
public long getCumulativeOnlineTime() {
return cumulativeOnlineTime;
}
public void setCumulativeOnlineTime(long cumulativeOnlineTime) {
this.cumulativeOnlineTime = cumulativeOnlineTime;
}
public int getCurStamina() {
return curStamina;
}
public void setCurStamina(int curStamina) {
this.curStamina = curStamina;
}
public int getMaxStamina() {
return maxStamina;
}
public void setMaxStamina(int maxStamina) {
this.maxStamina = maxStamina;
}
public int getGold() {
return gold;
}
public void setGold(int gold) {
this.gold = gold;
}
public int getGem() {
return gem;
}
public void setGem(int gem) {
this.gem = gem;
}
public int getSysGem() {
return sysGem;
}
public void setSysGem(int sysGem) {
this.sysGem = sysGem;
}
public int getHonorPoint() {
return honorPoint;
}
public void setHonorPoint(int honorPoint) {
this.honorPoint = honorPoint;
}
public int getmHonorPoint() {
return mHonorPoint;
}
public void setmHonorPoint(int mHonorPoint) {
this.mHonorPoint = mHonorPoint;
}
public int gethHonorPoint() {
return hHonorPoint;
}
public void sethHonorPoint(int hHonorPoint) {
this.hHonorPoint = hHonorPoint;
}
public int getFriendHeart() {
return friendHeart;
}
public void setFriendHeart(int friendHeart) {
this.friendHeart = friendHeart;
}
public long getBanTime() {
return banTime;
}
public void setBanTime(long banTime) {
this.banTime = banTime;
}
public String getBanReason() {
return banReason;
}
public void setBanReason(String banReason) {
this.banReason = banReason;
}
public long getVipFlushTime() {
return vipFlushTime;
}
public void setVipFlushTime(long vipFlushTime) {
this.vipFlushTime = vipFlushTime;
}
public long getZeroFlushTime() {
return zeroFlushTime;
}
public void setZeroFlushTime(long zeroFlushTime) {
this.zeroFlushTime = zeroFlushTime;
}
public String getSystemSetting() {
return systemSetting;
}
public void setSystemSetting(String systemSetting) {
this.systemSetting = systemSetting;
}
public int getTotalForces() {
return totalForces;
}
public void setTotalForces(int totalForces) {
this.totalForces = totalForces;
}
public Set<Integer> getAwardLevelSet() {
return awardLevelSet;
}
public void setAwardLevelSet(Set<Integer> awardLevelSet) {
this.awardLevelSet = awardLevelSet;
}
public int getAreaId() {
return areaId;
}
public void setAreaId(int areaId) {
this.areaId = areaId;
}
public long getAwardStaminaTime() {
return awardStaminaTime;
}
public void setAwardStaminaTime(long awardStaminaTime) {
this.awardStaminaTime = awardStaminaTime;
}
public int getPopulationUpperLimit() {
return populationUpperLimit;
}
public void setPopulationUpperLimit(int populationUpperLimit) {
this.populationUpperLimit = populationUpperLimit;
}
public int getIsFirstFail() {
return isFirstFail;
}
public void setIsFirstFail(int isFirstFail) {
this.isFirstFail = isFirstFail;
}
public String getNoviceGuideId() {
return noviceGuideId;
}
public void setNoviceGuideId(String noviceGuideId) {
this.noviceGuideId = noviceGuideId;
}
public String getDanmu() {
return danmu;
}
public void setDanmu(String danmu) {
this.danmu = danmu;
}
public Map<Integer, Integer> getTakeStaminaMap() {
return takeStaminaMap;
}
public void setTakeStaminaMap(Map<Integer, Integer> takeStaminaMap) {
this.takeStaminaMap = takeStaminaMap;
}
public String getCaptainId() {
return captainId;
}
public void setCaptainId(String captainId) {
this.captainId = captainId;
}
public int getSkipNewer() {
return skipNewer;
}
public void setSkipNewer(int skipNewer) {
this.skipNewer = skipNewer;
}
public int getCumLoginTime() {
return CumLoginTime;
}
public void setCumLoginTime(int cumLoginTime) {
CumLoginTime = cumLoginTime;
}
public int getDrawDailyTime() {
return drawDailyTime;
}
public void setDrawDailyTime(int drawDailyTime) {
this.drawDailyTime = drawDailyTime;
}
public int getDrawDailyState() {
return drawDailyState;
}
public void setDrawDailyState(int drawDailyState) {
this.drawDailyState = drawDailyState;
}
public int getIsPrivilege() {
return isPrivilege;
}
public void setIsPrivilege(int isPrivilege) {
this.isPrivilege = isPrivilege;
}
public long getPrivilegedLoginTime() {
return privilegedLoginTime;
}
public void setPrivilegedLoginTime(long privilegedLoginTime) {
this.privilegedLoginTime = privilegedLoginTime;
}
public int getRecall() {
return recall;
}
public void setRecall(int recall) {
this.recall = recall;
}
public int getCumulativeRecharge() {
return cumulativeRecharge;
}
public void setCumulativeRecharge(int cumulativeRecharge) {
this.cumulativeRecharge = cumulativeRecharge;
}
public int getSkinGold() {
return skinGold;
}
public void setSkinGold(int skinGold) {
this.skinGold = skinGold;
}
public int getHead() {
return head;
}
public void setHead(int head) {
this.head = head;
}
public int getHeadFrame() {
return headFrame;
}
public void setHeadFrame(int headFrame) {
this.headFrame = headFrame;
}
public String getClientVersion() {
return clientVersion;
}
public void setClientVersion(String clientVersion) {
this.clientVersion = clientVersion;
}
public long getRecNoticeTime() {
return recNoticeTime;
}
public void setRecNoticeTime(long recNoticeTime) {
this.recNoticeTime = recNoticeTime;
}
public String getCoreAddress() {
return coreAddress;
}
public void setCoreAddress(String coreAddress) {
this.coreAddress = coreAddress;
}
public UserMission getMission() {
return mission;
}
public void setMission(UserMission mission) {
this.mission = mission;
}
public boolean isFirstLogin() {
return firstLogin;
}
public void setFirstLogin(boolean firstLogin) {
this.firstLogin = firstLogin;
}
public boolean isFriendTip() {
return friendTip;
}
public void setFriendTip(boolean friendTip) {
this.friendTip = friendTip;
}
public int getQq_vip() {
return qq_vip;
}
public void setQq_vip(int qq_vip) {
this.qq_vip = qq_vip;
}
public int getErrorGem() {
return errorGem;
}
public void setErrorGem(int errorGem) {
this.errorGem = errorGem;
}
public int getOnline() {
return online;
}
public void setOnline(int online) {
this.online = online;
}
public String getQQGroup() {
return QQGroup;
}
public void setQQGroup(String QQGroup) {
this.QQGroup = QQGroup;
}
}

View File

@ -1,24 +1,13 @@
package com.jmfy.dto;
import java.util.List;
public interface CUserDao {
String findUserInfo(int serverId, int userId);
CUserInfo findUserInfo(int uid) throws Exception;
CUserInfo getUserInfobyNameAndServerId(String name,int serverId,String plat) throws Exception;
CUser getCUser(int userId, int serverid) throws Exception;
List<CPayOrder> getOrderInfoBydate(String agoDate);
String findUserAddress(int uid);
void addCpayOrder(CPayOrder cPayOrder);
CPayOrder getCpayOrderByOrderId(String pOrderId);
void addMailSeriaNo(String serialNo);
boolean getMailSeriaNo(String serialNo);
List<CUserInfo> getUserInfo(String userId, int serverId) throws Exception;
}

View File

@ -6,11 +6,11 @@ import org.springframework.data.mongodb.core.mapping.Field;
import java.util.Map;
@Document(collection="c_user_info")
@Document(collection="user_info")
public class CUserInfo {
@Id
private String id;
private int id;
@Field(value = "channel")
@ -25,23 +25,15 @@ public class CUserInfo {
@Field(value = "openId")
private String openId;
@Field(value = "userId")
private int userId;
@Field(value = "serverid")
private int serverid;
@Field(value = "time")
@Field(value = "createTime")
private String time;
@Field(value = "invent_code")
private boolean invent_code;
@Field(value = "utoken")
private String utoken;
@Field(value = "agreement")
private int agreement;
//key->0:游戏封号 ,1:安全封号 ,2 守护封号 value:封号截止时间|封号原因
@Field(value = "black_list_map")
private Map<Integer,String> blackListMap;
@ -50,108 +42,41 @@ public class CUserInfo {
@Field(value = "sealTime_length")
private Map<Integer,Integer> sealTimeLength ;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
public int getId() {
return id;
}
public String getChannel() {
return channel;
}
public void setChannel(String channel) {
this.channel = channel;
}
public String getSub_channel() {
return sub_channel;
}
public void setSub_channel(String sub_channel) {
this.sub_channel = sub_channel;
}
public String getPlatform() {
return platform;
}
public void setPlatform(String platform) {
this.platform = platform;
}
public String getOpenId() {
return openId;
}
public void setOpenId(String openId) {
this.openId = openId;
}
public int getUserId() {
return userId;
}
public void setUserId(int userId) {
this.userId = userId;
}
public int getServerid() {
return serverid;
}
public void setServerid(int serverid) {
this.serverid = serverid;
}
public String getTime() {
return time;
}
public void setTime(String time) {
this.time = time;
}
public boolean isInvent_code() {
return invent_code;
}
public void setInvent_code(boolean invent_code) {
this.invent_code = invent_code;
}
public String getUtoken() {
return utoken;
}
public void setUtoken(String utoken) {
this.utoken = utoken;
}
public int getAgreement() {
return agreement;
}
public void setAgreement(int agreement) {
this.agreement = agreement;
}
public Map<Integer, String> getBlackListMap() {
return blackListMap;
}
public void setBlackListMap(Map<Integer, String> blackListMap) {
this.blackListMap = blackListMap;
}
public Map<Integer, Integer> getSealTimeLength() {
return sealTimeLength;
}
public void setSealTimeLength(Map<Integer, Integer> sealTimeLength) {
this.sealTimeLength = sealTimeLength;
}
}

View File

@ -1,42 +0,0 @@
package com.jmfy.dto;
import java.util.List;
public class FindPlayerResult {
private String code;
private String message;
private List<PlayerInfo> list;
public FindPlayerResult(String code, String message, List<PlayerInfo> list){
this.code = code;
this.message = message;
this.list = list;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public List<PlayerInfo> getList() {
return list;
}
public void setList(List<PlayerInfo> list) {
this.list = list;
}
}

View File

@ -1,51 +0,0 @@
package com.jmfy.dto;
public class PlayerInfo {
private String name;
private int level;
private String roleid;
private String serverCode;
public PlayerInfo(String name, int level, String roleid, String serverCode){
this.name = name;
this.level = level;
this.roleid = roleid;
this.serverCode = serverCode;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getLevel() {
return level;
}
public void setLevel(int level) {
this.level = level;
}
public String getRoleid() {
return roleid;
}
public void setRoleid(String roleid) {
this.roleid = roleid;
}
public String getServerCode() {
return serverCode;
}
public void setServerCode(String serverCode) {
this.serverCode = serverCode;
}
}

View File

@ -3,20 +3,21 @@ package com.jmfy.dto;
public class ResultVo {
private String code;
private int code;
private String message;
public ResultVo(String code, String message){
public ResultVo(int code, String message){
this.code = code;
this.message = message;
}
public String getCode() {
public int getCode() {
return code;
}
public void setCode(String code) {
public void setCode(int code) {
this.code = code;
}

View File

@ -1,11 +0,0 @@
package com.jmfy.dto;
public class UserMission {
//数据累加项
private CumulationData cumulationData = new CumulationData();
public CumulationData getCumulationData() {
return cumulationData;
}
}

View File

@ -1,7 +1,6 @@
package com.jmfy.dto.impl;
import com.jmfy.dto.CPayOrder;
import com.jmfy.dto.CUser;
import com.jmfy.dto.CUserDao;
import com.jmfy.dto.CUserInfo;
import com.jmfy.redisProperties.RedisUserKey;
@ -24,35 +23,18 @@ import java.util.Map;
public class CUserDaoImpl implements CUserDao {
@Resource
private Connect connect ;
@Override
public String findUserInfo(int serverId, int userId) {
String userInfo = RedisUtil.getInstence().getObject(serverId+ RedisUserKey.Delimiter_colon +RedisUserKey.CUser_ServerInfo, Integer.toString(userId),String.class, -1);
if (userInfo==null){
userInfo = RedisUtil.getInstence().getOldObject(serverId+ RedisUserKey.Delimiter_colon +RedisUserKey.CUser_ServerInfo, Integer.toString(userId),String.class, -1);
}
return userInfo;
}
@Override
public CUserInfo getUserInfobyNameAndServerId(String name, int serverId,String plat) throws Exception {
public CUserInfo findUserInfo(int uid) throws Exception {
Query query = new Query();
Criteria cr = new Criteria();
MongoTemplate mongoTemplate = connect.getMongoTemplete("ysj_core");
cr.andOperator(Criteria.where("serverid").is(serverId), Criteria.where("openId").is(name));
query.addCriteria(cr);
CUserInfo cUserInfo = mongoTemplate.findOne(query, CUserInfo.class);
return cUserInfo;
MongoTemplate mongoTemplate = connect.getMongoTemplete("jl_core");
return mongoTemplate.findById(uid, CUserInfo.class);
}
@Override
public CUser getCUser(int userId, int serverid) throws Exception {
CUser cUser = RedisUtil.getInstence().getObject(serverid + RedisUserKey.Delimiter_colon + RedisUserKey.CUser_Key, Integer.toString(userId), CUser.class, 7 * 24 * 3600);
if (cUser == null) {
MongoTemplate mongoTemplete = connect.getMongoTemplete("ysj_" + serverid);
Query query = new Query(Criteria.where("_id").is(userId));
cUser = mongoTemplete.findOne(query, CUser.class);
}
return cUser;
public String findUserAddress(int uid) {
return RedisUtil.getInstence().getObject(RedisUserKey.USER_LOGIN_URL, Integer.toString(uid), String.class, -1);
}
@ -70,39 +52,4 @@ public class CUserDaoImpl implements CUserDao {
public CPayOrder getCpayOrderByOrderId(String pOrderId) {
return RedisUtil.getInstence().getObject(RedisUserKey.C_PAYORDER,pOrderId,CPayOrder.class,-1);
}
@Override
public void addMailSeriaNo(String serialNo) {
RedisUtil.getInstence().putObject(RedisUserKey.C_PAYORDER,serialNo,serialNo,-1);
}
@Override
public boolean getMailSeriaNo(String serialNo) {
String seria = RedisUtil.getInstence().getObject(RedisUserKey.C_PAYORDER, serialNo, String.class, -1);
if (seria == null || seria.isEmpty()){
return false;
}
return true;
}
@Override
public List<CUserInfo> getUserInfo(String userId, int serverId) throws Exception {
Query query = new Query();
Criteria cr = new Criteria();
MongoTemplate mongoTemplate = connect.getMongoTemplete("ysj_core");
cr.andOperator(Criteria.where("serverid").is(serverId), Criteria.where("openId").is(userId));
query.addCriteria(cr);
List<CUserInfo> cUserInfoList = mongoTemplate.find(query,CUserInfo.class);
return cUserInfoList;
}
@Override
public List<CPayOrder> getOrderInfoBydate(String agoDate) {
List<CPayOrder> orderInfoBydate = new ArrayList<>(); //C_PAYORDER_MAP:2019
Map<String, CPayOrder> map = RedisUtil.getInstence().getMap(RedisUserKey.C_PAYORDER_MAP+RedisUserKey.Delimiter_colon + agoDate, CPayOrder.class, -1);
for (Map.Entry<String, CPayOrder> entry:map.entrySet()){
orderInfoBydate.add(entry.getValue());
}
return orderInfoBydate;
}
}

View File

@ -3,10 +3,7 @@ package com.jmfy.redisProperties;
public class RedisUserKey {
public final static String Delimiter_colon = ":";
public final static String CUser_ServerInfo = "CUser_ServerInfo";
public final static String CUser_Key = "CUser_Key";
public static final String USER_LOGIN_URL = "USER_LOGIN_URL";
public final static String C_PAYORDER = "C_PAYORDER";
public final static String C_PAYORDER_MAP = "C_PAYORDER_MAP";
public final static String IP_AND_PROT_MAP = "IP_AND_PROT_MAP";
public final static String Barage_Key = "Barage_Key";
}

View File

@ -0,0 +1,16 @@
package com.jmfy.util;
public class KTSDKConstans {
public static String appid = "129213";
public static String appkey = "c0fb59eb68559b6c9c1463e4d5d0c806";
public static String appsecret = "d53b3e8ef74bf72d8aafce3a1c8671a0";
public static String androidVerify = "http://sujie.passport.ktsdk.com/user/verifyAccount";
public static String iosVerify = "http://sujie.passport.ktsdk.com/userios/verifyAccount";
public static void main(String[] args) {
boolean equals = "http://sujie.passport.ktsdk.com/user/verifyAccount".equals(androidVerify);
System.out.println(equals);
}
}

View File

@ -30,9 +30,4 @@ public class MD5Util {
}
return "";
}
public static void main(String[] args) {
String str = encrypByMd5(YsjConstant.TW_GameKey+"11231231"+"1");
}
}

View File

@ -79,6 +79,7 @@ public class MyStringRedisTemplate {
}
//设置密码
connectionFactory.setPassword(redisProperties.getPassword());
connectionFactory.setDatabase(redisProperties.getDatabase());
//初始化connectionFactory
connectionFactory.afterPropertiesSet();

View File

@ -201,6 +201,13 @@ public class RedisUtil {
return null;
}
public static void main(String[] args) {
String url = "60.1.125:7900";
Gson gson = new Gson();
System.out.println(gson.toJson(url));
System.out.println(gson.fromJson(gson.toJson(url),String.class));
}
/**
* Object
*
@ -367,8 +374,4 @@ public class RedisUtil {
delObject(type, key);
}
}
public void initServerIPandProt(ServerProperties serverProperties) {
String deliveryAddress = serverProperties.getDeliveryAddress();
RedisUtil.getInstence().putMapEntry(RedisUserKey.IP_AND_PROT_MAP, String.valueOf(9991),deliveryAddress,3,-1);
}
}

View File

@ -1,37 +0,0 @@
package com.jmfy.util;
/**
* Created by Marvin on 2017/10/20.
*/
public class YsjConstant {
public static String Midas_Buy_Goods = "/v3/r/mpay/buy_goods_m";
public static String Midas_Buy_Android_Appid = "1450013496";
public static String Midas_Buy_Ios_Appid = "1450013495";
public static String Midas_Buy_Android_Appkey = "l3JABkBf3iOWXGlFomyr9v8zTGMIFc27";
public static String Midas_Buy_Android_Appkey_Test = "LAhW7WH0jVRjGVkj1wL3fG1YJmCcO6TR";
public static String Midas_Buy_Ios_Appkey = "ntE3qTl1ZjSMurlwGvFLmPM6G1u3DKLX";
public static String Midas_Buy_Ios_Appkey_Test = "IJBg5GkaG3bfKhWJPfx8nzBTIwy04Uii";
public static String protocol_http = "http";
public static String protocol_https = "https";
//海外相关
public static String TW_GameKey= "DB9191DCD40233D18E1DDE8382204AD9";
public static String TW_IOS_GameCode= "twysjios";
public static String TW_ANDROID_GameCode= "twysj";
public static String GOOGLE = "google";
public static String APPSTORE = "appstore";
public static String TSTORE = "tstore";
}

View File

@ -1,9 +1,5 @@
package com.jmfy.util.tencentutil;
// urlencode
import com.jmfy.controller.ManagerController;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

View File

@ -2,12 +2,13 @@
server.port=9991
##contextPath
server.context-path=/delivery
server.deliveryAddress=60.1.1.12:9991
server.deliveryAddress=60.1.1.215:9991
# redis config
#spring.redis.host = 150.116.94.74
spring.redis.host = 60.1.1.14
spring.redis.port = 6379
spring.redis.password =
spring.redis.database=13
spring.redis.expireTime = -1
#spring.redis.sentine = 10.10.13.3:26379#10.10.13.2:26379#10.10.13.4:26379

View File

@ -1,11 +1,12 @@
echo off
echo "======first del java src files======"
del C:\ljsd\delivery-server\src\main\thrift\idl\gen-java\com\jmfy\thrift\idl\*.java
del C:\ljsd\delivery-server\src\main\java\com\jmfy\thrift\idl\*.java
del E:\sdkdel\delivery-server\src\main\thrift\idl\gen-java\com\jmfy\thrift\idl\*.java
del E:\sdkdel\delivery-server\src\main\java\com\jmfy\thrift\idl\*.java
echo "======gen java src files======"
for %%i in (".\*.thrift") do thrift-0.9.2 --gen java %%i
echo "=======begin to copy src files======"
copy .\gen-java\com\jmfy\thrift\idl\*.java C:\ljsd\delivery-server\src\main\java\com\jmfy\thrift\idl /y
copy .\gen-java\com\jmfy\thrift\idl\*.java E:\sdkdel\delivery-server\src\main\java\com\jmfy\thrift\idl /y
echo on
pause

View File

@ -7,15 +7,5 @@ struct Result {
}
service RPCRequestIFace{
Result deliveryGood(1:string openid, 2:i32 userId, 3:string payitem, 4:string billno, 5:string amt,
6:string channel_id, 7:string token, 8:string serverOrder) throws (1:common.InvalidOperException ouch);
Result iapDeliveryGood(1:string openid, 2:i32 userId, 3:string payitem, 4:string billno, 5:string amt,
6:string channel_id, 7:string token) throws (1:common.InvalidOperException ouch);
Result testdeliveryGood(1:i32 userId, 2:string payitem) throws (1:common.InvalidOperException ouch);
Result deliveryRecharge(1:i32 userId, 2:string stone,3: string productId,4: string amount,5: string activityExtra, 6:i32 isOfficial,7:string plat,8:string paymentType,9:string orderId) throws (1:common.InvalidOperException ouch);
Result sendMail(1:i32 userId, 2:string rewardItems,3:string title,4:string content) throws (1:common.InvalidOperException ouch);
Result deliveryRecharge(1:i32 uid, 2:i32 goodsId,3: string openId,4: string orderId,5: i64 orderTime, 6:i32 amount);
}