RaffleLogController.php 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. <?php
  2. namespace plugin\admin\app\controller;
  3. use Illuminate\Support\Arr;
  4. use plugin\admin\app\model\RaffleLog;
  5. use support\Request;
  6. use support\Response;
  7. use support\exception\BusinessException;
  8. /**
  9. * 邀请规则
  10. */
  11. class RaffleLogController extends Crud
  12. {
  13. /**
  14. * @var RaffleLog
  15. */
  16. protected $model = null;
  17. /**
  18. * 构造函数
  19. * @return void
  20. */
  21. public function __construct()
  22. {
  23. $this->model = new RaffleLog();
  24. }
  25. /**
  26. * 浏览
  27. * @return Response
  28. */
  29. public function index(): Response
  30. {
  31. return view('raffle-log/index');
  32. }
  33. public function select(Request $request):Response
  34. {
  35. $param=$request->all();
  36. $data=RaffleLog::query()->with('userData:id,name,mobile')->with('raffle:id,name')->where(function ($query)use ($param){
  37. if(Arr::get($param,'id')){
  38. $query->where('id',$param['id']);
  39. }
  40. })
  41. ->whereExists(function ($query)use ($param){
  42. $query->from('wa_users')->whereRaw('wa_users.id=wa_raffle_log.user_id');
  43. if(Arr::get($param,'user_name')){
  44. $query->where('name','like','%'.$param['user_name'].'%');
  45. }
  46. if(Arr::get($param,'user_mobile')){
  47. $query->where('mobile','like','%'.$param['user_mobile'].'%');
  48. }
  49. });
  50. $data=$data->paginate(Arr::get($param,'limit',10))->toArray();
  51. foreach ($data['data'] as $k=>$v){
  52. $data['data'][$k]['user_name']=Arr::get($v['user_data'],'name');
  53. $data['data'][$k]['user_mobile']=Arr::get($v['user_data'],'mobile');
  54. $data['data'][$k]['raffle_title']=Arr::get($v['raffle'],'name');
  55. }
  56. return json(['code' => 0, 'data' => $data['data'], 'msg' => 'ok','count'=>$data['total']]);
  57. }
  58. /**
  59. * 插入
  60. * @param Request $request
  61. * @return Response
  62. * @throws BusinessException
  63. */
  64. public function insert(Request $request): Response
  65. {
  66. if ($request->method() === 'POST') {
  67. return parent::insert($request);
  68. }
  69. return view('raffle-log/insert');
  70. }
  71. /**
  72. * 更新
  73. * @param Request $request
  74. * @return Response
  75. * @throws BusinessException
  76. */
  77. public function update(Request $request): Response
  78. {
  79. if ($request->method() === 'POST') {
  80. return parent::update($request);
  81. }
  82. return view('raffle-log/update');
  83. }
  84. }