コード例 #1
0
 public function handle_request_internal()
 {
     $brokerId = $this->_params['brokerId'];
     $url = 'haopan/unRecommendProp/' . $brokerId . '/1';
     $data = Util_CallAPI::get_data_from_java_v3($url);
     mb_internal_encoding('UTF-8');
     if ($data['data']['status'] === 'ok') {
         if (!isset($data['data']['propBaseInfo'])) {
             $ret = array('status' => 'ok', 'data' => array('propertyList' => array()));
             return $ret;
         }
         $props = array();
         if (!empty($data['data']['propBaseInfo'])) {
             foreach ($data['data']['propBaseInfo'] as $info) {
                 list($room, $hall, $wc) = $this->get_house_unit($info['housUnits']);
                 $propInfo = Bll_Prop::get_ajk_prop_info($info['propId']);
                 $tmp = array('id' => $info['propId'], 'title' => $info['title'], 'commName' => $info['commName'], 'roomNum' => $room, 'hallNum' => $hall, 'toiletNum' => $wc, 'area' => $propInfo['AREANUM'], 'price' => $info['price'] / 10000, 'priceUnit' => '万', 'ImgNum' => $info['propImgNum'], 'isMoreImg' => $propInfo['ISHIGHQULITY']);
                 $props['propertyList'][] = $tmp;
             }
         }
         $ret = array('status' => 'ok', 'data' => $props);
     } else {
         $ret = Util_MobileAPI::error(Const_APIStatus::E_CALL_API_ERROR);
     }
     return $ret;
 }
コード例 #2
0
ファイル: AddImg.php プロジェクト: emilymwang8/ajk-broker
 public function handle_request_internal()
 {
     if (!isset($this->_params["propId"])) {
         return Util_MobileAPI::error(Const_APIStatus::E_PROP_ID_MISS);
     }
     $json = $this->_params['imageJson'];
     //$json = '[{"type":3,"commPicIds":12345}]';
     $imageJson = json_decode($json, true);
     if ($imageJson) {
         $proid = $this->_params["propId"];
         foreach ($imageJson as $img) {
             $api_url = 'image/addImg';
             $img_params['brokerId'] = $this->_params['brokerId'];
             $img_params['propId'] = $proid;
             $img_params['imageJson'] = json_encode($img);
             $img_params['from'] = APF::get_instance()->get_config('java_api_from');
             $img_params["token"] = $this->_params["token"];
             //token
             ksort($img_params);
             $img_params_json = json_encode($img_params);
             $img_return = Util_CallAPI::get_data_from_java_v3($api_url, $img_params_json, false);
             if ($img_return['data']['status'] != 'ok' && !$img_return['data']['id']) {
                 return Util_MobileAPI::error(Bll_Prop::changeJavaAPICodeToSelfCode($img_return['data']['code']));
             }
         }
     } else {
         return Util_MobileAPI::error(Const_APIStatus::E_PROP_IMAGEJSON_ERROR);
     }
     $return = array();
     $return["status"] = "ok";
     $return['data']['id'] = $img_return['data']['id'];
     return $return;
 }
コード例 #3
0
 public function handle_request_internal()
 {
     $brokerId = $this->_params['brokerId'];
     $url = 'haopan/unRecommendProp/' . $brokerId . '/1';
     $data = Util_CallAPI::get_data_from_java_v3($url);
     if ($data['data']['status'] === 'ok') {
         $ret = array('status' => 'ok', 'data' => array('total' => count($data['data']['propBaseInfo'])));
     }
     return $ret;
 }
コード例 #4
0
ファイル: Effect.php プロジェクト: emilymwang8/ajk-broker
 public function handle_request_internal()
 {
     $brokerId = $this->_params['brokerId'];
     $url = 'haopan/brokerPlanReport/' . $brokerId . '/1';
     $data = Util_CallAPI::get_data_from_java_v3($url);
     if ($data['data']['status'] === 'ok') {
         $ret = array('status' => 'ok', 'data' => $data['data']['bidPlan']);
     }
     return $ret;
 }
コード例 #5
0
ファイル: DelImg.php プロジェクト: emilymwang8/ajk-broker
 public function handle_request_internal()
 {
     //根据图片ID删除该图片
     $this->_params['from'] = APF::get_instance()->get_config('java_api_from');
     $api_url = 'image/dels';
     $result = Util_CallAPI::get_data_from_java_v3($api_url, $this->_params, false);
     if ($result['data']['status'] != 'ok') {
         return Util_MobileAPI::error_tmp($result['data']['code'], $result['data']['info']);
     }
     $r = array('status' => 'ok', 'data' => array());
     return $r;
 }
コード例 #6
0
ファイル: Publish.php プロジェクト: emilymwang8/ajk-broker
 public function handle_request_internal()
 {
     $brokerId = $this->_params['brokerId'];
     $cityId = $this->_params['cityId'];
     $ownerPropId = $this->_params['ownerPropId'];
     //检测title
     $checkRes = $this->checkTitle($this->_params);
     if (!$checkRes) {
         return Util_MobileAPI::error(Const_APIStatus::E_PROP_LENGTH_ERROE);
     }
     //构造房源接口数据
     $params = Bll_Prop::gen_prop_info($this->_params);
     if (isset($params['status']) and $params['status'] === 'error') {
         return $params;
     }
     //判断经纪人为ppc经纪人 & 套餐经纪人
     //根据不同类型判断调用不同的java接口
     $api_url = 'sale/properties/add?json';
     //调用房源发布接口
     $result = Util_CallAPI::callJavaInternalApi($api_url, $params, false);
     if ($result['data']['status'] != 'ok') {
         return Util_MobileAPI::error_tmp($result['data']['code'], $result['data']['info']);
     }
     $imageJson = (array) json_decode($this->_params['imageJson']);
     if ($imageJson) {
         $proid = $result['data']['action']['proid'];
         foreach ($imageJson as $img) {
             $api_url = 'image/addImg';
             $img_params['brokerId'] = $brokerId;
             $img_params['propId'] = $proid;
             $img_params['imageJson'] = json_encode($img);
             $img_params['from'] = APF::get_instance()->get_config('java_api_from');
             $img_params["token"] = $this->_params["token"];
             //token
             ksort($img_params);
             $img_params_json = json_encode($img_params);
             $img_return = Util_CallAPI::get_data_from_java_v3($api_url, $img_params_json, false);
             if ($img_return['data']['status'] != 'ok' && !$img_return['data']['id']) {
                 return Util_MobileAPI::error(Bll_Prop::changeJavaAPICodeToSelfCode($img_return['data']['code']));
             }
         }
     }
     $return = array();
     $return["status"] = "ok";
     $return['data']['id'] = $proid = $result['data']['action']['proid'];
     if ($proid && isset($ownerPropId) && !empty($ownerPropId)) {
         //委托房源回写
         $entrustDynamicLog = new V1_Entrust_PropertyDynamicLogController();
         $entrustDynamicLog->addLog($cityId, $ownerPropId, $brokerId, $proid, 2, 2);
     }
     return $return;
 }
コード例 #7
0
ファイル: GetTopCity.php プロジェクト: emilymwang8/ajk-broker
 public function handle_request_internal()
 {
     if (!isset($this->_params['cityId'])) {
         return Util_MobileAPI::error(Const_APIStatus::E_PARAM_CITYID_MISS);
     }
     $api_url = 'conf/publishPropConf?cityId=' . $this->_params['cityId'];
     $result = Util_CallAPI::get_data_from_java_v3($api_url);
     if ($result['data']['status'] !== 'ok') {
         return Util_MobileAPI::error(Bll_Prop::changeJavaAPICodeToSelfCode($result['data']['code']));
     }
     unset($result['data']['status']);
     $return = array();
     $return["status"] = "ok";
     $return['data'] = $result['data'];
     return $return;
 }
コード例 #8
0
ファイル: Publish.php プロジェクト: emilymwang8/ajk-broker
 public function handle_request_internal()
 {
     header("Content-type:text/html;charset=utf-8");
     if (mb_strlen($this->_params['title'], 'UTF-8') < 5 || mb_strlen($this->_params['title'], 'UTF-8') > 30) {
         return Util_MobileAPI::error(Const_APIStatus::E_PROP_LENGTH_ERROE);
     }
     $params = Bll_ZuProp::gen_prop_info($this->_params);
     if (isset($params['status']) and $params['status'] === 'error') {
         return $params;
     }
     //$api_url = '/service-ppc/rest/ppc/properties/add';
     $brokerId = $this->_params['brokerId'];
     $api_url = 'rent/properties/add?json=1';
     $result = Util_CallAPI::callJavaInternalApi($api_url, $params, false);
     if ($result['data']['status'] != 'ok') {
         return Util_MobileAPI::error_tmp($result['data']['code'], $result['data']['info']);
     }
     $imageJson = (array) json_decode($this->_params['imageJson']);
     $proid = $result['data']['id'];
     if (empty($proid)) {
         $proid = $result['data']['action']['proid'];
     }
     if ($imageJson) {
         foreach ($imageJson as $img) {
             $api_url = 'image/addImg';
             $img_params['brokerId'] = $brokerId;
             $img_params['propId'] = $proid;
             //type:1-室内图  2-房型图 3-小区图
             $img_params['imageJson'] = json_encode($img);
             $img_params['from'] = APF::get_instance()->get_config('java_api_from');
             $img_params["token"] = $this->_params["token"];
             //token
             ksort($img_params);
             $img_params_json = json_encode($img_params);
             $img_return = Util_CallAPI::get_data_from_java_v3($api_url, $img_params_json, false);
             if ($img_return['data']['status'] != 'ok' && !$img_return['data']['id']) {
                 return Util_MobileAPI::error(Bll_Prop::changeJavaAPICodeToSelfCode($img_return['data']['code']));
             }
         }
     }
     $return = array();
     $return["status"] = "ok";
     $return['data']['id'] = $proid;
     return $return;
 }
コード例 #9
0
ファイル: GetConfig.php プロジェクト: emilymwang8/ajk-broker
 public function handle_request_internal()
 {
     if (!isset($this->_params['cityId'])) {
         return Util_MobileAPI::error(Const_APIStatus::E_PARAM_CITYID_MISS);
     }
     $api_url = 'conf/publishPropConf?cityId=' . $this->_params['cityId'];
     $result = Util_CallAPI::get_data_from_java_v3($api_url);
     unset($result['data']['houseType']['allValue']);
     $tempArr = Model_Community_UseType::getUseTypeByCityId($this->_params['cityId']);
     if (empty($tempArr)) {
         return Util_MobileAPI::error(Const_APIStatus::E_NOT_FOUND_STYLE);
     }
     $styleArr = array();
     foreach ($tempArr as $v) {
         if ($v['typeName'] != '其它') {
             $styleArr[] = array('index' => $v['typeId'], 'value' => $v['typeName']);
         }
     }
     $result['data']['houseType']['allValue'] = $styleArr;
     if ($result['data']['status'] !== 'ok') {
         return Util_MobileAPI::error(Bll_Prop::changeJavaAPICodeToSelfCode($result['data']['code']));
     }
     unset($result['data']['status']);
     $fitments = $result['data']['fitments']['allValue'];
     foreach ($fitments as $k => $v) {
         if (($v['value'] == '其它' || $v['value'] == '其他') && !in_array($this->_params['cityId'], array(11, 30, 31))) {
             unset($result['data']['fitments']['allValue'][$k]);
         }
     }
     // fixbug44041 - 解决
     $result['data']['fitments']['allValue'] = array_values($result['data']['fitments']['allValue']);
     $return = array();
     $return["status"] = "ok";
     $return['data'] = $result['data'];
     return $return;
 }
コード例 #10
0
 public static function get_broker_ppc_info($brokerId)
 {
     $url = 'haopan/brokerPlanReport/' . $brokerId . '/1?from=' . APF::get_instance()->get_config('java_api_from') . "&isNew=1";
     $data = Util_CallAPI::get_data_from_java_v3($url, array(), false);
     $ajkClick = $ajkConsume = $ajkBidHouseNum = $ajkNotFixHouseNum = 0;
     $ajkFixHouse = array();
     $ajkFixClick = $ajkFixConsume = 0;
     if ($data['data']['status'] === 'ok') {
         $ajkBidHouseNum = intval($data['data']['bidPlan'][0]['bidPlanNum']);
         $ajkNotFixHouseNum = intval($data['data']['unRecommendPropNum']);
         foreach ((array) $data['data']['pricPlan'] as $plan) {
             $ajkFixClick += $plan['pricPlanClickNum'];
             $ajkFixConsume += $plan['pricPlanCons'];
             $ajkFixHouse[] = array('fixId' => $plan['pricPlanId'], 'fixName' => $plan['pricPlanName'], 'fixNum' => $plan['pricPlanPropNum'], 'fixStatus' => trim($plan['pricPlanStateDesc']) == '计划推广中' ? 1 : 2, 'fixStatusDesc' => $plan['pricPlanStateDesc']);
         }
         $ajkClick = intval($ajkFixClick + $data['data']['bidPlan'][0]['bidPlanClickNum']);
         $ajkConsume = intval($ajkFixConsume + $data['data']['bidPlan'][0]['bidPlanCons']);
     }
     return array('ajkClick' => $ajkClick, 'ajkConsume' => round($ajkConsume / 100, 2), 'ajkFixHouse' => $ajkFixHouse, 'ajkBidHouseNum' => $ajkBidHouseNum, 'ajkNotFixHouseNum' => $ajkNotFixHouseNum);
 }
コード例 #11
0
ファイル: Ppc.php プロジェクト: emilymwang8/ajk-broker
 public function getAnjukeData($brokerId)
 {
     $url = 'haopan/brokerPlanReport/' . $brokerId . '/1?from=' . APF::get_instance()->get_config('java_api_from') . "&isNew=1";
     return Util_CallAPI::get_data_from_java_v3($url, array(), false);
 }
コード例 #12
0
 public function handle_request_internal()
 {
     $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);
     }
     //获取最近使用的小区 @todo token问题。
     /*
     $api_url = '/service-internal/rest/brokers/commRecentUse?brokerId=' . $broker_id;
     $recent_comm = Util_CallAPI::get_data_from_java_api($api_url);
     
     if ($recent_comm['data']['status'] == 'ok') {
         $recent_commids = $recent_comm['data']['info'];
     } else {
         return Util_MobileAPI::error(Const_APIStatus::E_CALL_API_ERROR);
     }
     */
     //调用java api获取经纪人的小区 http://java-api.a.ajkdns.com/3.0/rest/broker/comms?brokerId=7790703&from=mobile-ajk-broker
     $api_url = 'broker/comms?brokerId=' . $broker_id;
     $recent_comm = Util_CallAPI::get_data_from_java_v3($api_url);
     if ($recent_comm['data']['status'] == 'ok') {
         $recent_commids_arr = $recent_comm['data']['comm'];
         if (!empty($recent_commids_arr)) {
             foreach ($recent_commids_arr as $comm) {
                 $recent_commids[] = $comm['commId'];
             }
             //$recent_commids_str = implode(',', $recent_commids);
         }
     } else {
         return Util_MobileAPI::error(Const_APIStatus::E_CALL_API_ERROR);
     }
     $return = array();
     $return["status"] = "ok";
     if ($recent_comm['data']['status'] == 'ok') {
         $recent_comm = Bll_Community_APIComm::getInstance()->getInfoByIdMapping($recent_commids);
         $recent_comm_list = $recent_comm;
         //最近使用的小区列表
         $recent_comm_count = count($recent_comm);
         if ($recent_comm_count < Const_APIStatus::SEARCH_COMM_LIST_NUM) {
             $this->_params['pageSize'] = Const_APIStatus::SEARCH_COMM_LIST_NUM - $recent_comm_count;
             apf_require_controller("V1_Comm_GetNearby");
             $nearby_comm = new V1_Comm_GetNearbyController();
             $nearby_comm = $nearby_comm->getNearbyComm($this->_params);
             $nearby_comm_list = $nearby_comm['communities'];
         }
         if ($recent_comm_list) {
             foreach ($recent_comm_list as $list) {
                 if ($list['typeFlag'] == 0) {
                     continue;
                 }
                 $return['data']['history'][] = array('commId' => $list['commId'], 'commName' => $list['commName'], 'address' => $list['commLocal']);
             }
         } else {
             $return['data']['history'] = array();
         }
         if ($nearby_comm_list) {
             foreach ($nearby_comm_list as $list) {
                 $return['data']['nearby'][] = array('commId' => $list['id'], 'commName' => $list['name'], 'address' => $list['address']);
             }
         } else {
             $return['data']['nearby'] = array();
         }
     } else {
         return Util_MobileAPI::error(Const_APIStatus::E_CALL_API_ERROR);
     }
     return $return;
 }
コード例 #13
0
ファイル: Prop.php プロジェクト: emilymwang8/ajk-broker
 /**
  * 获得二手房房源详细信息。
  * @param $array
  * @return array
  */
 public static function get_prop_detail($params)
 {
     $propId = $params['propId'];
     $brokerId = $params['brokerId'];
     $api_url = "properties/propInfo/{$brokerId}/{$propId}?";
     unset($params['propId']);
     unset($params['brokerId']);
     foreach ($params as $k => $v) {
         $api_url .= "{$k}={$v}&";
     }
     $api_url = substr($api_url, 0, -1);
     $propInfo = Util_CallAPI::get_data_from_java_v3($api_url, array(), false);
     return $propInfo;
 }