new setting package

This commit is contained in:
denisdulici 2019-02-22 16:14:13 +03:00
parent 1086eab674
commit 9bfc59549a
10 changed files with 42 additions and 36 deletions

View File

@ -55,10 +55,11 @@ class Companies extends ApiController
*/ */
public function store(Request $request) public function store(Request $request)
{ {
$company = Company::create($request->all());
// Clear settings // Clear settings
setting()->forgetAll(); setting()->forgetAll();
setting()->setExtraColumns(['company_id' => $company->id]);
$company = Company::create($request->all());
// Create settings // Create settings
setting()->set([ setting()->set([
@ -69,11 +70,9 @@ class Companies extends ApiController
'general.default_locale' => $request->get('default_locale', 'en-GB'), 'general.default_locale' => $request->get('default_locale', 'en-GB'),
]); ]);
setting()->setExtraColumns(['company_id' => $company->id]);
setting()->save(); setting()->save();
return $this->response->created(url('api/companies/'.$company->id)); return $this->response->created(url('api/companies/' . $company->id));
} }
/** /**

View File

@ -63,11 +63,12 @@ class Companies extends Controller
{ {
$company_id = session('company_id'); $company_id = session('company_id');
setting()->forgetAll();
// Create company // Create company
$company = Company::create($request->input()); $company = Company::create($request->input());
setting()->forgetAll();
setting()->setExtraColumns(['company_id' => $company->id]);
// Create settings // Create settings
setting()->set('general.company_name', $request->get('company_name')); setting()->set('general.company_name', $request->get('company_name'));
setting()->set('general.company_email', $request->get('company_email')); setting()->set('general.company_email', $request->get('company_email'));
@ -85,8 +86,6 @@ class Companies extends Controller
setting()->set('general.default_currency', $request->get('default_currency')); setting()->set('general.default_currency', $request->get('default_currency'));
setting()->set('general.default_locale', session('locale')); setting()->set('general.default_locale', session('locale'));
setting()->setExtraColumns(['company_id' => $company->id]);
setting()->save(); setting()->save();
setting()->forgetAll(); setting()->forgetAll();

View File

@ -28,13 +28,13 @@ class Version130 extends Listener
} }
// Set new Item Reminder settings // Set new Item Reminder settings
setting()->setExtraColumns(['company_id' => session('company_id')]);
setting(['general.send_item_reminder' => '0']); setting(['general.send_item_reminder' => '0']);
setting(['general.schedule_item_stocks' => '3,5,7']); setting(['general.schedule_item_stocks' => '3,5,7']);
setting(['general.wizard' => '1']); setting(['general.wizard' => '1']);
setting(['general.invoice_item' => 'settings.invoice.item']); setting(['general.invoice_item' => 'settings.invoice.item']);
setting(['general.invoice_price' => 'settings.invoice.price']); setting(['general.invoice_price' => 'settings.invoice.price']);
setting(['general.invoice_quantity' => 'settings.invoice.quantity']); setting(['general.invoice_quantity' => 'settings.invoice.quantity']);
setting()->save(); setting()->save();
$this->updatePermissions(); $this->updatePermissions();

View File

@ -26,6 +26,7 @@ class Version135 extends Listener
} }
// Add financial year start to settings // Add financial year start to settings
setting()->setExtraColumns(['company_id' => session('company_id')]);
setting(['general.financial_start' => Date::now()->startOfYear()->format('d F')]); setting(['general.financial_start' => Date::now()->startOfYear()->format('d F')]);
setting()->save(); setting()->save();
} }

View File

@ -28,6 +28,7 @@ class Version138 extends Listener
// Re-format financial start // Re-format financial start
$current_setting = setting('general.financial_start', Date::now()->startOfYear()->format('d F')); $current_setting = setting('general.financial_start', Date::now()->startOfYear()->format('d F'));
setting()->setExtraColumns(['company_id' => session('company_id')]);
setting(['general.financial_start' => Date::parse($current_setting)->format('d-m')]); setting(['general.financial_start' => Date::parse($current_setting)->format('d-m')]);
setting()->save(); setting()->save();
} }

View File

@ -214,13 +214,13 @@ class Installer
]); ]);
// Set settings // Set settings
setting()->setExtraColumns(['company_id' => $company->id]);
setting()->set([ setting()->set([
'general.company_name' => $name, 'general.company_name' => $name,
'general.company_email' => $email, 'general.company_email' => $email,
'general.default_currency' => 'USD', 'general.default_currency' => 'USD',
'general.default_locale' => $locale, 'general.default_locale' => $locale,
]); ]);
setting()->setExtraColumns(['company_id' => $company->id]);
setting()->save(); setting()->save();
} }

View File

@ -4,7 +4,6 @@ namespace Database\Seeds;
use App\Models\Model; use App\Models\Model;
use App\Models\Banking\Account; use App\Models\Banking\Account;
use Setting;
use Illuminate\Database\Seeder; use Illuminate\Database\Seeder;
class Accounts extends Seeder class Accounts extends Seeder
@ -27,6 +26,8 @@ class Accounts extends Seeder
{ {
$company_id = $this->command->argument('company'); $company_id = $this->command->argument('company');
setting()->setExtraColumns(['company_id' => $company_id]);
$rows = [ $rows = [
[ [
'company_id' => $company_id, 'company_id' => $company_id,
@ -41,7 +42,7 @@ class Accounts extends Seeder
foreach ($rows as $row) { foreach ($rows as $row) {
$account = Account::create($row); $account = Account::create($row);
Setting::set('general.default_account', $account->id); setting()->set('general.default_account', $account->id);
} }
} }
} }

View File

@ -5,7 +5,6 @@ namespace Database\Seeds;
use App\Models\Model; use App\Models\Model;
use Illuminate\Database\Seeder; use Illuminate\Database\Seeder;
use Date; use Date;
use Setting;
class Settings extends Seeder class Settings extends Seeder
{ {
@ -27,7 +26,9 @@ class Settings extends Seeder
{ {
$company_id = $this->command->argument('company'); $company_id = $this->command->argument('company');
Setting::set([ setting()->setExtraColumns(['company_id' => $company_id]);
setting()->set([
'general.financial_start' => Date::now()->startOfYear()->format('d-m'), 'general.financial_start' => Date::now()->startOfYear()->format('d-m'),
'general.timezone' => 'Europe/London', 'general.timezone' => 'Europe/London',
'general.date_format' => 'd M Y', 'general.date_format' => 'd M Y',

View File

@ -5,9 +5,7 @@ namespace Database\Seeds;
use App\Models\Model; use App\Models\Model;
use App\Models\Auth\User; use App\Models\Auth\User;
use App\Models\Common\Company; use App\Models\Common\Company;
use Jenssegers\Date\Date;
use Illuminate\Database\Seeder; use Illuminate\Database\Seeder;
use Setting;
class TestCompany extends Seeder class TestCompany extends Seeder
{ {
@ -42,18 +40,21 @@ class TestCompany extends Seeder
Company::create($row); Company::create($row);
} }
Setting::setExtraColumns(['company_id' => '1']); setting()->setExtraColumns(['company_id' => '1']);
Setting::set('general.company_name', 'Test Inc.'); setting()->set([
Setting::set('general.company_email', 'info@test.com'); 'general.company_name' => 'Test Inc.',
Setting::set('general.company_address', 'New Street 1254'); 'general.company_email' => 'info@test.com',
Setting::set('general.default_currency', 'USD'); 'general.company_address' => 'New Street 1254',
Setting::set('general.default_account', '1'); 'general.financial_start' => '01-01',
Setting::set('general.default_payment_method', 'offlinepayment.cash.1'); 'general.default_currency' => 'USD',
Setting::set('general.schedule_bill_days', '10,5,3,1'); 'general.default_account' => '1',
Setting::set('general.schedule_invoice_days', '1,3,5,10'); 'general.default_payment_method' => 'offlinepayment.cash.1',
Setting::set('general.send_invoice_reminder', true); 'general.schedule_bill_days' => '10,5,3,1',
Setting::set('general.send_bill_reminder', true); 'general.schedule_invoice_days' => '1,3,5,10',
Setting::save(); 'general.send_invoice_reminder' => true,
'general.send_bill_reminder' => true,
]);
setting()->save();
$this->command->info('Test company created.'); $this->command->info('Test company created.');
} }

View File

@ -4,7 +4,6 @@ namespace Modules\OfflinePayment\Database\Seeders;
use Illuminate\Database\Seeder; use Illuminate\Database\Seeder;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Setting;
class OfflinePaymentDatabaseSeeder extends Seeder class OfflinePaymentDatabaseSeeder extends Seeder
{ {
@ -24,24 +23,28 @@ class OfflinePaymentDatabaseSeeder extends Seeder
private function create() private function create()
{ {
$methods = array(); $company_id = $this->command->argument('company');
$methods[] = array( setting()->setExtraColumns(['company_id' => $company_id]);
$methods = [];
$methods[] = [
'code' => 'offlinepayment.cash.1', 'code' => 'offlinepayment.cash.1',
'name' => 'Cash', 'name' => 'Cash',
'customer' => '0', 'customer' => '0',
'order' => '1', 'order' => '1',
'description' => null, 'description' => null,
); ];
$methods[] = array( $methods[] = [
'code' => 'offlinepayment.bank_transfer.2', 'code' => 'offlinepayment.bank_transfer.2',
'name' => 'Bank Transfer', 'name' => 'Bank Transfer',
'customer' => '0', 'customer' => '0',
'order' => '2', 'order' => '2',
'description' => null, 'description' => null,
); ];
Setting::set('offlinepayment.methods', json_encode($methods)); setting()->set('offlinepayment.methods', json_encode($methods));
} }
} }