734 lines
24 KiB
JavaScript
734 lines
24 KiB
JavaScript
var youle_synch = youle_synch || cls_mod.new("youle_synch", "synch", youle_app);
|
|
|
|
//mysql操作类
|
|
youle_synch.mysql = cls_mysql.new("http://localhost/mysql.php");
|
|
youle_synch.mysql_grade = cls_mysql.new("http://localhost/mysql_grade.php");
|
|
youle_synch.mysql_agent = cls_mysql.new("http://localhost/mysql_agent.php");
|
|
|
|
youle_synch.configlist = [];
|
|
youle_synch.configfile = [];
|
|
youle_synch.configfile.push("http://ylyxservice1.0791ts.cn/config/update_json.txt");
|
|
|
|
|
|
for (var i = 0; i < youle_synch.configfile.length; i++) {
|
|
var o_config = cls_youle_platform_config.new(youle_synch.configfile[i]);
|
|
o_config.method.get_config();
|
|
youle_synch.configlist.push(o_config);
|
|
};
|
|
|
|
youle_synch.do_readdata = function(){
|
|
if (youle_synch.isdoing == 1) {
|
|
return;
|
|
}
|
|
var compressWhiteList = function(data){
|
|
var dataStr = JSON.stringify(data);
|
|
if(dataStr.length > 6000){//超出
|
|
var cmpStr = LZString.compressToUTF16(dataStr);
|
|
return "zip"+cmpStr;
|
|
}else{
|
|
return dataStr;
|
|
}
|
|
}
|
|
var deCompressWhiteList = function(data){
|
|
var dataStr = data;
|
|
if(dataStr.indexOf("zip")==0){//压缩
|
|
var str = dataStr.slice(3,dataStr.length);
|
|
var deStr = LZString.decompressFromUTF16(str);
|
|
return JSON.parse(deStr);
|
|
}else{
|
|
return JSON.parse(dataStr);
|
|
}
|
|
}
|
|
//充房卡充星星
|
|
var update_gamedb_roomcard = function(agentid, playerid, changeroomcard, changebean, opttype, optid){
|
|
var db_callback_game1 = function(dbdata){
|
|
if (dbdata[0].result == 0){
|
|
do_result(optid, 1);
|
|
//通知各子游戏服务器
|
|
switch(parseInt(opttype)){
|
|
case 1: //玩家购卡
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_roomcard";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.playerid = playerid;
|
|
msg.data.opt = 1;
|
|
msg.data.roomcard = parseInt(dbdata[0].play_roomcard);
|
|
msg.data.change = changeroomcard;
|
|
break;
|
|
case 2: //代理充卡
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_roomcard";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.playerid = playerid;
|
|
msg.data.opt = 2;
|
|
msg.data.roomcard = parseInt(dbdata[0].play_roomcard);
|
|
msg.data.change = changeroomcard;
|
|
break;
|
|
case 3: //玩家索卡
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_roomcard";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.playerid = playerid;
|
|
msg.data.opt = 2;
|
|
msg.data.roomcard = parseInt(dbdata[0].play_roomcard);
|
|
msg.data.change = changeroomcard;
|
|
break;
|
|
case 11: //玩家购买星星
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_bean";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.playerid = playerid;
|
|
msg.data.opt = 1;
|
|
msg.data.bean = parseInt(dbdata[0].play_bean);
|
|
msg.data.change = changebean;
|
|
break;
|
|
case 12: //代理充值星星
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_bean";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.playerid = playerid;
|
|
msg.data.opt = 2;
|
|
msg.data.bean = parseInt(dbdata[0].play_bean);
|
|
msg.data.change = changebean;
|
|
break;
|
|
case 13: //玩家索要星星
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_bean";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.playerid = playerid;
|
|
msg.data.opt = 2;
|
|
msg.data.bean = parseInt(dbdata[0].play_bean);
|
|
msg.data.change = changebean;
|
|
break;
|
|
}
|
|
do_synch(optid, agentid, msg);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
var sql_game = "call cp_sales2_player_topup(?,?,?,?)";
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, playerid, changeroomcard, changebean], db_callback_game1);
|
|
}
|
|
//玩家绑定邀请码
|
|
var update_gamedb_bindinginvitecode = function(agentid, unionid, invitecode, optid){
|
|
var db_callback_game2 = function(dbdata){
|
|
if (dbdata[0].result == 0){
|
|
do_result(optid, 1);
|
|
//通知各子游戏服务器
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_invitecode";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.playerid = parseInt(dbdata[0].playerid);
|
|
msg.data.invitecode = invitecode;
|
|
do_synch(optid, agentid, msg);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
var sql_game = "call cp_sales2_player_bindinginvitecode(?,?,?)";
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, unionid, invitecode], db_callback_game2);
|
|
}
|
|
//新代理
|
|
var update_gamedb_newsalesman = function(agentid, channelid, salesid, salesinfo, optid){
|
|
var db_callback_game3 = function(dbdata){
|
|
if (dbdata[0].result == 0){
|
|
do_result(optid, 1);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
var sql_game = "call cp_sales2_new_salesman(?,?,?,?,?,?,?,?,?,?)";
|
|
var o_salesinfo = JSON.parse(salesinfo);
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, channelid, o_salesinfo.openid, o_salesinfo.unionid, o_salesinfo.nickname, o_salesinfo.avatar, o_salesinfo.sex, o_salesinfo.province, o_salesinfo.city, salesid], db_callback_game3);
|
|
}
|
|
//封禁代理
|
|
var update_gamedb_disabledsales = function(agentid, salesid, optid){
|
|
var db_callback_game4 = function(dbdata){
|
|
if (dbdata[0].result == 0){
|
|
do_result(optid, 1);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
var sql_game = "call cp_sales2_salesman_disabled(?,?)";
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, salesid], db_callback_game4);
|
|
}
|
|
//解封代理
|
|
var update_gamedb_abledsales = function(agentid, salesid, optid){
|
|
var db_callback_game5 = function(dbdata){
|
|
if (dbdata[0].result == 0){
|
|
do_result(optid, 1);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
var sql_game = "call cp_sales2_salesman_abled(?,?)";
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, salesid], db_callback_game5);
|
|
}
|
|
//解绑代理
|
|
var update_gamedb_disbinding_sales = function(agentid, salesid, optid){
|
|
var db_callback_game6 = function(dbdata){
|
|
if (dbdata[0].result == 0){
|
|
do_result(optid, 1);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
var sql_game = "call cp_sales2_disbinding_sales(?,?)";
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, salesid], db_callback_game6);
|
|
}
|
|
//解绑玩家
|
|
var update_gamedb_disbinding_player = function(agentid, playerid, optid){
|
|
var db_callback_game7 = function(dbdata){
|
|
if (dbdata[0].result == 0){
|
|
do_result(optid, 1);
|
|
//通知各子游戏服务器
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_invitecode";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.playerid = playerid;
|
|
msg.data.invitecode = null;
|
|
do_synch(optid, agentid, msg);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
var sql_game = "call cp_sales2_disbinding_player(?,?)";
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, playerid], db_callback_game7);
|
|
}
|
|
//封禁玩家
|
|
var update_gamedb_disabledplayer = function(agentid, playerid, optid){
|
|
var db_callback_game8 = function(dbdata){
|
|
if (dbdata[0].result == 0){
|
|
do_result(optid, 1);
|
|
//通知各子游戏服务器
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_playerstate";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.playerid = playerid;
|
|
msg.data.state = 1;
|
|
do_synch(optid, agentid, msg);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
var sql_game = "call cp_sales2_player_disabled(?,?)";
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, playerid], db_callback_game8);
|
|
}
|
|
//解封玩家
|
|
var update_gamedb_abledplayer = function(agentid, playerid, optid){
|
|
var db_callback_game9 = function(dbdata){
|
|
if (dbdata[0].result == 0){
|
|
do_result(optid, 1);
|
|
//通知各子游戏服务器
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_playerstate";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.playerid = playerid;
|
|
msg.data.state = 0;
|
|
do_synch(optid, agentid, msg);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
var sql_game = "call cp_sales2_player_abled(?,?)";
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, playerid], db_callback_game9);
|
|
}
|
|
//开通高级选项
|
|
var update_gamedb_advanced = function(agentid, playerid, shortcode, advanced, desone, destwo, lower_limit, announcement, optid){
|
|
var db_callback_game10 = function(dbdata){
|
|
if (dbdata[0].result == 0){
|
|
do_result(optid, 1);
|
|
//通知各子游戏服务器
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_shortcode";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.playerid = playerid;
|
|
msg.data.shortcode = shortcode;
|
|
msg.data.advanced = advanced;
|
|
msg.data.desone = desone;
|
|
msg.data.destwo = destwo;
|
|
msg.data.lower_limit = lower_limit;
|
|
msg.data.announcement = announcement;
|
|
do_synch(optid, agentid, msg);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
var sql_game = "call cp_game_player_advanced(?,?,?,?,?,?,?,?)";
|
|
var _shortcode = parseInt(shortcode);
|
|
var _advanced = parseInt(advanced);
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, playerid, _advanced, _shortcode, desone, destwo, lower_limit, announcement], db_callback_game10);
|
|
}
|
|
//设置短号白名单
|
|
var update_gamedb_whitelist = function(agentid, playerid, whitelist, optid){
|
|
if(agentid == "00bA05haB0d9ZC0fwGD09Q2OA30insbQ"){
|
|
do_result(optid, 1);
|
|
return;
|
|
}
|
|
var db_callback_game11 = function(dbdata){
|
|
if (dbdata[0].result == 0){
|
|
do_result(optid, 1);
|
|
//通知各子游戏服务器
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_whitelist";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.playerid = playerid;
|
|
msg.data.whitelist = whitelist;
|
|
do_synch(optid, agentid, msg);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
for(var i=0;i<whitelist.length;i++){
|
|
if(whitelist[i][2]){
|
|
whitelist[i][2] = parseInt(whitelist[i][2]);
|
|
}else{
|
|
whitelist[i][2] = 0;
|
|
}
|
|
}
|
|
var sql_game = "call cp_game_player_whitelist(?,?,?)";
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, playerid, compressWhiteList(whitelist)], db_callback_game11);
|
|
}
|
|
//系统抽成
|
|
var update_gamedb_coinrebate = function(agentid, mode1, set1, mode2, set2, optid){
|
|
var db_callback_game12 = function(dbdata){
|
|
if (dbdata[0].result == 0){
|
|
do_result(optid, 1);
|
|
//通知各子游戏服务器
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_coinrebate";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.mode1 = mode1;
|
|
msg.data.set1 = set1;
|
|
msg.data.mode2 = mode2;
|
|
msg.data.set2 = set2;
|
|
do_synch(optid, agentid, msg);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
var sql_game = "call cp_game_update_coinrebate(?,?,?,?,?)";
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, mode1, set1, mode2, set2], db_callback_game12);
|
|
}
|
|
//变更代理id
|
|
var update_gamedb_changesalesid = function(agentid, old_salesid, new_salesid, old_playerid, new_playerid, optid){
|
|
var db_callback_game13 = function(dbdata){
|
|
if (dbdata[0].result == 0){
|
|
do_result(optid, 1);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
var sql_game = "call cp_sales2_change_salesid(?,?,?,?,?)";
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, old_salesid, new_salesid, old_playerid, new_playerid], db_callback_game13);
|
|
}
|
|
//短号白名单中添加或修改一个玩家
|
|
var update_gamedb_add_whitelist = function(agentid, shortcode, playerid, paycode, charm, optid){
|
|
if(agentid == "00bA05haB0d9ZC0fwGD09Q2OA30insbQ"){
|
|
do_result(optid, 1);
|
|
return;
|
|
}
|
|
var db_callback_game = function(dbdata){
|
|
if (dbdata.length == 1){
|
|
var whitelist = [];
|
|
if (dbdata[0].play_whitelist){
|
|
whitelist = deCompressWhiteList(dbdata[0].play_whitelist);
|
|
for(var i=0;i<whitelist.length;i++){
|
|
if(whitelist[i][2]){
|
|
whitelist[i][2] = parseInt(whitelist[i][2]);
|
|
}else{
|
|
whitelist[i][2] = 0;
|
|
}
|
|
}
|
|
}
|
|
var found = false;
|
|
for (var i = 0; i < whitelist.length; i++) {
|
|
if (whitelist[i][0] == playerid){
|
|
whitelist[i][1] = paycode;
|
|
whitelist[i][2] = charm;
|
|
found = true;
|
|
break;
|
|
}
|
|
};
|
|
if (!found){
|
|
var newplayer = [];
|
|
newplayer[0] = playerid;
|
|
newplayer[1] = paycode;
|
|
newplayer[2] = charm;
|
|
whitelist.push(newplayer);
|
|
}
|
|
var sql_game2 = "update player set play_whitelist = ? where play_agentid = ? and play_shortcode = ?";
|
|
youle_synch.mysql.execsql("execsql", sql_game2, [compressWhiteList(whitelist), agentid, shortcode]);
|
|
do_result(optid, 1);
|
|
//通知各子游戏服务器
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_update_whitelist";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.shortcode = shortcode;
|
|
msg.data.whitelist = whitelist;
|
|
do_synch(optid, agentid, msg);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
var sql_game = "select * from player where play_agentid = ? and play_shortcode = ?";
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, shortcode], db_callback_game);
|
|
}
|
|
//短号白名单中删除一个玩家
|
|
var update_gamedb_del_whitelist = function(agentid, shortcode, playerid, optid){
|
|
if(agentid == "00bA05haB0d9ZC0fwGD09Q2OA30insbQ"){
|
|
do_result(optid, 1);
|
|
return;
|
|
}
|
|
var db_callback_game = function(dbdata){
|
|
if (dbdata.length == 1){
|
|
var whitelist = [];
|
|
if (dbdata[0].play_whitelist){
|
|
whitelist = deCompressWhiteList(dbdata[0].play_whitelist);
|
|
for(var i=0;i<whitelist.length;i++){
|
|
if(whitelist[i][2]){
|
|
whitelist[i][2] = parseInt(whitelist[i][2]);
|
|
}else{
|
|
whitelist[i][2] = 0;
|
|
}
|
|
}
|
|
}
|
|
for (var i = 0; i < whitelist.length; i++) {
|
|
if (whitelist[i][0] == playerid){
|
|
whitelist.splice(i, 1);
|
|
break;
|
|
}
|
|
};
|
|
|
|
var sql_game2 = "update player set play_whitelist = ? where play_agentid = ? and play_shortcode = ?";
|
|
youle_synch.mysql.execsql("execsql", sql_game2, [compressWhiteList(whitelist), agentid, shortcode]);
|
|
do_result(optid, 1);
|
|
//通知各子游戏服务器
|
|
var msg = {};
|
|
msg.app = "youle";
|
|
msg.route = "agent";
|
|
msg.rpc = "synch_update_whitelist";
|
|
msg.data = {};
|
|
msg.data.agentid = agentid;
|
|
msg.data.shortcode = shortcode;
|
|
msg.data.whitelist = whitelist;
|
|
do_synch(optid, agentid, msg);
|
|
} else {
|
|
do_result(optid, 0);
|
|
}
|
|
}
|
|
var sql_game = "select * from player where play_agentid = ? and play_shortcode = ?";
|
|
youle_synch.mysql.execsql("opensql", sql_game, [agentid, shortcode], db_callback_game);
|
|
}
|
|
|
|
var do_synch = function(optid, agentid, msg){
|
|
var get_iplist = function(agentid){
|
|
var iplist = [];
|
|
var paraname = "game_server_http";
|
|
var do_pushto_iplist = function(ip){
|
|
var idx = min_ary_indexof(iplist, ip);
|
|
if (idx == -1){
|
|
iplist.push(ip);
|
|
}
|
|
}
|
|
for (var i = 0; i < youle_synch.configlist.length; i++) {
|
|
var o_config = youle_synch.configlist[i];
|
|
if (!o_config){
|
|
continue;
|
|
}
|
|
if (!o_config.data || !o_config.data.agentlist){
|
|
continue;
|
|
}
|
|
var idx_agent = min_ary_indexof(o_config.data.agentlist, agentid, "agentid");
|
|
if (idx_agent == -1){
|
|
continue;
|
|
}
|
|
var o_agent = o_config.data.agentlist[idx_agent];
|
|
if (!o_agent){
|
|
continue;
|
|
}
|
|
if (o_config.data[paraname]){
|
|
do_pushto_iplist(o_config.data[paraname]);
|
|
}
|
|
if (o_agent[paraname]){
|
|
do_pushto_iplist(o_agent.data[paraname]);
|
|
}
|
|
if (!o_agent.gamelist){
|
|
continue;
|
|
}
|
|
for (var j = 0; j < o_agent.gamelist.length; j++) {
|
|
var o_game = o_agent.gamelist[j];
|
|
if (o_game[paraname]){
|
|
do_pushto_iplist(o_game[paraname]);
|
|
}
|
|
}
|
|
}
|
|
return iplist;
|
|
}
|
|
var dodo_synch = function(ip){
|
|
var cfg = {};
|
|
cfg.url = "http://" + ip + "/index.html";
|
|
cfg.type = "POST";
|
|
cfg.data = JSON.stringify(msg);
|
|
cfg.success = function(str){
|
|
try{
|
|
var obj = JSON.parse(str);
|
|
if (obj.data.state == 0){
|
|
var sql_grade = "insert into process_log (prlo_optid, prlo_result, prlo_time, prlo_ip) values(?,1,?,?)";
|
|
youle_synch.mysql_grade.execsql("execsql", sql_grade, [optid, min_now(), ip]);
|
|
} else {
|
|
var sql_grade = "insert into process_log (prlo_optid, prlo_result, prlo_time, prlo_ip, prlo_error) values(?,-1,?,?,?)";
|
|
youle_synch.mysql_grade.execsql("execsql", sql_grade, [optid, min_now(), ip, obj.error]);
|
|
console.log(min_now() + " 后台接口数据处理失败3:" + optid);
|
|
}
|
|
}catch(e){
|
|
console.log(ip + " " + str);
|
|
}
|
|
}
|
|
cfg.error = function(str){
|
|
var sql_grade = "insert into process_log (prlo_optid, prlo_result, prlo_time, prlo_ip, prlo_error) values(?,-1,?,?,?)";
|
|
youle_synch.mysql_grade.execsql("execsql", sql_grade, [optid, min_now(), ip, str]);
|
|
console.log(min_now() + " 后台接口数据处理失败2:" + optid);
|
|
}
|
|
min_http(cfg);
|
|
}
|
|
var agent_iplist = get_iplist(agentid);
|
|
//debugger;
|
|
// agent_iplist.push("127.0.0.1:1089");
|
|
// agent_iplist.push("127.0.0.1:2089");
|
|
//设置延时
|
|
for (var i = 0; i < agent_iplist.length; i++) {
|
|
dodo_synch(agent_iplist[i]);
|
|
}
|
|
}
|
|
var do_result = function(optid, result){
|
|
var sql_agent;
|
|
var sql_grade;
|
|
if (result == 1){
|
|
//成功
|
|
sql_agent = "update ct_user_process_log set is_process = is_process + 1 where id = ?";
|
|
sql_grade = "insert into process_log (prlo_optid, prlo_result, prlo_time) values(?,1,?)";
|
|
} else {
|
|
//失败
|
|
sql_agent = "update ct_user_process_log set is_process = -1 where id = ?";
|
|
sql_grade = "insert into process_log (prlo_optid, prlo_result, prlo_time) values(?,-1,?)";
|
|
console.log(min_now() + " 后台接口数据处理失败1:" + optid);
|
|
}
|
|
youle_synch.mysql_agent.execsql("execsql", sql_agent, [optid],
|
|
function(){
|
|
youle_synch.isdoing = 0;
|
|
});
|
|
youle_synch.mysql_grade.execsql("execsql", sql_grade, [optid, min_now()]);
|
|
}
|
|
var db_callback = function(dbdata){
|
|
var proList = {};
|
|
for (var i = 0; i < dbdata.length; i++){
|
|
try{
|
|
switch(parseInt(dbdata[i].oper_type)){
|
|
case 1: //购买房卡
|
|
youle_synch.isdoing = 1;
|
|
update_gamedb_roomcard(dbdata[i].to_agent, dbdata[i].to_user, dbdata[i].oper_data, null, dbdata[i].oper_type, dbdata[i].id);
|
|
break;
|
|
case 2: //代理转卡
|
|
youle_synch.isdoing = 1;
|
|
update_gamedb_roomcard(dbdata[i].to_agent, dbdata[i].to_user, dbdata[i].oper_data, null, dbdata[i].oper_type, dbdata[i].id);
|
|
break;
|
|
case 3: //索要房卡
|
|
youle_synch.isdoing = 1;
|
|
update_gamedb_roomcard(dbdata[i].to_agent, dbdata[i].to_user, dbdata[i].oper_data, null, dbdata[i].oper_type, dbdata[i].id);
|
|
break;
|
|
case 11: //购买星星
|
|
youle_synch.isdoing = 1;
|
|
update_gamedb_roomcard(dbdata[i].to_agent, dbdata[i].to_user, null, dbdata[i].oper_data, dbdata[i].oper_type, dbdata[i].id);
|
|
break;
|
|
case 12: //代理转星星
|
|
youle_synch.isdoing = 1;
|
|
update_gamedb_roomcard(dbdata[i].to_agent, dbdata[i].to_user, null, dbdata[i].oper_data, dbdata[i].oper_type, dbdata[i].id);
|
|
break;
|
|
case 13: //索要星星
|
|
youle_synch.isdoing = 1;
|
|
update_gamedb_roomcard(dbdata[i].to_agent, dbdata[i].to_user, null, dbdata[i].oper_data, dbdata[i].oper_type, dbdata[i].id);
|
|
break;
|
|
case 21: //成为代理
|
|
youle_synch.isdoing = 1;
|
|
update_gamedb_newsalesman(dbdata[i].to_agent, dbdata[i].to_channel, dbdata[i].to_user, dbdata[i].oper_data, dbdata[i].id);
|
|
break;
|
|
case 31: //封禁代理
|
|
youle_synch.isdoing = 1;
|
|
update_gamedb_disabledsales(dbdata[i].to_agent, dbdata[i].to_user, dbdata[i].id);
|
|
break;
|
|
case 32: //解封代理
|
|
youle_synch.isdoing = 1;
|
|
update_gamedb_abledsales(dbdata[i].to_agent, dbdata[i].to_user, dbdata[i].id);
|
|
break;
|
|
case 33: //封禁玩家
|
|
youle_synch.isdoing = 1;
|
|
update_gamedb_disabledplayer(dbdata[i].to_agent, dbdata[i].to_user, dbdata[i].id);
|
|
break;
|
|
case 34: //解封玩家
|
|
youle_synch.isdoing = 1;
|
|
update_gamedb_abledplayer(dbdata[i].to_agent, dbdata[i].to_user, dbdata[i].id);
|
|
break;
|
|
case 41: //解除绑定了我的玩家
|
|
youle_synch.isdoing = 1;
|
|
update_gamedb_disbinding_sales(dbdata[i].from_agent, dbdata[i].from_user, dbdata[i].id);
|
|
break;
|
|
case 42: //玩家解除绑定
|
|
youle_synch.isdoing = 1;
|
|
update_gamedb_disbinding_player(dbdata[i].from_agent, dbdata[i].from_user, dbdata[i].id);
|
|
break;
|
|
case 101: //绑定代理
|
|
youle_synch.isdoing = 1;
|
|
update_gamedb_bindinginvitecode(dbdata[i].to_agent, dbdata[i].oper_data, dbdata[i].from_user, dbdata[i].id);
|
|
break;
|
|
case 110: //开通高新选项
|
|
youle_synch.isdoing = 1;
|
|
var o_data = JSON.parse(dbdata[i].oper_data);
|
|
update_gamedb_advanced(dbdata[i].to_agent, dbdata[i].to_user, o_data.shortnum, o_data.maxroomnum, o_data.desone, o_data.destwo, o_data.lower_limit, o_data.announcement, dbdata[i].id);
|
|
break;
|
|
case 111: //设置短号白名单
|
|
youle_synch.isdoing = 1;
|
|
var o_data = JSON.parse(dbdata[i].oper_data);
|
|
update_gamedb_whitelist(dbdata[i].from_agent, dbdata[i].from_user, o_data, dbdata[i].id);
|
|
break;
|
|
case 112: //变更代理id
|
|
youle_synch.isdoing = 1;
|
|
var from_playerid = null;
|
|
var to_playerid = null;
|
|
if (dbdata[i].oper_data){
|
|
var o_data = JSON.parse(dbdata[i].oper_data);
|
|
if (o_data.from && o_data.to){
|
|
from_playerid = o_data.from;
|
|
to_playerid = o_data.to;
|
|
}
|
|
}
|
|
update_gamedb_changesalesid(dbdata[i].from_agent, dbdata[i].from_user, dbdata[i].to_user, from_playerid, to_playerid, dbdata[i].id);
|
|
break;
|
|
case 113: //短号白名单中添加或修改一个玩家
|
|
|
|
var o_data = JSON.parse(dbdata[i].oper_data);
|
|
if(!proList[dbdata[i].to_agent]){
|
|
proList[dbdata[i].to_agent]=[];
|
|
}
|
|
// if(!proList[dbdata[i].to_agent][o_data[0]]){
|
|
// proList[dbdata[i].to_agent][o_data[0]] = [];
|
|
// }
|
|
//console.log(proList,o_data);
|
|
if(proList[dbdata[i].to_agent].indexOf(o_data[0]) < 0){
|
|
proList[dbdata[i].to_agent].push(o_data[0]);
|
|
youle_synch.isdoing = 1;
|
|
//var o_data = JSON.parse(dbdata[i].oper_data);
|
|
console.log("添加",o_data[1]);
|
|
var shortcode = o_data[0];
|
|
var playerid = o_data[1];
|
|
var paycode = o_data[2];
|
|
var charm = o_data[3]; //短号魅力值
|
|
update_gamedb_add_whitelist(dbdata[i].from_agent, shortcode, playerid, paycode, charm, dbdata[i].id);
|
|
}
|
|
break;
|
|
case 114: //短号白名单中删除一个玩家
|
|
var o_data = JSON.parse(dbdata[i].oper_data);
|
|
if(!proList[dbdata[i].to_agent]){
|
|
proList[dbdata[i].to_agent]=[];
|
|
}
|
|
// if(!proList[dbdata[i].to_agent][o_data[0]]){
|
|
// proList[dbdata[i].to_agent][o_data[0]] = [];
|
|
// }
|
|
//console.log(proList,o_data);
|
|
if(proList[dbdata[i].to_agent].indexOf(o_data[0]) < 0){
|
|
proList[dbdata[i].to_agent].push(o_data[0]);
|
|
youle_synch.isdoing = 1;
|
|
console.log("删除",o_data[1]);
|
|
var shortcode = o_data[0];
|
|
var playerid = o_data[1];
|
|
update_gamedb_del_whitelist(dbdata[i].from_agent, shortcode, playerid, dbdata[i].id);
|
|
}
|
|
break;
|
|
case 201: //系统抽成
|
|
youle_synch.isdoing = 1;
|
|
var o_data = JSON.parse(dbdata[i].oper_data);
|
|
var rebate_mode1 = 0;
|
|
var rebate_set1 = 0;
|
|
var rebate_mode2 = 0;
|
|
var rebate_set2 = 0;
|
|
for (var j = 0; j < o_data.length; j++) {
|
|
if (o_data[j].type_id == "001"){
|
|
rebate_mode1 = 1;
|
|
rebate_set1 = parseInt(o_data[j].system_commission_rate);
|
|
}
|
|
if (o_data[j].type_id == "002"){
|
|
rebate_mode2 = 1;
|
|
rebate_set2 = parseInt(o_data[j].system_commission_rate);
|
|
}
|
|
}
|
|
update_gamedb_coinrebate(dbdata[i].to_agent, rebate_mode1, rebate_set1, rebate_mode2, rebate_set2, dbdata[i].id);
|
|
break;
|
|
}
|
|
} catch(e){}
|
|
}
|
|
}
|
|
var sql_agent = "select * from ct_user_process_log where is_process = 0 order by id";
|
|
youle_synch.mysql_agent.execsql("opensql", sql_agent, [], db_callback);
|
|
}
|
|
|
|
youle_synch.isdoing = 0;
|
|
// youle_synch.timer = min_ontime(youle_synch.do_readdata, 1000 * 30);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|