浏览代码

Merge pull request #147 from andrewdwallo/development-3.x

Development 3.x
3.x
Andrew Wallo 5 个月前
父节点
当前提交
70907130c8
没有帐户链接到提交者的电子邮件

+ 21
- 0
app/Filament/Pages/Auth/Login.php 查看文件

1
+<?php
2
+
3
+namespace App\Filament\Pages\Auth;
4
+
5
+use Wallo\FilamentCompanies\Pages\Auth\Login as BaseLogin;
6
+
7
+class Login extends BaseLogin
8
+{
9
+    public function mount(): void
10
+    {
11
+        parent::mount();
12
+
13
+        if (app()->environment('demo')) {
14
+            $this->form->fill([
15
+                'email' => 'admin@erpsaas.com',
16
+                'password' => 'password',
17
+                'remember' => true,
18
+            ]);
19
+        }
20
+    }
21
+}

+ 20
- 15
app/Providers/Filament/CompanyPanelProvider.php 查看文件

35
 use App\Filament\Company\Resources\Sales\InvoiceResource;
35
 use App\Filament\Company\Resources\Sales\InvoiceResource;
36
 use App\Filament\Company\Resources\Sales\RecurringInvoiceResource;
36
 use App\Filament\Company\Resources\Sales\RecurringInvoiceResource;
37
 use App\Filament\Components\PanelShiftDropdown;
37
 use App\Filament\Components\PanelShiftDropdown;
38
+use App\Filament\Pages\Auth\Login;
38
 use App\Filament\User\Clusters\Account;
39
 use App\Filament\User\Clusters\Account;
39
 use App\Http\Middleware\ConfigureCurrentCompany;
40
 use App\Http\Middleware\ConfigureCurrentCompany;
40
 use App\Livewire\UpdatePassword;
41
 use App\Livewire\UpdatePassword;
69
 use Wallo\FilamentCompanies\Enums\Feature;
70
 use Wallo\FilamentCompanies\Enums\Feature;
70
 use Wallo\FilamentCompanies\Enums\Provider;
71
 use Wallo\FilamentCompanies\Enums\Provider;
71
 use Wallo\FilamentCompanies\FilamentCompanies;
72
 use Wallo\FilamentCompanies\FilamentCompanies;
72
-use Wallo\FilamentCompanies\Pages\Auth\Login;
73
 use Wallo\FilamentCompanies\Pages\Auth\Register;
73
 use Wallo\FilamentCompanies\Pages\Auth\Register;
74
 
74
 
75
 class CompanyPanelProvider extends PanelProvider
75
 class CompanyPanelProvider extends PanelProvider
79
      */
79
      */
80
     public function panel(Panel $panel): Panel
80
     public function panel(Panel $panel): Panel
81
     {
81
     {
82
+        $isDemoEnvironment = app()->environment('demo');
83
+
82
         return $panel
84
         return $panel
83
             ->default()
85
             ->default()
84
             ->id('company')
86
             ->id('company')
85
             ->path('company')
87
             ->path('company')
86
             ->login(Login::class)
88
             ->login(Login::class)
87
-            ->registration(action: app()->environment('demo') ? null : Register::class)
88
-            ->passwordReset(requestAction: app()->environment('demo') ? null : Pages\Auth\PasswordReset\RequestPasswordReset::class)
89
+            ->when(! $isDemoEnvironment, function (Panel $panel) {
90
+                return $panel
91
+                    ->registration(Register::class)
92
+                    ->passwordReset();
93
+            })
89
             ->tenantMenu(false)
94
             ->tenantMenu(false)
90
             ->plugin(
95
             ->plugin(
91
                 FilamentCompanies::make()
96
                 FilamentCompanies::make()
92
                     ->userPanel('user')
97
                     ->userPanel('user')
93
                     ->switchCurrentCompany()
98
                     ->switchCurrentCompany()
94
-                    ->updateProfileInformation(condition: ! app()->environment('demo'), component: UpdateProfileInformation::class)
95
-                    ->updatePasswords(condition: ! app()->environment('demo'), component: UpdatePassword::class)
96
-                    ->setPasswords(condition: ! app()->environment('demo'))
97
-                    ->connectedAccounts(condition: ! app()->environment('demo'))
98
-                    ->manageBrowserSessions(condition: ! app()->environment('demo'))
99
-                    ->accountDeletion(condition: ! app()->environment('demo'))
100
-                    ->profilePhotos(condition: ! app()->environment('demo'))
101
-                    ->api(condition: ! app()->environment('demo'))
99
+                    ->updateProfileInformation(component: UpdateProfileInformation::class)
100
+                    ->updatePasswords(component: UpdatePassword::class)
101
+                    ->setPasswords()
102
+                    ->connectedAccounts()
103
+                    ->manageBrowserSessions()
104
+                    ->accountDeletion()
105
+                    ->profilePhotos()
106
+                    ->api()
102
                     ->companies(invitations: true)
107
                     ->companies(invitations: true)
103
                     ->autoAcceptInvitations()
108
                     ->autoAcceptInvitations()
104
                     ->termsAndPrivacyPolicy()
109
                     ->termsAndPrivacyPolicy()
105
                     ->notifications()
110
                     ->notifications()
106
                     ->modals()
111
                     ->modals()
107
                     ->socialite(
112
                     ->socialite(
108
-                        condition: ! app()->environment('demo'),
113
+                        condition: ! $isDemoEnvironment,
109
                         providers: [Provider::Github],
114
                         providers: [Provider::Github],
110
                         features: [Feature::RememberSession, Feature::ProviderAvatars],
115
                         features: [Feature::RememberSession, Feature::ProviderAvatars],
111
                     ),
116
                     ),
178
             ->discoverPages(in: app_path('Filament/Company/Pages'), for: 'App\\Filament\\Company\\Pages')
183
             ->discoverPages(in: app_path('Filament/Company/Pages'), for: 'App\\Filament\\Company\\Pages')
179
             ->discoverClusters(in: app_path('Filament/Company/Clusters'), for: 'App\\Filament\\Company\\Clusters')
184
             ->discoverClusters(in: app_path('Filament/Company/Clusters'), for: 'App\\Filament\\Company\\Clusters')
180
             ->pages([
185
             ->pages([
181
-                Pages\Dashboard::class,
186
+                // Pages\Dashboard::class,
182
             ])
187
             ])
183
             ->authGuard('web')
188
             ->authGuard('web')
184
             ->discoverWidgets(in: app_path('Filament/Company/Widgets'), for: 'App\\Filament\\Company\\Widgets')
189
             ->discoverWidgets(in: app_path('Filament/Company/Widgets'), for: 'App\\Filament\\Company\\Widgets')
185
             ->widgets([
190
             ->widgets([
186
-                Widgets\AccountWidget::class,
187
-                Widgets\FilamentInfoWidget::class,
191
+                // Widgets\AccountWidget::class,
192
+                // Widgets\FilamentInfoWidget::class,
188
             ])
193
             ])
189
             ->middleware([
194
             ->middleware([
190
                 EncryptCookies::class,
195
                 EncryptCookies::class,

+ 3
- 3
app/Providers/Filament/UserPanelProvider.php 查看文件

11
 use Filament\Http\Middleware\DispatchServingFilamentEvent;
11
 use Filament\Http\Middleware\DispatchServingFilamentEvent;
12
 use Filament\Navigation\NavigationBuilder;
12
 use Filament\Navigation\NavigationBuilder;
13
 use Filament\Navigation\NavigationItem;
13
 use Filament\Navigation\NavigationItem;
14
-use Filament\Pages;
15
 use Filament\Panel;
14
 use Filament\Panel;
16
 use Filament\PanelProvider;
15
 use Filament\PanelProvider;
17
 use Filament\Support\Colors\Color;
16
 use Filament\Support\Colors\Color;
50
                                     ->icon('heroicon-s-building-office-2')
49
                                     ->icon('heroicon-s-building-office-2')
51
                                     ->url(static function (): ?string {
50
                                     ->url(static function (): ?string {
52
                                         $user = Auth::user();
51
                                         $user = Auth::user();
52
+                                        $companyPanel = FilamentCompanies::getCompanyPanel();
53
 
53
 
54
                                         if ($company = $user?->primaryCompany()) {
54
                                         if ($company = $user?->primaryCompany()) {
55
-                                            return Pages\Dashboard::getUrl(panel: FilamentCompanies::getCompanyPanel(), tenant: $company);
55
+                                            return Filament::getPanel($companyPanel)->getUrl(tenant: $company);
56
                                         }
56
                                         }
57
 
57
 
58
-                                        return Filament::getPanel(FilamentCompanies::getCompanyPanel())->getTenantRegistrationUrl();
58
+                                        return Filament::getPanel($companyPanel)->getTenantRegistrationUrl();
59
                                     }),
59
                                     }),
60
                             ]);
60
                             ]);
61
                     }),
61
                     }),

+ 2
- 2
app/Services/AccountService.php 查看文件

381
         $driver = DB::getDriverName();
381
         $driver = DB::getDriverName();
382
 
382
 
383
         $datediff = $driver === 'pgsql'
383
         $datediff = $driver === 'pgsql'
384
-            ? "DATE_PART('day', ?::date - invoices.due_date)"
384
+            ? '(?::date - invoices.due_date::date)'
385
             : 'DATEDIFF(?, invoices.due_date)';
385
             : 'DATEDIFF(?, invoices.due_date)';
386
 
386
 
387
         return Invoice::query()
387
         return Invoice::query()
404
         $driver = DB::getDriverName();
404
         $driver = DB::getDriverName();
405
 
405
 
406
         $datediff = $driver === 'pgsql'
406
         $datediff = $driver === 'pgsql'
407
-            ? "DATE_PART('day', ?::date - bills.due_date)"
407
+            ? '(?::date - bills.due_date::date)'
408
             : 'DATEDIFF(?, bills.due_date)';
408
             : 'DATEDIFF(?, bills.due_date)';
409
 
409
 
410
         return Bill::query()
410
         return Bill::query()

+ 0
- 5
database/migrations/2023_11_18_041015_create_currency_lists_table.php 查看文件

1
 <?php
1
 <?php
2
 
2
 
3
-use App\Facades\Forex;
4
 use Illuminate\Database\Migrations\Migration;
3
 use Illuminate\Database\Migrations\Migration;
5
 use Illuminate\Database\Schema\Blueprint;
4
 use Illuminate\Database\Schema\Blueprint;
6
 use Illuminate\Support\Facades\Schema;
5
 use Illuminate\Support\Facades\Schema;
12
      */
11
      */
13
     public function up(): void
12
     public function up(): void
14
     {
13
     {
15
-        if (Forex::isDisabled()) {
16
-            return;
17
-        }
18
-
19
         Schema::create('currency_lists', function (Blueprint $table) {
14
         Schema::create('currency_lists', function (Blueprint $table) {
20
             $table->id();
15
             $table->id();
21
             $table->string('code');
16
             $table->string('code');

正在加载...
取消
保存