# -*- coding: utf-8 -*-
from pprint import pprint

import pymongo

from .toolkit import MongoDbClient


class ListPageMongoPipeline(object):
    def process_item(self, item, spider):
        print(item)
        # with MongoDbClient(db='Homestay', collection='list_muniao') as client:
        #     client.insert(
        #         {
        #             'house_id': item['house_id'],
        #             'insert_time': item['crawl_time']
        #         }
        #     )
        #     print(item)


class HouseDetailItem(object):
    def process_item(self, item, spider):
        data_item = {
        'hid': None,
        'id': item['id'],
        'insert_time': item['insert_time'],
        'details_data': {
                    'house_details': {  # 房屋信息
                        'house_name': item['house_name'],
                        'house_type': item['house_type'],
                        'house_facility': item['house_facility'],
                        'house_count': {
                            'bathroom_count': item['bathroom_count'],
                            'room_count': item['room_count'],
                            'bed_count': item['bed_count'],
                            'live_count': item['live_count'],
                        },
                        'release_time': item['release_time'],
                        'house_info': item['house_info'],
                    },
                    'order_info': {
                         'start_time': item['start_time'],
                         'end_time': item['end_time'],
                         'order_or_not': item['order_or_not'],
                     },
                    'location': {  # 位置信息
                        'longitude': item['longitude'],
                        'latitude': item['latitude'],
                        'address': item['address'],
                        'address_filter': item['address_filter'],
                        'city': item['city'],
                        'province': item['province'],
                        'district': item['district'],
                        'zoning_code': item['zoning_code'],
                    },
                    'landlord': {  # 房东信息
                        'landlord_name': item['landlord_name'],
                        'registered_time': item['registered_time'],
                    },
                    'price': {  # 住宿价格
                         'original_price': item['original_price'],
                         'discount_price': item['discount_price'],
                         'other_price': item['other_price'],
                     },
                    'evaluation': {  # 评价
                        'score': item['score'],
                        'highest_score': item['highest_score'],
                    }
                }
        }
        print(data_item)

