fixes for datetime formats

This commit is contained in:
David Bomba 2019-09-22 20:25:05 +10:00
parent 50d52c5323
commit 7382ff0b84
8 changed files with 28 additions and 26 deletions

View File

@ -164,8 +164,8 @@ class CompanySettings extends BaseSettings
'show_accept_quote_terms' => 'false', 'show_accept_quote_terms' => 'false',
'show_accept_invoice_terms' => 'false', 'show_accept_invoice_terms' => 'false',
'timezone_id' => 'string', 'timezone_id' => 'string',
'date_format' => 'string', 'date_format_id' => 'string',
'datetime_format' => 'string', 'datetime_format_id' => 'string',
'military_time' => 'bool', 'military_time' => 'bool',
'start_of_week' => 'string', 'start_of_week' => 'string',
'financial_year_start' => 'string', 'financial_year_start' => 'string',
@ -266,9 +266,9 @@ class CompanySettings extends BaseSettings
$data->timezone_id = (string)config('ninja.i18n.timezone_id'); $data->timezone_id = (string)config('ninja.i18n.timezone_id');
$data->language_id = (string)config('ninja.i18n.language_id'); $data->language_id = (string)config('ninja.i18n.language_id');
$data->payment_terms = (string)config('ninja.i18n.payment_terms'); $data->payment_terms = (string)config('ninja.i18n.payment_terms');
$data->datetime_format = (string)config('ninja.i18n.datetime_format'); $data->datetime_format_id = (string)config('ninja.i18n.datetime_format_id');
$data->military_time = (bool )config('ninja.i18n.military_time'); $data->military_time = (bool )config('ninja.i18n.military_time');
$data->date_format = (string)config('ninja.i18n.date_format'); $data->date_format_id = (string)config('ninja.i18n.date_format_id');
$data->start_of_week = (int) config('ninja.i18n.start_of_week'); $data->start_of_week = (int) config('ninja.i18n.start_of_week');
$data->financial_year_start = (int)config('ninja.i18n.financial_year_start'); $data->financial_year_start = (int)config('ninja.i18n.financial_year_start');
$data->translations = (object) []; $data->translations = (object) [];

View File

@ -32,7 +32,7 @@ class InvoiceToRecurringInvoiceFactory
$recurring_invoice->terms = $invoice->terms; $recurring_invoice->terms = $invoice->terms;
$recurring_invoice->public_notes = $invoice->public_notes; $recurring_invoice->public_notes = $invoice->public_notes;
$recurring_invoice->private_notes = $invoice->private_notes; $recurring_invoice->private_notes = $invoice->private_notes;
$recurring_invoice->invoice_date = date_create()->format(config('ninja.date_format')); $recurring_invoice->invoice_date = date_create()->format($invoice->client->date_format());
$recurring_invoice->due_date = $invoice->due_date; //todo calculate based on terms $recurring_invoice->due_date = $invoice->due_date; //todo calculate based on terms
$recurring_invoice->is_deleted = $invoice->is_deleted; $recurring_invoice->is_deleted = $invoice->is_deleted;
$recurring_invoice->line_items = $invoice->line_items; $recurring_invoice->line_items = $invoice->line_items;

View File

@ -30,7 +30,7 @@ class recurring_invoiceToInvoiceFactory
$invoice->terms = $recurring_invoice->terms; $invoice->terms = $recurring_invoice->terms;
$invoice->public_notes = $recurring_invoice->public_notes; $invoice->public_notes = $recurring_invoice->public_notes;
$invoice->private_notes = $recurring_invoice->private_notes; $invoice->private_notes = $recurring_invoice->private_notes;
$invoice->invoice_date = date_create()->format(config('ninja.date_format')); $invoice->invoice_date = date_create()->format($client->date_format());
$invoice->due_date = $recurring_invoice->due_date; //todo calculate based on terms $invoice->due_date = $recurring_invoice->due_date; //todo calculate based on terms
$invoice->is_deleted = $recurring_invoice->is_deleted; $invoice->is_deleted = $recurring_invoice->is_deleted;
$invoice->line_items = $recurring_invoice->line_items; $invoice->line_items = $recurring_invoice->line_items;

View File

@ -86,7 +86,7 @@ class ApplyPaymentToInvoice implements ShouldQueue
if(!$this->invoice->due_date) if(!$this->invoice->due_date)
$this->invoice->due_date = Carbon::now()->addDays(PaymentTerm::find($this->invoice->settings->payment_terms)->num_days)->format(config('ninja.date_format')); $this->invoice->due_date = Carbon::now()->addDays(PaymentTerm::find($this->invoice->settings->payment_terms)->num_days)->format($client->date_format());
} }

View File

@ -18,6 +18,8 @@ use App\Models\Company;
use App\Models\CompanyGateway; use App\Models\CompanyGateway;
use App\Models\Country; use App\Models\Country;
use App\Models\Currency; use App\Models\Currency;
use App\Models\DateFormat;
use App\Models\DatetimeFormat;
use App\Models\Filterable; use App\Models\Filterable;
use App\Models\GatewayType; use App\Models\GatewayType;
use App\Models\GroupSetting; use App\Models\GroupSetting;
@ -151,13 +153,13 @@ class Client extends BaseModel
} }
public function date_format() public function date_format()
{ {
return $this->getSetting('date_format'); return DateFormat::find($this->getSetting('date_format_id'))->format;
} }
public function datetime_format() public function datetime_format()
{ {
return $this->getSetting('datetime_format'); return DatetimeFormat::find($this->getSetting('datetime_format_id'))->format;
} }
public function currency() public function currency()

View File

@ -308,7 +308,7 @@ trait GeneratesCounter
} }
$settings = $client->company->settings; $settings = $client->company->settings;
$settings->reset_counter_date = $reset_date->format(config('ninja.date_format')); $settings->reset_counter_date = $reset_date->format($client->date_format());
$settings->invoice_number_counter = 1; $settings->invoice_number_counter = 1;
$settings->quote_number_counter = 1; $settings->quote_number_counter = 1;
$settings->credit_number_counter = 1; $settings->credit_number_counter = 1;

View File

@ -46,14 +46,14 @@ trait MakesHash
*/ */
public function getDbCode($db) : string public function getDbCode($db) : string
{ {
$hashids = new Hashids('', 15); $hashids = new Hashids('', 10);
return $hashids->encode( str_replace( MultiDB::DB_PREFIX, "", $db ) ); return $hashids->encode( str_replace( MultiDB::DB_PREFIX, "", $db ) );
} }
public function encodePrimaryKey($value) : string public function encodePrimaryKey($value) : string
{ {
$hashids = new Hashids('', 15); $hashids = new Hashids('', 10);
return $hashids->encode($value); return $hashids->encode($value);
} }
@ -61,7 +61,7 @@ trait MakesHash
public function decodePrimaryKey($value) : string public function decodePrimaryKey($value) : string
{ {
try{ try{
$hashids = new Hashids('', 15); $hashids = new Hashids('', 10);
$decoded_array = $hashids->decode($value); $decoded_array = $hashids->decode($value);

View File

@ -105,40 +105,40 @@ trait MockAccountData
UpdateCompanyLedgerWithInvoice::dispatchNow($this->invoice, $this->invoice->amount); UpdateCompanyLedgerWithInvoice::dispatchNow($this->invoice, $this->invoice->amount);
$recurring_invoice = InvoiceToRecurringInvoiceFactory::create($this->invoice); $recurring_invoice = InvoiceToRecurringInvoiceFactory::create($this->invoice);
$recurring_invoice->next_send_date = Carbon::now()->format(config('ninja.date_time_format')); $recurring_invoice->next_send_date = Carbon::now();
$recurring_invoice->status_id = RecurringInvoice::STATUS_ACTIVE; $recurring_invoice->status_id = RecurringInvoice::STATUS_ACTIVE;
$recurring_invoice->remaining_cycles = 2; $recurring_invoice->remaining_cycles = 2;
$recurring_invoice->start_date = Carbon::now()->format(config('ninja.date_format')); $recurring_invoice->start_date = Carbon::now();
$recurring_invoice->save(); $recurring_invoice->save();
$recurring_invoice->invoice_number = $this->getNextInvoiceNumber($this->invoice->client); $recurring_invoice->invoice_number = $this->getNextInvoiceNumber($this->invoice->client);
$recurring_invoice->save(); $recurring_invoice->save();
$recurring_invoice = InvoiceToRecurringInvoiceFactory::create($this->invoice); $recurring_invoice = InvoiceToRecurringInvoiceFactory::create($this->invoice);
$recurring_invoice->next_send_date = Carbon::now()->addMinutes(2)->format(config('ninja.date_time_format')); $recurring_invoice->next_send_date = Carbon::now()->addMinutes(2);
$recurring_invoice->status_id = RecurringInvoice::STATUS_ACTIVE; $recurring_invoice->status_id = RecurringInvoice::STATUS_ACTIVE;
$recurring_invoice->remaining_cycles = 2; $recurring_invoice->remaining_cycles = 2;
$recurring_invoice->start_date = Carbon::now()->format(config('ninja.date_format')); $recurring_invoice->start_date = Carbon::now();
$recurring_invoice->save(); $recurring_invoice->save();
$recurring_invoice->invoice_number = $this->getNextInvoiceNumber($this->invoice->client); $recurring_invoice->invoice_number = $this->getNextInvoiceNumber($this->invoice->client);
$recurring_invoice->save(); $recurring_invoice->save();
$recurring_invoice = InvoiceToRecurringInvoiceFactory::create($this->invoice); $recurring_invoice = InvoiceToRecurringInvoiceFactory::create($this->invoice);
$recurring_invoice->next_send_date = Carbon::now()->addMinutes(10)->format(config('ninja.date_time_format')); $recurring_invoice->next_send_date = Carbon::now()->addMinutes(10);
$recurring_invoice->status_id = RecurringInvoice::STATUS_ACTIVE; $recurring_invoice->status_id = RecurringInvoice::STATUS_ACTIVE;
$recurring_invoice->remaining_cycles = 2; $recurring_invoice->remaining_cycles = 2;
$recurring_invoice->start_date = Carbon::now()->format(config('ninja.date_format')); $recurring_invoice->start_date = Carbon::now();
$recurring_invoice->save(); $recurring_invoice->save();
$recurring_invoice->invoice_number = $this->getNextInvoiceNumber($this->invoice->client); $recurring_invoice->invoice_number = $this->getNextInvoiceNumber($this->invoice->client);
$recurring_invoice->save(); $recurring_invoice->save();
$recurring_invoice = InvoiceToRecurringInvoiceFactory::create($this->invoice); $recurring_invoice = InvoiceToRecurringInvoiceFactory::create($this->invoice);
$recurring_invoice->next_send_date = Carbon::now()->addMinutes(15)->format(config('ninja.date_time_format')); $recurring_invoice->next_send_date = Carbon::now()->addMinutes(15);
$recurring_invoice->status_id = RecurringInvoice::STATUS_ACTIVE; $recurring_invoice->status_id = RecurringInvoice::STATUS_ACTIVE;
$recurring_invoice->remaining_cycles = 2; $recurring_invoice->remaining_cycles = 2;
$recurring_invoice->start_date = Carbon::now()->format(config('ninja.date_format')); $recurring_invoice->start_date = Carbon::now();
$recurring_invoice->save(); $recurring_invoice->save();
$recurring_invoice->invoice_number = $this->getNextInvoiceNumber($this->invoice->client); $recurring_invoice->invoice_number = $this->getNextInvoiceNumber($this->invoice->client);
@ -146,20 +146,20 @@ trait MockAccountData
$recurring_invoice = InvoiceToRecurringInvoiceFactory::create($this->invoice); $recurring_invoice = InvoiceToRecurringInvoiceFactory::create($this->invoice);
$recurring_invoice->next_send_date = Carbon::now()->addMinutes(20)->format(config('ninja.date_time_format')); $recurring_invoice->next_send_date = Carbon::now()->addMinutes(20);
$recurring_invoice->status_id = RecurringInvoice::STATUS_ACTIVE; $recurring_invoice->status_id = RecurringInvoice::STATUS_ACTIVE;
$recurring_invoice->remaining_cycles = 2; $recurring_invoice->remaining_cycles = 2;
$recurring_invoice->start_date = Carbon::now()->format(config('ninja.date_format')); $recurring_invoice->start_date = Carbon::now();
$recurring_invoice->save(); $recurring_invoice->save();
$recurring_invoice->invoice_number = $this->getNextInvoiceNumber($this->invoice->client); $recurring_invoice->invoice_number = $this->getNextInvoiceNumber($this->invoice->client);
$recurring_invoice->save(); $recurring_invoice->save();
$recurring_invoice = InvoiceToRecurringInvoiceFactory::create($this->invoice); $recurring_invoice = InvoiceToRecurringInvoiceFactory::create($this->invoice);
$recurring_invoice->next_send_date = Carbon::now()->addDays(10)->format(config('ninja.date_time_format')); $recurring_invoice->next_send_date = Carbon::now()->addDays(10);
$recurring_invoice->status_id = RecurringInvoice::STATUS_ACTIVE; $recurring_invoice->status_id = RecurringInvoice::STATUS_ACTIVE;
$recurring_invoice->remaining_cycles = 2; $recurring_invoice->remaining_cycles = 2;
$recurring_invoice->start_date = Carbon::now()->format(config('ninja.date_format')); $recurring_invoice->start_date = Carbon::now();
$recurring_invoice->save(); $recurring_invoice->save();
$recurring_invoice->invoice_number = $this->getNextInvoiceNumber($this->invoice->client); $recurring_invoice->invoice_number = $this->getNextInvoiceNumber($this->invoice->client);