public function handle_request_internal() { //组织POST参数 $params = array(); if (!isset($this->_params['brokerId'])) { return Util_MobileAPI::error(Const_APIStatus::E_BROKER_PARAM_MISS); } else { $broker_id = $this->_params["brokerId"]; } if (!isset($this->_params["cityId"])) { return Util_MobileAPI::error(Const_APIStatus::E_PARAM_CITYID_MISS); } if (!isset($this->_params["propId"])) { return Util_MobileAPI::error(Const_APIStatus::E_PROP_ID_MISS); } if (!isset($this->_params["offer"])) { return Util_MobileAPI::error(Const_APIStatus::E_PROP_BID_PRICE_MISS); } if (!Bll_City::isBidCity($this->_params["cityId"])) { $error_code = Const_HzErrorInfo::NOBIDCITY; return array('status' => 'error', 'errcode' => $error_code, 'message' => Bll_HzFixPlan::get_message_from_code($error_code)); } $search = new Util_SearchUtil(); $prop = Bll_HzProp::get_prop($this->_params["propId"]); $blockid = $prop['blockid']; $price = $prop['pricenum']; $price_block = Bll_HzBidPlan::get_price_block($this->_params["cityId"], $price); $ajkid = Bll_HzProp::get_subregion_id($prop['commId'], $this->_params["propId"]); $rank = $search->getHpRankByProp($this->_params["cityId"], $ajkid, $this->_params["propId"], $price_block['LOWER'], $price_block['UPPER'], $this->_params['offer']); $return = array(); $return["status"] = "ok"; $return["data"] = $rank; return $return; }
/** * 从slor获取竞价排名 */ public static function get_bid_rank($prop, $city_id) { $price_block = self::get_price_block($city_id, $prop['pricenum']); $ajkid = Bll_HzProp::get_subregion_id($prop['commid'], $prop['proid']); $rank = Util_SearchUtil::getHpCurrentRank($city_id, $ajkid, $prop['proid'], $price_block['LOWER'], $price_block['UPPER'], $prop['unit_price']); return $rank; }
/** * 计算竞价房源排名 * @param $proId * @param $commId * @param $priceNum * @param $unitPrice * @param $cityId * @return int */ public static function getBidRank($proId, $commId, $priceNum, $unitPrice, $cityId) { // 获取价格段 $priceBlock = Bll_HzBidPlan::get_price_block($cityId, $priceNum); // 板块id $ajkid = Bll_HzProp::get_subregion_id($commId, $proId); $rank = Util_SearchUtil::getHpCurrentRank($cityId, $ajkid, $proId, $priceBlock['LOWER'], $priceBlock['UPPER'], $unitPrice); if ($rank > 5) { $rank = '排队中'; } return $rank; }