| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- <?php
- namespace console\controllers;
- use common\enums\StatusEnum;
- use common\models\mall\Mall;
- use common\models\user\User;
- use common\models\user\UserInviteCode;
- use yii\console\Controller;
- class UserController extends Controller
- {
- /**
- * @Description: 邀请码补发
- * @Author: zsan
- * @DateTime 2023-05-23 16:51:41
- * @return void
- */
- public function actionReissueCode()
- {
- try {
- // 获取有效的商城
- $mall_list = Mall::getEnableMallList(true);
- if (!empty($mall_list)) {
- foreach ($mall_list as $mall) {
- $mallId = $mall['id']; // 商城id
- $allUserIds = User::lists([
- 'where' => [['mall_id' => $mallId], ['status' => [StatusEnum::ENABLED, StatusEnum::DISABLED]]],
- 'select' => 'id'
- ]);
- $allUserIds = array_column($allUserIds, 'id') ?? [];
- $existUserIds = UserInviteCode::lists([
- 'where' => [['mall_id' => $mallId], ['status' => [StatusEnum::ENABLED, StatusEnum::DISABLED]]],
- 'select' => 'user_id'
- ]);
- $existUserIds = array_column($existUserIds, 'user_id') ?? [];
- $needUserIds = array_diff($allUserIds, $existUserIds);
- foreach ($needUserIds as $userId) {
- try {
- $res = UserInviteCode::setData([
- 'mall_id' => $mallId,
- 'user_id' => $userId,
- ]);
- if($res === false) throw new \Exception(UserInviteCode::getStaticError());
- } catch (\Exception $ex) {
- \Yii::error(self::class.'->'.__FUNCTION__.'//errMsg1:'.$ex->getMessage().'//params:'.json_encode(['mall_id' => $mallId, 'user_id' => $userId]));
- }
- }
- }
- }
- } catch (\Exception $e) {
- echo $e->getMessage();
- \Yii::error(self::class.'->'.__FUNCTION__.'//errMsg:'.$e->getMessage());
- }
- }
- }
|