ComplexChannelFrozen.php 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. <?php
  2. /**
  3. * 聚合渠道冻结管理
  4. *
  5. * @category Controller
  6. * @author SHUI
  7. * @since 2018/9/11
  8. */
  9. namespace app\admin\controller;
  10. use think\Db;
  11. use app\common\model\Game;
  12. use think\Exception;
  13. class ComplexChannelFrozen extends Admin {
  14. public function _initialize() {
  15. parent::_initialize();
  16. $this->complexChannelFrozenModel = $this->nwModel('complex_channel_frozen');
  17. $tmpSelfGameList = model('Common/Game')->getAllByCondition('id,name', [],'','self');
  18. $selfGameList = array();
  19. foreach ($tmpSelfGameList as $game) {
  20. $selfGameList[ $game['id']] = $game;
  21. }
  22. $this->selfGameList = $selfGameList;
  23. }
  24. public function index() {
  25. $channelId = input('channel_id');
  26. $gameId = input('game_id');
  27. $where = ['channel_type' => 1];
  28. if ($channelId) {
  29. $where['channel_id'] = $channelId;
  30. }
  31. if ($gameId) {
  32. $where['game_id'] = $gameId;
  33. }
  34. $channleFrozen = $this->complexChannelFrozenModel
  35. ->where($where)
  36. ->order("id DESC")
  37. ->paginate(10, false, ['query' => $where]);
  38. $gameList = $this->selfGameList;
  39. $channelList = model('Common/ComplexChannelModel')->getAllByCondition('id,name',['flag'=>4]);
  40. $this->assign('channel_list', $channelList);
  41. $this->assign('game_list', $gameList);
  42. $this->assign('channel_id', $channelId);
  43. $this->assign('game_id', $gameId);
  44. $this->assign('total', $channleFrozen->total());
  45. $this->assign("page", $channleFrozen->render());
  46. $this->assign("channle_frozen", $channleFrozen);
  47. return $this->fetch();
  48. }
  49. /**
  50. * 添加冻结渠道
  51. *
  52. * @return mixed
  53. */
  54. public function add() {
  55. $gameList = $this->selfGameList;
  56. $channelList = model('Common/ComplexChannelModel')->getAllByCondition('id,name',['flag'=>4]);
  57. $this->assign('channel_list', $channelList);
  58. $this->assign('game_list', $gameList);
  59. return $this->fetch();
  60. }
  61. public function addPost() {
  62. $result = $this->validate($this->request->param(), 'ChannelFrozen');
  63. if ($result !== true) {
  64. $this->error($result);
  65. } else {
  66. $gameId = input('game_id', 0, 'intval');
  67. $channelId = input('channel_id', 0, 'intval');
  68. $result = $this->complexChannelFrozenModel
  69. ->field('id')
  70. ->where(['game_id' => $gameId, 'channel_id' => $_POST['channel_id']])
  71. ->find();
  72. if (!empty($result)) {
  73. $this->error("数据已存在!id: " . $result['id']);
  74. }
  75. $_POST['channel_type'] = 1;
  76. $_POST['create_time'] = time();
  77. $result = $this->complexChannelFrozenModel->insertGetId($_POST);
  78. if ($result !== false) {
  79. $gameName = model('Game')->where(['id' => $gameId])->value('name');
  80. $channelName = model('ComplexChannelModel')->where(['id' => $channelId])->value('name');
  81. $loginFlag = intval($_POST['member_login']) ? '已禁止' : '未禁止';
  82. $registerFlag = intval($_POST['register']) ? '已禁止' : '未禁止';
  83. $consumeFlag = intval($_POST['consume']) ? '已禁止' : '未禁止';
  84. //写入日志
  85. $this->insertLog($this->current_node, "冻结聚合渠道:{$channelName},游戏:{$gameName},登录:{$loginFlag},新增:{$registerFlag},消费:{$consumeFlag}", 53);
  86. $this->success("添加成功!", url("complex_channel_frozen/index"));
  87. } else {
  88. $this->error("添加失败!");
  89. }
  90. }
  91. }
  92. /**
  93. * 操作禁止
  94. */
  95. public function ban()
  96. {
  97. $id = $this->request->param('id', 0, 'intval');
  98. $action = input('action');
  99. if (!empty($id) && !empty($action)) {
  100. $result = $this->complexChannelFrozenModel->where(["id" => $id])->setField($action, '1');
  101. if ($result !== false) {
  102. //写入日志
  103. $data = $this->complexChannelFrozenModel->where(["id"=>$id])->find();
  104. $gameName = model('Game')->where(['id' => $data['game_id']])->value('name');
  105. $channelName = model('ComplexChannelModel')->where(['id' => $data['channel_id']])->value('name');
  106. $loginFlag = intval($data['member_login']) ? '已禁止' : '未禁止';
  107. $registerFlag = intval($data['register']) ? '已禁止' : '未禁止';
  108. $consumeFlag = intval($data['consume']) ? '已禁止' : '未禁止';
  109. $this->insertLog($this->current_node, "冻结聚合渠道:{$channelName},游戏:{$gameName},登录:{$loginFlag},新增:{$registerFlag},消费:{$consumeFlag}", 56);
  110. $this->success("禁止成功!");
  111. } else {
  112. $this->error("禁止失败!");
  113. }
  114. } else {
  115. $this->error('数据传入失败!');
  116. }
  117. }
  118. /**
  119. * 操作开启
  120. */
  121. public function cancelBan()
  122. {
  123. $id = $this->request->param('id', 0, 'intval');
  124. $action = input('action');
  125. if (!empty($id) && !empty($action)) {
  126. if ($action !== 'all') {
  127. $result = $this->complexChannelFrozenModel->where(["id" => $id])->setField($action, '0');
  128. } else {
  129. $result = $this->complexChannelFrozenModel->where(["id" => $id])->update([
  130. 'consume' => 0,
  131. 'member_login' => 0,
  132. 'register' => 0,
  133. ]);
  134. }
  135. if ($result !== false) {
  136. //写入日志
  137. $data = $this->complexChannelFrozenModel->where(["id"=>$id])->find();
  138. $gameName = model('Game')->where(['id' => $data['game_id']])->value('name');
  139. $channelName = model('ComplexChannelModel')->where(['id' => $data['channel_id']])->value('name');
  140. $loginFlag = intval($data['member_login']) ? '已禁止' : '未禁止';
  141. $registerFlag = intval($data['register']) ? '已禁止' : '未禁止';
  142. $consumeFlag = intval($data['consume']) ? '已禁止' : '未禁止';
  143. $this->insertLog($this->current_node, "冻结聚合渠道:{$channelName},游戏:{$gameName},登录:{$loginFlag},新增:{$registerFlag},消费:{$consumeFlag}", 56);
  144. $this->success("开启成功!");
  145. } else {
  146. $this->error("开启失败!");
  147. }
  148. } else {
  149. $this->error('数据传入失败!');
  150. }
  151. }
  152. }