/** * 获取图片验证码 * @param unknown $iType * @return string */ public static function makeImageCode($iType) { $sKey = self::getImageKey($iType); $sRand = Util_Tools::passwdGen(4); Util_Cookie::set($sKey, $sRand, 1800); return Util_Image::createIdentifyCodeImage(120, 50, $sRand); }
private function dataCheck($fPropInfo, $fPropInfoExtend, $isBuy) { $propStatusArr = array(Const_Fyk::PROPSTATUS_DELETE => '房源已被删除', Const_Fyk::PROPSTATUS_SELLING => '在售中', Const_Fyk::PROPSTATUS_SELLED => '房源已出售', Const_Fyk::PROPSTATUS_NOSELL => '房东不卖了', Const_Fyk::PROPSTATUS_FALSE => '房源已被证实为虚假房源'); //部分缺省数据获取 //$commInfo = Bll_Community_CommunityGardener::getCommunityInfoByCommunityId($fPropInfo['commId']); $commInfo = Bll_Community_APIComm::getInstance()->getInfoById($fPropInfo['commId']); $unitPrice = round($fPropInfo['totalPrices'] / $fPropInfo['acreage'], 2); //计算发布时间 $publishDate = strtotime(date('Y-m-d', $fPropInfo['createTime'])); $nowDate = strtotime(date('Y-m-d', time())); $publishDays = intval(($nowDate - $publishDate) / 86400); $publishDaysMsg = '天前发布'; if ($publishDays < 1) { $publishDays = 0; $publishDaysMsg = '今天发布'; } $wish = $fPropInfoExtend['sale_desire'] ? $fPropInfoExtend['sale_desire'] : ''; $saleReason = $fPropInfoExtend['sale_reason'] ? $fPropInfoExtend['sale_reason'] : ''; if ($fPropInfo['status'] == Const_Fyk::PROPSTATUS_FALSE) { $fPropInfo['falseReason'] = $fPropInfoExtend['false_reason'] ? $fPropInfoExtend['false_reason'] : '房东不存在'; } //图片信息整理 $houseImages = array(); $imageData = $fPropInfoExtend['image']; foreach ($imageData as $image) { $hash_host = explode("_", $image); $images['id'] = $hash_host[0]; $images['hash'] = $hash_host[0]; $images['host'] = $hash_host[1]; $images['smallImageUrl'] = Util_Image::getInstance()->getResizeURL($hash_host[0], $hash_host[1], 100, 75); //(拼好小图) if ($isBuy === true) { $images['bigImageUrl'] = Util_Image::getInstance()->getResizeURL($hash_host[0], $hash_host[1], 600, 600); //(拼好大图) } else { $images['bigImageUrl'] = ''; } $images['format'] = 'JPEG'; $houseImages[] = $images; } //未购买时隐藏部分字段 if ($isBuy === true) { $ownerMobile = $fPropInfo['mobile']; $buildNum = $fPropInfo['buildNum'] ? $fPropInfo['buildNum'] : '暂无'; $houseNum = $fPropInfo['roomNum'] ? $fPropInfo['roomNum'] : '暂无'; } else { $ownerMobile = substr_replace($fPropInfo['mobile'], '****', 3, 4); $buildNum = '购买后可见'; $houseNum = '购买后可见'; } $result = array('commName' => $commInfo['name'], 'commId' => $fPropInfo['commId'], 'roomNum' => $fPropInfo['cell'], 'hallNum' => $fPropInfo['hall'], 'toiletNum' => $fPropInfo['toilet'], 'totalPrice' => intval($fPropInfo['totalPrices']), 'unitPrice' => $unitPrice, 'priceUnit' => '万', 'area' => $fPropInfo['acreage'], 'publishDays' => $publishDays, 'publishDaysMsg' => $publishDaysMsg, 'buildNum' => $buildNum, 'houseNum' => $houseNum, 'totalFloor' => $fPropInfo['totalFloor'], 'floor' => $fPropInfo['floor'], 'orientation' => $fPropInfo['orientation'], 'isOnly' => $fPropInfo['isOnly'], 'certificate' => $fPropInfo['certificate'], 'ownerName' => $fPropInfo['ownerName'], 'ownerMobile' => $ownerMobile, 'isOwner400' => 0, 'owner400' => '', 'owner400host' => '', 'wish' => $wish, 'saleReason' => $saleReason, 'status' => $fPropInfo['status'], 'statusMsg' => $propStatusArr[$fPropInfo['status']], 'falseReason' => '', 'isBuy' => $isBuy ? 1 : 0, 'houseImages' => $houseImages); return $result; }
public function handle_request_internal() { $propIds = explode(',', $this->_params['propIds']); $cityId = $this->_params['cityId']; //获取房源信息 $propsInfos = Bll_House_EsfHouse::getHouseBaseInfo($propIds, $cityId); //板块信息 $blockCode = array(); $brokerIds = array(); foreach ($propsInfos as $propsInfoVal) { $blockCode[] = substr($propsInfoVal['areaCode'], 8, 4); $brokerIds[] = $propsInfoVal['brokerId']; } $blockInfos = Bll_Community_CommunityGardener::getAreaBlock($blockCode); //获取经纪人微聊信息 $chatInfos = Model_Mobile_BrokerChatInfo::getBrokerChatInfos($brokerIds); $propList = array(); foreach ($propsInfos as $propsInfo) { $row = array(); $row['brokerId'] = $propsInfo['brokerId']; $row['chatId'] = $chatInfos[$row['brokerId']]['chatId']; $row['propId'] = $propsInfo['proId']; $row['cityId'] = $propsInfo['cityId']; $row['title'] = $propsInfo['proName']; $row['commId'] = $propsInfo['commId']; $row['commName'] = $propsInfo['commName']; $row['areaCode'] = $propsInfo['areaCode']; $row['blockName'] = $blockInfos[$row['areaCode']]; $row['createTime'] = date("Y-m-d H:i:s", $propsInfo['postDate']); $row['room'] = $propsInfo['roomNum']; $row['hall'] = $propsInfo['hallNum']; $row['toilet'] = $propsInfo['toiletNum']; $row['area'] = $propsInfo['areaNum']; $row['areaUnit'] = '平米'; $row['price'] = intval($propsInfo['proPrice']); $row['priceUnit'] = '万'; //获取房源图片 $houseImageInfo = Bll_Ppc_ServiceAPI::getHouseImageInfo($propsInfo['proId']); $houseImageBaseInfos = $houseImageInfo['imageBaseInfo']; $houseImageUrls = array(); if ($houseImageBaseInfos) { foreach ($houseImageBaseInfos as $imageInfo) { $houseImageUrls[] = Util_Image::getInstance()->getResizeURL($imageInfo['FILENAME'], $imageInfo['HOST_ID'], 420, 315); } } $row['imageUrls'] = $houseImageUrls; $propList[] = $row; } return array('status' => Const_APIStatus::RETURN_CODE_OK, 'data' => array('props' => $propList)); }
/** * 获取房源房源的图片信息,结果以数组返回,格式为:array(houseId1 => imageUrl1,houseId2 => imageUrl2),图片地址为完整路径 * @param array $houseIds 房东房源Id数组 * @param int $iWidth * @param int $iHeight * @return array */ public static function getCommissionProImage($houseIds = array(), $iWidth = 200, $iHeight = 200) { if (empty($houseIds)) { return array(); } $imageInfos = Model_Image_SaleEntrustImage::getImagesByProIds($houseIds); if (empty($imageInfos)) { return array(); } $iInfo = array(); foreach ($imageInfos as $imageVal) { if (empty($iInfo[$imageVal->proId])) { $iInfo[$imageVal->proId] = Util_Image::getInstance()->getResizeURL($imageVal->imageId, $imageVal->hostId, $iWidth, $iHeight); } } return $iInfo; }
private function getImagesInfo($fImages) { $houseImages = array(); foreach ($fImages as $houseImage) { $images['id'] = $houseImage['hash']; $images['hash'] = $houseImage['hash']; $images['host'] = $houseImage['host']; $images['smallImageUrl'] = Util_Image::getInstance()->getResizeURL($houseImage['hash'], $houseImage['host'], 100, 75); //(拼好小图) $images['bigImageUrl'] = Util_Image::getInstance()->getResizeURL($houseImage['hash'], $houseImage['host'], 600, 600); //(拼好大图) $houseImages[] = $images; } return $houseImages; }
/** * 数据整理 * @param $data * @param $brokerId * @param $showStatus * @param $commLocal * @param $rushBrokerId * @param $propertyId * @return array */ private function formatdate($data, $eBrokers, $showStatus, $commLocal, $rushBrokerId, $propertyId, $imgInfos) { if (empty($data)) { return ''; } $business = APF::get_instance()->get_config("choice_business", "multicity"); $row = array(); $row['entrustId'] = $data['id']; //委托ID $row['cityId'] = $data['cityId']; //房源所属城市 $row['ownerId'] = $data['userId']; //房东ID $row['ownerName'] = $data['userName']; //房东姓名 if ($data['owner400'] != 0) { $is400 = 1; } else { $is400 = 0; } $row['is400'] = $is400; if ($rushBrokerId) { $row['ownerMobile'] = $rushBrokerId ? $data['ownerMobile'] : substr_replace($data['ownerMobile'], '*****', 3, 5); //手机. 规则抢到显示 $row['owner400'] = $rushBrokerId ? $data['owner400'] : ($is400 == 1 ? substr_replace($data['owner400'], '*****', 0, strlen($data['owner400'])) : 0); //是否绑定400。0-否;是-具体号码 } else { $row['ownerMobile'] = substr_replace($data['ownerMobile'], '*****', 3, 5); $row['owner400'] = $is400 == 1 ? substr_replace($data['owner400'], '*****', 0, strlen($data['owner400'])) : 0; //是否绑定400。0-否;是-具体号码 } $row['owner400Host'] = APF::get_instance()->get_config("400_host"); if ($data['fromType'] != 0) { $houseExt = Model_House_CommissionHouseExtend::getHouseExtByPk($data['id']); $chatId = $houseExt ? $houseExt->chatId : ''; } else { $chatId = ''; } if ($rushBrokerId) { $row['ownerChatId'] = $rushBrokerId ? $chatId : ''; //新增微聊id。 } else { $row['ownerChatId'] = ''; } $row['commId'] = $data['commId']; //对应的小区ID $row['commName'] = $data['commName']; //小区名称 $row['commLocal'] = $commLocal; //小区地址 $row['roomNum'] = $data['roomNum']; //房间数量 $row['hallNum'] = $data['hallNum']; //客厅的数量x $row['toiletNum'] = $data['toiletNum']; //卫生间的数量 $row['areaNum'] = $data['areaNum']; //房源的建筑面积;单位”平米” $row['areaUnit'] = '平米'; //房源的建筑面积;单位”平米” $row['propPrice'] = $data['proPrice']; //房源价格(万元)/房源租金(元/月) $row['priceUnit'] = $data['commissionType'] == 1 ? '万元' : '元/月'; //房源价格(万元)/房源租金(元/月) $row['entrustType'] = $data['commissionType']; //1-出售,2-出租 if (!empty($imgInfos) && $data['commissionType'] == 1) { foreach ($imgInfos as $imginfo) { $img = array(); $img['id'] = $imginfo['id']; $img['smallImageUrl'] = Util_Image::getInstance()->getResizeURL($imginfo['imageId'], $imginfo['hostId'], 100, 75); //(拼好小图) $img['bigImageUrl'] = Util_Image::getInstance()->getResizeURL($imginfo['imageId'], $imginfo['hostId'], 600, 600); //(拼好大图) $img['hostId'] = $imginfo['hostId']; $img['width'] = $imginfo['width'] ? $imginfo['width'] : 1280; $img['height'] = $imginfo['height'] ? $imginfo['height'] : 1500; $img['hash'] = $imginfo['imageId']; $img['type'] = 2; //图片类型 1:小区图 2: 室内图 3: 户型图 $img['entry'] = 4; //图片来源 1:系统默认 2:相机拍摄 3:相册选取 4: 在线图库 $img['exists'] = 1; //图片是否已存在 $img['format'] = 'JPEG'; $imgs[] = $img; } $row['imagesInfo'] = $imgs; } else { $row['imagesInfo'] = array(); } if ($showStatus == 5 || $showStatus == 6) { $row['showStatus'] = 7; } else { $row['showStatus'] = $showStatus; } //房源状态 0-非法数据暂时没用 1-违规删除 2-已过期 3-抢完了 4-可以抢 5-抢到未发布;6-抢到已发布未推广;7-抢到已发布已推广;8-房东已删除;9-房东停止委托; $row['propertyId'] = $propertyId; $row['created'] = $data['created']; //创建时间 $row['lastModifyDate'] = $data['lastModifyDate']; //最后更改时间 $row['brokerIds'] = $eBrokers ? implode(',', $eBrokers) : ''; //该套委托二手房源的所有经纪人id $row['isRealityPats'] = empty($imgs) ? 0 : 1; //实拍icon 1:显示实拍 0:不显示 if (!empty($business)) { $row['isChoiceCity'] = in_array($data['cityId'], $business) ? 1 : 0; //1:精选城市 0:非精选城市 } else { $row['isChoiceCity'] = 0; } $row['timeState'] = Bll_Common_Format::formatTime($data['created']); //倒计时 $row['brokerImages'] = array(); if ($showStatus == 3) { //已抢完,加入经纪人头像 $commissionInfo = Model_House_Commission::getCommissionsOrderById(intval($data['id'])); $brokerIds = array(); foreach ($commissionInfo as $comm) { $brokerIds[] = $comm['brokerId']; } $brokerInfo = array(); $brokers = array(); $brokerInfo = Model_Broker_AjkBrokerExtend::findMultiBrokers($brokerIds); foreach ($brokerInfo as $broInfo) { $brokers[$broInfo['brokerId']] = $broInfo; } if (!empty($brokerIds)) { foreach ($brokerIds as $broId) { $photo = Util_ImageUtils::get_broker_photo_url($brokers[$broId]['userPhoto'], '200x200'); $row['brokerImages'][] = $photo ? $photo : APF::get_instance()->get_config("broker_image_url"); } } else { for ($i = 0; $i < 5; $i++) { $row['brokerImages'][$i] = APF::get_instance()->get_config("broker_image_url"); } } } return $row; }
public function handle_request_internal() { $brokerIds = explode(',', $this->_params['brokerIds']); $cityId = $this->_params['cityId']; $sinceId = isset($this->_params['sinceId']) ? intval($this->_params['sinceId']) : 0; //从$sinceId 行开始读 $per = isset($this->_params['per']) ? $this->_params['per'] : 10; //每页示的条数 //二手房 房源表查找房源信息 找出所有的 propIds $isComboCity = Bll_City::isComboCity($cityId); $propIds = array(); if ($isComboCity) { //如果是套餐城市 套餐房源表中 批量获取经纪人在线房源 $comboSpreadHouseList = Bll_Broker_Combo_ManageAjk::getComboSpreadHouseList($brokerIds, $cityId); $propIds = array_keys($comboSpreadHouseList); $status = 2; //2 套餐 1 定价 } else { //如果是定价城市 获取经纪人定价计划--获取有效计划房源关系 $fixSpreadPlanList = Bll_Plan_Fix_AjkPlan::getBrokerPlanList($brokerIds); //获取经纪人有效定价计划 计划表 $fixSpreadPlanIds = array_keys($fixSpreadPlanList); //获取有效计划房源关系 $relations = Bll_Plan_Fix_AjkPlan::getPropFixedPlanRelation($brokerIds, $cityId, $fixSpreadPlanIds); foreach ($relations as $relation) { $propIds[] = $relation['propId']; } $status = 1; } //获取房源信息 分页 $propsInfos = Bll_House_EsfHouse::getHouseBaseInfo($propIds, $cityId, array(), $per + 1, $sinceId); //板块信息 $blockCode = array(); foreach ($propsInfos as $propsInfoVal) { $blockCode[] = substr($propsInfoVal['areaCode'], 8, 4); } $blockInfos = Bll_Community_CommunityGardener::getAreaBlock($blockCode); $hasNextPage = 0; //是否有下一页 $brokerProps = array(); if (!empty($propsInfos)) { $hasNextPage = count($propsInfos) > $per ? 1 : 0; } if ($hasNextPage) { array_pop($propsInfos); $sinceId += $per; } else { $sinceId = 0; } foreach ($propsInfos as $propsInfo) { $row = array(); $row['brokerId'] = $propsInfo['brokerId']; $row['propId'] = $propsInfo['proId']; $row['cityId'] = $propsInfo['cityId']; $row['title'] = $propsInfo['proName']; $row['commId'] = $propsInfo['commId']; $row['commName'] = $propsInfo['commName']; $row['areaCode'] = $propsInfo['areaCode']; $row['blockName'] = $blockInfos[$row['areaCode']]; $row['createTime'] = date("Y-m-d H:i:s", $propsInfo['postDate']); $row['room'] = $propsInfo['roomNum']; $row['hall'] = $propsInfo['hallNum']; $row['toilet'] = $propsInfo['toiletNum']; $row['area'] = $propsInfo['areaNum']; $row['areaUnit'] = '平米'; $row['price'] = intval($propsInfo['proPrice']); $row['priceUnit'] = '万'; //获取房源图片 $houseImageInfo = Bll_Ppc_ServiceAPI::getHouseImageInfo($propsInfo['proId']); $houseImageBaseInfos = $houseImageInfo['imageBaseInfo']; $houseImageUrls = array(); if ($houseImageBaseInfos) { foreach ($houseImageBaseInfos as $imageInfo) { $houseImageUrls[] = Util_Image::getInstance()->getResizeURL($imageInfo['FILENAME'], $imageInfo['HOST_ID'], 420, 315); } } $row['imageUrls'] = $houseImageUrls; $row['status'] = $status; $brokerProps[] = $row; } return array('status' => Const_APIStatus::RETURN_CODE_OK, 'data' => array('brokerProps' => $brokerProps, 'hasNextPage' => $hasNextPage, 'sinceId' => $sinceId)); }