MemberCoinInfo.php 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. <?php
  2. /**
  3. * 前台注册用户管理控制器
  4. */
  5. namespace app\admin\controller;
  6. use app\common\library\MakeReport;
  7. use app\common\library\MakeReportGo;
  8. use app\common\model\Members as MembersModel;
  9. class MemberCoinInfo extends Admin
  10. {
  11. protected $membersModel;
  12. /**
  13. * 不进行父类的登录验证,所以增加构造方法重写了父类的初始化方法
  14. */
  15. protected function _initialize()
  16. {
  17. parent::_initialize();
  18. $this->membersModel = new MembersModel;
  19. }
  20. /**
  21. * 账户明细列表
  22. */
  23. public function getList()
  24. {
  25. $start_time = input('request.start_time', '', 'trim');
  26. $end_time = input('request.end_time', '', 'trim');
  27. $username = input('request.username', '', 'trim');
  28. $userid = input('request.userid', 0, 'intval');
  29. $type = input('type', '', 'trim');
  30. $where = [];
  31. // 获取查询日期
  32. if (!empty($start_time) || !empty($end_time)){
  33. $where['m.create_time'] = getTimeCondition($start_time,$end_time,false);
  34. }
  35. if (!empty($type)) {
  36. $where['m.type'] = $type;
  37. }
  38. //用户ID
  39. if ($userid) {
  40. $where['m.userid'] = $userid;
  41. }
  42. //用户名
  43. if ($username != '') {
  44. $where['cm.username'] = $username;
  45. }
  46. if (request()->isAjax() && input('download')) {
  47. // $makeReport = new MakeReportGo();
  48. $sql = model("MemberCoinInfo")->alias('m')
  49. ->field("m.userid,cm.username,m.amount,m.start_amount,m.result_amount,m.orderid,m.create_time,m.type")
  50. ->join('cy_members cm','cm.id=m.userid','left')
  51. ->where($where)
  52. ->order('m.create_time desc,m.id desc')
  53. ->fetchSql(true)->select();
  54. if((new MakeReportGo())->addTask('admin.memberCoinInfoList',$sql,session_id())){
  55. $this->success('报表生成的任务已经提交, 报表生成完成后,会及时通知您,请耐心稍等');
  56. }
  57. else{
  58. $this->error('报表生成任务不可重复提交,如遇到无法导出情况,建议修改查询条件解除当前状态,提交重新生成报表任务!');
  59. }
  60. }
  61. $list = model("MemberCoinInfo")->alias('m')
  62. ->field("m.id,m.userid,cm.username,m.amount,m.start_amount,m.result_amount,m.orderid,m.create_time,m.type,m.remarks")
  63. ->join('cy_members cm','cm.id=m.userid','left')
  64. ->where($where)
  65. ->order('m.create_time desc,m.id desc')
  66. ->paginate(20, false, ['query' => input('get.')]);
  67. $data = $list->toArray()['data'];
  68. $this->assign('list', $data);
  69. $this->assign('total', $list->total()); //总条数
  70. $this->assign('page', $list->render());
  71. $this->assign('start_time',$start_time);
  72. $this->assign('end_time', $end_time);
  73. return $this->fetch('get_list');
  74. }
  75. /**
  76. * 充值记录管理页-查看玩家账号
  77. */
  78. public function showUsername()
  79. {
  80. $userid = input('userid');
  81. if(empty($userid)){
  82. $this->error('玩家ID不能为空');
  83. }
  84. $username= model('Common/Members')->where(['id'=>$userid])->value('username');
  85. if(!empty($username)){
  86. //充值记录管理页
  87. $this->insertLog($this->current_node,'查看账号:'.$username,82);
  88. $this->result($username,1);
  89. }
  90. else{
  91. $this->error('玩家信息不存在');
  92. }
  93. }
  94. }