예제 #1
0
 public function actionMemberList($id = 0)
 {
     if ($id) {
         return Member::findOne($id)->username;
     } else {
         return $this->_list(new Member(), 'member-list');
     }
 }
예제 #2
0
 /**
  * 获得会员的等级
  * @param int $uid 会员id
  * @return string
  */
 public function getMemberRank($uid)
 {
     $uScore = Member::findOne($uid)->score;
     $list = $this->find()->orderBy('score DESC')->all();
     $title = '';
     foreach ($list as $val) {
         if ($uScore >= $val['score']) {
             $title = $val['rank_name'];
             break;
         }
     }
     return $title;
 }
 /**
  * Sends an email with a link, for resetting the password.
  *
  * @return boolean whether the email was send
  */
 public function sendEmail()
 {
     /* @var $user User */
     $user = Member::findOne(['status' => Member::STATUS_ACTIVE, 'email' => $this->email]);
     if ($user) {
         if (!User::isPasswordResetTokenValid($user->password_reset_token)) {
             $user->generatePasswordResetToken();
         }
         if ($user->save()) {
             return \Yii::$app->mailer->compose(['html' => 'passwordResetToken-html', 'text' => 'passwordResetToken-text'], ['user' => $user])->setFrom([\Yii::$app->params['supportEmail'] => \Yii::$app->name . ' robot'])->setTo($this->email)->setSubject('Password reset for ' . \Yii::$app->name)->send();
         }
     }
     return false;
 }
예제 #4
0
 public function actionStatus($id)
 {
     Yii::$app->response->format = Response::FORMAT_JSON;
     $status = Yii::$app->request->post('status');
     $model = Member::findOne($id);
     if (!$model || !in_array($status, [Member::STATUS_ACTIVE, Member::STATUS_BLOCKED])) {
         throw new BadRequestHttpException('请求错误!');
     }
     $model->status = $status;
     if ($model->save(false)) {
         return ['status' => 'success', 'data' => []];
     } else {
         return ['status' => 'fail', 'data' => ['message' => '更新出错!']];
     }
 }
예제 #5
0
 /**
  * 记录帐户变动
  * @param   int     $uid        用户id
  * @param   float   $user_money     可用余额变动
  * @param   float   $frozen_money   冻结余额变动
  * @param   int     $rank_points    等级积分变动
  * @param   int     $pay_points     消费积分变动
  * @param   string  $change_desc    变动说明
  * @param   int     $change_type    变动类型
  * @return  void
  */
 public function log_account_change($uid, $user_money = 0, $frozen_money = 0, $rank_points = 0, $pay_points = 0, $change_desc = '', $change_type = 99)
 {
     /* 记录资金变动信息 */
     $this->uid = $uid;
     $this->user_money = $user_money;
     $this->frozen_money = $frozen_money;
     $this->rank_points = $rank_points;
     $this->pay_points = $pay_points;
     $this->change_time = time();
     $this->change_desc = $change_desc;
     $this->change_type = $change_type;
     $this->save(false);
     /* 更新用户信息 */
     $Member = Member::findOne($uid);
     $Member->user_money += $user_money;
     $Member->frozen_money += $frozen_money;
     $Member->rank_points += $rank_points;
     $Member->pay_points += $pay_points;
     $Member->save(false);
 }
 /**
  * Finds the Member model based on its primary key value.
  * If the model is not found, a 404 HTTP exception will be thrown.
  * @param integer $id
  * @return Member the loaded model
  * @throws NotFoundHttpException if the model cannot be found
  */
 protected function findModel($id)
 {
     if (($model = Member::findOne($id)) !== null) {
         return $model;
     } else {
         throw new NotFoundHttpException('The requested page does not exist.');
     }
 }
예제 #7
0
 public function actionReject($id)
 {
     $model = $this->findModel($id);
     $connection = Yii::$app->db;
     try {
         $transaction = $connection->beginTransaction();
         $model->status = 3;
         $user = Member::findOne($model->member_id);
         $user->finance_fund += $model->amount;
         $data = array('member_id' => $model->member_id, 'account_type' => 1, 'amount' => $model->amount, 'fee' => 0, 'total' => $user->finance_fund, 'type' => 4, 'note' => '拒绝提现,货币返还.');
         $model->note .= '拒绝提现,货币返还.';
         Yii::$app->session->setFlash('success', '提现申请拒绝成功');
         $revenue = new InRecord();
         $revenue->load($data, '');
         $revenue->save();
         $user->save();
         $model->save();
         $transaction->commit();
     } catch (Exception $e) {
         $transaction->rollback();
         //回滚函数
         return $this->render('create', ['model' => $model]);
     }
     return $this->redirect(['cashlist', 'id' => $model->id]);
 }
예제 #8
0
 public function actionBuy()
 {
     $model = new StackTransaction();
     $stack = Stack::findOne(Yii::$app->request->get('id'));
     $memberStack = Yii::$app->user->identity->getMemberStack($stack->id);
     if (!$memberStack) {
         $memberStack = new MemberStack();
     }
     $open = false;
     if ($stack->status) {
         Yii::$app->session->setFlash('danger', '股票已锁定,请选择其它股票进行购买.');
     } else {
         if (Date::isWorkingDay()) {
             if (Date::isWorkingTime()) {
                 $open = true;
                 if ($model->load(Yii::$app->request->post())) {
                     if ($model->account_type) {
                         $data = Yii::$app->request->post();
                         $model->price = $stack->price;
                         $model->member_id = Yii::$app->user->identity->id;
                         $model->stack_id = $stack->id;
                         $model->type = 0;
                         $model->total_price = $stack->price * $model->volume;
                         $validate = true;
                         if (!Yii::$app->user->identity->validatePassword2($data['StackTransaction']['password2'])) {
                             $validate = false;
                             $model->addError('password2', '第二密码不正确, 请确认后重新输入.');
                         }
                         if ($model->account_type == 1 && Yii::$app->user->identity->finance_fund < $model->total_price || $model->account_type == 2 && Yii::$app->user->identity->stack_fund < $model->total_price) {
                             $validate = false;
                             $model->addError('volume', '账户余额不足. 理财基金:.' . Yii::$app->user->identity->finance_fund . '. 购股账户:' . Yii::$app->user->identity->stack_fund);
                         }
                         if ($validate) {
                             $memberStack = MemberStack::getMemberStack($model);
                             $member = Member::findOne($model->member_id);
                             if ($model->account_type == 1) {
                                 $member->finance_fund -= $model->total_price;
                                 $outRecord = OutRecord::prepareModelForBuyStack($model->member_id, $model->total_price, $member->finance_fund, 1);
                             } else {
                                 $member->stack_fund -= $model->total_price;
                                 $outRecord = OutRecord::prepareModelForBuyStack($model->member_id, $model->total_price, $member->stack_fund, 2);
                             }
                             $outRecord->note = '股买[' . $stack->code . ']' . $model->volume . '股';
                             $connection = Yii::$app->db;
                             try {
                                 $transaction = $connection->beginTransaction();
                                 $success = false;
                                 if ($model->save() && $memberStack->save() && $member->save() && $outRecord->save()) {
                                     $success = true;
                                 }
                                 if ($success) {
                                     Yii::$app->session->setFlash('success', '购买成功');
                                     $transaction->commit();
                                     return $this->redirect(['transactions']);
                                 } else {
                                     Yii::error('Stack Buy Failed');
                                     Yii::$app->session->setFlash('danger', '购买失败,请稍后再试.');
                                     Yii::error(json_encode($model->getErrors()));
                                     Yii::error(json_encode($memberStack->getErrors()));
                                     Yii::error(json_encode($member->getErrors()));
                                     Yii::error(json_encode($outRecord->getErrors()));
                                     $transaction->rollback();
                                 }
                             } catch (Exception $e) {
                             }
                         }
                     } else {
                         $model->total_price = $stack->price * $model->volume;
                     }
                 }
             } else {
                 Yii::$app->session->setFlash('danger', '非交易时间. 早上10:00 ~ 12:30. 下午2:00 ~ 4:00');
             }
         } else {
             Yii::$app->session->setFlash('danger', '对不起,非交易日不能进行交易!');
         }
     }
     return $this->render('buy', ['model' => $model, 'stack' => $stack, 'memberStack' => $memberStack, 'open' => $open]);
 }
예제 #9
0
 /**
  * loadMember
  *
  * @return bool
  */
 protected function loadMember()
 {
     // See if session has member
     if ($this->session->get('memberId') && $this->session->get('memberKey')) {
         // Try to load from Session
         $memberId = (int) $this->session->get('memberId');
         $memberKey = $this->session->get('memberKey');
         $member = Member::findOne($memberId);
         if ($member && $member->validateMemberKey($memberKey) && $member->isActive) {
             // OK
             $this->member = $member;
             return true;
         }
     }
     // See if we need to load from Cookie
     if (isset($_COOKIE['k'])) {
         $cookieKey = $_COOKIE['k'];
         $member = Member::loadFromCookieKey($cookieKey);
         if ($member && $member->isActive) {
             $this->member = $member;
             return true;
         }
     }
     return false;
 }
예제 #10
0
<?php

use yii\helpers\Html;
use yii\helpers\Url;
use common\helpers\Custom;
use common\models\Member;
if (!Yii::$app->user->isGuest) {
    $member = Member::findOne(Yii::$app->user->identity->id);
    echo Html::input('hidden', 'cart_limit', $member->memberProfiles[0]->max_cart_amount, ['id' => 'cart_limit']);
}
?>

<div class="product-big-title-area">
    <div class="container">
        <div class="row">

            <div class="col-md-12">
                <div class="product-bit-title text-center">
                    <h2>
                        <?php 
echo isset($order) && !empty($order) ? 'Order Details' : 'Shopping Cart';
?>
                    </h2>
                </div>
            </div>

        </div>
    </div>
</div>

<div class="single-product-area">
 /**
  * Displays homepage.
  *
  * @return mixed
  */
 public function actionProfile()
 {
     $model = Member::findOne(Yii::$app->user->identity->id);
     return $this->render('profile', ['model' => $model]);
 }
예제 #12
0
파일: index.php 프로젝트: wordnews/wei_shop
            <input type="submit" onclick="query('<?php 
echo Yii::$app->urlManager->createUrl(['commenta/index']);
?>
')" value=" 搜索 " class="button">

        </form>

    </div>

    <?php 
Pjax::begin();
?>
    <?php 
echo GridView::widget(['dataProvider' => $dataProvider, 'columns' => [['class' => 'yii\\grid\\CheckboxColumn', 'name' => 'id'], ['attribute' => 'aid', 'label' => '文章id'], ['header' => Html::a('评论人', 'javascript:void(0);'), 'content' => function ($model) {
    if ($model->uid) {
        return Member::findOne($model->uid)->username;
    }
    return '';
}], ['attribute' => 'content', 'value' => function ($model) {
    return Functions::truncate_utf8_string($model->content, 30);
}], 'add_time:datetime', ['header' => Html::a('状态', 'javascript:void(0);'), 'content' => function ($model) {
    if ($model->status == 1) {
        return Html::img('@web/image/yes.gif', ['onclick' => "setStatus(this, {$model->id})", 'data-status' => 0]);
    }
    return Html::img('@web/image/no.gif', ['onclick' => "setStatus(this, {$model->id})", 'data-status' => 1]);
}], ['class' => 'yii\\grid\\ActionColumn', 'header' => Html::a('操作', 'javascript:void(0);'), 'template' => '{update} {delete}']]]);
?>
    <?php 
Pjax::end();
?>