ShareCouponController.php 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: Administrator
  5. * Date: 2019/3/22
  6. * Time: 10:17
  7. */
  8. namespace app\backend\modules\coupon\controllers;
  9. use app\common\components\BaseController;
  10. use app\common\helpers\PaginationHelper;
  11. use app\common\helpers\Url;
  12. use app\common\models\coupon\ShoppingShareCouponLog;
  13. use app\common\services\ExportService;
  14. class ShareCouponController extends BaseController
  15. {
  16. public function log()
  17. {
  18. return view('coupon.share-log',[
  19. 'receive_uid' =>request()->receive_uid,
  20. ])->render();
  21. // $search = request()->search;
  22. // $list = ShoppingShareCouponLog::getList($search)->orderBy('id', 'desc')->paginate(15);
  23. // $pager = PaginationHelper::show($list->total(), $list->currentPage(), $list->perPage());
  24. //
  25. // if(!$search['time']) {
  26. //
  27. // $search['time']['start'] = date("Y-m-d H:i:s",time());
  28. // $search['time']['end'] = date("Y-m-d H:i:s",time());
  29. // }
  30. //
  31. // $data = [
  32. // 'list' => $list->toArray(),
  33. // 'pager' => $pager,
  34. // 'search' => $search,
  35. // ];
  36. //
  37. // return $this->successJson('ok',$data);
  38. // return view('coupon.share-log', [
  39. // 'list' => $list->toArray(),
  40. // 'pager' => $pager,
  41. // 'search' => $search,
  42. // ])->render();
  43. }
  44. public function shareLogData()
  45. {
  46. $search = request()->search;
  47. $list = ShoppingShareCouponLog::getList($search)->orderBy('id', 'desc')->paginate(15);
  48. $pager = PaginationHelper::show($list->total(), $list->currentPage(), $list->perPage());
  49. if(!$search['time']) {
  50. $search['time']['start'] = date("Y-m-d H:i:s",time());
  51. $search['time']['end'] = date("Y-m-d H:i:s",time());
  52. }
  53. $data = [
  54. 'list' => $list->toArray(),
  55. 'search' => $search,
  56. ];
  57. return $this->successJson('ok',$data);
  58. }
  59. public function export()
  60. {
  61. $search = request()->search;
  62. if($search['time_search']) {
  63. $search['time']['start'] = $search['time_start'];
  64. $search['time']['end'] = $search['time_end'];
  65. }
  66. $builder = ShoppingShareCouponLog::getList($search)->orderBy('id', 'desc');
  67. $export_page = request()->export_page ? request()->export_page : 1;
  68. $export_model = new ExportService($builder, $export_page);
  69. $file_name = date('Ymdhis', time()) . '优惠券领取发放记录导出';
  70. $export_data[0] = ['ID', '优惠券名称', '分享者', '领取者', '创建时间', '日志详情'];
  71. if ($export_model->builder_model->isEmpty()) {
  72. return $this->message('导出数据为空', Url::absoluteWeb('coupon.share-coupon.log'), 'error');
  73. }
  74. foreach ($export_model->builder_model as $key => $item) {
  75. $export_data[$key + 1] = [
  76. $item->id,
  77. $item->coupon_name,
  78. '昵称:'.$item['shareMember']['nickname'] .'/ 电话:'.$item['shareMember']['mobile'],
  79. '昵称:'.$item['receiveMember']['nickname'] .'/ 电话:'.$item['receiveMember']['mobile'],
  80. date('Y-m-d H:i:s',strtotime($item->created_at)),
  81. $item->log,
  82. ];
  83. }
  84. $export_model->export($file_name, $export_data, \Request::query('route'));
  85. }
  86. }