fixes for update invoice (#3303)

This commit is contained in:
David Bomba 2020-02-10 21:13:46 +11:00 committed by GitHub
parent 9a19f7fd4c
commit af72d27a49
3 changed files with 442 additions and 439 deletions

View File

@ -12,14 +12,12 @@
namespace App\DataMapper; namespace App\DataMapper;
use App\DataMapper\CompanySettings; use App\DataMapper\CompanySettings;
use App\DataMapper\EmailTemplateDefaults;
use App\Models\Company;
/** /**
* CompanySettings * CompanySettings
*/ */
class CompanySettings extends BaseSettings
{ class CompanySettings extends BaseSettings {
/*Group settings based on functionality*/ /*Group settings based on functionality*/
@ -100,7 +98,6 @@ class CompanySettings extends BaseSettings
public $payment_number_pattern = ''; public $payment_number_pattern = '';
public $payment_number_counter = 1; public $payment_number_counter = 1;
public $shared_invoice_quote_counter = false; public $shared_invoice_quote_counter = false;
public $recurring_number_prefix = 'R'; public $recurring_number_prefix = 'R';
public $reset_counter_frequency_id = '0'; public $reset_counter_frequency_id = '0';
@ -161,7 +158,6 @@ class CompanySettings extends BaseSettings
public $email_signature = ''; public $email_signature = '';
public $enable_email_markup = true; public $enable_email_markup = true;
public $email_subject_custom1 = ''; public $email_subject_custom1 = '';
public $email_subject_custom2 = ''; public $email_subject_custom2 = '';
public $email_subject_custom3 = ''; public $email_subject_custom3 = '';
@ -189,6 +185,8 @@ class CompanySettings extends BaseSettings
public $late_fee_amount3 = 0; public $late_fee_amount3 = 0;
public $endless_reminder_frequency_id = '0'; public $endless_reminder_frequency_id = '0';
public $late_fee_endless_amount = 0;
public $late_fee_endless_percent = 0;
public $client_online_payment_notification = true; public $client_online_payment_notification = true;
public $client_manual_payment_notification = true; public $client_manual_payment_notification = true;
@ -220,6 +218,8 @@ class CompanySettings extends BaseSettings
public $invoice_variables = []; public $invoice_variables = [];
public static $casts = [ public static $casts = [
'late_fee_endless_percent' => 'float',
'late_fee_endless_amount' => 'float',
'auto_email_invoice' => 'bool', 'auto_email_invoice' => 'bool',
'reminder_send_time' => 'int', 'reminder_send_time' => 'int',
'email_sending_method' => 'string', 'email_sending_method' => 'string',
@ -389,8 +389,7 @@ class CompanySettings extends BaseSettings
* *
* @return \stdClass * @return \stdClass
*/ */
public function __construct($obj) public function __construct($obj) {
{
// parent::__construct($obj); // parent::__construct($obj);
} }
@ -398,8 +397,7 @@ class CompanySettings extends BaseSettings
* Provides class defaults on init * Provides class defaults on init
* @return object * @return object
*/ */
public static function defaults() : \stdClass public static function defaults():\stdClass {
{
$config = json_decode(config('ninja.settings')); $config = json_decode(config('ninja.settings'));
$data = (object) get_class_vars(CompanySettings::class ); $data = (object) get_class_vars(CompanySettings::class );
@ -443,8 +441,7 @@ class CompanySettings extends BaseSettings
* *
* @param object $data The settings object to be checked * @param object $data The settings object to be checked
*/ */
public static function setProperties($settings) :\stdClass public static function setProperties($settings):\stdClass {
{
$company_settings = (object) get_class_vars(CompanySettings::class ); $company_settings = (object) get_class_vars(CompanySettings::class );
foreach ($company_settings as $key => $value) { foreach ($company_settings as $key => $value) {
@ -456,8 +453,7 @@ class CompanySettings extends BaseSettings
return $settings; return $settings;
} }
private static function getInvoiceVariableDefaults() private static function getInvoiceVariableDefaults() {
{
$variables = [ $variables = [
'client_details' => [ 'client_details' => [
'name', 'name',

View File

@ -24,12 +24,10 @@ use App\Http\Requests\Invoice\EditInvoiceRequest;
use App\Http\Requests\Invoice\ShowInvoiceRequest; use App\Http\Requests\Invoice\ShowInvoiceRequest;
use App\Http\Requests\Invoice\StoreInvoiceRequest; use App\Http\Requests\Invoice\StoreInvoiceRequest;
use App\Http\Requests\Invoice\UpdateInvoiceRequest; use App\Http\Requests\Invoice\UpdateInvoiceRequest;
use App\Jobs\Invoice\CreateInvoicePdf;
use App\Jobs\Invoice\EmailInvoice; use App\Jobs\Invoice\EmailInvoice;
use App\Jobs\Invoice\StoreInvoice; use App\Jobs\Invoice\StoreInvoice;
use App\Models\Invoice; use App\Models\Invoice;
use App\Repositories\InvoiceRepository; use App\Repositories\InvoiceRepository;
use App\Transformers\InvoiceTransformer; use App\Transformers\InvoiceTransformer;
use App\Utils\Traits\MakesHash; use App\Utils\Traits\MakesHash;
@ -41,6 +39,7 @@ use Illuminate\Http\Request;
*/ */
class InvoiceController extends BaseController { class InvoiceController extends BaseController {
use MakesHash; use MakesHash;
protected $entity_type = Invoice::class ; protected $entity_type = Invoice::class ;
@ -654,6 +653,10 @@ class InvoiceController extends BaseController {
$contact = $invitation->contact; $contact = $invitation->contact;
$invoice = $invitation->invoice; $invoice = $invitation->invoice;
return response()->json($invitation_key); $file_path = CreateInvoicePdf::dispatchNow($invoice, $invoice->company, $contact);
return response()->download($file_path);
//return response()->json($invitation_key);
} }
} }

View File

@ -81,6 +81,10 @@ class InvoiceRepository extends BaseRepository {
if (!$inv) { if (!$inv) {
if (isset($invitation['id'])) {
unset($invitation['id']);
}
$new_invitation = InvoiceInvitationFactory::create($invoice->company_id, $invoice->user_id); $new_invitation = InvoiceInvitationFactory::create($invoice->company_id, $invoice->user_id);
$new_invitation->fill($invitation); $new_invitation->fill($invitation);
$new_invitation->invoice_id = $invoice->id; $new_invitation->invoice_id = $invoice->id;