def g_new_taipei_city_dig_point_next_year_handler(): db_results = util.db_find_it('roadDB', {'the_category': 'new_taipei_city_dig_point'}, { '_id': False, 'end_timestamp': True }) if not db_results: return START_NEW_TAIPEI_CITY_DIG_POINT_YEAR db_result = db_results.sort('end_timestamp', pymongo.DESCENDING).limit(1) if not db_result: return START_NEW_TAIPEI_CITY_DIG_POINT_YEAR result_list = list(db_result) if not result_list: return START_NEW_TAIPEI_CITY_DIG_POINT_YEAR result = result_list[0] end_timestamp = result.get('end_timestamp', MAX_TIMESTAMP) #1000.0 end_datetime = util.timestamp_to_datetime(end_timestamp) the_year = end_datetime.year return the_year
def get_google_address_handler(params): n_db_result = util._int(params.get('n', 1)) db_result = util.db_find_it('bee_csv', {'is_processed_address': {'$ne': True}}, {'_id': False, 'csv_key': True, 'google_address': True, 'address': True, 'county_and_town': True}) db_result_total = db_result.count() db_result = db_result.limit(n_db_result) db_result = list(db_result) return {"status": "OK", "total": db_result_total, "result": db_result}
def g_json_all_handler(params): next_id = params.get('next_id', '') sort_order = params.get('order', 'DESC') is_desc = True if sort_order in ['desc', 'DESC'] else False num_query = util._int(params.get('num_query', DEFAULT_NUM_QUERY)) the_query = {} if next_id: query_key = '$lte' if is_desc else '$gte' the_query['json_id'] = {query_key: next_id} db_results = util.db_find_it('roadDB', the_query, {'_id': False, 'extension': False}) sort_flag = pymongo.DESCENDING if is_desc else pymongo.ASCENDING db_results.sort([('json_id', sort_flag)]).limit(num_query) results = list(db_results) return results
def get_google_address_handler(params): n_db_result = util._int(params.get('n', 1)) db_result = util.db_find_it('bee_csv', {'is_processed_address': { '$ne': True }}, { '_id': False, 'csv_key': True, 'google_address': True, 'address': True, 'county_and_town': True }) db_result_total = db_result.count() db_result = db_result.limit(n_db_result) db_result = list(db_result) return {"status": "OK", "total": db_result_total, "result": db_result}
def get_json_today_by_start_date_handler(start_date, params): start_timestamp = util.date_to_timestamp(start_date) next_id = params.get('next_id', '') sort_order = params.get('order', 'DESC') num_query = util._int(params.get('num_query', DEFAULT_NUM_QUERY)) is_desc = sort_order in ['DESC', 'desc'] today = util.date_today() today_timestamp = util.date_to_timestamp(today) cfg.logger.debug('start_timestamp: %s today_timestamp: %s', start_timestamp, today_timestamp) the_query = { 'start_timestamp': { '$lte': start_timestamp }, 'end_timestamp': { '$gte': today_timestamp } } if next_id: query_key = '$lte' if is_desc else '$gte' the_query['json_id'] = {query_key: next_id} db_results = util.db_find_it('roadDB', the_query, { '_id': False, 'extension': False }) sort_flag = pymongo.DESCENDING if is_desc else pymongo.ASCENDING db_results.sort([('json_id', sort_flag)]).limit(num_query) results = list(db_results) cfg.logger.debug('start_date: %s next_id: %s num_query: %s', start_date, next_id, num_query) for (idx, result) in enumerate(results): cfg.logger.debug('idx: %s result: %s', idx, result) return results
def g_taipei_city_road_case_next_road_case_handler(): db_results = util.db_find_it('roadDB', {'the_category': 'taipei_city_road_case', "the_idx": {"$gte": MIN_NEXT_TAIPEI_CITY_ROAD_CASE, "$lte": MAX_NEXT_TAIPEI_CITY_ROAD_CASE}}, {'_id': False, 'the_idx': True}) if not db_results: return START_TAIPEI_CITY_ROAD_CASE db_result = db_results.sort('the_idx', pymongo.DESCENDING).limit(1) if not db_result: return START_TAIPEI_CITY_ROAD_CASE result_list = list(db_result) if not result_list: return START_TAIPEI_CITY_ROAD_CASE result = result_list[0] the_idx = result.get('the_idx', START_TAIPEI_CITY_ROAD_CASE) #1000.0 the_idx = util._int(util._float(the_idx) // 1) return util._int(the_idx)
def get_versions_handler(params): n_db_result = util._int(params.get("n", 1)) db_result = util.db_find_it( "bee_csv", {"is_processed_address": True, "is_processed_ad_version": {"$ne": True}}, { "_id": False, "csv_key": True, "address": True, "google_address": True, "geo": True, "version_text": True, "versions": True, "deliver_time": True, }, ) db_result = db_result.limit(n_db_result) db_result = list(db_result) return {"status": "OK", "result": db_result}
def get_versions_handler(params): n_db_result = util._int(params.get('n', 1)) db_result = util.db_find_it('bee_csv', { 'is_processed_address': True, 'is_processed_ad_version': { '$ne': True } }, { '_id': False, 'csv_key': True, 'address': True, 'google_address': True, 'geo': True, 'version_text': True, 'versions': True, "deliver_time": True }) db_result = db_result.limit(n_db_result) db_result = list(db_result) return {"status": "OK", "result": db_result}
def g_json_all_handler(params): next_id = params.get('next_id', '') sort_order = params.get('order', 'DESC') is_desc = True if sort_order in ['desc', 'DESC'] else False num_query = util._int(params.get('num_query', DEFAULT_NUM_QUERY)) the_query = {} if next_id: query_key = '$lte' if is_desc else '$gte' the_query['json_id'] = {query_key: next_id} db_results = util.db_find_it('roadDB', the_query, { '_id': False, 'extension': False }) sort_flag = pymongo.DESCENDING if is_desc else pymongo.ASCENDING db_results.sort([('json_id', sort_flag)]).limit(num_query) results = list(db_results) return results
def g_new_taipei_city_dig_point_next_year_handler(): db_results = util.db_find_it('roadDB', {'the_category': 'new_taipei_city_dig_point'}, {'_id': False, 'end_timestamp': True}) if not db_results: return START_NEW_TAIPEI_CITY_DIG_POINT_YEAR db_result = db_results.sort('end_timestamp', pymongo.DESCENDING).limit(1) if not db_result: return START_NEW_TAIPEI_CITY_DIG_POINT_YEAR result_list = list(db_result) if not result_list: return START_NEW_TAIPEI_CITY_DIG_POINT_YEAR result = result_list[0] end_timestamp = result.get('end_timestamp', MAX_TIMESTAMP) #1000.0 end_datetime = util.timestamp_to_datetime(end_timestamp) the_year = end_datetime.year return the_year
def g_ad_data_handler(): db_results_it = util.db_find_it('bee_img', {}, {"_id": False, "name": True, "the_type": True, "the_id": True}) db_results_it.sort([('the_id', pymongo.DESCENDING)]) db_results = list(db_results_it) return db_results