sub-penny termination pricing too, RT#5495
authorivan <ivan>
Tue, 21 Jul 2009 18:44:57 +0000 (18:44 +0000)
committerivan <ivan>
Tue, 21 Jul 2009 18:44:57 +0000 (18:44 +0000)
FS/FS/Schema.pm
FS/FS/part_pkg/cdr_termination.pm

index 419e9ac..b2f590a 100644 (file)
@@ -2112,7 +2112,7 @@ sub tables_hashref {
 
         # how it was rated internally...
         'ratedetailnum',           'int', 'NULL',      '', '', '',
-        'rated_price',         'decimal', 'NULL',  '10,2', '', '',
+        'rated_price',         'decimal', 'NULL',  '10,4', '', '',
 
         'distance',            'decimal', 'NULL',      '', '', '',
         'islocal',                 'int', 'NULL',      '', '', '', # '',  '', 0, '' instead?
@@ -2156,11 +2156,11 @@ sub tables_hashref {
 
     'cdr_termination' => {
       'columns' => [
-        'cdrtermnum', 'bigserial', '',   '', '', '',
-        'acctid',        'bigint', '',   '', '', '', 
-        'termpart',         'int', '',   '', '', '',#future expansion, see below
-        'rated_price',  @money_typen,        '', '',
-        'status',     'varchar', 'NULL', 32, '', '',
+        'cdrtermnum', 'bigserial',     '',      '', '', '',
+        'acctid',        'bigint',     '',      '', '', '', 
+        'termpart',         'int',     '',      '', '', '',#future use see below
+        'rated_price',  'decimal', 'NULL',  '10,4', '', '',
+        'status',       'varchar', 'NULL',      32, '', '',
       ],
       'primary_key' => 'cdrtermnum',
       'unique'      => [ [ 'acctid', 'termpart' ] ],
index a073846..d99903d 100644 (file)
@@ -164,7 +164,9 @@ sub calc_recur {
 
     #add a cdr_termination record and the charges
 
-    my $term_price = sprintf('%.2f', $cdr->rated_price * $term_percent / 100 );
+    # XXX config?
+    #my $term_price = sprintf('%.2f', $cdr->rated_price * $term_percent / 100 );
+    my $term_price = sprintf('%.4f', $cdr->rated_price * $term_percent / 100 );
 
     my $cdr_termination = new FS::cdr_termination {
       'acctid'      => $cdr->acctid,