Esempio n. 1
0
 /**
  * 二手房小区信息变更写房源日志(批量)
  *
  * @param array $queueInfo
  * @return array
  */
 public static function ajkCommunityInfoChangeEx($queueInfo)
 {
     if (!isset($queueInfo) || empty($queueInfo)) {
         return static::buildReturn(self::PROCESS_STATUS_ERROR, '小区信息变更,remark的值为空');
     }
     $communityChangeInfo = json_decode($queueInfo['remark'], true);
     if (!is_array($communityChangeInfo)) {
         return static::buildReturn(self::PROCESS_STATUS_ERROR, '小区信息变更,remark的值不是JSON');
     }
     $startHouseId = 0;
     $loadField = array('proId', 'commId', 'brokerId', 'cityId', 'updatedDatetime');
     $houseLogWriteError = array();
     $houseLogWriteSuccess = array();
     do {
         $houseList = Bll_House_EsfHouse::scanHouseBaseInfoByCommunityId($communityChangeInfo['cityId'], $communityChangeInfo['commId'], $startHouseId, $loadField, 100);
         if (empty($houseList)) {
             break;
         }
         foreach ($houseList as $houseInfo) {
             $startHouseId = $houseInfo['proId'];
             $data = array();
             $data['houseId'] = $houseInfo['proId'];
             $data['planId'] = 0;
             $data['brokerId'] = $houseInfo['brokerId'];
             $data['cityId'] = $queueInfo['city_id'];
             $data['type'] = Model_Log_HouseLogNew::TYPE_COMMUNITY_INFO_CHANGE;
             $data['changeType'] = $queueInfo['type'];
             $data['remark'] = '小区信息变更';
             $data['addDate'] = date('Y-m-d H:i:s');
             $data['operatorId'] = 0;
             $data['siteType'] = 1;
             if (!Model_Log_HouseLogNew::create($data, date('Ymd'))->save()) {
                 $houseLogWriteError[] = $houseInfo['proId'];
             } else {
                 $houseLogWriteSuccess[] = $houseInfo['proId'];
             }
         }
         if (count($houseList) < 100) {
             break;
         }
     } while (true);
     return static::buildReturn(self::PROCESS_STATUS_SUCCESS, sprintf('小区信息变更,房源日志写入成功的[%s]失败的房源Id[%s]', implode(',', $houseLogWriteSuccess), implode(',', $houseLogWriteError)));
 }