#coding utf-8
import sys
import json
from db_help import RedisHelper

if __name__=="__main__":
    nowdate = sys.argv[1]
    f1 = open("./data/sorted_hour_data_"+nowdate)
    f2 = open("./data/sorted_data_"+nowdate)
    data_dict = {}
    while True:
        line = f1.readline()
        if not line:
            break
        items = line.strip().split("\t")
        if len(items)<2:
            continue
        kid = items[0]
        #print(items[1])
        item_info = json.loads(items[1])
        data_dict[kid] = item_info
    f1.close()
    f3 = open("./data/merge_score_"+nowdate, 'w')
    info_dict = {}
    info_dict2 = {}
    info_dict3 = {}
    info_dict4 = {}
    while True:
        line = f2.readline()
        if not line:
            break
        items = line.split("\t")
        if len(items)<2:
            continue
        kid = items[0].replace("k_p:", "")
        kid2 = "k_p2:"+kid
        kid3 = "k_p3:"+kid
        kid4 = "k_p4:"+kid
        kid5 = "k_p7:"+kid
        #print(kid)
        d_item_info = json.loads(items[1])
        if kid in data_dict:
            item_info = data_dict[kid]
            #print("h:",item_info)
            #print("d:",d_item_info)
            total_info = []
            for i in range(len(item_info[:5])):
                total_info.append(item_info[i]+d_item_info[i])
            #if len(total_info)>2:
            #    total_info[0] = total_info[0]+0.1*total_info[3]
            total_item_info = json.dumps(total_info)
            f3.write(kid2+"\t"+total_item_info+"\n")
            info_dict[kid2] = total_item_info
            info_dict2[kid3] = total_item_info
            info_dict3[kid4] = total_item_info
            info_dict4[kid5] = total_item_info
            #print("m:",total_item_info)
        else:
            total_info = []
            for i  in range(len(d_item_info[:5])):
                total_info.append(d_item_info[i])
            #if len(total_info)>2:
            #    total_info[0] = total_info[1]+0.1*total_info[3]
            total_item_info = json.dumps(total_info)
            f3.write(kid2+"\t"+total_item_info+"\n")
            info_dict[kid2] = total_item_info
            info_dict2[kid3] = total_item_info
            info_dict3[kid4] = total_item_info
            info_dict4[kid5] = total_item_info
    print(info_dict4)
    if len(info_dict)>0:
        redis_helper = RedisHelper()
        redis_helper.update_batch_setnx_key(info_dict, 60*60*24*3) 
    if len(info_dict2)>0:
        redis_helper = RedisHelper()
        redis_helper.update_batch_setnx_key(info_dict2, 60*60*24*3)
    if len(info_dict3)>0:
        redis_helper = RedisHelper()
        redis_helper.update_batch_setnx_key(info_dict3, 60*60*24*3) 
    if len(info_dict4)>0:
        redis_helper = RedisHelper()
        redis_helper.update_batch_setnx_key(info_dict4, 60*60*24*3)
    f2.close()