private function rechargeList($startTime = 0, $endTime = 0) { $endTime = $endTime == 0 ? time() : $endTime; $assetMoneys = AssetMoney::find()->joinWith(['member' => function ($query) { /** @var \yii\db\ActiveQuery $query */ $query->select(Member::$SELECT_ROW); }])->where(['type' => AssetMoney::TYPE_EXPERIENCE_MONEY])->andWhere(['>=', 'wh_asset_money.created_at', $startTime])->andWhere(['<=', 'wh_asset_money.created_at', $endTime])->asArray()->all(); $actions = Config::getInstance()->getProperty('assetLog'); foreach ($assetMoneys as &$assetMoney) { $assetMoney['action'] = isset($actions[$assetMoney['action']]) ? $actions[$assetMoney['action']] : "赠送"; $assetMoney['created_at'] = date('Y-m-d', $assetMoney['created_at']); $assetMoney['updated_at'] = date('Y-m-d', $assetMoney['updated_at']); $assetMoney['type'] = AssetMoney::get_type($assetMoney['type']); $assetMoney['status'] = AssetMoney::get_status($assetMoney['status']); if (isset($assetMoney['member'])) { $assetMoney['member']['idcard_status'] = Member::get_auth_status($assetMoney['member']['idcard_status']); $assetMoney['member']['email_status'] = Member::get_auth_status($assetMoney['member']['email_status']); $assetMoney['member']['status'] = Member::get_record_status($assetMoney['member']['status']); $assetMoney['member']['created_at'] = date('Y-m-d', $assetMoney['member']['created_at']); foreach ($assetMoney['member'] as $key => &$memberInfo) { $assetMoney['member_' . $key] = $memberInfo; } unset($assetMoney['member']); } } return $assetMoneys; }
public function actionProfit() { $user = wanhunet::$app->user; $assetMoneyList = AssetMoney::find()->where(['type' => AssetMoney::TYPE_MONEY])->andWhere(['<>', 'status', AssetMoney::STATUS_MONEY_UNPAYED])->andWhere(['user_id' => $user->getId()])->limit(10)->orderBy('id desc')->all(); $investList = InvestList::find()->where(['member_id' => $user->getId(), 'status' => InvestList::STATUS_PAYED])->joinWith(['invest' => function ($query) { /** @var \yii\db\ActiveQuery $query */ $query->andWhere(['type' => Invest::TYPE_MONEY]); }])->limit(10)->orderBy('id desc')->all(); return $this->view('profit', ['assetMoneyList' => $assetMoneyList, 'investList' => $investList]); }
private function hasGift(ShareGift $shareGift) { $wechat_info = json_decode($shareGift->wechat_info, true); $emAction = ['site/idcard', 'site/email', 'site/setjiuxin', 'site/recharge']; $emCount = AssetMoney::find()->where(['user_id' => $shareGift->user_id, "action" => $emAction])->count(); $emshareCount = AssetMoney::find()->where(['user_id' => $shareGift->user_id, 'action' => 'site/signup-verify'])->andWhere(['<>', "action_uid", $shareGift->user_id])->count(); if ($emshareCount > 0) { $emCount += 1; } $emCount = 5 - $emCount; $members = []; if (($parent_id = Member::findOne($shareGift->user_id)->parent_id) !== null) { $members = Member::find()->where(['parent_id' => $parent_id])->asArray()->select(['id', 'created_at'])->limit(10)->orderBy("id desc")->all(); } $url = wanhunet::$app->urlManager->createAbsoluteUrl(['share/index/' . Member::findOne($shareGift->user_id)->invitation]); $url = wanhunet::app()->wechat->getOauth2AuthorizeUrl($url, 'authorize', 'snsapi_userinfo'); return $this->view("has_gift", ['wechat_info' => $wechat_info, 'emCount' => $emCount, 'members' => $members, 'url' => $url]); }
/** * 首次充钱 * @param $event */ public function setIncFirstMoney($event) { $rs = $event->rs; $assetOne = AssetMoney::find()->where(['user_id' => $rs['user_id']])->andWhere(['type' => AssetMoney::TYPE_MONEY])->andWhere(['status' => AssetMoney::STATUS_INC])->count(); if ($assetOne == 1) { Debug::add('asset' . $assetOne); $assm = new AssetMoney(); $assm->action = wanhunet::$app->controller->getRoute(); $assm->step = Config::getInstance()->getProperty('setIncEM.firstMoney'); $assm->user_id = $rs['user_id']; $assm->action_uid = $rs['user_id']; $assm->status = AssetMoney::STATUS_INC; $assm->type = AssetMoney::TYPE_EXPERIENCE_MONEY; $assm->save(); $assmax = new AssetMoney(); $assmax->action = wanhunet::$app->controller->getRoute(); $assmax->step = Config::getInstance()->getProperty('setIncEM.firstMoney'); $assmax->user_id = $rs['user_id']; $assmax->action_uid = $rs['user_id']; $assmax->status = AssetMoney::STATUS_INC; $assmax->type = AssetMoney::TYPE_EXPERIENCE_MONEY_MAX; $assmax->save(); } }
public function setIncMoneyPayed($id) { /** @var AssetMoney $assetMoney */ $assetMoney = AssetMoney::find()->where(['id' => $id, 'status' => AssetMoney::STATUS_MONEY_UNPAYED])->one(); if ($assetMoney !== null) { $this->money = $this->money + $assetMoney->step; $assetMoney->status = AssetMoney::STATUS_INC; $assetMoney->save(); $this->save(); } }
public function actionPrivilege() { $investSum = InvestList::find()->where(['status' => InvestList::STATUS_PAYED, 'member_id' => wanhunet::$app->user->getId()])->joinWith(['invest' => function ($query) { /** @var \yii\db\ActiveQuery $query */ $query->andWhere(['type' => Invest::TYPE_MONEY]); }])->sum('investment_sum'); $friends = wanhunet::app()->member->findFriendIds(); $fInveset = 0; if (count($friends) > 0) { $ids = []; foreach ($friends as $id) { $ids[] = $id['id']; } $fInveset = InvestList::find()->where(['status' => InvestList::STATUS_PAYED, 'member_id' => $ids])->joinWith(['invest' => function ($query) { /** @var \yii\db\ActiveQuery $query */ $query->andWhere(['type' => Invest::TYPE_MONEY]); }])->sum('investment_sum'); } $emMaxList = AssetMoney::find()->where(['type' => AssetMoney::TYPE_EXPERIENCE_MONEY_MAX, 'user_id' => wanhunet::$app->user->getId()])->orderBy('id desc')->joinWith(['actionUid'])->limit(50)->all(); $einvestListModle = InvestList::find()->where(['status' => InvestList::STATUS_PAYED, 'member_id' => wanhunet::$app->user->getId()])->joinWith(['invest' => function ($query) { /** @var \yii\db\ActiveQuery $query */ $query->andWhere(['type' => Invest::TYPE_EXPERIENCE_MONEY]); }]); $einvestListSum = $einvestListModle->sum('interest'); $einvestList = $einvestListModle->limit(50)->orderBy('id desc')->all(); return $this->view('privilege', ['myInveset' => $investSum, 'fInveset' => $fInveset, 'emMaxList' => $emMaxList, 'einvestList' => $einvestList, 'einvestListSum' => $einvestListSum]); }