/** * 由于套餐变更 下掉多余房子 * @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); } }
public static function get_broker_fixprop($broker_id, $city_id, $tradetype = 1) { $plans = Dao_Broker_AjkPlan::get_broker_plans($broker_id, $tradetype); if ($plans) { $plan_ids = array(); foreach ($plans as $plan) { $plan_ids[] = $plan['id']; } $plan_rels = Dao_Broker_AjkPlan::get_broker_relations($broker_id, $city_id, $plan_ids, $tradetype = 1); if ($plan_rels) { $proids = array(); foreach ($plan_rels as $rels) { $proids[$rels['proId']] = $rels['proId']; } return $proids; } } return array(); }