/** * 修复b_bj_prop_search,b_sh_prop_search,b_four_prop_search,b_other_prop_search 4张表中的ajk_brokerid 为0的数据 * * @param int $hzBrokerId * @param int $ajkBrokerId * @param int $cityId */ private function repairPropSearch($hzBrokerId, $ajkBrokerId, $cityId) { $condition = array(array('userid', '=', $hzBrokerId), array('ajkBrokerId', '=', 0), array('created', '>', strtotime('-91 day'))); $propList = Model_House_HzPropSearch::getPropLists($cityId, $condition); if (empty($propList)) { $this->setLog('没有获取到房源'); return; } foreach ($propList as $propInfo) { $this->setLog(json_encode($propInfo)); if ($propInfo['ajkBrokerId'] == 0) { $data = array('ajkBrokerId' => $ajkBrokerId); if (!Model_House_HzPropSearch::updateProp($cityId, $propInfo['proid'], $data)) { $this->setLog(sprintf('更新房源[%d]的 ajkBrokerId=%d 失败', $propInfo['proid'], $ajkBrokerId)); } else { $this->setLog(sprintf('更新房源[%d]的 ajkBrokerId=%d 成功', $propInfo['proid'], $ajkBrokerId)); } continue; } if ($propInfo['ajkBrokerId'] != $ajkBrokerId) { $this->setLog(sprintf('房源[%d]的ajkBrokerId[%d],不一致[%d]', $propInfo['proid'], $propInfo['ajkBrokerId'], $ajkBrokerId)); } else { $this->setLog(sprintf('房源[%d]的ajkBrokerId[%d],无需修复', $propInfo['proid'], $propInfo['ajkBrokerId'])); } } }
/** * 更新房源推广类型 * * @param $cityId * @param $propId * @param $type */ public static function updateSpreadType($cityId, $propId, $type) { $propSearchInfo = Model_House_HzPropSearch::get_prop_by_prop_id($cityId, $propId); switch ($type) { case 1: // 定价增 if (empty($propSearchInfo['spread_type']) || $propSearchInfo['spread_type'] == 2) { $propSearchInfo['spread_type'] = $propSearchInfo['spread_type'] + 1; } break; case 2: // 定价减 if (!empty($propSearchInfo['spread_type'])) { $propSearchInfo['spread_type'] = $propSearchInfo['spread_type'] - 1; } break; case 3: // 定价、竞价减 $propSearchInfo['spread_type'] = 0; break; case 4: // 竞价增 if (empty($propSearchInfo['spread_type']) || $propSearchInfo['spread_type'] == 1) { $propSearchInfo['spread_type'] = $propSearchInfo['spread_type'] + 2; } break; case 5: // 竞价减 if ($propSearchInfo['spread_type'] == 3 || $propSearchInfo['spread_type'] == 2) { $propSearchInfo['spread_type'] = $propSearchInfo['spread_type'] - 2; } break; } $propSearchInfo['spread_type'] = $propSearchInfo['spread_type'] < 0 ? 0 : $propSearchInfo['spread_type']; if ($propSearchInfo['spread_type'] > 3) { $propSearchInfo['spread_type'] = $propSearchInfo['spread_type'] % 2 == 0 ? 2 : 1; } Model_House_HzPropSearch::updateProp($cityId, $propId, array('spread_type' => $propSearchInfo['spread_type'])); $propInfo = Model_House_HzProp::get_prop_info_by_prop_id($propId); $propInfo['contentBasic']['spread_type'] = $propSearchInfo['spread_type']; Model_House_HzProp::updateProp($propId, array('contentBasic' => json_encode($propInfo['contentBasic']))); }