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)
{
$company = Company::create($request->all());
// Clear settings
setting()->forgetAll();
$company = Company::create($request->all());
setting()->setExtraColumns(['company_id' => $company->id]);
// Create settings
setting()->set([
@ -69,11 +70,9 @@ class Companies extends ApiController
'general.default_locale' => $request->get('default_locale', 'en-GB'),
]);
setting()->setExtraColumns(['company_id' => $company->id]);
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');
setting()->forgetAll();
// Create company
$company = Company::create($request->input());
setting()->forgetAll();
setting()->setExtraColumns(['company_id' => $company->id]);
// Create settings
setting()->set('general.company_name', $request->get('company_name'));
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_locale', session('locale'));
setting()->setExtraColumns(['company_id' => $company->id]);
setting()->save();
setting()->forgetAll();

View File

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

View File

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

View File

@ -28,6 +28,7 @@ class Version138 extends Listener
// Re-format financial start
$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()->save();
}

View File

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

View File

@ -4,7 +4,6 @@ namespace Database\Seeds;
use App\Models\Model;
use App\Models\Banking\Account;
use Setting;
use Illuminate\Database\Seeder;
class Accounts extends Seeder
@ -27,6 +26,8 @@ class Accounts extends Seeder
{
$company_id = $this->command->argument('company');
setting()->setExtraColumns(['company_id' => $company_id]);
$rows = [
[
'company_id' => $company_id,
@ -41,7 +42,7 @@ class Accounts extends Seeder
foreach ($rows as $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 Illuminate\Database\Seeder;
use Date;
use Setting;
class Settings extends Seeder
{
@ -27,7 +26,9 @@ class Settings extends Seeder
{
$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.timezone' => 'Europe/London',
'general.date_format' => 'd M Y',

View File

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

View File

@ -4,7 +4,6 @@ namespace Modules\OfflinePayment\Database\Seeders;
use Illuminate\Database\Seeder;
use Illuminate\Database\Eloquent\Model;
use Setting;
class OfflinePaymentDatabaseSeeder extends Seeder
{
@ -24,24 +23,28 @@ class OfflinePaymentDatabaseSeeder extends Seeder
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',
'name' => 'Cash',
'customer' => '0',
'order' => '1',
'description' => null,
);
];
$methods[] = array(
$methods[] = [
'code' => 'offlinepayment.bank_transfer.2',
'name' => 'Bank Transfer',
'customer' => '0',
'order' => '2',
'description' => null,
);
];
Setting::set('offlinepayment.methods', json_encode($methods));
setting()->set('offlinepayment.methods', json_encode($methods));
}
}