public function handle_request_internal() { $brokerId = $this->_params['brokerId']; $searchRange = isset($this->_params['searchRange']) ? $this->_params['searchRange'] : 3; $location = Model_Broker_Location::findLatestLocationByBrokerId($brokerId, $searchRange); if (!$location) { return array('status' => Const_APIStatus::RETURN_CODE_ERROR, 'errcode' => Const_APIStatus::E_BROKER_LOCATION_NOT_EXIST, 'message' => '经纪人坐标不存在'); } $data = array(); $data['id'] = $location['id']; $data['brokerId'] = $location['brokerId']; $data['lat'] = $location['lat']; $data['lng'] = $location['lng']; $data['sourceType'] = $location['sourceType']; $data['updateTime'] = $location['updateTime']; $data['commId'] = 0; if ($location['sourceType'] == Model_Broker_Location::SOURCE_TYPE_COMMUNITY_SIGN) { $sign = Model_Broker_CommunitySign::findLatestCommunitySignByBrokerId($brokerId, $searchRange); if ($sign) { $data['commId'] = $sign['communityId']; } } return array('status' => Const_APIStatus::RETURN_CODE_OK, 'data' => $data); }