Пример #1
0
 private function process_post()
 {
     // 接收参数
     $action = $this->request->get_parameter('action') ? $this->request->get_parameter('action') : 'createPage';
     $dir = $this->request->get_parameter('dir') ? trim($this->request->get_parameter('dir'), '/') : '';
     $headerType = $this->request->get_parameter('headerType') ? $this->request->get_parameter('headerType') : 'normal';
     $fileName = $this->request->get_parameter('fileName') ? $this->request->get_parameter('fileName') : 'new';
     // 首字母大写
     $fileName = ucfirst(trim($fileName, '/'));
     $title = $this->request->get_parameter('title') ? $this->request->get_parameter('title') : '安居客';
     $desc = $this->request->get_parameter('desc') ? $this->request->get_parameter('desc') : '';
     $scriptUrl = $this->request->get_parameter('scriptUrl') ? $this->request->get_parameter('scriptUrl') : '';
     if (!in_array($action, $this->actionConfig)) {
         return Util_GlobalFunc::buildReturn(0, 'invalid param: action');
     }
     switch ($action) {
         case 'createPage':
             $result = Bll_Tools_AutoCreate::createPage($dir, $fileName, $title, $desc, $headerType, $scriptUrl);
             break;
         default:
             $result = Bll_Tools_AutoCreate::createPage($dir, $fileName, $title, $desc, $headerType, $scriptUrl);
             break;
     }
     return $result;
 }
Пример #2
0
 /**
  * 由于套餐变更 下掉多余房子
  * @param $brokerId
  * @param $shouldNum
  * @return array
  */
 public static function deleteExtraHouse($brokerId, $shouldNum)
 {
     $allReturn = array();
     // 转好租brokerid
     if (!($hzBrokerId = Model_Broker_HzMapping::get_hz_broker_id($brokerId))) {
         return Util_GlobalFunc::buildReturn(0, "租房-该经纪人:{$brokerId}获取不到租房经纪人id");
     }
     // 获取有效推广关系
     if (!($plannings = Model_Plan_HzPlanning::getPlanningLists(array('user_id' => $hzBrokerId, 'plan_type' => Const_HzPlan::SPREAD_TYPE, 'is_valid' => Const_HzPlan::SPREAD), 1000, array('proid', 'asc')))) {
         return Util_GlobalFunc::buildReturn(0, "租房-该经纪人:{$hzBrokerId}没有有效定价推广关系");
     }
     $num = count($plannings);
     //推广房源数
     echo '正在处理租房 hzBrokerId:' . $hzBrokerId . ',总推广房源数' . $num . ',api中允许推广数量' . $shouldNum . PHP_EOL;
     if ($num > $shouldNum) {
         // 应该下掉多余房子
         $offNum = $num - $shouldNum;
         foreach ($plannings as $key => $planning) {
             if ($offNum < $key + 1) {
                 break;
             }
             // 下房子动作
             $result = Bll_HzFixPlan::prop_out_fix($planning['user_id'], $planning['proid'], $planning['plan_id']);
             $allReturn[] = $result['msg'];
         }
     }
     return Util_GlobalFunc::buildReturn(1, $allReturn);
 }
Пример #3
0
 /**
  * 获取上下架系统运行情况
  */
 private function getUpDownRuntimeInfo()
 {
     // db 还没处理的队列数
     $noDBDealTasksNum = $this->getDBNoDealTasksNum();
     // redis 还没处理的队列数
     $noRedisDealTasksNum = $this->getRedisNoDealTaskdNum();
     return Util_GlobalFunc::buildReturn(1, array('noDBDealTasksNum' => '房源上下架DB队列积压数量:' . $noDBDealTasksNum, 'noRedisDealTasksNum' => '房源上下架Redis队列积压数量:' . $noRedisDealTasksNum));
 }
Пример #4
0
 /**
  * 房源取消套餐推广
  * @return array
  */
 public function do_removePropFromCombo()
 {
     $this->params['proIds'] = is_array($this->params['proIds']) ? $this->params['proIds'] : explode(',', $this->params['proIds']);
     if (!Bll_Combo_HouseRelation::houseStopComboSpread($this->brokerId, $this->cityId, $this->params['proIds'], Bll_Combo_HouseRelation::SITE_TYPE_HZ)) {
         return Util_GlobalFunc::buildReturn(0, '房源取消套餐推广失败');
     }
     return Util_GlobalFunc::buildReturn(1, '房源取消套餐推广成功');
 }
Пример #5
0
 /**
  * 由于套餐变更 下掉多余房子
  * @param $brokerId
  * @param $shouldNum
  * @return bool
  */
 public static function deleteExtraHouse($brokerId, $shouldNum)
 {
     $allReturn = array();
     // 获取有效计划
     if (!($plans = Dao_Broker_AjkPlan::get_broker_plans($brokerId))) {
         return Util_GlobalFunc::buildReturn(0, "二手房-该经纪人:{$brokerId}没有有效定价");
     }
     $planIds = array();
     foreach ($plans as $plan) {
         $planIds[] = $plan['id'];
     }
     $cityId = $plans[0]['cityId'];
     // 获取有效计划下有效关系
     if (!($plannings = Bll_Fixedspread_AjkFixedSpread::getRelationListByPlanId($planIds, $cityId))) {
         return Util_GlobalFunc::buildReturn(0, "二手房-该经纪人:{$brokerId}没有有效推广关系");
     }
     $num = count($plannings);
     //推广房源数
     $onlineProIds = array();
     foreach ($plannings as $planning) {
         $onlineProIds[$planning->proId] = $planning;
     }
     if ($num > $shouldNum) {
         // 应该下掉多余房子
         $offNum = $num - $shouldNum;
         $props = Bll_House_Property::getPropertyByBrokerId($brokerId, $cityId);
         if (!$props) {
             return Util_GlobalFunc::buildReturn(0, "二手房-该经纪人:{$brokerId}没有房源信息");
         }
         $offProIds = array();
         foreach ($props as $prop) {
             if (isset($onlineProIds[$prop['ProId']])) {
                 $offProIds[] = $prop['ProId'];
                 if (count($offProIds) == $offNum) {
                     break;
                 }
             }
         }
         // 开始下房子操作
         if (count($offProIds) > 0) {
             foreach ($offProIds as $offProId) {
                 $item = $onlineProIds[$offProId];
                 $result = Bll_Fixedspread_AjkFixedSpread::delPlanPro($item->planId, $item->proId, $cityId);
                 // 出错了
                 if (is_string($result)) {
                     // $allReturn
                     $allReturn[] = '[' . date('Y-m-d H:i:s') . '] planId: ' . $item->planId . ', proId: ' . $item->proId . ', result: ' . $result;
                 } else {
                     $allReturn[] = '[' . date('Y-m-d H:i:s') . '] planId: ' . $item->planId . ', proId: ' . $item->proId . ', result: ok';
                 }
             }
         }
         return Util_GlobalFunc::buildReturn(1, $allReturn);
     }
 }
Пример #6
0
 /**
  * 好租获取小区信息
  * @param $commuId
  * @param int $cls
  * @return array
  */
 public static function getCommInfo($commuId, $cls = 111)
 {
     $response = Bll_Service_Comm::hzGetCommInfo(array('commuId' => $commuId, 'rsl' => $cls));
     if ($response->isFailed()) {
         return Util_GlobalFunc::buildReturn(0, '好租获取小区信息失败,请求内部API失败.');
     }
     if ($response['status'] == 'error') {
         return Util_GlobalFunc::buildReturn(0, '好租获取小区信息失败,' . $response['info']);
     }
     return Util_GlobalFunc::buildReturn(1, array('commBaseInfo' => $response['commBaseInfo'], 'commExtInfo' => $response['commExtInfo']));
 }
Пример #7
0
 /**
  * 获取账户信息
  * @param $ajkBrokerId
  * @param string $field
  *      可能值 * => all
  *            balance=> 余额,
  *            frozen=> 冻结总额,
  *            jp|hz|ajk => 对应分站的余额 冻结 金额信息
  * @return array
  */
 public static function getAccountInfo($ajkBrokerId, $field = '*')
 {
     $userId = Bll_Broker_MainBusiness::getDataByEsfId($ajkBrokerId)->memberId;
     $response = Bll_Service_Payment::balance(Const_PaymentApp::AJK_DEFAULT, array('userId' => $userId));
     if ($response->isFailed()) {
         return Util_GlobalFunc::buildReturn(0, '获取账户余额失败,请求内部API失败.');
     }
     if ($response['status'] == 'error') {
         return Util_GlobalFunc::buildReturn(0, '获取账户余额失败' . $response['info']);
     }
     $data = $field == '*' ? $response['data'] : $response['data'][$field];
     return Util_GlobalFunc::buildReturn(1, $data);
 }
Пример #8
0
 public function DownHouse($brokerId = 0, $promitionHouseNum = 0)
 {
     $brokerId = intval($brokerId);
     $promitionHouseNum = intval($promitionHouseNum);
     if ($brokerId == 0 || $promitionHouseNum == 0) {
         return false;
     }
     //将二手房经纪人ID转成商业地产ID
     $jpBrokerInfoObj = Model_Broker_JpBroker::getJpBrokerInfoByAjkBrokerId($brokerId);
     if (!$jpBrokerInfoObj || $jpBrokerInfoObj->id == 0) {
         return Util_GlobalFunc::buildReturn(0, "该经纪人:{$brokerId}没有找到");
     }
     //获取这个经纪人的有效计划
     $OnlinePlan = Model_Plan_Jp::getOnlinePlanByMemberId($jpBrokerInfoObj->id);
     if (!$OnlinePlan) {
         return Util_GlobalFunc::buildReturn(0, "该经纪人:{$brokerId}没有有效计划");
     }
     $onlineplan = array();
     foreach ($OnlinePlan as $plan) {
         $onlineplan[] = $plan->id;
         $isBidVersion[$plan->id]['bidVersion'] = $plan->bidVersion;
     }
     //获取这些有效计划下的房子
     $houseIdx = Model_House_JpHouseIdx::getHouseInfoByFixPlanId($onlineplan);
     if (!$houseIdx) {
         return Util_GlobalFunc::buildReturn(0, "该经纪人:{$brokerId}有效计划下的房子");
     }
     $housecount = count($houseIdx);
     echo '正在处理商业地产' . $brokerId . ',总推广房源数' . $housecount . ',api中允许推广数量' . $promitionHouseNum;
     $allReturn = array();
     //和套餐的推广房源做比较,如果当前在线推广的房子大于套餐推广房子,则下房源将较早推广的房子下架
     if ($housecount > $promitionHouseNum) {
         $offNum = $housecount - $promitionHouseNum;
         for ($i = $offNum; $i >= 1; $i--) {
             if (empty($houseIdx[$i])) {
                 continue;
             }
             if ($houseIdx[$i]->bidSpreadId) {
                 $resultBid = Bll_House_JpHouseInfo::removeBidHouseFromSpread($houseIdx[$i], $jpBrokerInfoObj->id, 1, false);
                 if (!$resultBid['success']) {
                     $allReturn[] = $resultBid['data'];
                 }
             }
             $resultFix = Bll_House_JpHouseInfo::removeFixHouseFromSpread($houseIdx[$i], $jpBrokerInfoObj->id);
             if (!$resultFix['success']) {
                 $allReturn[] = $resultFix['data'];
             }
         }
     }
     return Util_GlobalFunc::buildReturn(1, $allReturn);
 }
Пример #9
0
 /**
  * 获取计划的消费、点击信息
  * @param $planIds
  * @param $cityId
  * @param $ajkBrokerId
  * @return array
  */
 public static function getPlanConsumClickInfo($planIds, $cityId, $ajkBrokerId)
 {
     if (!is_array($planIds)) {
         $planIds = explode(',', $planIds);
     }
     // 获取计划的消费 点击信息
     $responseConsumClickInfos = Bll_Service_Plan::hzGetPlanConsumClickInfo(array('brokerId' => $ajkBrokerId, 'cityId' => $cityId, 'planIds' => implode(',', $planIds)));
     if ($responseConsumClickInfos->isFailed()) {
         return Util_GlobalFunc::buildReturn(0, '好租获取消费 点击信息失败,请求内部API失败.');
     }
     if ($responseConsumClickInfos['status'] == 'error') {
         return Util_GlobalFunc::buildReturn(0, '好租获取消费 点击信息失败,' . $responseConsumClickInfos['info']);
     }
     $result = array();
     foreach ($planIds as $planId) {
         $result[$planId]['totalClick'] = 0;
         $result[$planId]['totalCost'] = 0;
         $result[$planId]['totalUnit'] = 0;
         if ($responseConsumClickInfos['planCount'] > 0) {
             foreach ($responseConsumClickInfos['plan'] as $item) {
                 if ($item['planId'] == $planId) {
                     $result[$planId]['totalClick'] = $item['totalClick'];
                     $result[$planId]['totalCost'] = $item['totalCost'];
                     $result[$planId]['totalUnit'] = $item['totalUnit'];
                     break;
                 }
             }
         }
     }
     return Util_GlobalFunc::buildReturn(1, $result);
 }
 /**
  * @param $proId
  * @param $blockId
  * @param $areaId
  * @param $cityId
  * @return int
  */
 private function changePropBlock($proId, $blockId, $areaId, $cityId, $ajk_brokerid)
 {
     //获取房源信息
     $propInfo = Bll_House_HzHouse::getPropInfo($proId, $cityId);
     //重组房源信息,同时编辑区域板块id
     //$rebuildPropInfo = $this->rebuildPropInfo($propInfo, $blockId, $areaId, $ajk_brokerid);
     $commName = $propInfo['msg']['commname'];
     $commAddress = $propInfo['msg']['address'];
     $rebuildPropInfo = array('proid' => $proId, 'blockId' => $blockId, 'areaId' => $areaId, 'isCommUpdate' => 1, 'commName' => $commName, 'commAddress' => $commAddress);
     $response = Bll_Service_House::HzUpdateCommunitysMessageInHouse($rebuildPropInfo);
     if ($response->isFailed()) {
         return Util_GlobalFunc::buildReturn(0, '好租更新房源失败,请求内部API失败.');
     }
     if ($response['status'] == 'error') {
         return Util_GlobalFunc::buildReturn(0, '好租更新失败,' . $response['info']);
     }
     return Util_GlobalFunc::buildReturn(1, 'success');
     //        //javaApi update
     //        $host = APF::get_instance()->get_config("JavaAPIHost");
     //        $url = $host . "service-combo/rest/rent/properties/update?json";
     //        $curl = new Util_Http_Curl();
     //        $re = $curl->setDefaults()->setConnectTimeOut(30)->post($url, $rebuildPropInfo);
     //        $re = json_decode($re, true);
     //        return $re;
 }
Пример #11
0
 /**
  * 获取房源历史总点击量(可批量)
  * 注:对查询跨度对限制,限制只能查询一个月内的
  * @param $proIds
  * @param $cityId
  * @param $ajkBrokerId
  * @param $field (返回过滤字段, 可能的值amount|cnum|freeCnum|icnum|realAmount)
  * @return array
  */
 public static function getPropTotalClicks($proIds, $cityId, $ajkBrokerId, $field = '*')
 {
     if (!is_array($proIds)) {
         $proIds = explode(',', $proIds);
     }
     $key = sprintf('%s_%s_%s_%d_%d_%s123', __CLASS__, __METHOD__, implode(',', $proIds), $cityId, $ajkBrokerId, $field);
     $cacheObj = APF_Cache_Factory::get_instance()->get_memcache();
     $result = $cacheObj->get($key);
     if ($result) {
         return Util_GlobalFunc::buildReturn(1, $result);
     }
     $response = Bll_Service_House::hzGetPropTotalClicks(array('brokerId' => $ajkBrokerId, 'cityId' => $cityId, 'proIds' => implode(',', $proIds), 'startDate' => date('Ymd', strtotime('-90 days')), 'endDate' => date('Ymd')));
     if ($response->isFailed()) {
         return Util_GlobalFunc::buildReturn(0, '好租获取房源历史总点击量失败,请求内部API失败.');
     }
     if ($response['status'] == 'error') {
         return Util_GlobalFunc::buildReturn(0, '好租获取房源历史总点击量失败,' . $response['info']);
     }
     $result = array();
     foreach ($proIds as $proId) {
         if ($response['count'] == 0) {
             $result[$proId] = $field == '*' ? array() : 0;
         } else {
             foreach ($response['property'] as $item) {
                 if ($item['proId'] == $proId) {
                     $result[$proId] = $field == '*' ? $item : $item[$field];
                     break;
                 }
             }
         }
     }
     $cacheObj->set($key, $result, 0, self::EXPIRE_TIME);
     return Util_GlobalFunc::buildReturn(1, $result);
 }
Пример #12
0
 /**
  * @param $brokerId
  * @param $cityId
  * @param string $siteType
  * @return array
  * 房源发布验证是否能够套餐推广
  */
 public static function housePublishComboCheck($brokerId, $cityId, $siteType = self::SITE_TYPE_AJK)
 {
     $comboList = Bll_Combo_Broker_BrokerComboInfo::getComboListBySite($brokerId, $siteType);
     if (empty($comboList)) {
         return Util_GlobalFunc::buildReturn(-1, '您还没有购买套餐,只能保存到未推广房源');
     }
     $currentCombo = array();
     $nextCombo = array();
     $currentTime = time();
     $index = Bll_Combo_Broker_BrokerComboInfo::getComboIndexBySiteType($siteType);
     foreach ($comboList as $combo) {
         if (strtotime($combo['endTime']) > $currentTime && strtotime($combo['startTime']) < $currentTime) {
             $currentCombo = $combo;
         } else {
             $nextCombo = $combo;
         }
     }
     $currentComboHouseCount = $currentCombo[$index];
     if (Bll_Combo_Broker_BrokerComboInfo::isOpenUp($currentCombo)) {
         $currentComboHouseCount = $currentCombo['rentPropNum'] + $currentCombo['salePropNum'];
     }
     if (empty($currentCombo) && empty($nextCombo)) {
         return Util_GlobalFunc::buildReturn(-2, '您还没有购买套餐,只能保存到未推广房源');
     }
     if (empty($currentCombo) && !empty($nextCombo)) {
         return Util_GlobalFunc::buildReturn(-3, '您的套餐未生效,只能保存到未推广房源');
     }
     if (Bll_Combo_Broker_BrokerComboInfo::isOpenUp($currentCombo) && ($siteType == self::SITE_TYPE_HZ || $siteType == self::SITE_TYPE_AJK)) {
         $currentSpreadHouseCount = static::getHouseCount($brokerId, $siteType, true);
     } else {
         $currentSpreadHouseCount = static::getHouseCountEx($brokerId, $cityId, $siteType);
     }
     if ($currentSpreadHouseCount >= $currentComboHouseCount) {
         return Util_GlobalFunc::buildReturn(-4, '推广房源已满,只能保存到未推广房源');
     }
     return Util_GlobalFunc::buildReturn(1, '');
 }
Пример #13
0
 /**
  * 设置默认房源图片
  * @param $ajkBrokerId
  * @param $aid
  * @param int $tradeType
  * @return array
  */
 public static function setDefaultImage($ajkBrokerId, $aid, $tradeType = 2)
 {
     $response = Bll_Service_Image::hzSetDefaultImage(array('brokerid' => $ajkBrokerId, 'aid' => $aid, 'tradeType' => $tradeType));
     if ($response->isFailed()) {
         return Util_GlobalFunc::buildReturn(0, '设置默认房源图片失败,请求内部API失败.');
     }
     if ($response['status'] == 'error') {
         return Util_GlobalFunc::buildReturn(0, '设置默认房源图片失败,' . $response['info']);
     }
     return Util_GlobalFunc::buildReturn(1, 'success');
 }
Пример #14
0
 /**
  * 构造发房数据
  * @return string
  * @throws Exception
  */
 public static function buildPropPostData($info)
 {
     if (!isset($info["ajkBrokerId"]) || !isset($info["cityId"])) {
         return Util_GlobalFunc::buildReturn(0, '缺少参数: ajkBrokerId | cityId');
     }
     // 装修 例子:2|普通装修
     $decorationArr = explode('|', $info["decoration"]);
     $params["broker_id"] = $info["ajkBrokerId"];
     //经纪人ID
     $params["comm_id"] = (int) $info["commonid"];
     //小区ID
     $params["trade_type"] = 2;
     //交易类型-租房
     $params["area"] = $info["housearea"];
     //产证面积(输入)
     $params["rooms"] = $info["room"] . ',' . $info["hall"] . ',' . $info['toliet'];
     // 房间数,客厅数,卫生间
     $params["price"] = $info["rentprice"];
     //价格(输入)
     $params["floor"] = $info["floor"] . ',' . $info['floorall'];
     //楼层(选择)
     $params["fitment"] = Bll_House_HzHouse::getFitmentMappingId($decorationArr, $info["cityId"]);
     //装修(默认+选择)
     $params['style'] = self::buildHouseType($info['housetype']);
     // 需要映射
     $params["exposure"] = $info["renttype"] == 1 ? $info["toward"] : $info["roomtoward"];
     //朝向(默认+选择)
     $params["title"] = $info["housetitle"];
     //房源标题(输入)
     $params["description"] = $info["ProDesc"];
     //房源描述(输入)
     $params["equipment"] = self::buildHouseConfig(isset($info["houseconfig"]) ? $info["houseconfig"] : array());
     $params["rentType"] = $info["renttype"];
     //租房类型(1.整租  2.合租)
     $params["shareType"] = isset($info["shareType"]) ? $info["shareType"] : 1;
     //合租类型1单间 2隔断间 3床位  新的发房页只有单间
     $params["shareSex"] = $info["rentsex"] ? $info["rentsex"] : 0;
     //0男女不限   1限男生  2限女生
     $params["rent_deposit_and_cycle"] = $info["paytype"] ? $info["paytype"] : '0|0';
     //付款方式。仅对出租房(trade_type==2)。目前仅支持押几付几的形式,例如'3|1'表示押金为一个月的price,一次付款3个月price。(0|0)面议、(3|1)付3押1、(1|1)付1押1、(2|1)付2押1、(1|2)付1押2、(12|0)年付不押、(6|0)半年付不押、(12|1)年付押1、(6|1)半年付押1 ,其中年付押1、半年付押1只适用于大连、西安、成都经纪人
     $params['from'] = 'my.anjuke.com';
     // 如果小区id为0
     if (!$params["comm_id"]) {
         $params['commName'] = $info['commname'];
         $params['commAddress'] = $info['comm_address'];
         $params['areaId'] = $info['areaid'];
         $params['blockId'] = $info['blockid'];
     }
     return Util_GlobalFunc::buildReturn(1, $params);
     //  下面这段逻辑的字段api不需要
     /*
     // 房屋类型(读取) 读取所选择小区的“物业类型”
     // 建造年代(读取) 读取所选择小区的“竣工时间”
     $comminfo = Bll_Community_HzComm::getCommInfo($params["commId"]);
     
     if ($comminfo['status']) {
         $usetype = Dao_Broker_AjkProp::get_prop_usetype($info["cityId"],intval($comminfo['msg']['commBaseInfo']['USETYPE']));
         $usetype_name_id = array('公寓'=>1,'别墅'=>4,'新里洋房'=>3,'其它'=>5,'老公房'=>2,'普通住宅'=>8,'四合院'=>7,'酒店公寓'=>6);
         $change_style   = array(1=>1, 4=>2, 3=>3, 5=>4, 2=>5, 6=>6, 7=>7, 8=>8);
         $usetype_id      = $change_style[$usetype_name_id[$usetype['TYPENAME']]];
         $params["style"] = $usetype_id ? $usetype_id : intval($params["style"]); //物业类型
         if (2 == $params["style"])//别墅强制转换楼层
         {
             $pos = strpos($params["floor"],',');
             $params["floor"] = '0' . substr($params["floor"],$pos);
         }
         $params["year"] = $comminfo['msg']['commExtInfo']['SENDDATE'] ? date("Y", strtotime($comminfo['msg']['commExtInfo']['SENDDATE'])) : date("Y"); //竣工日期
     
         if ($params["year"] > date('Y'))
         {
             $params["year"] = date('Y');
         }
     
         //删除该经纪人房源缓存
         $key = self::MEMCACHE_KEY_ZUFANG_CHAT_GETCOMMPROPS . '_' . $info["brokerId"] . '_' . $info["commId"] . '_' . date("Ymd");
         $memcache = APF_Cache_Factory::get_instance()->get_memcache();
         $result = $memcache->delete($key);
     
     } else {
         Util_GlobalFunc::buildReturn(0, $comminfo['msg']);
     }
     $params["style"] = $params["style"] ? $params["style"] : 1;//房屋类型 (//1公寓;2老公房;3新里洋房;4别墅;5其它 ;6洒店公寓;7四合院; 8普通住宅)
     return Util_GlobalFunc::buildReturn(1, $params);
     */
 }
Пример #15
0
 public static function JpComboHouseClick($houseIds, $type)
 {
     $return = array();
     if (!is_array($houseIds)) {
         $houseIds = array($houseIds);
     }
     $clicksP = Bll_Ppc_NewPackageStatsBrokerDay::getHouseComboClickInfo($houseIds, date('Ymd'), Model_Ppc_NewPackageStatsHouseDay::SITE_TYPE_JP);
     //先取今天点击
     $clicks = array();
     foreach ($clicksP as $clickP) {
         $clicks[$clickP['propId']] = intval($clickP['cnum']);
     }
     if ($type == 'today') {
         foreach ($houseIds as $houseId) {
             $return[$houseId] = intval($clicks[$houseId]);
         }
     } elseif ($type == 'all') {
         $historyClick = self::getPropHistoryComboClick($houseIds);
         foreach ($houseIds as $houseId) {
             $return[$houseId] = intval($clicks[$houseId]) + intval($historyClick[$houseId]);
         }
     }
     return Util_GlobalFunc::buildReturn(1, $return);
 }
Пример #16
0
 /**
  * @param $uri
  * @param $dir
  * @param $fileName
  * @param $title
  * @param string $desc
  * @return array
  */
 private static function createRoute($uri, $dir, $fileName, $title, $desc = '描述')
 {
     $result = array();
     $uri = trim($uri);
     $uri = str_replace('//', '/', $uri);
     $mappings = APF::get_instance()->get_config('mappings', 'route');
     $isFound = false;
     foreach ($mappings as $mappings) {
         foreach ($mappings as $pattern) {
             if (@preg_match("@" . $pattern . "@", $uri, $matches)) {
                 $isFound = true;
             }
         }
     }
     if ($isFound) {
         return Util_GlobalFunc::buildReturn(0, '已经有该router,请换一个url');
     }
     $routeOut = self::getRouteOut($dir, $fileName, $desc, $uri);
     // 写入router文件
     $writeRouteResult = file_put_contents(APP_PATH . 'config/route.php', $routeOut, FILE_APPEND);
     if ($writeRouteResult) {
         $result[] = '生成route文件成功';
     } else {
         return Util_GlobalFunc::buildReturn(0, '生成route文件失败');
     }
     return Util_GlobalFunc::buildReturn(1, $result);
 }
Пример #17
0
 /**
  * 处理经纪人下房子任务
  * @param $brokerId
  * @return bool
  */
 public function dealTask($brokerId)
 {
     // 调api获取套餐推广房源数限制
     // TODO 会提供一个接口返回三网的数据来替代三次调用
     if (!($ajkShouldNum = Bll_Broker_BrokerLimit::getPpcBrokerPromotionLimit($brokerId, Bll_Broker_BrokerLimit::PPC_BROKER_LIMIT_ESF_SITE))) {
         return Util_GlobalFunc::buildReturn(0, "该经纪人:{$brokerId}调用api接口获取封二手房顶数据失败");
     }
     if (!($hzShouldNum = Bll_Broker_BrokerLimit::getPpcBrokerPromotionLimit($brokerId, Bll_Broker_BrokerLimit::PPC_BROKER_LIMIT_ZF_SITE))) {
         return Util_GlobalFunc::buildReturn(0, "该经纪人:{$brokerId}调用api接口获取封好租顶数据失败");
     }
     if (!($jpShouldNum = Bll_Broker_BrokerLimit::getPpcBrokerPromotionLimit($brokerId, Bll_Broker_BrokerLimit::PPC_BROKER_LIMIT_JP_SITE))) {
         return Util_GlobalFunc::buildReturn(0, "该经纪人:{$brokerId}调用api接口获取封金铺顶数据失败");
     }
     $promotion3Web = array(Bll_Broker_BrokerLimit::PPC_BROKER_LIMIT_ESF_SITE => $ajkShouldNum, Bll_Broker_BrokerLimit::PPC_BROKER_LIMIT_ZF_SITE => $hzShouldNum, Bll_Broker_BrokerLimit::PPC_BROKER_LIMIT_JP_SITE => $jpShouldNum);
     $allReturn = array();
     // 分别掉用对用网站处理逻辑
     foreach ($promotion3Web as $siteType => $shouldNum) {
         switch ($siteType) {
             case Bll_Broker_BrokerLimit::PPC_BROKER_LIMIT_ESF_SITE:
                 // 二手房
                 $result = BLL_Package_AjkPackageSwitch::deleteExtraHouse($brokerId, $shouldNum);
                 $allReturn['msg'][] = $result['msg'];
                 break;
             case Bll_Broker_BrokerLimit::PPC_BROKER_LIMIT_ZF_SITE:
                 // 租房
                 $result = BLL_Package_HzPackageSwitch::deleteExtraHouse($brokerId, $shouldNum);
                 $allReturn['msg'][] = $result['msg'];
                 break;
             case Bll_Broker_BrokerLimit::PPC_BROKER_LIMIT_JP_SITE:
                 // 金浦
                 $result = BLL_Package_JpPackageSwitch::getInstance()->DownHouse($brokerId, $shouldNum);
                 $allReturn['msg'][] = $result['msg'];
                 break;
         }
     }
     return $allReturn;
 }
Пример #18
0
 public function buildSuccessReturnResult()
 {
     $this->allReturn[] = 'success';
     return Util_GlobalFunc::buildReturn(1, $this->allReturn);
 }
Пример #19
0
 /**
  * 获取板块
  * @return array
  */
 public function do_getBlocks()
 {
     $result = Bll_House_HzHouse::getBlocks($this->cityId, $this->params['areaId']);
     return Util_GlobalFunc::buildReturn(1, $result);
 }
Пример #20
0
 /**
  * 删除房源模版
  * @return array
  */
 public function do_deletePropTemplate()
 {
     $result = Bll_House_JpPropertyTemplate::deletePropTemplate($this->params['id'], $this->brokerId);
     return Util_GlobalFunc::buildReturn($result == 1 ? 1 : 0, '删除房源模板成功');
 }