Fixes for reports

This commit is contained in:
David Bomba 2023-01-28 14:59:35 +11:00
parent f4784b82ef
commit e8608ab58e
4 changed files with 47 additions and 18 deletions

View File

@ -72,9 +72,7 @@ class ProfitAndLossController extends BaseController
// expect a list of visible fields, or use the default
$pnl = new ProfitLoss(auth()->user()->company(), $request->all());
$pnl->build();
$csv = $pnl->getCsv();
$csv = $pnl->run();
$headers = [
'Content-Disposition' => 'attachment',

View File

@ -94,6 +94,11 @@ class ProfitLoss
$this->setBillingReportType();
}
public function run()
{
return $this->build()->getCsv();
}
public function build()
{
MultiDB::setDb($this->company->db);

View File

@ -165,7 +165,7 @@ class HtmlEngine
$data = [];
$data['$global_margin'] = ['value' => '6.35mm', 'label' => ''];
// $data['$company_logo_size'] = ['value' => $this->resolveCompanyLogoSize(), 'label' => ''];
$data['$company_logo_size'] = ['value' => $this->resolveCompanyLogoSize(), 'label' => ''];
$data['$tax'] = ['value' => '', 'label' => ctrans('texts.tax')];
$data['$app_url'] = ['value' => $this->generateAppUrl(), 'label' => ''];
$data['$from'] = ['value' => '', 'label' => ctrans('texts.from')];

View File

@ -584,6 +584,12 @@ trait GeneratesCounter
$settings->invoice_number_counter = 1;
$settings->quote_number_counter = 1;
$settings->credit_number_counter = 1;
$settings->ticket_number_counter = 1;
$settings->payment_number_counter = 1;
$settings->project_number_counter = 1;
$settings->task_number_counter = 1;
$settings->expense_number_counter = 1;
$settings->recurring_expense_number_counter = 1;
$settings->purchase_order_number_counter = 1;
$client->company->settings = $settings;
@ -600,48 +606,68 @@ trait GeneratesCounter
return false;
}
switch ($company->reset_counter_frequency_id) {
$settings = $company->settings;
$reset_counter_frequency = (int) $settings->reset_counter_frequency_id;
if ($reset_counter_frequency == 0) {
if($settings->reset_counter_date){
$settings->reset_counter_date = "";
$company->settings = $settings;
$company->save();
}
return;
}
switch ($reset_counter_frequency) {
case RecurringInvoice::FREQUENCY_DAILY:
$reset_date->addDay();
$new_reset_date = $reset_date->addDay();
break;
case RecurringInvoice::FREQUENCY_WEEKLY:
$reset_date->addWeek();
$new_reset_date = $reset_date->addWeek();
break;
case RecurringInvoice::FREQUENCY_TWO_WEEKS:
$reset_date->addWeeks(2);
$new_reset_date = $reset_date->addWeeks(2);
break;
case RecurringInvoice::FREQUENCY_FOUR_WEEKS:
$reset_date->addWeeks(4);
$new_reset_date = $reset_date->addWeeks(4);
break;
case RecurringInvoice::FREQUENCY_MONTHLY:
$reset_date->addMonth();
$new_reset_date = $reset_date->addMonth();
break;
case RecurringInvoice::FREQUENCY_TWO_MONTHS:
$reset_date->addMonths(2);
$new_reset_date = $reset_date->addMonths(2);
break;
case RecurringInvoice::FREQUENCY_THREE_MONTHS:
$reset_date->addMonths(3);
$new_reset_date = $reset_date->addMonths(3);
break;
case RecurringInvoice::FREQUENCY_FOUR_MONTHS:
$reset_date->addMonths(4);
$new_reset_date = $reset_date->addMonths(4);
break;
case RecurringInvoice::FREQUENCY_SIX_MONTHS:
$reset_date->addMonths(6);
$new_reset_date = $reset_date->addMonths(6);
break;
case RecurringInvoice::FREQUENCY_ANNUALLY:
$reset_date->addYear();
$new_reset_date = $reset_date->addYear();
break;
case RecurringInvoice::FREQUENCY_TWO_YEARS:
$reset_date->addYears(2);
$new_reset_date = $reset_date->addYears(2);
break;
default:
$new_reset_date = $reset_date->addYear();
break;
}
$settings = $company->settings;
$settings->reset_counter_date = $reset_date->format('Y-m-d');
$settings->reset_counter_date = $new_reset_date->format('Y-m-d');
$settings->invoice_number_counter = 1;
$settings->quote_number_counter = 1;
$settings->credit_number_counter = 1;
$settings->vendor_number_counter = 1;
$settings->ticket_number_counter = 1;
$settings->payment_number_counter = 1;
$settings->project_number_counter = 1;