SignController.php 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. <?php
  2. namespace App\Http\Controllers\Admin;
  3. use App\Http\Models\Sign;
  4. use App\Models\GetRelief;
  5. use Illuminate\Http\Request;
  6. use App\Http\Controllers\PublicController;
  7. /**
  8. * 签到控制器
  9. */
  10. class SignController extends PublicController
  11. {
  12. /**
  13. * 视图加载
  14. *
  15. * @access public
  16. * @return array
  17. */
  18. public function index()
  19. {
  20. return view('admin.sign.index');
  21. }//end index()
  22. /**
  23. * 数据获取
  24. *
  25. * @access public
  26. * @param mixed $request 参数.
  27. * @return array
  28. */
  29. public function data(Request $request)
  30. {
  31. $signModel = new Sign;
  32. $getSignWhere = [];
  33. // 查询参数.
  34. if (strlen($request->get('userName'))) {
  35. $getSignWhere['name'] = $request->get('userName');
  36. }
  37. $startTime = strtotime(date('Y-m-d').'-6 day');
  38. $endTime = strtotime(date('Y-m-d').'+1 day');
  39. if (strlen($request->get('time'))) {
  40. $time = explode(',', ($request->get('time')));
  41. $startTime = strtotime($time[0]);
  42. $endTime = strtotime($time[1].'+1 day');
  43. }
  44. // 时间区间.
  45. $getSignBetween = [
  46. $startTime,
  47. $endTime,
  48. ];
  49. $getSignSelect = [
  50. 'getsign_id',
  51. 'getsign_identity',
  52. 'name',
  53. 'getsign_mony',
  54. 'getsign_begin_money',
  55. 'getsign_end_money',
  56. 'getsign_addtime',
  57. ];
  58. // 查询数据.
  59. $res = $signModel->getSignRecord($getSignSelect, $request->get('limit', 30), $getSignWhere, $getSignBetween);
  60. // 返回参数.
  61. $data = [
  62. 'code' => 0,
  63. 'msg' => '正在请求中...',
  64. 'count' => $res['total'],
  65. 'data' => $res['data'],
  66. ];
  67. return response()->json($data);
  68. }//end data()
  69. /**
  70. * 视图加载
  71. *
  72. * @access public
  73. * @param mixed $request 参数.
  74. * @return array
  75. */
  76. public function setting()
  77. {
  78. $signModel = new Sign;
  79. $getConfigSelect = [
  80. 'sign_data',
  81. 'sign_title',
  82. 'sign_name',
  83. ];
  84. $getDayWhere['sign_type'] = '1';
  85. // 获取周设置信息.
  86. $getDayConfig = $signModel->signConfig($getConfigSelect, $getDayWhere, '');
  87. $getMonthWhere['sign_type'] = '2';
  88. // 获取月设置信息.
  89. $getMonthConfig = $signModel->signConfig($getConfigSelect, $getMonthWhere, '');
  90. return view('admin.sign.setting', compact('getDayConfig', 'getMonthConfig'));
  91. }//end setting()
  92. /**
  93. * 设置
  94. *
  95. * @access public
  96. * @param mixed $request 参数.
  97. * @return array
  98. */
  99. public function onSetting(Request $request)
  100. {
  101. $signModel = new Sign;
  102. $allSignTitle = $signModel->signConfig('sign_title', '', '');
  103. $allSignTitleArr = [];
  104. foreach ($allSignTitle as $v) {
  105. $allSignTitleArr[] = $v['sign_title'];
  106. }
  107. $success = true;
  108. // 设置数据.
  109. foreach ($_REQUEST as $k => $v) {
  110. if (in_array($k, $allSignTitleArr) === true) {
  111. $upSignWhere['sign_title'] = $k;
  112. $upSignData = [
  113. 'sign_upTime' => time(),
  114. 'sign_data' => $v,
  115. ];
  116. $back = $signModel->upSignConfig($upSignWhere, $upSignData);
  117. if (empty($back) === true) {
  118. $success = false;
  119. }
  120. }
  121. }
  122. if ($success === true) {
  123. return redirect()->to(route('admin.sign.setting'))->with(['status' => '更新成功']);
  124. }
  125. return redirect()->to(route('admin.sign.setting'))->withErrors('系统错误');
  126. }//end onSetting()
  127. }