MT#16605 topup log records not persisted for subscribers with lock level

+failed txn due to to binding a row object instead of value
+remove warning with topup voucher validation
+remove warning when preparing topup log row data

Change-Id: I3a08b6ef297f9b197f30731d886e9d07686336dd
changes/99/3499/1
Rene Krenn 10 years ago
parent ea559c623e
commit 0b607e5b57

@ -923,7 +923,7 @@ sub get_provisoning_voip_subscriber_first_int_attr_value {
attribute => $attribute,
);
try {
return $rs->first;
return ($rs->first ? $rs->first->value : undef);
} catch($e) {
$c->log->error("failed to get provisioning_voip_subscriber attribute '$attribute': $e");
$e->rethrow;

@ -525,7 +525,7 @@ sub create_topup_log_record {
lock_level_after => (exists $log_vals->{new_lock_level} ? $log_vals->{new_lock_level} : undef),
contract_balance_before_id => (exists $log_vals->{old_balance} ? $log_vals->{old_balance}->{id} : undef),
contract_balance_after_id => (exists $log_vals->{new_balance} ? $log_vals->{new_balance}->{id} : undef),
request_token => substr((defined $request_token ? $request_token : $resource->{request_token}),0,255),
request_token => substr((defined $request_token ? $request_token : $resource->{request_token} // ''),0,255),
});
}

@ -89,12 +89,13 @@ sub check_topup {
if (defined $plain_code || defined $voucher_id) {
my $voucher;
my $dtf = $schema->storage->datetime_parser;
if (defined $plain_code) {
$voucher = $schema->resultset('vouchers')->search_rs({
code => encrypt_code($c, $plain_code),
used_at => { '=' => \"'0000-00-00 00:00:00'" } , #used_by_subscriber_id => undef,
valid_until => { '>=' => $now },
valid_until => { '>=' => $dtf->format_datetime($now) },
reseller_id => $contract->contact->reseller_id,
},{
for => 'update',
@ -110,7 +111,7 @@ sub check_topup {
$voucher = $schema->resultset('vouchers')->search_rs({
id => $voucher_id,
used_at => { '=' => \"'0000-00-00 00:00:00'" }, #used_by_subscriber_id => undef,
valid_until => { '>=' => $now },
valid_until => { '>=' => $dtf->format_datetime($now) },
reseller_id => $contract->contact->reseller_id,
},{
for => 'update',

Loading…
Cancel
Save