Esempio n. 1
0
 /**
  * 检测用户名密码 是否正确
  * @param str $username 用户名
  * @param str $password 密码
  * @param str $backurl 例:['user/login'] 用户名密码正确,需要跳转去的页面
  *
  * @return json
  */
 public function CheckPassword($username, $password, $backurl = '')
 {
     //登陆状态
     $session = Yii::$app->session;
     $session->isActive ? '' : $session->open();
     $loginnum = $session->get('loginnum');
     $succeurl = empty($backurl) ? Yii::$app->params['idaiyan'] : Url::toRoute([$backurl]);
     $member_model = new Member();
     $userone = $member_model->getByUserName($username);
     if (!empty($userone)) {
         $passmd = PublicLibrary::password_encode($password, $userone['random']);
         if ($userone['password'] == $passmd) {
             $user = array('uid' => $userone['uid'], 'mobile' => $userone['mobile'], 'email' => $userone['email'], 'username' => $userone['mobile'] ? $userone['mobile'] : $userone['email'], 'nickname' => $userone['nickname'] ? $userone['nickname'] : $userone['username'], 'is_admin' => 0);
             $session->set('user', $user);
             //获取用户关注,产品关注信息
             $memberfollow_model = new MemberFollow();
             $userfollow = $memberfollow_model->getMemberFollow($userone['uid']);
             $userfollow = ArrayHelper::getColumn($userfollow, 'passive_uid');
             $productfollow_model = new ProductFollow();
             $productfollow = $productfollow_model->getByUid($userone['uid']);
             $session->set('follow_user', $userfollow);
             $session->set('follow_product', $productfollow);
             $session->close();
             //设置登陆日志
             $MemberLog_model = new MemberLog();
             $MemberLog_model->saveLog(array('uid' => $userone['uid']));
             $session->remove('loginnum');
             $data['id'] = $userone['uid'];
             $data['mobile'] = $userone['mobile'];
             $data['email'] = $userone['email'];
             if ($userone['avatar']) {
                 $data['avatar'] = $userone['avatar'];
             } else {
                 $data['avatar'] = Yii::$app->params['idaiyan-static'] . "static/modules/home/images/temp/avatar.jpg";
             }
             $data['succeurl'] = $succeurl;
             $res = PublicLibrary::format_res_encode('0', '登录成功!', $data);
         } else {
             $code = $loginnum > 3 ? 1013 : 4;
             $res = PublicLibrary::format_res_encode($code, '密码不正确!', $succeurl);
         }
     } else {
         $code = $loginnum > 3 ? 1013 : 5;
         $res = PublicLibrary::format_res_encode($code, '该用户不存在!');
     }
     return $res;
 }
Esempio n. 2
0
 /**
  * Action ProductFollow Test
  */
 public function actionPfollow()
 {
     $productId = 4000;
     $mProductFollow = new ProductFollow();
     // $mProductFollow->getFollowUsers($productId);
     // $mProductFollow->follow(4000, 1);
     //$mProductFollow->unfollow(4000, 1);
     var_dump($mProductFollow->getByUid(199, TRUE));
 }
Esempio n. 3
0
 /**
  * [产品详情]
  * @param  int $id 产品id
  * @return array     产品信息渲染到页面view
  */
 public function actionView($id)
 {
     $session = Yii::$app->session;
     $session->isActive ? '' : $session->open();
     //判断产品是否发布
     $base = IProductBase::find()->select('status,uid')->where('id = :id', [':id' => $id])->asArray()->one();
     if (!empty($_SESSION['user'])) {
         if ($base['status'] != IProductBase::STATUS_VERIFEND) {
             if ($base['uid'] != $_SESSION['user']['uid']) {
                 return $this->redirect(['index']);
                 //跳转到完善信息
             }
         }
     } else {
         if ($base['status'] != IProductBase::STATUS_VERIFEND) {
             return $this->redirect(['index']);
             //跳转到完善信息
         }
     }
     //增加总访问量
     $mProductStat = new IProductStat();
     $mProductStat->modify('page_views', $id, 1, true);
     //访问日志
     $mViewsLog = new ViewsLog();
     $mViewsLog->modify($id, ViewsLog::PRODUCT_TYPE);
     //增加周访问量,月访问量
     $week_num = $mViewsLog->ViewsNum($id, ViewsLog::PRODUCT_TYPE, 7);
     $month_num = $mViewsLog->ViewsNum($id, ViewsLog::PRODUCT_TYPE, 30);
     $mProductStat->modifyviewnum('week_views', $id, $week_num);
     $mProductStat->modifyviewnum('month_views', $id, $month_num);
     //基础数据和扩展数据查询
     $re = IProductBase::find()->With('extra', 'stat')->where(IProductBase::tableName() . '.id = :id', [':id' => $id])->asArray()->one();
     //该产品用户共发布产品数
     $presentNum = IProductBase::find()->where(['uid' => $re['uid'], 'status' => IProductBase::STATUS_VERIFEND])->count();
     //喜欢此产品用户
     $model = new ProductFollow();
     $loves = $model->getFollowUsers($id);
     //产品发布人头像及姓名
     $model = new Member();
     $user = $model->find()->select(['avatar', 'nickname'])->where(['uid' => $re['uid']])->asArray()->one();
     //参加活动
     $model = new ActivityProduct();
     //        print_r($id);exit;
     $actives = $model->getActivityDetail($id);
     // $actives = $model->getActivitiseById($id);
     // print_r($actives);exit;
     foreach ($actives as $key => $value) {
         if ($value['acti_id'] == 8) {
             $mBaiyingShare = new BaiyingShare();
             $number = $mBaiyingShare->getShareNum($value['id']);
         }
         if ($value['acti_id'] == 9) {
             $rel_id = $value['id'];
         }
     }
     //活动map
     $activityBase = new ActivityBase();
     $activesMap = $activityBase->getActivityMap();
     if (isset($rel_id)) {
         //投票信息
         $city = "上海";
         $poll_type_id = PollType::GOODPRODUCT_TYPE;
         $mpoll = new poll();
         $pollone = $mpoll->getPollByCity($city, $poll_type_id);
         //投票项信息
         $moption = new polloption();
         $optione = $moption->getOptionByowner($pollone['poll_id'], $rel_id);
     }
     return $this->render('view', ['re' => $re, 'present_num' => $presentNum, 'actives' => $actives, 'now' => time(), 'number' => isset($number) ? intval($number) : '', 'loves' => $loves, 'user' => $user, 'activesMap' => $activesMap, 'optione' => isset($optione) ? $optione : '']);
 }