Ejemplo n.º 1
0
 public function handle_request_internal()
 {
     if (!$this->isBrokerLogin()) {
         $this->redirect_to_login();
     }
     $request = APF::get_instance()->get_request();
     $params = $request->get_parameters();
     $this->cityId = $request->getBrokerCityId();
     $this->brokerId = self::$BrokerInfo['BaseInfo']['BROKERID'];
     if ($params['action'] == 'dealInfoSubmit') {
         $this->doPost($params);
         $this->redirect('/ajkbroker/res/activity');
     }
     //判断活动是否开始
     $pageAttributes['activityStatus'] = Bll_City_BizType::isOnActivity($this->cityId, 4, Const_CityBizType::TYPE_ACTIVITY_RES);
     //如果用户有确认成交房源信息,显示倒计时
     if (Bll_Activity_Res_ProInfo::getResProTransactionRecords($this->brokerId)) {
         $pageAttributes['showTimes'] = 1;
     }
     //倒计时
     $startTime = '2015-03-31 00:00:00';
     //活动开始时间
     $endTime = '2015-05-01 00:00:00';
     //活动截至时间
     $now = time();
     $lastDayNum = (strtotime($endTime) - $now) / (24 * 3600);
     $pageAttributes['lastDayNum'] = ceil($lastDayNum);
     if ($pageAttributes['lastDayNum'] <= 0) {
         //todo 获奖名单 二期
     }
     //获取经纪人抽奖次数
     $num = Bll_Activity_Res_RealEstateSeasonBrokerLuckDraw::getBrokerLuckDrawNum($this->brokerId);
     //已经抽奖
     if ($num == 0) {
         $pageAttributes['luckDrawStatus'] = 1;
         //显示抽奖信息
         $luckDrawInfo = Bll_Activity_Res_RealEstateSeasonBrokerLuckDraw::getBrokerPrizeByBrokerId($this->brokerId);
         $prizeInfo = Bll_Activity_Res_RealEstateSeasonBrokerLuckDraw::getBrokerActionTypeByBrokerId($luckDrawInfo[0]['prizeId']);
         $pageAttributes['actionType'] = $prizeInfo['actionType'];
         $pageAttributes['remark'] = $prizeInfo['remark'];
         $pageAttributes['prize_recode_id'] = $luckDrawInfo[0]['id'];
         $pageAttributes['prize_recode_remark'] = $luckDrawInfo[0]['remark'];
         $pageAttributes['prize_recode_prize_name'] = $luckDrawInfo[0]['prizeName'];
     }
     //显示立即抽奖
     if ($num > 0) {
         $pageAttributes['luckDrawStatus'] = 2;
     }
     //获取经纪人已经参加活动房源
     $getBrokerResActivity = Bll_Activity_Res_ProInfo::getBrokerResActivityPropInfo($this->brokerId);
     if (count($getBrokerResActivity) < 10) {
         $pageAttributes['luckDrawStatus'] = 3;
     }
     $esfData = array();
     $orderByEsfProId = array();
     $zfData = array();
     $orderByZfProId = array();
     foreach ($getBrokerResActivity as $val) {
         //参数初始化
         $proInfo = array();
         //获取房源信息
         if ($val['siteType'] == Bll_Activity_Res_ProInfo::SITE_TYPE_AJK) {
             $proInfo = Bll_House_EsfHouse::getHouseInfo($val['proId'], $val['cityId']);
             $proInfo = !empty($proInfo) ? Bll_Activity_Res_ProInfo::getEsfShowInfo($proInfo) : array();
         } else {
             $proInfo = Bll_House_HzPro::getInstance()->getBrokerHzProInfo($val['proId'], $val['cityId']);
             $propMainInfo = Bll_House_HzPro::getInstance()->getHzProInfoByIds($val['proId']);
             $propContentBasic[$val['proId']]['contentBasic'] = json_decode($propMainInfo['contentBasic'], true);
             //租房的所有信息可以从getHzProInfoByIds里面查到
             $proInfo = $proInfo[0];
             $proInfo = !empty($proInfo) ? Bll_Activity_Res_ProInfo::getZfShowInfo($proInfo, $propContentBasic) : array();
         }
         //如果房源信息查不到,使用快照里面的数据
         if (empty($proInfo)) {
             $proInfo = json_decode($val['proContent'], true);
         }
         $proInfo['status'] = $val['status'];
         //二手房、租房数据拆分
         if ($val['siteType'] == Bll_Activity_Res_ProInfo::SITE_TYPE_AJK) {
             $esfData[] = $proInfo;
             $orderByEsfProId[] = $proInfo['id'];
         } else {
             $zfData[] = $proInfo;
             $orderByZfProId[] = $proInfo['id'];
         }
     }
     //按房源id排序
     array_multisort($orderByEsfProId, SORT_DESC, $esfData);
     array_multisort($orderByZfProId, SORT_DESC, $zfData);
     $pageAttributes['esfData'] = $esfData;
     $pageAttributes['zfData'] = $zfData;
     $pageAttributes['error'] = $params['message'];
     $this->set_attributes($pageAttributes);
     return 'Activity_Res_Activity';
 }