|
|
@@ -2,6 +2,7 @@
|
|
|
|
|
|
namespace console\controllers;
|
|
|
|
|
|
+use bizGhs\order\classes\RefundOrderClass;
|
|
|
use bizGhs\order\classes\RefundOrderItemClass;
|
|
|
use bizGhs\order\models\RefundOrder;
|
|
|
use bizHd\cg\classes\CgRefundClass;
|
|
|
@@ -21,6 +22,9 @@ class RefundController extends Controller
|
|
|
$query->from(RefundOrder::tableName());
|
|
|
$query->where(['>', 'id', 0]);
|
|
|
$query->orderBy('addTime ASC');
|
|
|
+
|
|
|
+ $arr = ['开错', '多开', '重新补开', '重复开单', '客户自购'];
|
|
|
+
|
|
|
foreach ($query->batch() as $batchOrder) {
|
|
|
foreach ($batchOrder as $refund) {
|
|
|
$connection = Yii::$app->db;
|
|
|
@@ -29,19 +33,32 @@ class RefundController extends Controller
|
|
|
try {
|
|
|
$status = $refund['status'] ?? 0;
|
|
|
$addTime = $refund['addTime'] ?? '';
|
|
|
+ $remark = $refund['remark'] ?? '';
|
|
|
+ $cause = 0;
|
|
|
+ if (!empty($remark)) {
|
|
|
+ foreach ($arr as $son) {
|
|
|
+ $res = strstr($remark, $son);
|
|
|
+ if (!empty($res)) {
|
|
|
+ $cause = 1;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ RefundOrderClass::updateByCondition(['orderSn' => $orderSn], ['cause' => $cause]);
|
|
|
$updateTime = $refund['updateTime'] ?? '';
|
|
|
- RefundOrderItemClass::updateByCondition(['orderSn' => $orderSn], ['status' => $status, 'addTime' => $addTime, 'updateTime' => $updateTime]);
|
|
|
+ RefundOrderItemClass::updateByCondition(['orderSn' => $orderSn], ['status' => $status, 'addTime' => $addTime, 'updateTime' => $updateTime, 'cause' => $cause]);
|
|
|
$cgRefundId = $refund['cgRefundId'] ?? 0;
|
|
|
$cgRefund = CgRefundClass::getById($cgRefundId, true);
|
|
|
if (empty($cgRefund)) {
|
|
|
echo "{$orderSn} 没有找到采购的退款信息\n";
|
|
|
continue;
|
|
|
}
|
|
|
+ $cgRefund->cause = $cause;
|
|
|
+ $cgRefund->save();
|
|
|
$cgRefundStatus = $cgRefund->status;
|
|
|
$cgOrderSn = $cgRefund->orderSn ?? '';
|
|
|
$addTime = $cgRefund->addTime;
|
|
|
$updateTime = $cgRefund->updateTime;
|
|
|
- CgRefundItemClass::updateByCondition(['orderSn' => $cgOrderSn], ['status' => $cgRefundStatus, 'addTime' => $addTime, 'updateTime' => $updateTime]);
|
|
|
+ CgRefundItemClass::updateByCondition(['orderSn' => $cgOrderSn], ['status' => $cgRefundStatus, 'addTime' => $addTime, 'updateTime' => $updateTime, 'cause' => $cause]);
|
|
|
$transaction->commit();
|
|
|
} catch (\Exception $e) {
|
|
|
$transaction->rollBack();
|