#!/usr/bin/perl -w

use strict;
use lib '/pm/grflib/perl';
use DBF;

my $year = 2017;
my $last = 2014;
my $CIRmul = 1.0;

my %CCP = (
   201701 => 1900,
   201702 => 1900,
   201703 => 1900,
   201710 => 1900,
   201711 => 1900,
   201712 => 1900,
   );
my %ccp = (2083=>0,2076=>0,2075=>0,2079=>0,2090=>0,2185=>0,2182=>0,2195=>1,2181=>0,2190=>0,2189=>1,2223=>0,2228=>0,2186=>0,2187=>1,2200=>0,2201=>1,2224=>0,2226=>0,2227=>1,2232=>0,2231=>0,2203=>0,2239=>0,2240=>0,2237=>0,2238=>0,2244=>0,2168=>0,2169=>0,2172=>0,2171=>1,2166=>0,2165=>0,2175=>0,2174=>0,2180=>1,2176=>0,2178=>0,2192=>0,2193=>1,2205=>0,2206=>0,2207=>0,2215=>0,2214=>0,1581=>0);

#  Copy old file and remove CCP acres
open(OLD, "<$last.gw") || die "Cannot open file $last.gw\n";
open(NEW, ">$year.gw") || die "Cannot open file $year.gw\n";
my @ccp;
while (my $line = <OLD>)
{
   if ($line =~ /^NETCIR/ && $CIRmul != 1)
   {
      my (undef,@CIR) = split(' ',$line);
      $line = join(' ','NETCIR',map {$CIRmul*$_} @CIR)."\n";
   }
   elsif ($line =~ /^[1-9]/)
   {
      my ($x,$y,$cty,$fld,$spr,$app,$rec) = split(' ',$line);
      ($cty eq 'CCP') && next;
      if ($rec && exists($ccp{$rec}))
      {
         $line = sprintf "%9.2f %11.2f %-10s %6.2f %9.2f %6.1f %8d\n" , $x,$y,$cty,0,0,$app,$rec;
         $ccp{$rec} && (push @ccp , sprintf '%9.2f %11.2f %-10s' , $x , $y , 'CCP');
      }
   }
   print NEW $line;
}
close(OLD);

#  Determine CCP pumping
my $dbf = DBF->open('../flow.dbf');
my $line;
foreach my $m (1 .. 12)
{
   my $vol = $dbf->lookup('MONTH',100*$year+$m,'N','AF');
   $line .= sprintf ' %5.1f' , defined($vol) ? $vol/@CCP : 0;
}

#  Write CCP pumping
foreach my $well (@CCP)
{
   print NEW "$well$line\n";
}
close(NEW);
