rechargeinfo.js 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204
  1. let mysql = require('mysql');
  2. let mysqlcn = require('../../terry/mysqlcn.js');
  3. let query = mysqlcn.query;
  4. let qs = require('querystring');
  5. let encryption = require('../ordinary/encryption.js');
  6. let http = require('http');
  7. const DAY_SEC = 86400
  8. let express = require('express');
  9. let router = express.Router();
  10. let get_recharge_info = function(req, res) {
  11. let real_ip = req.get("X-Real-IP") || req.get("X-Forwarded-For") || req.ip;
  12. console.log("post getorderid,host:%s, ip:%s,path:%s,time:%s",req.hostname,real_ip,req.path,new Date());
  13. let data = "";
  14. req.on("data",function(chunk){
  15. data += chunk;
  16. });
  17. req.on("end",function(){
  18. try{
  19. recharge_info(data,res);
  20. } catch(e) {
  21. console.log(e)
  22. res.send(JSON.stringify( {'erron':1,'desc': "fail"}));
  23. }
  24. });
  25. req.on("error",function(err){
  26. res.send(JSON.stringify( {'erron':1,'desc': "fail"}));
  27. });
  28. }
  29. // 日充值总数
  30. let get_day_recharge_all = function(serverid, time){
  31. let sql = "select ifnull(sum(money),0) total FROM payinfo where flag = 2 and serverid = ? and submittime between ? and ?"
  32. let values = [serverid, time, +time+DAY_SEC]
  33. sql = mysql.format(sql, values)
  34. query(sql, function(qerr,vals,fields_){
  35. if (qerr==null){
  36. console.log(vals[0].total);
  37. return vals[0].total
  38. }else{
  39. console.log("查询失败");
  40. try{
  41. res.send(JSON.stringify({ 'erron':'400','msg':'稍后请求'}));
  42. }
  43. catch(e){}
  44. }
  45. });
  46. }
  47. // 月充值总数
  48. let get_month_recharge_all = function(serverid, time){
  49. let sql = "select ifnull(sum(money),0) total FROM payinfo where flag = 2 and serverid = ? and submittime between ? and ?"
  50. let values = [serverid, +time-29*DAY_SEC, +time+DAY_SEC]
  51. sql = mysql.format(sql, values)
  52. query(sql, function(qerr,vals,fields_){
  53. if (qerr==null){
  54. console.log(vals[0].total);
  55. return vals[0].total
  56. }else{
  57. console.log(qerr);
  58. console.log("查询失败");
  59. try{
  60. res.send(JSON.stringify({ 'erron':'400','msg':'稍后请求'}));
  61. }
  62. catch(e){}
  63. }
  64. });
  65. }
  66. // 日充值玩家数量
  67. let get_day_recharge_player = function(serverid, time){
  68. let sql = "select ifnull(count(*),0) total FROM payinfo where flag = 2 and serverid = ? and submittime between ? and ?"
  69. let values = [serverid, time, +time+DAY_SEC]
  70. sql = mysql.format(sql, values)
  71. console.log("sql:%s",sql)
  72. query(sql, function(qerr,vals,fields_){
  73. if (qerr==null){
  74. console.log(vals[0].total);
  75. return vals[0].total
  76. }else{
  77. console.log(qerr);
  78. console.log("查询失败");
  79. try{
  80. res.send(JSON.stringify({ 'erron':'400','msg':'稍后请求'}));
  81. }
  82. catch(e){}
  83. }
  84. });
  85. }
  86. let recharge_info = function(args,res){
  87. let receipt = null
  88. try {
  89. receipt = qs.parse(args);//JSON.parse(args)
  90. } catch(e) {
  91. console.log("解析失败!");
  92. try {res.send("3");}
  93. catch(e){}
  94. return
  95. }
  96. const serverid = receipt.serverid
  97. const time = receipt.starttime
  98. let day_recharge = 0
  99. let month_recharge = 0
  100. let day_player = 0
  101. let sql = "select ifnull(sum(money),0) total FROM payinfo where flag = 2 and serverid = ? and submittime between ? and ?"
  102. let values = [serverid, time, +time+DAY_SEC]
  103. sql = mysql.format(sql, values)
  104. query(sql, function(qerr,vals,fields_){
  105. if (qerr==null){
  106. day_recharge = vals[0].total
  107. sql = "select ifnull(sum(money),0) total FROM payinfo where flag = 2 and serverid = ? and submittime between ? and ?"
  108. values = [serverid, +time-29*DAY_SEC, +time+DAY_SEC]
  109. sql = mysql.format(sql, values)
  110. query(sql, function(qerr,vals,fields_){
  111. if (qerr==null){
  112. month_recharge = vals[0].total
  113. sql = "select ifnull(count(*),0) total FROM payinfo where flag = 2 and serverid = ? and submittime between ? and ?"
  114. values = [serverid, time, +time+DAY_SEC]
  115. sql = mysql.format(sql, values)
  116. query(sql, function(qerr,vals,fields_){
  117. if (qerr==null){
  118. day_player = vals[0].total
  119. console.log("day_recharge:%d, month_recharge:%d, day_player:%d.", day_recharge, month_recharge, day_player)
  120. var returndata = JSON.stringify({
  121. 'erron': 0,
  122. 'msg': "",
  123. 'data': {
  124. 'day_recharge':day_recharge,
  125. 'month_recharge': month_recharge,
  126. 'day_player': day_player,
  127. }
  128. });
  129. console.log("查询充值数据:%s",returndata);
  130. res.send(returndata);
  131. }else{
  132. console.log(qerr);
  133. console.log("查询失败");
  134. try{
  135. res.send(JSON.stringify({ 'erron':'400','msg':'稍后请求'}));
  136. }
  137. catch(e){}
  138. }
  139. });
  140. }else{
  141. console.log(qerr);
  142. console.log("查询失败");
  143. try{
  144. res.send(JSON.stringify({ 'erron':'400','msg':'稍后请求'}));
  145. }
  146. catch(e){}
  147. }
  148. });
  149. }else{
  150. console.log("查询失败");
  151. try{
  152. res.send(JSON.stringify({ 'erron':'400','msg':'稍后请求'}));
  153. }
  154. catch(e){}
  155. }
  156. });
  157. // let sql = "SELECT * FROM services";
  158. // query(sql,function(qerr,vals,fields_){
  159. // if (qerr==null){
  160. // len = vals.length
  161. // let data = new Array()
  162. // for (let i = 0;i < vals.length; ++i){
  163. // console.log("查询服务器id:%s",vals[i].id);
  164. // // get_player_uid(vals[i],channel,account,vals[i].id,add_server);
  165. // data[i] = {
  166. // "server_id": vals[i].id,
  167. // "server_name": vals[i].name,
  168. // }
  169. // console.log("写入查询服务器id:%s",vals[i].id);
  170. // }
  171. // let returndata = JSON.stringify({
  172. // 'code': 0,
  173. // 'msg': "",
  174. // 'data': data,
  175. // });
  176. // console.log("查找mysql玩家角色服务器列表:%s",returndata);
  177. // // res.send(returndata);
  178. // }else{
  179. // console.log("打开mysql库中服务器列表失败");
  180. // try{
  181. // res.send(JSON.stringify({ 'erron':'400','msg':'稍后请求'}));
  182. // }
  183. // catch(e){}
  184. // }
  185. // });
  186. }
  187. router.post('/recharge_info', get_recharge_info);
  188. module.exports = router;