/** * @return bool * @throws Exception * 处理post请求 */ public function handlePost() { //房源发布数量上限 if (BLL_House_JpHouseManage::houseNumLimit($this->jpMemberId, $this->brokerId, true) && $this->act == 'publish') { $this->redirect2Result(Const_PublishCode::PUBLISH_OUT_OF_LIMIT, self::SITE_JP, $this->act); } $params = APF::get_instance()->get_request()->get_parameters(); $area = floatval($params['office_area']); $efficientRate = intval($params['office_efficient_rate']); $floorId = intval($params['office_floor']); $title = trim($params['office_title']); $desc = trim($params['ProDesc']); $officeManageFee = trim($params['office_manage_fee']) === '' ? 0.001 : round(floatval($params['office_manage_fee']), 1); $postOffice = array(); if (isset($this->officeId) && $this->act == 'edit') { //编辑 $OfficeData = Model_House_JpOfficeRent::data_access()->filter('id', $this->officeId)->get_row(); if (empty($OfficeData)) { $this->redirect2Result(Const_PublishCode::HOUSE_NOT_EXIST, self::SITE_JP, $this->act); } $postOffice['officeBuildingId'] = $OfficeData['buildingId']; } else { //新发 if ($params['communityId'] == null || intval($params['communityId']) == 0) { $this->redirect2Result(Const_PublishCode::HOUSE_PARAM_COMPLETE, self::SITE_JP, $this->act); } $postOffice['officeBuildingId'] = $params['communityId']; } $postOffice['brokerId'] = $this->brokerId; $postOffice['officeTitle'] = $title; $postOffice['officeArea'] = $area; $postOffice['floatLeft'] = $floorId; $postOffice['officeEfficientRate'] = $efficientRate; $postOffice['manageFee'] = $officeManageFee; $jpPublish = APF::get_instance()->get_config("jpPublishOfficeRentPrice", "jpPublish"); $jpPublishOfficeRentPrice = $jpPublish[$this->jpCityId]; if ($jpPublishOfficeRentPrice == 'priceA' || $jpPublishOfficeRentPrice == 'priceB') { $postOffice['price'] = trim($params['office_daily_rent']); } elseif ($jpPublishOfficeRentPrice == 'priceC') { $postOffice['price'] = trim($params['office_monthly_rent']); } else { $postOffice['price'] = trim($params['office_monthly_total_rent']); } /* if($this->jpCityId == 11 || $this->jpCityId == 14 || $this->jpCityId == 26) { $postOffice['price'] = trim($params['office_daily_rent']); } elseif ($this->jpCityId == 12 || $this->jpCityId == 13) { $postOffice['price'] = trim($params['office_monthly_rent']); } else { $postOffice['price'] = trim($params['office_monthly_total_rent']); } */ /* if($this->jpCityId == 11 || $this->jpCityId == 14 || $this->jpCityId == 26) { $postOffice['unitPrice'] = trim($params['office_daily_rent']); $postOffice['officePrice'] = $postOffice['unitPrice'] * $postOffice['officeArea'] * 30.42; } elseif ($this->jpCityId == 12 || $this->jpCityId == 13) { $postOffice['unitPrice'] = trim($params['office_monthly_rent']) / 30.42; $postOffice['officePrice'] = trim($params['office_monthly_rent']) * $postOffice['officeArea']; } else { $postOffice['officePrice'] = trim($params['office_monthly_total_rent']); $postOffice['unitPrice'] = $postOffice['officePrice'] / $postOffice['officeArea'] / 30.42; } */ $postOffice['officeDesc'] = $desc; $postOffice['type'] = 1; if ($this->act == 'edit') { list($postOffice['newOfficePics'], $postOffice['delOfficePics']) = BLL_House_JpHouseManage::revertEditImageArray($params['oldroom'], $params['selroom'], $params['dropDesc'], $params['newupdroom'], $params['defaultImgID'], $params['delRoom'], $params['delHandlePic']); } else { $postOffice['officePics'] = json_encode(BLL_House_JpHouseManage::revertPublishImageArray($params['selroom'], $params['dropDesc'], $params['newupdroom'], $params['defaultImgID'])); } //新发或者更新基础房源信息 if ($this->act == 'edit') { $postOffice['officeId'] = $this->officeId; $apiHouseInfo = BLL_House_JpHouseManage::housePublishApi('o_e', $postOffice); } else { $apiHouseInfo = BLL_House_JpHouseManage::housePublishApi('o_p', $postOffice); } if ($apiHouseInfo['status'] != 'ok') { $this->redirect2Result($apiHouseInfo['code'], self::SITE_JP, $this->act, '', $apiHouseInfo['info']); } else { $this->officeId = intval($apiHouseInfo['id']); } return true; }
public function handlePost() { //房源发布数量上限 if (BLL_House_JpHouseManage::houseNumLimit($this->jpMemberId, $this->brokerId, true) && !$this->act == 'edit') { $this->redirect2Result(Const_PublishCode::PUBLISH_OUT_OF_LIMIT, self::SITE_JP, $this->act); } $params = APF::get_instance()->get_request()->get_parameters(); $area = floatval($params['area']); //所在楼层 $floorType = ''; $selectFloor = intval($params['select_floor']); $singleFloor = intval($params['single_floor']); $fromFloor = intval($params['from_floor']); $toFloor = intval($params['to_floor']); $singleFamily = intval($params['single_family']); if ($selectFloor == 1) { $floorType = $selectFloor . ',' . $singleFloor; } elseif ($selectFloor == 2) { $floorType = $selectFloor . ',' . $fromFloor . ',' . $toFloor; } elseif ($selectFloor == 3) { $floorType = $selectFloor . ',' . $singleFamily; } $title = trim($params['shop_title']); $desc = trim($params['ProDesc']); $businessState = intval($params['business_state']); $totalPrice = trim($params['shop_total_price']); $dailyPrice = trim($params['shop_unit_price']); $postShop = array(); if (isset($this->shopId) && $this->act == 'edit') { //编辑 $shopData = Model_House_JpShopRent::data_access()->get_row($this->shopId); if (empty($shopData)) { $this->redirect2Result(Const_PublishCode::HOUSE_NOT_EXIST, self::SITE_JP, $this->act); } $postShop['shopPropertyId'] = $shopData['propertyId']; } else { //新发 if ($params['communityId'] == null || intval($params['communityId']) == 0) { $this->redirect2Result(Const_PublishCode::HOUSE_PARAM_COMPLETE, self::SITE_JP, $this->act); } $postShop['shopPropertyId'] = $params['communityId']; } $postShop['brokerId'] = $this->brokerId; $postShop['shopTitle'] = $title; $postShop['shopArea'] = $area; $postShop['floorType'] = $floorType; $postShop['businessState'] = $businessState; $jpPublish = APF::get_instance()->get_config("jpPublishShopSalePrice", "jpPublish"); $jpPublishShopSalePrice = $jpPublish[$this->cityId]; if ($jpPublishShopSalePrice == 'priceA') { $postShop['price'] = $dailyPrice; } else { $postShop['price'] = $totalPrice * 10000; } /* if($this->cityId == 13 || $this->cityId == 14) { $postShop['price'] = $dailyPrice; } else { $postShop['price'] = $totalPrice * 10000; } */ /* if($this->cityId == 13 || $this->cityId == 14) { $postShop['unitPrice'] = $dailyPrice; $postShop['shopPrice'] = round($postShop['unitPrice'] * $postShop['shopArea']); } else { $postShop['unitPrice'] = round($totalPrice * 10000 / $postShop['shopArea']); $postShop['shopPrice'] = $totalPrice * 10000; } */ $postShop['shopDesc'] = $desc; $postShop['type'] = 2; $postShop['rentType'] = intval($params['rentType']); if ($this->act == 'edit') { list($postShop['newShopPics'], $postShop['delShopPics']) = BLL_House_JpHouseManage::revertEditImageArray($params['oldroom'], $params['selroom'], $params['dropDesc'], $params['newupdroom'], $params['defaultImgID'], $params['delRoom'], $params['delHandlePic'], 'shop'); } else { $postShop['shopPics'] = json_encode(BLL_House_JpHouseManage::revertPublishImageArray($params['selroom'], $params['dropDesc'], $params['newupdroom'], $params['defaultImgID'])); } //区域 $postShop['districtId'] = intval($params['district_id']); //商圈 $postShop['blockId'] = intval($params['block_id']); //靠近 $postShop['near'] = trim($params['close_road']); //物业费 $postShop['manageFee'] = round(floatval($params['office_manage_fee']), 2); //商铺特性 $postShop['shopType'] = trim($params['shop-features-ipt']); //商铺其他特性 $postShop['shopTypeOther'] = trim($params['shop-features-other']); //客流人群 $postShop['clientType'] = trim($params['passenger-flow-ipt']); //客流人群其他 $postShop['clientTypeOther'] = trim($params['passenger-flow-other']); //推荐行业 $postShop['businessType'] = trim($params['featured-industries-ipt']); //物业配置 $postShop['industryConfig'] = trim($params['houses-matching-ipt']); //当前行业 经营中商铺必选 $postShop['currentIndustry'] = intval($params['select_industry']); ////商铺坐标 $postShop['shopPoints'] = !empty($params['map_lng']) && !empty($params['map_lat']) ? trim($params['map_lng']) . ',' . trim($params['map_lat']) . ',1' : ''; //新发或者更新基础房源信息 @todo call api if ($this->act == 'edit') { $postShop['shopId'] = $this->shopId; $apiHouseInfo = BLL_House_JpHouseManage::housePublishApi('s_e', $postShop); } else { $apiHouseInfo = BLL_House_JpHouseManage::housePublishApi('s_p', $postShop); } if ($apiHouseInfo['status'] != 'ok') { $this->redirect2Result($apiHouseInfo['code'], self::SITE_JP, $this->act, '', $apiHouseInfo['info']); } else { $this->shopId = $apiHouseInfo['id']; } return true; }