| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- <?php
- namespace hd\controllers;
- use bizHd\order\classes\OrderClass;
- use bizHd\order\classes\SettleClass;
- use common\components\dict;
- use common\components\util;
- use Yii;
- class SettleController extends BaseController
- {
- public $guestAccess = [];
- //结清尾款 ssh 20220708
- public function actionConfirmSettle()
- {
- $post = Yii::$app->request->post();
- $connection = Yii::$app->db;
- $transaction = $connection->beginTransaction();
- try {
- $staff = $this->shopAdmin;
- $payWay = $post['payWay'] ?? dict::getDict('payWay', 'wxPay');
- $id = $post['id'] ?? '';
- if (is_numeric($id)) {
- $order = OrderClass::getById($id, true);
- if (empty($order)) {
- util::fail('没有找到订单');
- }
- OrderClass::valid($order, $this->mainId);
- SettleClass::confirmSettle($order, $payWay, $staff);
- } else {
- $idArr = json_decode($id, true);
- $ids = array_column($idArr, 'id');
- $orderList = OrderClass::getAllByCondition(['id' => ['in', $ids]], null, '*', null, true);
- if (!empty($orderList)) {
- foreach ($orderList as $order) {
- OrderClass::valid($order, $this->mainId);
- SettleClass::confirmSettle($order, $payWay, $staff);
- }
- }
- }
- $transaction->commit();
- util::complete();
- } catch (\Exception $exception) {
- $transaction->rollBack();
- Yii::info("失败:" . $exception->getMessage());
- util::fail('操作失败');
- }
- }
- }
|