public function handle_request_internal() { //判断房源是否定价 拿propid去static_price_relation 查PlanId 再去static_price_plan表中查定价信息 $propId = $this->_params['propId']; $cityId = $this->_params['cityId']; //好丑陋。。。。。。好无奈。。。。。。 //委托房源自动转发停用,为了app能够展示报错信息。。。 if (empty($propId)) { $this->_params['apiDebug'] = 1; return array('status' => Const_APIStatus::RETURN_CODE_ERROR, 'errcode' => '0000', 'message' => '委托房源自动转发功能已停用;若要发布请手动发布'); } $relation = Model_Plan_AjkFixRelation::getRelationByProId($propId, $cityId); $result['status'] = 'ok'; $data['totalClicks'] = $data['todayClicks'] = $data['clickPrice'] = 0; $data['planId'] = ''; if (!empty($relation)) { if ($relation['status'] == Model_Plan_AjkFixRelation::STATUS_NORMAL) { $data['status'] = 1; //房源在定价推广中 } else { $data['status'] = 0; //未推广 } $plan = Model_Plan_EsfFixedPlan::getValidStaticPricePlanById($relation['planId']); $data['planId'] = $plan[0]['id']; if (!empty($plan)) { //房源在定价推广中 //房源点击量 $proClickDao = new DAO_My_Ppc_PlanOpe(); $proClickInfo = $proClickDao->getProClick($propId, strtotime("20120901")); if (!empty($proClickInfo)) { if (isset($proClickInfo[$propId])) { $data['totalClicks'] = $proClickInfo[$propId]; } $data['todayClicks'] = $proClickInfo['todayClicks']; } } } else { $data['status'] = 0; //未推广 } //获取点击单价 $houseInfo = Bll_House_EsfHouse::getHouseBaseInfo($propId, $cityId); if (!empty($houseInfo)) { $proPriceInt = $houseInfo[0]['proPriceInt']; $priceArr = DAO_My_Ppc_UtilTool::getPriceInterval($cityId, $proPriceInt - 0.01); if (!empty($priceArr)) { $data['clickPrice'] = round($priceArr['price'], 2); } } $data['clickPriceUnit'] = '元'; $result['data'] = $data; return $result; }
/** * 删除房源 * * @param $brokerId * @param $cityId * @param $houseIds * @return bool */ public static function deleteHouse($brokerId, $cityId, $houseIds) { $houseIds = is_array($houseIds) ? $houseIds : explode(',', $houseIds); if (Bll_Ppc_ServiceAPI::deleteHouse($brokerId, $houseIds)) { /** * 查询计划房源信息 * 20140416 曹阳 房源删除时,确认房源是否在计划中。 * 防止房源已经从计划中移除,导致房源再次被处理,产生推广动作。 */ foreach ($houseIds as $houseId) { $relation = Model_Plan_AjkFixRelation::getRelationByProId($houseId, $cityId); if ($relation === false || $relation->status != 1) { continue; } Model_Plan_AjkFixRelation::updateRelationById($relation->id, $cityId, 5); } return true; } return false; }
/** * 删除计划下房源 * @param $planId * @param $proId */ public static function delPlanPro($planId, $proId, $cityId) { if (!$planId || !$proId || !$cityId) { return '未知的计划房源'; } // 查询计划房源信息 if (!($staticRelation = Model_Plan_AjkFixRelation::getRelationByProId($proId, $cityId))) { return '未知的计划房源'; } //判断计划下房源归属 if ($staticRelation->planId != $planId) { return '非法操作'; } // 更新计划明细 if (!Model_Plan_AjkFixRelation::updateRelationById($staticRelation->id, $cityId, 2)) { return '更新关系失败'; } //调用竞价停止的方法 处理队列的job会做掉 /*$binPlanBll = new BLL_Plan_EsfBidPlan(); if (!$binPlanBll->stopBidPlanByFix($proId, $staticRelation->brokerId) && $binPlanBll->errorMsg != '未结算的竞价计划信息不存在') { return '竞价停止失败'; }*/ // 通知定价队列 if (!Bll_House_AjkHpProSpread::insertProSpreadChange($planId, $proId, $staticRelation->brokerId, $cityId, 4, "用户从计划中删除推广房源", self::getFrom())) { return '插入定价队列失败'; } return true; }