You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

80 lines
2.3 KiB

5 years ago
  1. <?php
  2. namespace App\Controller;
  3. use App\Constants\ErrorCode;
  4. use App\Exception\BusinessException;
  5. use App\Request\EvaluateRequest;
  6. use App\Request\UserRequest;
  7. use App\Request\PersonnelRequest;
  8. use App\Service\ServiceEvaluateServiceInterface;
  9. use http\Client\Curl\User;
  10. use Hyperf\Di\Annotation\Inject;
  11. class ServiceEvaluateController extends BaseController
  12. {
  13. /**
  14. * @Inject
  15. * @var ServiceEvaluateServiceInterface
  16. */
  17. protected $evaluateService;
  18. /**
  19. * 提交评价
  20. *
  21. * 评价内容:
  22. * 服务态度评分、服务质量评分、满意度评分、评价内容
  23. * 关联信息:
  24. * 服务专员ID、市场ID、评价的用户ID
  25. * 查询信息:
  26. * 用户注册/创建时间
  27. *
  28. */
  29. public function evaluate(EvaluateRequest $validator)
  30. {
  31. // TODO 数据保存失败的返回处理
  32. // TODO 自定义验证用户、市场、服务人员ID
  33. $ret = $this->evaluateService->evaluate($this->request->all());
  34. return $this->success($ret);
  35. }
  36. /**
  37. *获取服务专员基本信息
  38. */
  39. public function isPersonnel(UserRequest $validator)
  40. {
  41. //根据用户iD 获取服务专员详细信息
  42. $user_id = $this->request->input('user_id', 0);
  43. $res = $this->evaluateService->isPersonnel($user_id);
  44. if(isset($res->status) && $res->status == 1){
  45. return $this->success($res);
  46. }else{
  47. return $this->result('900','','服务专员不存在或被禁用');
  48. }
  49. }
  50. /**
  51. *获取服务专员基本信息
  52. */
  53. public function getPersonnelInfo(PersonnelRequest $validator)
  54. {
  55. //根据服务专员iD 获取服务专员详细信息
  56. $service_personnel_id = $this->request->input('service_personnel_id', 0);
  57. $res = $this->evaluateService->getPersonnelInfo($service_personnel_id);
  58. //如果存在服务专员则获取配置信息
  59. if(!empty($res)) {
  60. $config = $this->evaluateService->getQuickEvaluate();
  61. $res->config = $config;
  62. }
  63. return $this->success($res);
  64. }
  65. /**
  66. *获取服务专员评价列表
  67. */
  68. public function getEvaluateList(PersonnelRequest $validator)
  69. {
  70. //获取服务专员评价列表
  71. return $this->success($this->evaluateService->getEvaluateList($this->request->all()));
  72. }
  73. }