EvaluateController.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: zilongs
  5. * Date: 20-10-5
  6. * Time: 上午11:44
  7. */
  8. namespace App\Http\Controllers\Api\V1;
  9. use App\Models\DocterMessage;
  10. use App\Models\Evaluate;
  11. use App\Models\Order;
  12. class EvaluateController extends AuthController
  13. {
  14. public function evaluateList()
  15. {
  16. $user = $this->user;
  17. $data = Evaluate::with('order.docter')->where('user_id', $user['id'])->orderBy('id', 'desc')->paginate();
  18. return out($data);
  19. }
  20. public function evaluateDetail()
  21. {
  22. $req = request()->post();
  23. $this->validate(request(), [
  24. 'evaluate_id' => 'required|integer',
  25. ]);
  26. $data = Evaluate::with('order.docter')->where('id', $req['evaluate_id'])->first();
  27. return out($data);
  28. }
  29. public function sumbitEvaluate()
  30. {
  31. $req = request()->post();
  32. $this->validate(request(), [
  33. 'order_id' => 'required|integer',
  34. 'docter_id' => 'required|integer',
  35. 'score' => 'required|integer',
  36. 'content' => 'max:500',
  37. ]);
  38. $user = $this->user;
  39. $req['user_id'] = $user['id'];
  40. Evaluate::create($req);
  41. //发送医生端消息
  42. $order = Order::select(['order_sn'])->where('id', $req['order_id'])->first();
  43. DocterMessage::saveMessage($req['docter_id'], $req['user_id'], 4, $req['order_id'], [$order['order_sn']]);
  44. return out();
  45. }
  46. }