Пример #1
0
 /** 
  * 设置用户信息
  *
  * @param PwUserInfoDm $userForm
  */
 public function setUserDm(PwUserInfoDm $userDm)
 {
     $this->userDm = null;
     //如果开启邮箱激活,则设置该状态为0,否则设置该状态为1
     $_uncheckGid = false;
     if ($this->config['active.mail']) {
         $userDm->setUnactive(true);
         $_uncheckGid = true;
     }
     //如果开启审核,则设置该状态为0,否则设置该状态为1
     if ($this->config['active.check']) {
         $userDm->setUncheck(true);
         $_uncheckGid = true;
     }
     //【用户注册】未验证用户组
     if ($_uncheckGid) {
         $userDm->setGroupid(7);
     }
     //【用户注册】计算memberid
     /* @var $groupService PwUserGroupsService */
     $groupService = Wekit::load('usergroup.srv.PwUserGroupsService');
     //【用户注册】注册成功初始积分---积分策略中获取
     /* @var $creditBo PwCreditBo */
     $creditBo = PwCreditBo::getInstance();
     $creditStrategy = $creditBo->getStrategy('register');
     !$creditStrategy['credit'] && ($creditStrategy['credit'] = array());
     $_credit = array();
     foreach ($creditStrategy['credit'] as $id => $_v) {
         $_credit['credit' . $id] = $_v;
     }
     $credit = $groupService->calculateCredit(Wekit::C('site', 'upgradestrategy'), $_credit);
     $memberid = $groupService->calculateLevel($credit);
     $userDm->setMemberid($memberid);
     $this->userDm = $userDm;
 }
Пример #2
0
 /** 
  * 批量审核用户
  *
  */
 public function docheckAction()
 {
     $uids = $this->getInput('uid', 'post');
     if (!$uids) {
         $this->showError('operate.select');
     }
     /* @var $userDs PwUser */
     $userDs = Wekit::load('user.PwUser');
     $infos = $userDs->fetchUserByUid($uids, PwUser::FETCH_MAIN);
     /* @var $groupService PwUserGroupsService */
     $groupService = Wekit::load('usergroup.srv.PwUserGroupsService');
     $strategy = Wekit::C('site', 'upgradestrategy');
     $clearUid = array();
     foreach ($infos as $_temp) {
         $clearUid[] = $_temp['uid'];
         if (Pw::getstatus($_temp['status'], PwUser::STATUS_UNCHECK)) {
             $userDm = new PwUserInfoDm($_temp['uid']);
             $userDm->setUncheck(false);
             if (!Pw::getstatus($_temp['status'], PwUser::STATUS_UNACTIVE)) {
                 $userDm->setGroupid(0);
                 $_credit = $userDs->getUserByUid($_temp['uid'], PwUser::FETCH_DATA);
                 $credit = $groupService->calculateCredit($strategy, $_credit);
                 $memberid = $groupService->calculateLevel($credit, 'member');
                 $userDm->setMemberid($memberid);
             }
             $userDs->editUser($userDm, PwUser::FETCH_MAIN);
         }
     }
     $this->_getDs()->batchCheckUser($clearUid);
     $this->showMessage('operate.success');
 }
Пример #3
0
 /**
  * 过滤用户DM同时设置用户的相关信息
  * 
  * @param PwUserInfoDm $userDm
  * @param array $hasCredit
  * @return PwUserInfoDm
  */
 protected function filterUserDm(PwUserInfoDm $userDm, $hasCredit = array())
 {
     //如果开启邮箱激活,则设置该状态为0,否则设置该状态为1
     $_uncheckGid = false;
     if ($this->config['active.mail']) {
         $userDm->setUnactive(true);
         $_uncheckGid = true;
     }
     //如果开启审核,则设置该状态为0,否则设置该状态为1
     if ($this->config['active.check']) {
         $userDm->setUncheck(true);
         $_uncheckGid = true;
     }
     //【用户注册】未验证用户组
     if ($_uncheckGid) {
         $userDm->setGroupid(7);
         $userDm->setGroups(array());
     }
     $_credit = $this->_getRegisterAddCredit($hasCredit);
     //【用户注册】计算memberid
     /* @var $groupService PwUserGroupsService */
     $groupService = Wekit::load('usergroup.srv.PwUserGroupsService');
     $credit = $groupService->calculateCredit(Wekit::C('site', 'upgradestrategy'), $_credit);
     $memberid = $groupService->calculateLevel($credit);
     $userDm->setMemberid($memberid);
     return $userDm;
 }