public function handle_request_internal() { $brokerId = $this->_params['brokerId']; //经纪人信息 $brokerInfo = Model_Broker_AjkBrokerExtend::findWithBrokerId($brokerId); if (!$brokerInfo) { throw new Exception_BrokerNotFoundException('经纪人不存在', Const_APIStatus::E_BROKER_NOT_EXISTS); } $cityId = $brokerInfo->cityId; if (empty($cityId)) { return Util_MobileAPI::error(Const_APIStatus::E_PARAM_CITYID_MISS); } //获取城市可选择的套餐列表 $comboListInfo = Bll_Combo_Broker_BrokerComboInfo::getComboList($cityId); if (empty($comboListInfo)) { return array('status' => Const_APIStatus::RETURN_CODE_OK, 'data' => array('comboList' => array())); } $comboList = array(); foreach ($comboListInfo as $combo) { $tmpStr = ''; if ($combo['salePropNum']) { $tmpStr = $tmpStr ? $tmpStr . ',出售房源' . $combo['salePropNum'] . '套' : '出售房源' . $combo['salePropNum'] . '套'; } if ($combo['rentPropNum']) { $tmpStr = $tmpStr ? $tmpStr . ',租房' . $combo['rentPropNum'] . '套' : '租房' . $combo['rentPropNum'] . '套'; } if ($combo['jpPropNum']) { $tmpStr = $tmpStr ? $tmpStr . ',商业地产房源' . $combo['jpPropNum'] . '套' : '商业地产房源' . $combo['jpPropNum'] . '套'; } $combo['description'] = '可推广' . $tmpStr; foreach ($combo['types'] as $key => $type) { $type['price'] = $type['price'] / 100.0; $type['priceUnit'] = '元'; $type['originPrice'] = $type['originPrice'] / 100.0; $type['originPriceUnit'] = '元'; $combo['types'][$key] = $type; } unset($combo['comboId']); $comboList[] = $combo; } return array('status' => Const_APIStatus::RETURN_CODE_OK, 'data' => array('comboList' => $comboList)); }
public function handle_request_internal() { if (!$this->isBrokerLogin()) { $this->redirect_to_login(); } /** * @var $request AJKRequest */ $request = APF::get_instance()->get_request(); $cityId = $request->getBrokerCityId(); $brokerId = $request->getBrokerId(); $userId = $request->getUserId(); $brokerInfo = self::$BrokerInfo['BaseInfo']; //非套餐经纪人不能进入该页面,跳转到首页 if ($brokerInfo['PAYTYPE'] != 9999) { $this->redirect('/user/broker/brokerhome'); } $companyId = intval($brokerInfo['COMPANYID']); if ($companyId > 0) { /** 通过配置文件配置那些城市的非独立经纪人不可以购买月套餐 */ $canNotBuyMonthlyComboCitySet = APF::get_instance()->get_config('can_not_buy_monthly_combo_city_set'); if (is_array($canNotBuyMonthlyComboCitySet) && in_array($cityId, $canNotBuyMonthlyComboCitySet)) { $companyId = 0; } } //获取城市可选择的套餐列表 if ($companyId > 0) { $comboList = Bll_Combo_Broker_BrokerComboInfo::getCompanyComboList($cityId, $companyId); } else { $comboList = Bll_Combo_Broker_BrokerComboInfo::getComboList($cityId); } //获取经纪人当前套餐 $brokerCombos = Bll_Combo_Broker_BrokerComboInfo::getBrokerComboList($brokerId); //查询账户余额 $balance = Bll_Service_Payment::balance(Bll_Service_Payment::SITE_ANJUKE, array('userId' => $userId)); $UserAccountAll = $balance['data']['balance'] / 100.0; //账户余额 $UserAccountPerson = $balance['data']['personBalance'] / 100.0; //账户余额(个人) $UserAccountCompany = $balance['data']['companyBalance'] / 100.0; //账户余额(公司) /** * 获取经纪人信息身份认证状态(购买套餐时需要身份认证通过) * CheckState - 经纪人身份认证状态 * OperateState - 经纪人审核过程中走到哪一步标记 * * 备注:本处会出bug。(后台显示身份认证通过、不能购买套餐) * 经纪人后台判断身份认证状态只使用CheckState=1 * 套餐购买的api里面判断CheckState=1 && OperateState=4 * api组的志山同志拍脑袋,使用双验证。 * caoyang 20140825 */ //$brokerInfo['CheckState'] = ($brokerInfo['CHECKSTATE'] == 1 && $brokerInfo['OPERATESTATE'] == 4) ? 1 : 0; $brokerInfo['CheckState'] = $brokerInfo['CHECKSTATE']; $this->setAttribute('comboList', $comboList); $this->setAttribute('brokerCombos', $brokerCombos); $this->setAttribute('UserAccountAll', number_format($UserAccountAll, 2, ".", "")); $this->setAttribute('UserAccountPerson', number_format($UserAccountPerson, 2, ".", "")); $this->setAttribute('UserAccountCompany', number_format($UserAccountCompany, 2, ".", "")); $this->setAttribute('brokerInfo', $brokerInfo); return 'Combo_Buy_Select'; }