UserReportService.php 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. namespace api\services;
  3. use common\models\user\User;
  4. use common\models\user\UserReport;
  5. /**
  6. * 会员举报
  7. * @package api\services
  8. */
  9. class UserReportService extends BaseService
  10. {
  11. /**
  12. * 查询分页列表
  13. *
  14. * @param array $params
  15. * @return array
  16. */
  17. public function getPageList(array $params = [])
  18. {
  19. return UserReport::getPageList($this->mall_id, $this->getPage($params), $this->getLimit($params), function ($query) use ($params) {
  20. $query->with(['user' => function ($query) {
  21. $query->select(['id', 'nickname', 'mobile', 'avatar_url']);
  22. }]);
  23. if (!empty($params['user_id'])) {
  24. $query->andWhere(['user_id' => $params['user_id']]);
  25. }
  26. if (!empty($params['user_keyword'])) {
  27. $query->andWhere([
  28. 'user_id' => User::getUserIdsByKeyword($this->mall_id, $params['user_keyword'])
  29. ]);
  30. }
  31. });
  32. }
  33. /**
  34. * 添加举报内容
  35. *
  36. * @param integer $user_id
  37. * @param array $data 举报内容
  38. * @return boolean
  39. */
  40. public function addReport(int $user_id, array $data)
  41. {
  42. $model = UserReport::addReport(
  43. $user_id, $this->mall_id, $data['title'], $data['content']
  44. );
  45. return $model === true
  46. ? true
  47. : $this->error($model->getErrorMessage());
  48. }
  49. }