OperationController.php 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?php
  2. namespace app\backend\modules\refund\controllers;
  3. use app\backend\modules\refund\models\RefundApply;
  4. use app\backend\modules\refund\services\RefundOperationService;
  5. use app\common\components\BaseController;
  6. use app\common\events\order\AfterOrderRefundedEvent;
  7. use app\common\events\order\AfterOrderRefundRejectEvent;
  8. use app\common\events\order\AfterOrderRefundSuccessEvent;
  9. use app\common\exceptions\AdminException;
  10. use app\common\models\refund\ResendExpress;
  11. use Illuminate\Support\Facades\DB;
  12. use app\backend\modules\refund\services\RefundMessageService;
  13. /**
  14. * 退款申请操作
  15. * Created by PhpStorm.
  16. * Author: 芸众商城 www.yunzshop.com
  17. * Date: 2017/4/13
  18. * Time: 下午3:05
  19. */
  20. class OperationController extends BaseController
  21. {
  22. /**
  23. * @var $refundApply RefundApply
  24. */
  25. private $refundApply;
  26. public function preAction()
  27. {
  28. parent::preAction(); // TODO: Change the autogenerated stub
  29. $request = \Request::capture();
  30. $this->validate([
  31. 'refund_id' => 'required',
  32. ]);
  33. $this->refundApply = RefundApply::find($request->input('refund_id'));
  34. if (!isset($this->refundApply)) {
  35. throw new AdminException('退款记录不存在');
  36. }
  37. }
  38. /**
  39. * 拒绝
  40. * @param \Request $request
  41. * @return mixed
  42. */
  43. public function reject(\Illuminate\Http\Request $request)
  44. {
  45. RefundOperationService::refundReject(['refund_id' => request()->input('refund_id')]);
  46. return $this->message('操作成功', '');
  47. }
  48. /**
  49. * 同意
  50. * @param \Request $request
  51. * @return mixed
  52. */
  53. public function pass(\Illuminate\Http\Request $request)
  54. {
  55. RefundOperationService::refundPass(['refund_id' => request()->input('refund_id')]);
  56. return $this->message('操作成功', '');
  57. }
  58. public function receiveReturnGoods()
  59. {
  60. $this->refundApply->receiveReturnGoods();
  61. return $this->message('操作成功', '');
  62. }
  63. public function resend(\Illuminate\Http\Request $request)
  64. {
  65. RefundOperationService::refundResend(['refund_id' => request()->input('refund_id')]);
  66. return $this->message('操作成功', '');
  67. }
  68. public function close()
  69. {
  70. RefundOperationService::refundClose(['refund_id' => request()->input('refund_id')]);
  71. return $this->message('操作成功', '');
  72. }
  73. /**
  74. * 手动退款
  75. * @param \Request $request
  76. * @return mixed
  77. */
  78. public function consensus(\Illuminate\Http\Request $request)
  79. {
  80. RefundOperationService::refundConsensus(['refund_id' => request()->input('refund_id')]);
  81. return $this->message('操作成功', '');
  82. }
  83. }