Fixes for expense and project numbers

This commit is contained in:
David Bomba 2020-12-12 07:51:10 +11:00
parent df09336761
commit f6ed7be0da
3 changed files with 17 additions and 5 deletions

View File

@ -122,6 +122,9 @@ class PreviewController extends BaseController
->design($design) ->design($design)
->build(); ->build();
if(request()->has('html') && request()->input('html') == true)
return $maker->getCompiledHTML;
//if phantom js...... inject here.. //if phantom js...... inject here..
if (config('ninja.phantomjs_pdf_generation')) { if (config('ninja.phantomjs_pdf_generation')) {
return (new Phantom)->convertHtmlToPdf($maker->getCompiledHTML(true)); return (new Phantom)->convertHtmlToPdf($maker->getCompiledHTML(true));

View File

@ -35,9 +35,12 @@ class StoreExpenseRequest extends Request
{ {
$rules = []; $rules = [];
$rules['number'] = Rule::unique('expenses')->where('company_id', auth()->user()->company()->id); if (isset($this->number)) {
$rules['number'] = Rule::unique('expenses')->where('company_id', auth()->user()->company()->id);
}
// $rules['number'] = 'unique:expenses,number,'.$this->id.',id,company_id,'.auth()->user()->company()->id; // $rules['number'] = 'unique:expenses,number,'.$this->id.',id,company_id,'.auth()->user()->company()->id;
$rules['contacts.*.email'] = 'nullable|distinct'; // $rules['contacts.*.email'] = 'nullable|distinct';
//$rules['number'] = new UniqueExpenseNumberRule($this->all()); //$rules['number'] = new UniqueExpenseNumberRule($this->all());
$rules['client_id'] = 'bail|sometimes|exists:clients,id,company_id,'.auth()->user()->company()->id; $rules['client_id'] = 'bail|sometimes|exists:clients,id,company_id,'.auth()->user()->company()->id;
@ -55,6 +58,10 @@ class StoreExpenseRequest extends Request
$input['category_id'] = $this->decodePrimaryKey($input['category_id']); $input['category_id'] = $this->decodePrimaryKey($input['category_id']);
} }
if (! array_key_exists('currency_id', $input)) {
$input['currency_id'] = auth()->user()->company()->settings->currency_id;
}
$this->replace($input); $this->replace($input);
} }
@ -62,8 +69,6 @@ class StoreExpenseRequest extends Request
{ {
return [ return [
'unique' => ctrans('validation.unique', ['attribute' => 'email']), 'unique' => ctrans('validation.unique', ['attribute' => 'email']),
//'required' => trans('validation.required', ['attribute' => 'email']),
'contacts.*.email.required' => ctrans('validation.email', ['attribute' => 'email']),
]; ];
} }
} }

View File

@ -15,6 +15,7 @@ use App\Http\Requests\Request;
use App\Models\Client; use App\Models\Client;
use App\Models\Project; use App\Models\Project;
use App\Utils\Traits\MakesHash; use App\Utils\Traits\MakesHash;
use Illuminate\Validation\Rule;
class StoreProjectRequest extends Request class StoreProjectRequest extends Request
{ {
@ -36,7 +37,10 @@ class StoreProjectRequest extends Request
$rules['name'] = 'required'; $rules['name'] = 'required';
$rules['client_id'] = 'required|exists:clients,id,company_id,'.auth()->user()->company()->id; $rules['client_id'] = 'required|exists:clients,id,company_id,'.auth()->user()->company()->id;
$rules['number'] = 'unique:projects,number,'.$this->id.',id,company_id,'.auth()->user()->company()->id;
if (isset($this->number)) {
$rules['number'] = Rule::unique('projects')->where('company_id', auth()->user()->company()->id);
}
return $this->globalRules($rules); return $this->globalRules($rules);
} }