RechargeDetailController.php 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. <?php
  2. namespace App\Http\Controllers\Admin;
  3. use App\Http\Controllers\Controller;
  4. use Illuminate\Http\Request as Req;
  5. use Request;
  6. class RechargeDetailController extends Controller {
  7. function index() {
  8. # code...
  9. }
  10. function recharge(Req $req) {
  11. $request=array();
  12. $request['betnum_small']=isset($req->betnum_small)?trim($req->betnum_small):null;
  13. $request['betnum_big']=isset($req->betnum_big)?trim($req->betnum_big):null;
  14. $request['betmoney_small']=isset($req->betmoney_small)?trim($req->betmoney_small):null;
  15. $request['betmoney_big']=isset($req->betmoney_big)?trim($req->betmoney_big):null;
  16. $request['name']=isset($req->name)?trim($req->name):null;
  17. $request['status']=isset($req->status)?trim($req->status):null;
  18. $request['account_name']=isset($req->account_name)?trim($req->account_name):null;
  19. $request['star_time']=isset($req->star_time)?trim($req->star_time):null;
  20. $request['end_time']=isset($req->end_time)?trim($req->end_time):null;
  21. $dt = \App\Lib\DataTable\DataTable::init();
  22. $dt->setDataSource('/admin/RechargeDetail/recharges');
  23. $dt->setLang('state');
  24. $dt->addColsFields('account_name', array('sort' => false, 'toolbar' => '#userrecharge', 'width' => 120));
  25. $dt->addColsFields('name', array('sort' => false));
  26. $dt->addColsFields('betnum', array('width' => 110));
  27. $dt->addColsFields('betmoney');
  28. $dt->addColsFields('recharge_type', array('sort' => false));
  29. $dt->addColsFields('star_time');
  30. $dt->addColsFields('end_time');
  31. $dt->addColsFields('status', array('sort' => false, 'toolbar' => '#rechargeStatus'));
  32. $dt->setToolBar(array('view'), array('toolbar' => '#query_status','align' => 'left'));
  33. $dt->setPriKey('account_identity');
  34. // $dt->setPriKey('statuss');
  35. return view('admin.rechargedetail/recharge', $dt->render($request));
  36. }
  37. //报表查看
  38. function View(Req $req) {
  39. $id = $req->identity;
  40. $status = $req->status;
  41. if (empty($id)) {
  42. abort(404);
  43. }
  44. $dt = \App\Lib\DataTable\DataTable::init();
  45. $url = '/admin/RechargeDetail/withDetail?id=' . $id . '&status=' . $status;
  46. // $url = '/admin/RechargeDetail/withDetail?id=' . $id;
  47. $dt->setDataSource($url);
  48. $dt->setLang('rechargeDetail');
  49. $dt->addColsFields('account_name', array('sort' => false,'width' => '140'));
  50. $dt->addColsFields('id', array('width' => 110));
  51. $dt->addColsFields('order_id', array('width' => 360));
  52. $dt->addColsFields('old_money', array('width' => 150));//充值前
  53. $dt->addColsFields('money', array('width' => 150));
  54. $dt->addColsFields('money_cash', array('width' => 150)); //充值后
  55. $dt->addColsFields('recharge_type', array('sort' => false, 'width' => 140));
  56. $dt->addColsFields('apply_time', array('width' => 180));
  57. $dt->addColsFields('complete_time', array('width' => 180));
  58. $dt->setPriKey('identity');
  59. return view('admin.rechargedetail/view', $dt->render());
  60. }
  61. /**
  62. * 充值明细
  63. * 'with description'
  64. * @return 'type' 'description'
  65. */
  66. function withDetail(Req $req) {
  67. $id = $req->id;
  68. $tem = 'status';
  69. $status = $req->$tem;
  70. if (empty($id)) {
  71. abort(404);
  72. }
  73. $db = new \App\Models\Money_recharge();
  74. $data = $db::where('account_identity', $id)->where('status', $status)->orderBy('apply_time','desc')->get();
  75. if (!$data) {
  76. abort(404);
  77. }
  78. $data = $data->toArray();
  79. foreach ($data as $k => $v) {
  80. $data[$k]['old_money'] = sprintf("%.2f", $v['money_cash'] - $v['money']);
  81. $data[$k]['money_cash'] = sprintf("%.2f", $v['money_cash']);
  82. }
  83. return \App\Lib\DataTable\DataTable::init()->toJson($data, count($data));
  84. }
  85. /**
  86. *充值账单
  87. * [state description]
  88. * @return [type] [description]
  89. */
  90. function recharges() {
  91. $page = Request::has('page') ? Request::get('page') : 1;
  92. $list = Request::has('limit') ? Request::get('limit') : 10;
  93. $field = Request::has('field') ? Request::get('field') : 'star_time';
  94. $order = Request::has('order') ? Request::get('order') : 'desc';
  95. $account_name = Request::has('account_name') ? Request::get('account_name') : '';
  96. $name = Request::has('name') ? Request::get('name') : '';
  97. $status = Request::has('status') ? Request::get('status') : '';
  98. $betnum_small = Request::has('betnum_small') ? Request::get('betnum_small') : '';
  99. $betnum_big = Request::has('betnum_big') ? Request::get('betnum_big') : '';
  100. $betmoney_small = Request::has('betmoney_small') ? Request::get('betmoney_small') : '';
  101. $betmoney_big = Request::has('betmoney_big') ? Request::get('betmoney_big') : '';
  102. $sureblur = Request::has('sureblur') ? Request::get('sureblur') : '';
  103. $star_time = Request::get('star_time') ? Request::get('star_time').' 00:00:00' : '';
  104. $end_time = Request::get('end_time') ? Request::get('end_time').' 23:59:59' : '';
  105. $where = array();
  106. $having = array();
  107. if (!empty($account_name)) {
  108. if (empty($sureblur) || $sureblur == '模糊') {
  109. $where[] = array('account_name', 'like', '%' . $account_name . '%');
  110. } else {
  111. $where[] = array('account_name', '=', $account_name);
  112. }
  113. }
  114. if (!empty($name)) {
  115. $where[] = array('name', 'like', '%' . $name . '%');
  116. }
  117. /*if (!empty($status)) {
  118. if ($status == 4) {
  119. $where[] = array('status', '=', '0');
  120. } else {
  121. $where[] = array('status', '=', $status);
  122. }
  123. }*/
  124. if (!empty($star_time)) {
  125. $where[] = array('apply_time', '>=', $star_time);
  126. }
  127. if (!empty($end_time)) {
  128. $where[] = array('apply_time', '<=', $end_time);
  129. }
  130. if (!empty($betnum_small)) {
  131. $having[] = 'count("order_id")>=' . $betnum_small;
  132. }
  133. if (!empty($betnum_big)) {
  134. $having[] = 'count("order_id")<=' . $betnum_big;
  135. }
  136. if (!empty($betmoney_small)) {
  137. $having[] = 'sum("money")>=' . $betmoney_small;
  138. }
  139. if (!empty($betmoney_big)) {
  140. $having[] = 'sum("money")<=' . $betmoney_big;
  141. }
  142. $db = new \App\Models\Money_recharge;
  143. $data = $db->getTotal($where, 1, $list, 6, 'desc', 1, $having,$status);
  144. return \App\Lib\DataTable\DataTable::init()->toJson($data['data'], $data['total']);
  145. }
  146. }