diff --git a/Modules/MultiBranchAddon/App/Http/Controllers/AcnooBranchController.php b/Modules/MultiBranchAddon/App/Http/Controllers/AcnooBranchController.php index ec261ef9..881af0fc 100644 --- a/Modules/MultiBranchAddon/App/Http/Controllers/AcnooBranchController.php +++ b/Modules/MultiBranchAddon/App/Http/Controllers/AcnooBranchController.php @@ -241,7 +241,7 @@ public function incomeExpense(Request $request) $data['expenses'] = Sale::where('business_id', auth()->user()->business_id) ->whereYear('created_at', request('year') ?? date('Y')) ->where('lossProfit', '<', 0) - ->selectRaw("EXTRACT(MONTH FROM created_at) as month_number, TO_CHAR(created_at, 'Month') as month, SUM(ABS(lossProfit)) as total") + ->selectRaw("EXTRACT(MONTH FROM created_at) as month_number, TO_CHAR(created_at, 'Month') as month, SUM(ABS(\"lossProfit\")) as total") ->groupBy('month_number', 'month') ->orderBy('month_number') ->get(); @@ -249,7 +249,7 @@ public function incomeExpense(Request $request) $data['incomes'] = Sale::where('business_id', auth()->user()->business_id) ->whereYear('created_at', request('year') ?? date('Y')) ->where('lossProfit', '>=', 0) - ->selectRaw("EXTRACT(MONTH FROM created_at) as month_number, TO_CHAR(created_at, 'Month') as month, SUM(ABS(lossProfit)) as total") + ->selectRaw("EXTRACT(MONTH FROM created_at) as month_number, TO_CHAR(created_at, 'Month') as month, SUM(ABS(\"lossProfit\")) as total") ->groupBy('month_number', 'month') ->orderBy('month_number') ->get(); diff --git a/app/Http/Controllers/Admin/DashboardController.php b/app/Http/Controllers/Admin/DashboardController.php index f8244d14..e152dc0f 100644 --- a/app/Http/Controllers/Admin/DashboardController.php +++ b/app/Http/Controllers/Admin/DashboardController.php @@ -34,8 +34,9 @@ public function getDashboardData() public function yearlySubscriptions() { $subscriptions = PlanSubscribe::whereYear('created_at', request('year') ?? date('Y')) - ->selectRaw("TO_CHAR(created_at, 'Month') as month, SUM(price) as total_amount") - ->groupBy('month') + ->selectRaw("TO_CHAR(created_at, 'FMMonth') as month, SUM(price) as total_amount") + ->groupBy(DB::raw("TO_CHAR(created_at, 'FMMonth')")) + ->orderBy(DB::raw("MIN(created_at)")) ->get(); return response()->json($subscriptions); diff --git a/app/Http/Controllers/Api/StatisticsController.php b/app/Http/Controllers/Api/StatisticsController.php index 8f35d8da..9510d433 100644 --- a/app/Http/Controllers/Api/StatisticsController.php +++ b/app/Http/Controllers/Api/StatisticsController.php @@ -118,7 +118,7 @@ public function dashboard() $sales_data = Sale::selectRaw("TO_CHAR(created_at, '$dateFormatSQL') as date, SUM(\"totalAmount\") as amount") ->where('business_id', $business_id) ->whereBetween('created_at', [$start, $end]) - ->groupBy('date') + ->groupBy(DB::raw("TO_CHAR(created_at, '$dateFormatSQL')")) ->orderBy('date') ->get() ->map(function ($item) { @@ -131,7 +131,7 @@ public function dashboard() $purchase_data = Purchase::selectRaw("TO_CHAR(created_at, '$dateFormatSQL') as date, SUM(\"totalAmount\") as amount") ->where('business_id', $business_id) ->whereBetween('created_at', [$start, $end]) - ->groupBy('date') + ->groupBy(DB::raw("TO_CHAR(created_at, '$dateFormatSQL')")) ->orderBy('date') ->get() ->map(function ($item) { diff --git a/app/Models/Party.php b/app/Models/Party.php index ec7743eb..a541f13c 100644 --- a/app/Models/Party.php +++ b/app/Models/Party.php @@ -84,6 +84,17 @@ public function dueCollect() { return $this->hasOne(DueCollect::class); } + public function dueForBranch($branchId = null) + { + $query = $this->type === 'Supplier' ? $this->purchases_dues() : $this->sales_dues(); + + if ($branchId) { + $query->where('branch_id', $branchId); + } + + return $query->sum('dueAmount'); + } + /** * The attributes that should be cast to native types. *