public function handle_request() { //101 $param = array('id' => 0, 'pro_id' => 220, 'plan_id' => 648468, 'broker_id' => 147479, 'city_id' => 11, 'remark' => json_encode(array('fix' => array('plan_id' => 1, 'plan_status' => 2), 'old_price' => 500000, 'new_price' => 1500000)), 'type' => 1); // var_dump(Bll_EsfPropBll::create_prop($param)); //102 $param = array('id' => 0, 'pro_id' => 220, 'plan_id' => 648468, 'broker_id' => 147479, 'city_id' => 11, 'remark' => json_encode(array('fix' => array('plan_id' => 1, 'plan_status' => 2), 'old_price' => 500000, 'new_price' => 1500000)), 'type' => 1); //var_dump(Bll_EsfPropBll::edit_prop($param)); //103 $param = array('id' => 0, 'pro_id' => 220, 'plan_id' => 648468, 'broker_id' => 147479, 'city_id' => 11, 'remark' => json_encode(array('fix' => array('plan_id' => 1, 'plan_status' => 2), 'old_price' => 500000, 'new_price' => 1500000)), 'type' => 1); //var_dump(Bll_EsfPropBll::illegal_prop($param)); //104 $param = array('id' => 0, 'pro_id' => 220, 'plan_id' => 648468, 'broker_id' => 147479, 'city_id' => 11, 'remark' => json_encode(array('fix' => array('plan_id' => 1, 'plan_status' => 2), 'old_price' => 500000, 'new_price' => 1500000)), 'type' => 1); var_dump(Bll_EsfPropBll::overtime_prop($param)); }
public static function dealProUpDownJob($queueInfo) { $hzUpDownService = new Bll_House_UpDown_Worker_HzUpDownService($queueInfo); switch ($queueInfo['type']) { case 101: #101房源新发 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPropBll::create_prop($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpPropBll::create_prop($queueInfo); break; } break; case 102: #102房源编辑 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPropBll::edit_prop($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpPropBll::edit_prop($queueInfo); break; } break; case 103: #103房源违规 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPropBll::illegal_prop($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpPropBll::illegal_prop($queueInfo); break; } break; case 104: #104房源到期下架并删除 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPropBll::overtime_prop($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpPropBll::overtime_prop($queueInfo); break; } break; case 105: #105删除房源 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPropBll::delete_prop($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpPropBll::delete_prop($queueInfo); break; } break; case 106: #106房源取消定价推广——用户手动 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPropBll::prop_out_fix($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpPropBll::prop_out_fix($queueInfo); break; } break; case 107: #107房源加入定价推广 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPropBll::prop_into_fix($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpPropBll::prop_into_fix($queueInfo); break; } break; case 108: #108房源修改价格 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPropBll::change_prop_price($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpPropBll::change_prop_price($queueInfo); break; } break; case 109: #109房源小区变更 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPropBll::change_prop_comm($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpPropBll::change_prop_comm($queueInfo); break; } break; case 110: #110房源图片信息变更 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPropBll::change_prop_pic($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpPropBll::change_prop_pic($queueInfo); break; } break; case Const_ProPlanChangeType::PRO_ADD_TO_COMBO: switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPropBll::pro_start_combo($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpPropBll::pro_start_combo($queueInfo); break; } break; case Const_ProPlanChangeType::PRO_REMOVE_FROM_COMBO: switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPropBll::pro_stop_combo($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpPropBll::pro_stop_combo($queueInfo); break; } break; case 201: #201计划新建 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPlanBll::create_plan($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpFixPlanBll::create_plan($queueInfo); break; } break; case 202: #202计划修改 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPlanBll::change_plan($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpFixPlanBll::change_plan($queueInfo); break; } break; case 203: #203计划修改 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPlanBll::delete_plan($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpFixPlanBll::delete_plan($queueInfo); break; } break; case 204: #204增加计划限额 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPlanBll::add_plan_budget($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpFixPlanBll::add_plan_budget($queueInfo); break; } break; case 205: #205减少计划限额 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPlanBll::low_plan_budget($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpFixPlanBll::low_plan_budget($queueInfo); break; } break; case 206: #206计划限额不足 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPlanBll::plan_budget_top($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpFixPlanBll::plan_budget_top($queueInfo); break; } break; case 207: #207计划手动停止 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPlanBll::handle_plan_stop($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpFixPlanBll::handle_plan_stop($queueInfo); break; } break; case 208: #208计划手动开启 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfPlanBll::handle_plan_start($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpFixPlanBll::handle_plan_start($queueInfo); break; } break; case 301: #301账户余额不足 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfBrokerBll::broker_balance_less($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpBrokerBll::broker_balance_less($queueInfo); break; case 4: $ajk_res = Bll_EsfBrokerBll::broker_balance_less($queueInfo); $hz_res = $hzUpDownService->doUpDownFromWorker(); $jp_res = Bll_JpBrokerBll::broker_balance_less($queueInfo); $result = array('ajk' => $ajk_res, 'hz' => $hz_res, 'jp' => $jp_res); break; } break; case 302: #302用户充值 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfBrokerBll::broker_recharge($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpBrokerBll::broker_recharge($queueInfo); break; case 4: $ajk_res = Bll_EsfBrokerBll::broker_recharge($queueInfo); $hz_res = $hzUpDownService->doUpDownFromWorker(); $jp_res = Bll_JpBrokerBll::broker_recharge($queueInfo); $result = array('ajk' => $ajk_res, 'hz' => $hz_res, 'jp' => $jp_res); break; } break; case 303: #303竞价结算 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfBrokerBll::broker_frozen_money($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpBrokerBll::broker_frozen_money($queueInfo); break; case 4: $ajk_res = Bll_EsfBrokerBll::broker_frozen_money($queueInfo); $hz_res = $hzUpDownService->doUpDownFromWorker(); $jp_res = Bll_JpBrokerBll::broker_frozen_money($queueInfo); $result = array('ajk' => $ajk_res, 'hz' => $hz_res, 'jp' => $jp_res); break; } break; case 304: #304系统返还 switch ($queueInfo['site_type']) { case 1: $result = Bll_EsfBrokerBll::broker_restitution($queueInfo); break; case 2: $result = $hzUpDownService->doUpDownFromWorker(); break; case 3: $result = Bll_JpBrokerBll::broker_restitution($queueInfo); break; case 4: $ajk_res = Bll_EsfBrokerBll::broker_restitution($queueInfo); $hz_res = $hzUpDownService->doUpDownFromWorker(); $jp_res = Bll_JpBrokerBll::broker_restitution($queueInfo); $result = array('ajk' => $ajk_res, 'hz' => $hz_res, 'jp' => $jp_res); break; } break; case Const_ProPlanChangeType::COMBO_CREATE: switch ($queueInfo['site_type']) { case Const_ProPlanChangeType::SITE_TYPE_AJK: $result = Bll_Combo_Updown_AjkDealJob::comboCreate($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_HZ: $result = $hzUpDownService->doUpDownFromWorker(); break; case Const_ProPlanChangeType::SITE_TYPE_JP: $result = Bll_Combo_Updown_JpDealJob::comboCreate($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_ALL: $ajk_res = Bll_Combo_Updown_AjkDealJob::comboCreate($queueInfo); $hz_res = $hzUpDownService->doUpDownFromWorker(); $jp_res = Bll_Combo_Updown_JpDealJob::comboCreate($queueInfo); $result = array('ajk' => $ajk_res, 'hz' => $hz_res, 'jp' => $jp_res); break; } break; case Const_ProPlanChangeType::COMBO_EFFECT: switch ($queueInfo['site_type']) { case Const_ProPlanChangeType::SITE_TYPE_AJK: $result = Bll_Combo_Updown_AjkDealJob::comboEffect($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_HZ: $result = $hzUpDownService->doUpDownFromWorker(); break; case Const_ProPlanChangeType::SITE_TYPE_JP: $result = Bll_Combo_Updown_JpDealJob::comboEffect($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_ALL: $ajk_res = Bll_Combo_Updown_AjkDealJob::comboEffect($queueInfo); $hz_res = $hzUpDownService->doUpDownFromWorker(); $jp_res = Bll_Combo_Updown_JpDealJob::comboEffect($queueInfo); $result = array('ajk' => $ajk_res, 'hz' => $hz_res, 'jp' => $jp_res); break; } break; case Const_ProPlanChangeType::COMBO_EXPIRE: switch ($queueInfo['site_type']) { case Const_ProPlanChangeType::SITE_TYPE_AJK: $result = Bll_Combo_Updown_AjkDealJob::comboExpire($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_HZ: $result = $hzUpDownService->doUpDownFromWorker(); break; case Const_ProPlanChangeType::SITE_TYPE_JP: $result = Bll_Combo_Updown_JpDealJob::comboExpire($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_ALL: $ajk_res = Bll_Combo_Updown_AjkDealJob::comboExpire($queueInfo); $hz_res = $hzUpDownService->doUpDownFromWorker(); $jp_res = Bll_Combo_Updown_JpDealJob::comboExpire($queueInfo); $result = array('ajk' => $ajk_res, 'hz' => $hz_res, 'jp' => $jp_res); break; } break; case Const_ProPlanChangeType::COMBO_EXPORT: switch ($queueInfo['site_type']) { case Const_ProPlanChangeType::SITE_TYPE_AJK: $result = Bll_Combo_Updown_AjkDealJob::comboExport($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_HZ: $result = $hzUpDownService->doUpDownFromWorker(); break; case Const_ProPlanChangeType::SITE_TYPE_JP: $result = Bll_Combo_Updown_JpDealJob::comboExport($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_ALL: $ajk_res = Bll_Combo_Updown_AjkDealJob::comboExport($queueInfo); $hz_res = $hzUpDownService->doUpDownFromWorker(); $jp_res = Bll_Combo_Updown_JpDealJob::comboExport($queueInfo); $result = array('ajk' => $ajk_res, 'hz' => $hz_res, 'jp' => $jp_res); break; } break; case Const_ProPlanChangeType::COMBO_IMPORT: switch ($queueInfo['site_type']) { case Const_ProPlanChangeType::SITE_TYPE_AJK: $result = Bll_Combo_Updown_AjkDealJob::comboImport($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_HZ: $result = $hzUpDownService->doUpDownFromWorker(); break; case Const_ProPlanChangeType::SITE_TYPE_JP: $result = Bll_Combo_Updown_JpDealJob::comboImport($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_ALL: $ajk_res = Bll_Combo_Updown_AjkDealJob::comboImport($queueInfo); $hz_res = $hzUpDownService->doUpDownFromWorker(); $jp_res = Bll_Combo_Updown_JpDealJob::comboImport($queueInfo); $result = array('ajk' => $ajk_res, 'hz' => $hz_res, 'jp' => $jp_res); break; } break; case Const_ProPlanChangeType::ACTIVITY_RES_ADD: //房产季活动房源打标签 switch ($queueInfo['site_type']) { case Const_ProPlanChangeType::SITE_TYPE_AJK: $result = Bll_Activity_DealJob::activityResAddAjk($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_HZ: $result = Bll_Activity_DealJob::activityResAddHz($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_JP: break; case Const_ProPlanChangeType::SITE_TYPE_ALL: break; } break; case Const_ProPlanChangeType::ACTIVITY_RES_REMOVE: //房产季活动房源取消打标签 switch ($queueInfo['site_type']) { case Const_ProPlanChangeType::SITE_TYPE_AJK: $result = Bll_Activity_DealJob::activityResRemoveAjk($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_HZ: $result = Bll_Activity_DealJob::activityResRemoveHz($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_JP: break; case Const_ProPlanChangeType::SITE_TYPE_ALL: break; } break; case Const_ProPlanChangeType::COMMUNITY_INFO_CHANGE: // 小区信息变更 $result = Bll_Community_UpDownDeal::communityInfoChange($queueInfo); break; case Const_ProPlanChangeType::COMMUNITY_INFO_CHANGE_EX: // 小区信息变更 批量 switch ($queueInfo['site_type']) { case Const_ProPlanChangeType::SITE_TYPE_AJK: $result = Bll_Community_UpDownDeal::ajkCommunityInfoChangeEx($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_HZ: $result = Bll_Community_UpDownDeal::hzCommunityInfoChangeEx($queueInfo); break; case Const_ProPlanChangeType::SITE_TYPE_JP: break; case Const_ProPlanChangeType::SITE_TYPE_ALL: break; } break; case Const_ProPlanChangeType::COMM_MERGE: switch ($queueInfo['site_type']) { case Const_ProPlanChangeType::SITE_TYPE_AJK: $result = Bll_Community_UpDownDeal::ajkCommunityMerge($queueInfo); break; default: $result = array('status' => 1, 'msg' => '不处理'); } break; case Const_ProPlanChangeType::COMMUNITY_AREA_CHANGE: //区域板块变更 $result = Bll_Community_UpDownDeal::communityAreaChange($queueInfo); break; case Const_ProPlanChangeType::COMMUNITY_AREA_CHANGE_EX: //区域板块变更 $result = Bll_Community_UpDownDeal::communityAreaChangeEx($queueInfo); break; /** 价格段变更 */ /** 价格段变更 */ case Const_ProPlanChangeType::PRICE_INTERVAL_CHANGE: switch ($queueInfo['site_type']) { case Const_ProPlanChangeType::SITE_TYPE_AJK: $result = Bll_House_EsfPriceInterval::upDownDeal($queueInfo); break; default: $result = array('status' => 1, 'msg' => '不处理'); } break; /** 商铺的物业板块变更处理 */ /** 商铺的物业板块变更处理 */ case Const_ProPlanChangeType::PROPERTY_AREA_CHANGE: switch ($queueInfo['site_type']) { case Const_ProPlanChangeType::SITE_TYPE_JP: $result = Bll_Community_UpDownDeal::propertyAreaChange($queueInfo); break; default: $result = array('status' => 1, 'msg' => '不处理'); } break; /** 写字楼的building的板块变更处理 */ /** 写字楼的building的板块变更处理 */ case Const_ProPlanChangeType::BUILDING_AREA_CHANGE: switch ($queueInfo['site_type']) { case Const_ProPlanChangeType::SITE_TYPE_JP: $result = Bll_Community_UpDownDeal::buildingAreaChange($queueInfo); break; default: $result = array('status' => 1, 'msg' => '不处理'); } break; } $result = self::formatOutMsg($result, $queueInfo['site_type']); return $result; }
/** * 303竞价结算 * 1. 查询经纪人所有有效计划, * 没有计划return * * 2. 基于推广计划,查询计划下有效房源(循环计划查询) * * 判断计划状态 * 推广中,contine * 第二天推广,continue * 手动停止,continue * 账户限额不足,计划置为推广中,记录计划推广日志 * 查询计划下房源关系, * 如果为空,contine * 不为空,判断计划状态 * 如果账户余额不足,记录房源推广日志 */ public static function broker_frozen_money($params) { if (empty($params['broker_id'])) { return Bll_JpPropBll::build_return(1, array("经纪人ID为空")); } $returnLog = array(); //获取账户余额 try { $userId = Bll_Broker_MainBusiness::getDataByEsfId($params['broker_id'])->memberId; $balance = Bll_Service_Payment::balance(Bll_Service_Payment::SITE_ANJUKE, array('userId' => $userId)); } catch (Exception $e) { array_push($returnLog, "获取账户余额不足失败"); return Bll_JpPropBll::build_return(0, $returnLog); } if ($balance['data']['balance'] <= 0) { array_push($returnLog, "当前账户余额不足"); return Bll_JpPropBll::build_return(1, $returnLog); } array_push($returnLog, "当前账户余额:" . $balance['data']['balance']); //获取经纪人正在推广的计划 $StaticPricePlanList = DAO_Plan_StaticPricePlan::getStaticPricePlanListByBrokerId($params['broker_id']); foreach ($StaticPricePlanList as $list) { if ($list['Status'] != 1) { //无效的计划 array_push($returnLog, "无效的计划:" . $list['Id'] . ";"); continue; } if ($list['ViewTime'] != 1893427200) { //非账户没钱停止的计划 array_push($returnLog, "计划Id:" . $list['Id'] . "展示时间:" . date("Y-m-d H:i:s", $list['ViewTime']) . ";"); continue; } $tmpStr = "计划Id:" . $list['Id'] . "展示时间:" . date("Y-m-d H:i:s", $list['ViewTime']) . ";"; //获取计划下面的房源 $StaticPriceRelation = DAO_Plan_StaticPriceRelation::getProSpreadRelation($list['Id'], $list['CityId']); //更新计划的状态 if (BLL_Fixedspread_StaticPlanUpDownSwicher::isOnline()) { DAO_Plan_StaticPricePlan::updateStaticPricePlanById(array('Id' => $list['Id'], 'ViewTime' => time())); } //记录计划日志 $params['plan_id'] = $list['Id']; $data = self::build_plan_log($params, 8, "账户有钱计划推广,动作id:" . $params['id'], $params['broker_id']); if (!Model_House_UpDown_PlanLog::create($data, date('m'))->save()) { array_push($returnLog, "账户有钱计划推广日志写入失败"); return Bll_JpPropBll::build_return(0, $returnLog); } //记录房源日志 foreach ($StaticPriceRelation as $Relation) { $params['pro_id'] = $Relation['ProId']; $data = Bll_EsfPropBll::build_prop_log($params, 5, "房源推广,动作id:" . $params['id'], $params['broker_id']); if (!Model_Log_HouseLogNew::create($data, date('Ymd'))->save()) { array_push($returnLog, "房源" . $Relation['ProId'] . "房源推广日志写入失败"); return Bll_JpPropBll::build_return(0, $returnLog); } $tmpStr .= $Relation['ProId'] . ","; } array_push($returnLog, $tmpStr); } if (empty($returnLog)) { array_push($returnLog, "经纪人没有计划"); } return Bll_JpPropBll::build_return(1, $returnLog); }