浏览代码

Add SQLite support to AccountService.php

3.x
Ben Perry 1 个月前
父节点
当前提交
f429ae6b58
共有 1 个文件被更改,包括 22 次插入6 次删除
  1. 22
    6
      app/Services/AccountService.php

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

@@ -380,9 +380,17 @@ class AccountService
380 380
         $asOfDate = $asOfDate ?? company_today()->toDateString();
381 381
         $driver = DB::getDriverName();
382 382
 
383
-        $datediff = $driver === 'pgsql'
384
-            ? '(?::date - invoices.due_date::date)'
385
-            : 'DATEDIFF(?, invoices.due_date)';
383
+        switch ($driver) {
384
+            case 'pgsql':
385
+                $datediff = '(?::date - invoices.due_date::date)';
386
+                break;
387
+            case 'sqlite':
388
+                $datediff = 'JULIANDAY(?) - JULIANDAY(invoices.due_date)';
389
+                break;
390
+            default:
391
+                $datediff = 'DATEDIFF(?, invoices.due_date)';
392
+                break;
393
+        }
386 394
 
387 395
         return Invoice::query()
388 396
             ->select([
@@ -403,9 +411,17 @@ class AccountService
403 411
         $asOfDate = $asOfDate ?? company_today()->toDateString();
404 412
         $driver = DB::getDriverName();
405 413
 
406
-        $datediff = $driver === 'pgsql'
407
-            ? '(?::date - bills.due_date::date)'
408
-            : 'DATEDIFF(?, bills.due_date)';
414
+        switch ($driver) {
415
+            case 'pgsql':
416
+                $datediff = '(?::date - bills.due_date::date)';
417
+                break;
418
+            case 'sqlite':
419
+                $datediff = 'JULIANDAY(?) - JULIANDAY(bills.due_date)';
420
+                break;
421
+            default:
422
+                $datediff = 'DATEDIFF(?, bills.due_date)';
423
+                break;
424
+        }
409 425
 
410 426
         return Bill::query()
411 427
             ->select([

正在加载...
取消
保存