瀏覽代碼

wip timezone handling

3.x
Andrew Wallo 2 月之前
父節點
當前提交
9792718070

+ 1
- 5
app/Concerns/HasTransactionAction.php 查看文件

8
 use App\Models\Accounting\JournalEntry;
8
 use App\Models\Accounting\JournalEntry;
9
 use App\Models\Accounting\Transaction;
9
 use App\Models\Accounting\Transaction;
10
 use App\Models\Banking\BankAccount;
10
 use App\Models\Banking\BankAccount;
11
-use App\Services\CompanySettingsService;
12
 use App\Utilities\Currency\CurrencyAccessor;
11
 use App\Utilities\Currency\CurrencyAccessor;
13
 use App\Utilities\Currency\CurrencyConverter;
12
 use App\Utilities\Currency\CurrencyConverter;
14
 use Awcodes\TableRepeater\Header;
13
 use Awcodes\TableRepeater\Header;
40
     protected function getFormDefaultsForType(TransactionType $type): array
39
     protected function getFormDefaultsForType(TransactionType $type): array
41
     {
40
     {
42
         $commonDefaults = [
41
         $commonDefaults = [
43
-            'posted_at' => now(),
42
+            'posted_at' => company_today()->toDateString(),
44
         ];
43
         ];
45
 
44
 
46
         return match ($type) {
45
         return match ($type) {
84
             ->schema([
83
             ->schema([
85
                 Forms\Components\DatePicker::make('posted_at')
84
                 Forms\Components\DatePicker::make('posted_at')
86
                     ->label('Date')
85
                     ->label('Date')
87
-                    ->timezone(CompanySettingsService::getDefaultTimezone())
88
                     ->required(),
86
                     ->required(),
89
                 Forms\Components\TextInput::make('description')
87
                 Forms\Components\TextInput::make('description')
90
                     ->label('Description'),
88
                     ->label('Description'),
127
             ->schema([
125
             ->schema([
128
                 Forms\Components\DatePicker::make('posted_at')
126
                 Forms\Components\DatePicker::make('posted_at')
129
                     ->label('Date')
127
                     ->label('Date')
130
-                    ->timezone(CompanySettingsService::getDefaultTimezone())
131
                     ->required(),
128
                     ->required(),
132
                 Forms\Components\TextInput::make('description')
129
                 Forms\Components\TextInput::make('description')
133
                     ->label('Description'),
130
                     ->label('Description'),
210
             ->schema([
207
             ->schema([
211
                 Forms\Components\DatePicker::make('posted_at')
208
                 Forms\Components\DatePicker::make('posted_at')
212
                     ->label('Date')
209
                     ->label('Date')
213
-                    ->timezone(CompanySettingsService::getDefaultTimezone())
214
                     ->softRequired(),
210
                     ->softRequired(),
215
                 Forms\Components\TextInput::make('description')
211
                 Forms\Components\TextInput::make('description')
216
                     ->label('Description')
212
                     ->label('Description')

+ 2
- 2
app/Filament/Company/Resources/Accounting/BudgetResource.php 查看文件

50
                             ->live(),
50
                             ->live(),
51
                         Forms\Components\DatePicker::make('start_date')
51
                         Forms\Components\DatePicker::make('start_date')
52
                             ->required()
52
                             ->required()
53
-                            ->default(now()->startOfYear())
53
+                            ->default(company_today()->startOfYear())
54
                             ->live(),
54
                             ->live(),
55
                         Forms\Components\DatePicker::make('end_date')
55
                         Forms\Components\DatePicker::make('end_date')
56
                             ->required()
56
                             ->required()
57
-                            ->default(now()->endOfYear())
57
+                            ->default(company_today()->endOfYear())
58
                             ->live()
58
                             ->live()
59
                             ->disabled(static fn (Forms\Get $get) => blank($get('start_date')))
59
                             ->disabled(static fn (Forms\Get $get) => blank($get('start_date')))
60
                             ->minDate(fn (Forms\Get $get) => match (BudgetIntervalType::parse($get('interval_type'))) {
60
                             ->minDate(fn (Forms\Get $get) => match (BudgetIntervalType::parse($get('interval_type'))) {

+ 2
- 2
app/Filament/Company/Resources/Accounting/BudgetResource/Pages/CreateBudget.php 查看文件

117
                         ->live(),
117
                         ->live(),
118
                     Forms\Components\DatePicker::make('start_date')
118
                     Forms\Components\DatePicker::make('start_date')
119
                         ->required()
119
                         ->required()
120
-                        ->default(now()->startOfYear())
120
+                        ->default(company_today()->startOfYear())
121
                         ->live(),
121
                         ->live(),
122
                     Forms\Components\DatePicker::make('end_date')
122
                     Forms\Components\DatePicker::make('end_date')
123
                         ->required()
123
                         ->required()
124
-                        ->default(now()->endOfYear())
124
+                        ->default(company_today()->endOfYear())
125
                         ->live()
125
                         ->live()
126
                         ->disabled(static fn (Forms\Get $get) => blank($get('start_date')))
126
                         ->disabled(static fn (Forms\Get $get) => blank($get('start_date')))
127
                         ->minDate(fn (Forms\Get $get) => match (BudgetIntervalType::parse($get('interval_type'))) {
127
                         ->minDate(fn (Forms\Get $get) => match (BudgetIntervalType::parse($get('interval_type'))) {

+ 4
- 1
app/Filament/Forms/Components/CreateAdjustmentSelect.php 查看文件

8
 use App\Enums\Accounting\AdjustmentStatus;
8
 use App\Enums\Accounting\AdjustmentStatus;
9
 use App\Enums\Accounting\AdjustmentType;
9
 use App\Enums\Accounting\AdjustmentType;
10
 use App\Models\Accounting\Adjustment;
10
 use App\Models\Accounting\Adjustment;
11
+use App\Services\CompanySettingsService;
11
 use Filament\Forms\Components\Actions\Action;
12
 use Filament\Forms\Components\Actions\Action;
12
 use Filament\Forms\Components\Checkbox;
13
 use Filament\Forms\Components\Checkbox;
13
 use Filament\Forms\Components\DateTimePicker;
14
 use Filament\Forms\Components\DateTimePicker;
195
 
196
 
196
             Group::make()
197
             Group::make()
197
                 ->schema([
198
                 ->schema([
198
-                    DateTimePicker::make('start_date'),
199
+                    DateTimePicker::make('start_date')
200
+                        ->timezone(CompanySettingsService::getDefaultTimezone()),
199
                     DateTimePicker::make('end_date')
201
                     DateTimePicker::make('end_date')
202
+                        ->timezone(CompanySettingsService::getDefaultTimezone())
200
                         ->after('start_date'),
203
                         ->after('start_date'),
201
                 ])
204
                 ])
202
                 ->visible(function (Get $get) {
205
                 ->visible(function (Get $get) {

Loading…
取消
儲存