projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'FREESIDE_3_BRANCH' of git.freeside.biz:/home/git/freeside into FREESIDE...
[freeside.git]
/
FS
/
FS
/
cust_pkg.pm
diff --git
a/FS/FS/cust_pkg.pm
b/FS/FS/cust_pkg.pm
index
fea0568
..
3b746fc
100644
(file)
--- a/
FS/FS/cust_pkg.pm
+++ b/
FS/FS/cust_pkg.pm
@@
-2844,7
+2844,7
@@
sub change_later {
# Apply user-specified discount to new cust_pkg
$error = $err_or_pkg->change_discount(\%discount)
# Apply user-specified discount to new cust_pkg
$error = $err_or_pkg->change_discount(\%discount)
- if !$error && %discount &&
%
discount{discountnum} =~ /^-?\d+$/;
+ if !$error && %discount &&
$
discount{discountnum} =~ /^-?\d+$/;
} else {
$error = $err_or_pkg;
}
} else {
$error = $err_or_pkg;
}
@@
-2855,7
+2855,7
@@
sub change_later {
# Apply user-specified discount to new cust_pkg
$error = $change_to->change_discount(\%discount)
# Apply user-specified discount to new cust_pkg
$error = $change_to->change_discount(\%discount)
- if !$error && %discount &&
%
discount{discountnum} =~ /^-?\d+$/;
+ if !$error && %discount &&
$
discount{discountnum} =~ /^-?\d+$/;
}
if ( $error ) {
$dbh->rollback if $oldAutoCommit;
}
if ( $error ) {
$dbh->rollback if $oldAutoCommit;
@@
-2898,7
+2898,7
@@
sub change_later {
# Apply user-specified discount to new cust_pkg
$new->change_discount(\%discount)
# Apply user-specified discount to new cust_pkg
$new->change_discount(\%discount)
- if !$error && %discount &&
%
discount{discountnum} =~ /^-?\d+$/;
+ if !$error && %discount &&
$
discount{discountnum} =~ /^-?\d+$/;
if ( $error ) {
$dbh->rollback if $oldAutoCommit;
if ( $error ) {
$dbh->rollback if $oldAutoCommit;
@@
-3179,11
+3179,10
@@
sub process_bulk_cust_pkg {
my $param = thaw(decode_base64(shift));
warn Dumper($param) if $DEBUG;
my $param = thaw(decode_base64(shift));
warn Dumper($param) if $DEBUG;
- my $old_part_pkg = qsearchs('part_pkg',
- { pkgpart => $param->{'old_pkgpart'} });
my $new_part_pkg = qsearchs('part_pkg',
{ pkgpart => $param->{'new_pkgpart'} });
my $new_part_pkg = qsearchs('part_pkg',
{ pkgpart => $param->{'new_pkgpart'} });
- die "Must select a new package type\n" unless $new_part_pkg;
+ die "Must select a new package definition\n" unless $new_part_pkg;
+
#my $keep_dates = $param->{'keep_dates'} || 0;
my $keep_dates = 1; # there is no good reason to turn this off
#my $keep_dates = $param->{'keep_dates'} || 0;
my $keep_dates = 1; # there is no good reason to turn this off
@@
-3198,7
+3197,14
@@
sub process_bulk_cust_pkg {
local $FS::UID::AutoCommit = 0;
my $dbh = dbh;
local $FS::UID::AutoCommit = 0;
my $dbh = dbh;
- my @cust_pkgs = qsearch('cust_pkg', { 'pkgpart' => $param->{'old_pkgpart'} } );
+ my @old_pkgpart = ref($param->{'old_pkgpart'}) ? @{ $param->{'old_pkgpart'} }
+ : $param->{'old_pkgpart'};
+
+ my @cust_pkgs = qsearch({
+ 'table' => 'cust_pkg',
+ 'extra_sql' => ' WHERE pkgpart IN ('.
+ join(',', @old_pkgpart). ')',
+ });
my $i = 0;
foreach my $old_cust_pkg ( @cust_pkgs ) {
my $i = 0;
foreach my $old_cust_pkg ( @cust_pkgs ) {
@@
-5887,6
+5893,8
@@
sub search {
push @where, $FS::CurrentUser::CurrentUser->agentnums_sql('table'=>'cust_main');
}
push @where, $FS::CurrentUser::CurrentUser->agentnums_sql('table'=>'cust_main');
}
+ push @where, "cust_pkg_reason.reasonnum = '".$params->{reasonnum}."'" if $params->{reasonnum};
+
my $extra_sql = scalar(@where) ? ' WHERE '. join(' AND ', @where) : '';
my $addl_from = 'LEFT JOIN part_pkg USING ( pkgpart ) '.
my $extra_sql = scalar(@where) ? ' WHERE '. join(' AND ', @where) : '';
my $addl_from = 'LEFT JOIN part_pkg USING ( pkgpart ) '.
@@
-5894,6
+5902,10
@@
sub search {
'LEFT JOIN cust_location USING ( locationnum ) '.
FS::UI::Web::join_cust_main('cust_pkg', 'cust_pkg');
'LEFT JOIN cust_location USING ( locationnum ) '.
FS::UI::Web::join_cust_main('cust_pkg', 'cust_pkg');
+ if ($params->{reasonnum}) {
+ $addl_from .= 'LEFT JOIN cust_pkg_reason ON (cust_pkg_reason.pkgnum = cust_pkg.pkgnum) ';
+ }
+
my $select;
my $count_query;
if ( $params->{'select_zip5'} ) {
my $select;
my $count_query;
if ( $params->{'select_zip5'} ) {