diff --git a/app/Http/Controllers/Reports/ProfitAndLossController.php b/app/Http/Controllers/Reports/ProfitAndLossController.php index 327fdfff6649..8ee3f9a7d2dc 100644 --- a/app/Http/Controllers/Reports/ProfitAndLossController.php +++ b/app/Http/Controllers/Reports/ProfitAndLossController.php @@ -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', diff --git a/app/Services/Report/ProfitLoss.php b/app/Services/Report/ProfitLoss.php index ac8c62a0727d..5c6c8c15c547 100644 --- a/app/Services/Report/ProfitLoss.php +++ b/app/Services/Report/ProfitLoss.php @@ -94,6 +94,11 @@ class ProfitLoss $this->setBillingReportType(); } + public function run() + { + return $this->build()->getCsv(); + } + public function build() { MultiDB::setDb($this->company->db); diff --git a/app/Utils/HtmlEngine.php b/app/Utils/HtmlEngine.php index 49814379fd9b..ce3541fe8342 100644 --- a/app/Utils/HtmlEngine.php +++ b/app/Utils/HtmlEngine.php @@ -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')]; diff --git a/app/Utils/Traits/GeneratesCounter.php b/app/Utils/Traits/GeneratesCounter.php index 037ab14e4262..5e2e1642ae95 100644 --- a/app/Utils/Traits/GeneratesCounter.php +++ b/app/Utils/Traits/GeneratesCounter.php @@ -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;