import BWGroupNumber as charged_party when accountcode is empty, RT#27946
[freeside.git] / FS / FS / cdr / amcom.pm
index 5967d7b..97ab402 100644 (file)
@@ -22,15 +22,19 @@ my ($tmp_mday, $tmp_mon, $tmp_year);
       my ($cdr, $field, $conf, $hashref) = @_;
       $hashref->{skiprow} = 1 unless $field eq 'DCR';
     },
-    '',           # 2. BWGroupID (centrex group)
-    '',           # 3. BWGroupNumber
+    'accountcode',# 2. BWGroupID (centrex group)
+    sub {         # 3. BWGroupNumber
+      my ($cdr, $field) = @_; #, $conf, $hashref) = @_;
+      $cdr->charged_party($field)
+        if $cdr->accountcode eq '' && $field =~ /^(1800|1300)/;
+    },
     'uniqueid',   # 4. Record ID
     'dcontext',   # 5. Call Category (LOCAL, NATIONAL, FREECALL, MOBILE)
     sub {         # 6. Start Date (DDMMYYYY
       my ($cdr, $date) = @_;
       $date =~ /^(\d{2})(\d{2})(\d{4})$/
         or die "unparseable date: $date";
-      ($tmp_mday, $tmp_mon, $tmp_year) = ($1, $2-1, $3);
+      ($tmp_mday, $tmp_mon, $tmp_year) = ($1, $2, $3);
     },
     sub {         # 7. Start Time (HHMMSS)
       my ($cdr, $time) = @_;
@@ -43,6 +47,7 @@ my ($tmp_mday, $tmp_mon, $tmp_year);
         hour    => $1,
         minute  => $2,
         second  => $3,
+       time_zone => 'local',
       );
       $cdr->set('startdate', $dt->epoch);
     },