InitController.php 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <?php
  2. namespace console\controllers;
  3. use bizHd\order\classes\OrderClass;
  4. use bizHd\order\models\Order;
  5. use common\components\util;
  6. use Yii;
  7. use yii\console\Controller;
  8. class InitController extends Controller
  9. {
  10. public function actionChange()
  11. {
  12. global $argv;
  13. $shopId = $argv[2] ?? 0;
  14. if (empty($shopId)) {
  15. util::stop('没有门店');
  16. }
  17. ini_set('memory_limit', '2045M');
  18. set_time_limit(0);
  19. $list = OrderClass::getAllByCondition(['shopId' => $shopId, 'fromType' => 3, 'reachDate>' => '2022-08-02'], null, '*', null, true);
  20. if (!empty($list)) {
  21. foreach ($list as $order) {
  22. $order->status = 2;
  23. if ($order->addTime < '2022-08-03 00:00:00' && $order->shopAdminId != 126651) {
  24. $order->status = 4;
  25. echo $order->id . "\n";
  26. }
  27. $order->save();
  28. }
  29. }
  30. }
  31. //供应商和花店历史订单和历史结账单 payStatus payTime更新
  32. // ./yii init/pay-status
  33. public function actionPayStatus()
  34. {
  35. ini_set('memory_limit', '2045M');
  36. set_time_limit(0);
  37. $sql = "UPDATE `xhOrder` SET `payStatus`=0;";
  38. Yii::$app->db->createCommand($sql)->execute();
  39. $sql = "UPDATE `xhGhsOrder` SET `payStatus`=0;";
  40. Yii::$app->db->createCommand($sql)->execute();
  41. $query = new \yii\db\Query();
  42. $query->from(Order::tableName());
  43. $query->where(['in', 'status', [2, 3, 4]]);
  44. $query->orderBy('deadline ASC');
  45. foreach ($query->batch() as $batchOrder) {
  46. foreach ($batchOrder as $hdOrder) {
  47. $addTime = $hdOrder['addTime'] ?? '';
  48. $id = $hdOrder['id'] ?? 0;
  49. OrderClass::updateById($id, ['payTime' => $addTime, 'payStatus' => 1]);
  50. }
  51. }
  52. $query = new \yii\db\Query();
  53. $query->from(\bizGhs\order\models\Order::tableName());
  54. $query->where(['in', 'status', [2, 3, 4]]);
  55. $query->orderBy('deadline ASC');
  56. foreach ($query->batch() as $batchOrder) {
  57. foreach ($batchOrder as $ghsOrder) {
  58. $addTime = $ghsOrder['addTime'] ?? '';
  59. $id = $ghsOrder['id'] ?? 0;
  60. \bizGhs\order\classes\OrderClass::updateById($id, ['payTime' => $addTime, 'payStatus' => 1]);
  61. }
  62. }
  63. $sql = "UPDATE `xhClear` SET `payTime`=`addTime` where `status`=2;";
  64. Yii::$app->db->createCommand($sql)->execute();
  65. }
  66. }