RefundItemController.php 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <?php
  2. namespace console\controllers;
  3. use biz\product\classes\ProductClass;
  4. use biz\stat\classes\StatItemClass;
  5. use bizGhs\order\classes\OrderClass;
  6. use bizGhs\order\classes\OrderItemClass;
  7. use bizGhs\order\classes\RefundOrderClass;
  8. use bizGhs\order\classes\RefundOrderItemClass;
  9. use yii\console\Controller;
  10. class RefundItemController extends Controller
  11. {
  12. // ./yii refund-item/complete
  13. public function actionComplete()
  14. {
  15. $list = RefundOrderItemClass::getAllByCondition([], null, '*', null, true);
  16. if (empty($list)) {
  17. return false;
  18. }
  19. foreach ($list as $key => $item) {
  20. $orderSn = $item->orderSn ?? '';
  21. if (empty($orderSn)) {
  22. continue;
  23. }
  24. $refund = RefundOrderClass::getByCondition(['orderSn' => $orderSn], true);
  25. if (empty($refund)) {
  26. continue;
  27. }
  28. $sjId = $refund->sjId ?? 0;
  29. $shopId = $refund->shopId ?? 0;
  30. $item->sjId = $sjId;
  31. $item->shopId = $shopId;
  32. $item->save();
  33. $date = date('Ymd', strtotime($refund->addTime));
  34. StatItemClass::refundReplace($item, $date);
  35. }
  36. }
  37. // ./yii refund-item/order
  38. public function actionOrder()
  39. {
  40. $list = OrderClass::getAllByCondition([], null, '*', null, true);
  41. echo "数量:" . count($list) . "\n";
  42. if (empty($list)) {
  43. print_r($list);
  44. return false;
  45. }
  46. foreach ($list as $key => $order) {
  47. $status = $order->status ?? 0;
  48. if (in_array($status, [1, 5])) {
  49. continue;
  50. }
  51. $orderSn = $order->orderSn ?? '';
  52. if (empty($orderSn)) {
  53. continue;
  54. }
  55. $itemList = OrderItemClass::getAllByCondition(['orderSn' => $orderSn], null, '*', null, true);
  56. if (empty($itemList)) {
  57. foreach ($itemList as $itemInfo) {
  58. $sjId = $itemInfo->sjId ?? 0;
  59. $shopId = $itemInfo->shopId ?? 0;
  60. $productId = $itemInfo->productId ?? 0;
  61. if (empty($sjId) || empty($shopId)) {
  62. $p = ProductClass::getById($productId, true);
  63. $sjId = $p->sjId ?? 0;
  64. $shopId = $p->shopId ?? 0;
  65. $itemInfo->sjId = $sjId;
  66. $itemInfo->shopId = $shopId;
  67. $itemInfo->save();
  68. echo "发现没有sjId shopId 已经补充 orderItemId:{$itemInfo->id} sjId:{$sjId} shopId:{$shopId} 如果是0表示没有补到 \n";
  69. }
  70. $date = date('Ymd', strtotime($order->addTime));
  71. StatItemClass::replace($itemInfo, $date);
  72. }
  73. }
  74. }
  75. }
  76. }