#!/usr/bin/python3
import pandas as pd
import numpy as np
from glob import glob
import os
import sys

#input_dir = "/home/disk/picea/mauger/2020_12_SnohoCounty_Flooding/DATA/stilly_wrf_results/pub/"
input_dir = "/home/disk/tsuga2/jswon11/workdir/2020-07_Stilly-autocalibration/hyak/stilly_el_Tvar/pub/"
loc_file = "/home/disk/picea/mauger/2020_12_SnohoCounty_Flooding/DATA/stilly_wrf_results/scripts/loc_list.csv"
ldf = pd.read_csv(loc_file)

def setup2():
    locs = next(os.walk(input_dir))[1]
    durs = [ '1hour', '1day', '3day', '7day' ]
    prds = [ "1990s", "2050s", '2080s']    
    gcms = sorted(glob("/home/disk/picea/mauger/2020_12_SnohoCounty_Flooding/DATA/stilly_wrf_results/data/*RCP85"))
    gcms = [ os.path.basename(g) for g in gcms ]
    
    df = pd.DataFrame()

    for loc in locs:
        print(loc)
        for dur in durs:
            
            for prd in prds:
                
                cdf = pd.DataFrame()                
                for gcm in gcms:
                #his = pd.read_csv("{}/{}/{}_{}_1990s_{}_PeakStats.csv".format(input_dir, loc, loc, gcm, dur))
                #cdf["Recurrance Interval"] = his['RtnYr']
                    gdf = pd.read_csv("{}/{}/{}_{}_{}_{}_PeakFlows.csv".format(input_dir, loc, loc, gcm, prd, dur))
                    cdf[gcm] = gdf['PeakFlow']
                    #print(cdf)
                    #sys.exit()
                cdf.insert(0, "WYear", gdf.WYEAR) 
                cdf.insert(0, "Duration", dur)
                cdf.insert(0, "Site ID", loc)
                
                fullname = ldf[ldf.loc2==loc]['loc3']
                fullname = fullname.values[0] if not fullname.empty else np.nan        
                cdf.insert(0, "Site Name", fullname)   
                df = df.append(cdf)
            
    df.to_csv("{}/Summary_PeakFlows.csv".format(input_dir), index=False, float_format="%0.3f")

    
setup2()

