RefundController.php 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <?php
  2. namespace addons\QiShangTong\backend\controllers;
  3. use addons\QiShangTong\common\service\RefundService;
  4. use common\enums\ApiStatusEnum;
  5. use Yii;
  6. class RefundController extends BaseController
  7. {
  8. public $enableCsrfValidation = false;
  9. /**
  10. * 首页
  11. *
  12. * @return string
  13. */
  14. public function actionIndex()
  15. {
  16. if (\Yii::$app->request->isAjax && \Yii::$app->request->isGet) {
  17. $data = Yii::$app->request->get();
  18. $valid = Yii::$app->services->validate->validate($data, [
  19. [['limit', 'page', 'third_refund_id'], 'integer'],
  20. [['refund_no', 'third_refund_no', 'order_no'], 'string'],
  21. ]);
  22. if ($valid === false) return $this->error(Yii::$app->services->validate->getErrorMessage());
  23. $ret = (new RefundService())->page($this->mall_id, $data);
  24. return is_string($ret) ? $this->error($ret) : $this->success('获取成功', $ret, ApiStatusEnum::CODE_SUCCESS, JSON_BIGINT_AS_STRING);
  25. }
  26. return $this->render('index',[]);
  27. }
  28. public function actionAgree()
  29. {
  30. $data = Yii::$app->request->post();
  31. $valid = Yii::$app->services->validate->validate($data, [
  32. [['id'], 'integer'],
  33. [['id'], 'required'],
  34. ]);
  35. if ($valid === false) return $this->error(Yii::$app->services->validate->getErrorMessage());
  36. $res = (new RefundService())->async($this->mall_id, $data['id']);
  37. return is_string($res) ? $this->error($res) : $this->success();
  38. }
  39. public function actionReject()
  40. {
  41. $data = Yii::$app->request->post();
  42. $valid = Yii::$app->services->validate->validate($data, [
  43. [['id'], 'integer'],
  44. [['id'], 'required'],
  45. ]);
  46. if ($valid === false) return $this->error(Yii::$app->services->validate->getErrorMessage());
  47. $res = (new RefundService())->reject($this->mall_id, $data['id'], ['is_admin' => 1, 'operator_id' => $this->admin->id]);
  48. return is_string($res) ? $this->error($res) : $this->success();
  49. }
  50. public function actionCompensate()
  51. {
  52. $data = Yii::$app->request->post();
  53. $valid = Yii::$app->services->validate->validate($data, [
  54. [['id'], 'integer'],
  55. [['id'], 'required'],
  56. ]);
  57. if ($valid === false) return $this->error(Yii::$app->services->validate->getErrorMessage());
  58. $ret = (new RefundService())->compensate($this->mall_id, $data['id']);
  59. return is_string($ret) ? $this->error($ret) : $this->success();
  60. }
  61. }