MemGameCache.php 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <?php
  2. /**
  3. * MemGameCache.php UTF-8
  4. * 玩家小号缓存
  5. *
  6. * @date : 2018/6/13 11:26
  7. *
  8. * @license 这不是一个自由软件,未经授权不许任何使用和传播。
  9. * @author : luowei <lw@huosdk.com>
  10. * @version : HUOSDK 8.0
  11. */
  12. namespace huoAccountDeal\controller;
  13. use huo\model\order\OrderModel;
  14. use huoAccountDeal\logic\MemGameLogic;
  15. use huolib\constant\OrderConst;
  16. use huolib\tool\StrUtils;
  17. class MemGameCache {
  18. public static function ins() {
  19. return new static();
  20. }
  21. /**
  22. *获取玩家小号Key
  23. *
  24. * @param string $mg_mem_id
  25. *
  26. * @return string
  27. */
  28. public function getMemGameIdKey($mg_mem_id) {
  29. return 'mem_game_id_key_'.$mg_mem_id;
  30. }
  31. /**
  32. * 获取玩家小号信息
  33. *
  34. * @param string $mg_mem_id
  35. *
  36. * @return array|bool|mixed
  37. */
  38. public function getInfoById($mg_mem_id) {
  39. // $_key = $this->getMemGameIdKey($mg_mem_id);
  40. // $_mem_game_data_json = Cache::get($_key);
  41. // $_mem_game_data = json_decode($_mem_game_data_json, true);
  42. // if (!is_array($_mem_game_data)) {
  43. // $_mem_game_data = $_mem_game_data_json;
  44. // }
  45. // if (!is_array($_mem_game_data) || empty($_mem_game_data)) {
  46. $_mem_game_data = (new MemGameLogic())->getInfoById($mg_mem_id);
  47. if (empty($_mem_game_data)) {
  48. return false;
  49. }
  50. // $this->saveMemGameCache($mg_mem_id, $_mem_game_data);
  51. // }
  52. //汇总玩家小号充值金额
  53. $_sum_money = (new OrderModel())->getTotalAmount(
  54. [
  55. 'mg_mem_id' => $mg_mem_id,
  56. 'status' => OrderConst::PAY_STATUS_SUC,
  57. ]
  58. );
  59. $_mem_game_data['sum_money'] = StrUtils::formatNumber($_sum_money);
  60. return $_mem_game_data;
  61. }
  62. // /**
  63. // * 保存玩家小号 cache 数据
  64. // *
  65. // * @param string $mg_mem_id
  66. // * @param array $mem_game_data
  67. // * @param int $ttl
  68. // */
  69. // public function saveMemGameCache($mg_mem_id, $mem_game_data, $ttl = 3600) {
  70. // $_key = $this->getMemGameIdKey($mg_mem_id);
  71. // Cache::set($_key, json_encode($mem_game_data), $ttl);
  72. // }
  73. //
  74. // /**
  75. // * 更新玩家小号信息
  76. // *
  77. // * @param string $mg_mem_id
  78. // * @param array $mem_game_data
  79. // *
  80. // * @return bool
  81. // */
  82. // public function updateMemGame($mg_mem_id, $mem_game_data) {
  83. // $_key = $this->getMemGameIdKey($mg_mem_id);
  84. // Cache::rm($_key);
  85. // //移除数据表不存在的字段
  86. // if (isset($mem_game_data['total_recharge'])) {
  87. // unset($mem_game_data['total_recharge']);
  88. // }
  89. //
  90. // return (new MemGameLogic())->updateMemGame($mg_mem_id, $mem_game_data);
  91. // }
  92. }