BargainController.php 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <?php
  2. namespace addons\Bargain\console\controllers;
  3. use addons\Bargain\common\enums\BargainEnum;
  4. use addons\Bargain\common\models\BargainActive;
  5. use yii\console\Controller;
  6. use common\models\mall\Mall;
  7. use yii\console\ExitCode;
  8. use Yii;
  9. class BargainController extends Controller
  10. {
  11. /**
  12. * 砍价开启活动定时任务
  13. *
  14. * @return int
  15. */
  16. public function actionOpenActive()
  17. {
  18. try {
  19. $mall_list = Mall::getEnableMallList(true);
  20. $mall_ids = array_column($mall_list, 'id');
  21. if (empty($mall_ids)) {
  22. echo '没有可用商城,不做处理 ... ' . PHP_EOL;
  23. return ExitCode::UNSPECIFIED_ERROR;
  24. }
  25. $res = BargainActive::updateAll(
  26. ['active_status' => BargainEnum::ACTIVE_HANDING],
  27. [
  28. 'and',
  29. ['active_status' => BargainEnum::NOT_STARTED],
  30. ['<', 'begin_time', time()],
  31. ]
  32. );
  33. return ExitCode::OK;
  34. } catch (\Exception $e) {
  35. Yii::error('砍价活动开始检查,任务处理出错:' . $e->getMessage() . PHP_EOL);
  36. return ExitCode::UNSPECIFIED_ERROR;
  37. }
  38. }
  39. /**
  40. * 砍价关闭活动定时任务
  41. *
  42. * @return int
  43. */
  44. public function actionCloseActive()
  45. {
  46. try {
  47. $mall_list = Mall::getEnableMallList(true);
  48. $mall_ids = array_column($mall_list, 'id');
  49. if (empty($mall_ids)) {
  50. echo '没有可用商城,不做处理 ... ' . PHP_EOL;
  51. return ExitCode::UNSPECIFIED_ERROR;
  52. }
  53. $res = BargainActive::updateAll(
  54. ['active_status' => BargainEnum::ACTIVE_FINISH],
  55. [
  56. 'and',
  57. ['active_status' => BargainEnum::ACTIVE_HANDING],
  58. ['<', 'end_time', time()],
  59. ]
  60. );
  61. return ExitCode::OK;
  62. } catch (\Exception $e) {
  63. Yii::error('砍价活动关闭检查,任务处理出错:' . $e->getMessage() . PHP_EOL);
  64. return ExitCode::UNSPECIFIED_ERROR;
  65. }
  66. }
  67. }