public static function getAgcyType($userId) { $accountInfo = Model_Broker_AgcyAccount::getAgcyByUserId($userId); if (!is_array($accountInfo) || count($accountInfo) < 1) { return 0; } if (1 == $accountInfo['RoleId'] || 5 == $accountInfo['RoleId']) { //查询agency信息 $agency = Model_Broker_AgcyAgency::getAgcyByAgencyId($accountInfo['AgencyId']); if (1 == $agency['IfManageAllStores']) { return 5; } } $agcyJ = Model_Broker_AgcyJurisdiction::getAgcyJurisdictionByAccountId($accountInfo['AccountId']); if (is_array($agcyJ) && count($agcyJ)) { //属于1,2,3,4其中之一 return $agcyJ['Type']; } else { return 0; } }
public function handle_request_internal() { $objRequest = APF::get_instance()->get_request(); $userTypeNew = $objRequest->getUserTypeNew(); $userId = $objRequest->getUserId(); if (2 == $userTypeNew) { //经纪人展示 $brokerId = $objRequest->getBrokerId(); $Daily = Model_Wechat_BrokerDaily::getDailyByBrokerId($brokerId); } elseif (3 == $userTypeNew) { //门店账号展示 $agcyAccount = Model_Broker_AgcyAccount::getAgcyByUserId($userId); $agcyType = Bll_Broker_AgcyInfo::getAgcyType($userId); $Daily = Model_Wechat_GroupDaily::getDailyByAccountId($agcyAccount['AccountId']); $objRequest->set_attribute("agcyType", $agcyType); } else { exit('error'); } $dayStr = date('m月d日', time() - 24 * 3600); $objRequest->set_attribute("dayStr", $dayStr); $objRequest->set_attribute("Daily", $Daily); $objRequest->set_attribute("brokerId", intval($brokerId)); return 'Wechat_Mbroker_Data_Overview'; }
public function handle_request_internal() { $apf = APF::get_instance(); $response = $apf->get_response(); $request = APF::get_instance()->get_request(); $params = $request->get_parameters(); //加密公钥 $member_key = $apf->get_config("member_key"); //加密字符串 $key = $params['key']; //用户ID $uid = $params['uid']; //用户NAME $username = $params['name']; //用户类型 $usertype = $params['utype']; //$response->set_cookie("uid",$uid); $response->set_cookie("usertype", $usertype); //成功跳转页面 $location = base64_decode(urldecode($params['location'])); if (strpos($location, chr(13))) { $location = substr($location, 0, strpos($location, chr(13))); } if (strpos($location, '?') !== false) { $location .= '&_r=' . mt_rand(0, time()); } else { $location .= '?_r=' . mt_rand(0, time()); } //用户登录时间 $time = $params['time']; //key的过期时间 $keytime = $params['keytime']; //是否来自经纪人登陆 $frombroker = $params['frombroker']; $errmsg = htmlspecialchars(urldecode($params['errmsg'])); //错误代码 $error = $params['error']; //来源 $sid = @APF::get_instance()->get_request()->get_parameter("sid"); //登陆成功 if ($uid && Bll_Security_Member::check_key($key, $uid, $username, $member_key, $time, $keytime)) { $user = Model_Broker_Member::getAjkMembersByUserId($uid); if ($user->userType > 1) { $broker = Model_Broker_AjkBrokerExtend::getBrokerInfoByUserId($user->userId); } if ($user) { header("P3P: CP=CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"); $brokerid = 0; $cookietime = 86400 * 365; $ucity = APF::get_instance()->get_request()->getCityId(); if ($user->userType == 2) { // 自动创建三网支付中心账号 /*$bll_account = new BLL_Acenter_AccountUser(); $bll_account->create_three_account_must($uid);*/ if (intval($broker->checkState) == 2) { // 被业务经理关闭的帐号 $errorMess = Const_Verify::CLOSE_ERROR; } if (intval($broker->accountType) == 10000) { // 被业务经理冻结帐号 $errorMess = Const_Verify::FREEZE_ERROR; } if ($broker->isLogin == 0 && $broker->punish == 2) { //黑名单经纪人不管是免费的还是续费的,立即关闭。 $errorMess = Const_Verify::BLACK_ERROR; } if ($errorMess) { $backurl = strpos($location, '?') ? $location . '&errorMess=' . $errorMess : $location . '?errmsg=' . $errorMess; Uri_Http::redirect_header($backurl, 302); return; } $ucity = @$broker->cityId; $brokerid = @$broker->brokerId; $cookietime = 0; $userTypeNew = Const_Verify::BROKER_USER; } else { //查询是用户是否门店 $AgcyInfo = Model_Broker_AgcyAccount::getAgcyByUserId($user->userId); if (is_array($AgcyInfo) && count($AgcyInfo)) { $userTypeNew = Const_Verify::COMPANY_USER; } else { $userTypeNew = Const_Verify::COMMON_USER; } } $userid = $user->userId; $username = $user->userName; $usertype = $user->userType; $fuid = $user->fuid; $emailpass = 1; if ($brokerid > 0) { Model_Log_BrokerLogin::insertLoginLog(date('Ym'), $brokerid); } $anjuke_secques = APF::get_instance()->get_config("AnjukeSecques"); $this->setLoginDataCookie($userid, $username, $usertype, $emailpass, $anjuke_secques, 0, $fuid, $ucity, $brokerid, $cookietime, $afutype = 0, $sid, $userTypeNew); $this->setLastLoinUserName($username, 86400 * 365); } //跳转用户原访问页面 if (!$params['no_redirect']) { Uri_Http::redirect_header($location, 302); } } else { //登陆失败 $backurl = strpos($location, '?') ? $location . '&errorMess=' . $errmsg . '&errorCode=' . $error : $location . '?errorMess=' . $errmsg . '&errorCode=' . $error; Uri_Http::redirect_header($backurl, 302); return; } }
public function handle_request_internal() { $objRequest = APF::get_instance()->get_request(); $params = $objRequest->get_parameters(); $baseUrl = '/ajkbroker/mbroker/data/weiliaodata?action=GetBrokersData'; $userTypeNew = $objRequest->getUserTypeNew(); $userId = $objRequest->getUserId(); $userName = $objRequest->getUserName(); if (3 != $userTypeNew) { echo '<script>window.history.go(-1);</script>'; exit; } //获取门店账号类别,0为非门店账号,1为组账号,2真实门店账号,3区经账号,4总监账号,5总账号 $agcyAccount = Model_Broker_AgcyAccount::getAgcyByUserId($userId); $accountId = $agcyAccount['AccountId']; $agcyType = Bll_Broker_AgcyInfo::getAgcyType($userId); if (1 == $agcyType || $params['action'] == 'GetBrokersData') { if ($params['action'] == 'GetBrokersData') { $objRequest->set_attribute("action", $params['action']); $objRequest->set_attribute("baseUrl", $baseUrl); $objRequest->set_attribute("teamName", urldecode($params['teamName'])); $accountId = $params['teamAccount']; } $objRequest->set_attribute("typeName", '经纪人'); $classname = 'broker'; //获取前16位经纪人信息 $topBroker = Model_Wechat_BrokerDaily::getBrokerListByTeamAccount($accountId, 'DESC', 16); if (count($topBroker) > 15) { //展示前五和后五 $showType = 2; $startList = array_slice($topBroker, 0, 5); $endList = Model_Wechat_BrokerDaily::getBrokerListByTeamAccount($accountId, 'ASC', 5); $objRequest->set_attribute("startList", $startList); $objRequest->set_attribute("endList", $endList); } else { //展示所有记录 $showType = 1; $objRequest->set_attribute("allList", $topBroker); } } elseif ($agcyType > 1) { $objRequest->set_attribute("typeName", '门店'); $classname = 'mendian'; //获取前16位门店信息 $topAgcy = Model_Wechat_GroupDaily::getAgcyListByTeamAccount($accountId, $agcyType, 'DESC'); foreach ($topAgcy as $k => $v) { $topAgcy[$k]['avg'] = floatval($v['replyRate'] * 0.5) + floatval($v['avgResponseMin'] * 0.5); $avg[] = $topAgcy[$k]['avg']; } array_multisort($avg, SORT_DESC, $topAgcy); if (count($topAgcy) > 15) { //展示前五和后五 $showType = 2; $startList = array_slice($topAgcy, 0, 5); $endList = array_slice($topAgcy, -5); $objRequest->set_attribute("startList", $startList); $objRequest->set_attribute("endList", $endList); } else { //展示所有记录 $showType = 1; $objRequest->set_attribute("allList", $topAgcy); } } //获取门店信息汇总 $Daily = Model_Wechat_GroupDaily::getDailyByAccountId($accountId); $objRequest->set_attribute("agcyType", $agcyType); $objRequest->set_attribute("userName", $userName); $objRequest->set_attribute("Daily", $Daily); $objRequest->set_attribute("showType", $showType); $objRequest->set_attribute("classname", $classname); $objRequest->set_attribute("agcyType", $agcyType); $objRequest->set_attribute("baseUrl", $baseUrl); return 'Wechat_Mbroker_Data_WeiliaoData'; }