Tests fixed and API improved and DB upgraded

This commit is contained in:
Finn 2017-09-19 17:23:30 +01:00
parent 8e2cecfcf5
commit 5f241bbd46
12 changed files with 1861 additions and 7 deletions

View file

@ -98,7 +98,7 @@ sub post_payroll_read {
return $c->render( json => {
success => Mojo::JSON->true,
transactions => \@payroll_list,
payrolls => \@payroll_list,
page_no => $payrolls->pager->total_entries,
});
}
@ -127,6 +127,11 @@ sub post_payroll_add {
$validation->required('payroll_total_pension');
$validation->required('payroll_other_benefit');
return $c->api_validation_error if $validation->has_error;
my $entry_period = $c->parse_iso_month($validation->param('entry_period'));
my $employee_amount = $validation->param('employee_amount');
my $local_employee_amount = $validation->param('local_employee_amount');
my $gross_payroll = $validation->param('gross_payroll');
my $payroll_income_tax = $validation->param('payroll_income_tax');
my $payroll_employee_ni = $validation->param('payroll_employee_ni');
@ -134,13 +139,11 @@ sub post_payroll_add {
my $payroll_total_pension = $validation->param('payroll_total_pension');
my $payroll_other_benefit = $validation->param('payroll_other_benefit');
return $c->api_validation_error if $validation->has_error;
$c->schema->txn_do( sub {
$user->entity->organisation->payroll->create({
entry_period => $validation->param('entry_period'),
employee_amount => $validation->param('employee_amount'),
local_employee_amount => $validation->param('local_employee_amount'),
entry_period => $entry_period,
employee_amount => $employee_amount,
local_employee_amount => $local_employee_amount,
gross_payroll => $gross_payroll * 100000,
payroll_income_tax => $payroll_income_tax * 100000,
payroll_employee_ni => $payroll_employee_ni * 100000,

View file

@ -14,6 +14,10 @@ sub register {
return DateTime::Format::Strptime->new( pattern => '%Y-%m-%d' );
});
$app->helper( iso_month_parser => sub {
return DateTime::Format::Strptime->new( pattern => '%Y-%m' );
});
$app->helper( parse_iso_date => sub {
my ( $c, $date_string ) = @_;
return $c->iso_date_parser->parse_datetime(
@ -28,6 +32,20 @@ sub register {
);
});
$app->helper( parse_iso_month => sub {
my ( $c, $date_string ) = @_;
return $c->iso_month_parser->parse_datetime(
$date_string,
);
});
$app->helper( format_iso_month => sub {
my ( $c, $datetime_obj ) = @_;
return $c->iso_month_parser->format_datetime(
$datetime_obj,
);
});
$app->helper( parse_iso_datetime => sub {
my ( $c, $date_string ) = @_;
return $c->iso_datetime_parser->parse_datetime(

View file

@ -6,7 +6,7 @@ use warnings;
use base 'DBIx::Class::Schema';
our $VERSION = 7;
our $VERSION = 8;
__PACKAGE__->load_namespaces;