=cut
-use Data::Dumper; #XXX DEBUG
sub insert {
my ($self, %options) = @_;
- warn Dumper($self);
- warn Dumper(\%options);
my $dbh = dbh;
my $oldAutoCommit = $FS::UID::AutoCommit;
my $oldAutoCommit = $FS::UID::AutoCommit;
local $FS::UID::AutoCommit = 0;
- foreach ($self->quotation_pkg_discount) {
+ foreach ($self->quotation_pkg_discount, $self->quotation_pkg_tax) {
my $error = $_->delete;
if ( $error ) {
$dbh->rollback if $oldAutoCommit;
#my ($self, %options) = @_;
my $self = shift;
- my $cust_pkg_discount = FS::quotation_pkg_discount->new( {
+ my $quotation_pkg_discount = FS::quotation_pkg_discount->new( {
'quotationpkgnum' => $self->quotationpkgnum,
'discountnum' => $self->discountnum,
#for the create a new discount case
'setup' => $self->discountnum_setup,
} );
- $cust_pkg_discount->insert;
+ $quotation_pkg_discount->insert;
}
sub _item_discount {
push @ext, $pkg_discount->description;
$d->{setup_amount} -= $pkg_discount->setup_amount;
$d->{recur_amount} -= $pkg_discount->recur_amount;
- }
+ }
$d->{setup_amount} *= $self->quantity || 1;
$d->{recur_amount} *= $self->quantity || 1;
$d->{amount} = $d->{setup_amount} + $d->{recur_amount};
sub setup {
my $self = shift;
- ($self->unitsetup - sum(map { $_->setup_amount } $self->pkg_discount))
+ ($self->unitsetup - sum(0, map { $_->setup_amount } $self->pkg_discount))
* ($self->quantity || 1);
}
sub recur {
my $self = shift;
- ($self->unitrecur - sum(map { $_->recur_amount } $self->pkg_discount))
+ ($self->unitrecur - sum(0, map { $_->recur_amount } $self->pkg_discount))
* ($self->quantity || 1);
}
$recur->{'type'} = 'R';
if ( $type eq 'S' ) {
+sub tax_locationnum {
+ my $self = shift;
+ $self->locationnum;
+}
+
return ($setup);
} elsif ( $type eq 'R' ) {
return ($recur);
sub cust_main {
my $self = shift;
- my $quotation = FS::quotation->by_key($self->quotationnum) or return '';
+ my $quotation = $self->quotation or return '';
$quotation->cust_main;
}
sub prospect_main {
my $self = shift;
- my $quotation = FS::quotation->by_key($self->quotationnum) or return '';
+ my $quotation = $self->quotation or return '';
$quotation->prospect_main;
}
=head1 BUGS
-Doesn't support taxes, fees, or add-on packages.
+Doesn't support fees, or add-on packages.
=head1 SEE ALSO