SettleController.php 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <?php
  2. namespace hd\controllers;
  3. use bizHd\order\classes\OrderClass;
  4. use bizHd\order\classes\SettleClass;
  5. use common\components\dict;
  6. use common\components\util;
  7. use Yii;
  8. class SettleController extends BaseController
  9. {
  10. public $guestAccess = [];
  11. //结清尾款 ssh 20220708
  12. public function actionConfirmSettle()
  13. {
  14. $get = Yii::$app->request->get();
  15. $id = $get['id'] ?? 0;
  16. $payWay = $get['payWay'] ?? dict::getDict('payWay', 'wxPay');
  17. $order = OrderClass::getById($id, true);
  18. if (empty($order)) {
  19. util::fail('没有找到订单');
  20. }
  21. OrderClass::valid($order, $this->mainId);
  22. $connection = Yii::$app->db;
  23. $transaction = $connection->beginTransaction();
  24. try {
  25. SettleClass::confirmSettle($order, $payWay);
  26. $transaction->commit();
  27. util::complete();
  28. } catch (\Exception $exception) {
  29. $transaction->rollBack();
  30. Yii::info("失败:" . $exception->getMessage());
  31. util::fail('操作失败');
  32. }
  33. }
  34. }