| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- <?php
- namespace console\controllers;
- use biz\product\classes\ProductClass;
- use biz\stat\classes\StatItemClass;
- use bizGhs\order\classes\OrderClass;
- use bizGhs\order\classes\OrderItemClass;
- use bizGhs\order\classes\RefundOrderClass;
- use bizGhs\order\classes\RefundOrderItemClass;
- use bizGhs\order\models\Order;
- use yii\console\Controller;
- class RefundItemController extends Controller
- {
- // ./yii refund-item/complete
- public function actionComplete()
- {
- $list = RefundOrderItemClass::getAllByCondition([], null, '*', null, true);
- if (empty($list)) {
- return false;
- }
- foreach ($list as $key => $item) {
- $orderSn = $item->orderSn ?? '';
- if (empty($orderSn)) {
- continue;
- }
- $refund = RefundOrderClass::getByCondition(['orderSn' => $orderSn], true);
- if (empty($refund)) {
- continue;
- }
- $sjId = $refund->sjId ?? 0;
- $shopId = $refund->shopId ?? 0;
- $item->sjId = $sjId;
- $item->shopId = $shopId;
- $item->save();
- $date = date('Ymd', strtotime($refund->addTime));
- StatItemClass::refundReplace($item, $date);
- }
- }
- // ./yii refund-item/order
- public function actionOrder()
- {
- ini_set('memory_limit', '2045M');
- set_time_limit(0);
- $query = new \yii\db\Query();
- $query->from(Order::tableName());
- $query->where(['>', 'status', 1]);
- foreach ($query->batch() as $purchases) {
- foreach ($purchases as $order) {
- $status = $order['status'] ?? 0;
- if (in_array($status, [1, 5])) {
- continue;
- }
- $orderSn = $order['orderSn'] ?? '';
- if (empty($orderSn)) {
- continue;
- }
- $itemList = OrderItemClass::getAllByCondition(['orderSn' => $orderSn], null, '*', null, true);
- if (!empty($itemList)) {
- foreach ($itemList as $itemInfo) {
- $sjId = $itemInfo->sjId ?? 0;
- $shopId = $itemInfo->shopId ?? 0;
- $productId = $itemInfo->productId ?? 0;
- if (empty($sjId) || empty($shopId)) {
- $p = ProductClass::getById($productId, true);
- $sjId = $p->sjId ?? 0;
- $shopId = $p->shopId ?? 0;
- $itemInfo->sjId = $sjId;
- $itemInfo->shopId = $shopId;
- $itemInfo->save();
- echo "发现没有sjId shopId 已经补充 orderItemId:{$itemInfo->id} sjId:{$sjId} shopId:{$shopId} 如果是0表示没有补到 \n";
- }
- $date = date('Ymd', strtotime($order['addTime']));
- StatItemClass::replace($itemInfo, $date);
- }
- }
- }
- }
- }
- }
|