|
|
@@ -0,0 +1,53 @@
|
|
|
+<?php
|
|
|
+
|
|
|
+namespace console\controllers;
|
|
|
+
|
|
|
+use biz\shop\classes\ShopClass;
|
|
|
+use biz\stat\classes\StatRefundClass;
|
|
|
+use bizGhs\order\classes\RefundOrderClass;
|
|
|
+use yii\console\Controller;
|
|
|
+use Yii;
|
|
|
+
|
|
|
+class RefundController extends Controller
|
|
|
+{
|
|
|
+
|
|
|
+ //退款数据更新 ./yii refund/update
|
|
|
+ public function actionUpdate()
|
|
|
+ {
|
|
|
+
|
|
|
+ $list = RefundOrderClass::getAllByCondition(['id>' => 0], 'id asc', '*', null, true);
|
|
|
+ if (!empty($list)) {
|
|
|
+ foreach ($list as $item) {
|
|
|
+ $orderSn = $item->orderSn ?? '';
|
|
|
+ $shopId = $item->shopId ?? 0;
|
|
|
+ $addTime = $item->addTime ?? '';
|
|
|
+
|
|
|
+ $connection = Yii::$app->db;
|
|
|
+ $transaction = $connection->beginTransaction();
|
|
|
+
|
|
|
+ $refundPrice = $item->refundPrice ?? 0;
|
|
|
+
|
|
|
+ try {
|
|
|
+
|
|
|
+ $shop = ShopClass::getLockById($shopId);
|
|
|
+ if (empty($shop)) {
|
|
|
+ echo '没有找到店铺 ' . $shopId . ' ' . $orderSn . "\n";
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ $totalRefund = bcadd($refundPrice, $shop->totalRefund, 2);
|
|
|
+ $shop->totalRefund = $totalRefund;
|
|
|
+ $shop->save();
|
|
|
+ $date = date("Ymd", strtotime($addTime));
|
|
|
+ StatRefundClass::replace($shop, $refundPrice, $date);
|
|
|
+ $transaction->commit();
|
|
|
+
|
|
|
+ } catch (\Exception $e) {
|
|
|
+ $transaction->rollBack();
|
|
|
+ $msg = $e->getMessage();
|
|
|
+ echo "报错了:" . $msg . "\n";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+}
|