<style> .red { color: #eb4034; } .uppercase { text-transform: uppercase } <?php if(isset($isExcel)): ?> #tb td, #tb th { border: 1px solid #000000; } td { text-align: center; } th { text-align: center; } <?php endif; ?> </style> <table class="table table-striped table-bordered table-hover" id="tb" style="width: 100%"> <tr> <th colspan="10" class="uppercase">Báo cáo nợ khách hàng</th> </tr> <tr> <th rowspan="2">STT</th> <th rowspan="2">Nhà</th> <th rowspan="2">Số phòng</th> <th rowspan="2">Họ và tên</th> <th colspan="3">Phải thu</th> <th rowspan="2">Đã nộp</th> <th rowspan="2">Còn nợ</th> <th rowspan="2">Tổng còn phải thu các nhà</th> </tr> <tr> <?php if(isset($isExcel)): ?> <th></th> <th></th> <th></th> <th></th> <?php endif; ?> <th>Phiếu thu trong tháng</th> <th>Nợ các tháng trước</th> <th>Tổng cộng</th> <?php if(isset($isExcel)): ?> <th></th> <th></th> <th></th> <?php endif; ?> </tr> <?php $__currentLoopData = $hostels; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $hostel): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?> <?php

            $cntRoom =  $hostel->rooms->count();
        ?> <?php
            $cp =  $hostel->moneyInfos->whereBetween('date_action', [
         Carbon\Carbon::now()->startOfMonth(),
         Carbon\Carbon::now()->endOfMonth()
     ])->sum('amount');

        $moneyInfo =  $hostel->moneyInfos->where('date_action', '<=', Carbon\Carbon::now()->subMonth()->endOfMonth())->sum('remain');

         $paid = $hostel->moneyInfos->whereBetween('date_action', [
                     Carbon\Carbon::now()->startOfMonth(),
                     Carbon\Carbon::now()->endOfMonth()
                 ])->sum('pay');
        $discount = $hostel->moneyInfos->whereBetween('date_action', [
                     Carbon\Carbon::now()->startOfMonth(),
                     Carbon\Carbon::now()->endOfMonth()
                 ])->sum('discount');
        $totalCount = 1;
        foreach ($hostel->rooms as $room) {
            $totalContract = $room->contractsValid()->with(['moneyInfos'])->count();
            if ($totalContract > 1) {
                foreach($room->contractsValid as $contract) {
                    if($contract->id != $room->contractsValid->first()->id) {

                    }
                    $totalCount += 1;

                }
            } else {
                $totalCount += 1;
            }
        }
        ?> <tr> <td><strong><?php echo e(App\Components\Functions::numberToRomanRepresentation($loop->index + 1)); ?></strong></td> <td rowspan="<?php echo e($totalCount); ?>"> <strong><?php echo e($hostel->name); ?></strong></td> <td><strong>Tất cả</strong></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td><strong><?php echo e(number_format($cp + $moneyInfo - $paid - $discount, 0, '.', '.')); ?></strong></td> </tr> <?php $__currentLoopData = $hostel->rooms; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $room): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?> <?php
                $cnt =$room->contractsValid()->with(['moneyInfos'])->count();

            $totalContract = 0;
            if ($cnt > 1) {
                foreach($room->contractsValid as $contract) {
                    $totalContract += 1;
                }
            } else {
                $totalContract += 1;
            }
            ?> <tr> <td><?php echo e($loop->index + 1); ?></td> <td <?php if($totalContract > 1): ?> rowspan="<?php echo e($totalContract); ?>" <?php endif; ?>> <?php echo e($room->name); ?> </td> <?php if($cnt != 0): ?> <?php $contract = $room->contractsValid->first() ?> <?php
                        $cp =  $contract->moneyInfos->whereBetween('date_action', [
                     Carbon\Carbon::now()->startOfMonth(),
                     Carbon\Carbon::now()->endOfMonth()
                 ])->sum('amount');

                    $remain =  $contract->moneyInfos->where('date_action', '<=', Carbon\Carbon::now()->subMonth()->endOfMonth())->sum('remain');

                     $paid = $contract->moneyInfos->whereBetween('date_action', [
                     Carbon\Carbon::now()->startOfMonth(),
                     Carbon\Carbon::now()->endOfMonth()
                 ])->sum('pay');

                    $discount = $contract->moneyInfos->whereBetween('date_action', [
                     Carbon\Carbon::now()->startOfMonth(),
                     Carbon\Carbon::now()->endOfMonth()
                 ])->sum('discount');
                    ?> <?php if(isset($isExcel)): ?> <td></td> <?php endif; ?> <td> <?php echo e($contract->name); ?> </td> <td><?php if(isset($isExcel)): ?> <?php echo e($cp); ?> <?php else: ?> <?php echo e(number_format($cp, 0, '.', '.')); ?> <?php endif; ?> </td> <td> <?php if(isset($isExcel)): ?> <?php echo e($remain); ?> <?php else: ?> <?php echo e(number_format($remain, 0, '.', '.')); ?> <?php endif; ?> </td> <td><?php if(isset($isExcel)): ?> <?php echo e($cp + $remain); ?> <?php else: ?> <?php echo e(number_format($cp + $remain, 0, '.', '.')); ?> <?php endif; ?></td> <td><?php if(isset($isExcel)): ?> <?php echo e($paid); ?> <?php else: ?> <?php echo e(number_format($paid, 0, '.', '.')); ?> <?php endif; ?> </td> <td><?php if(isset($isExcel)): ?> <?php echo e($cp + $remain - $paid - $discount); ?> <?php else: ?> <?php echo e(number_format($cp + $remain - $paid - $discount, 0, '.', '.')); ?> <?php endif; ?></td> <td></td> <?php else: ?> <td> </td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <?php if(isset($isExcel)): ?> <td></td> <?php endif; ?> <?php endif; ?> </tr> <?php if($totalContract >= 1): ?> <?php $__currentLoopData = $room->contractsValid; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $contract): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?> <?php if($contract->id != $room->contractsValid->first()->id): ?> <?php
                            $cp =  $contract->moneyInfos->whereBetween('date_action', [
                         Carbon\Carbon::now()->startOfMonth(),
                         Carbon\Carbon::now()->endOfMonth()
                     ])->sum('amount');

                        $remain =  $contract->moneyInfos->where('date_action', '<=', Carbon\Carbon::now()->subMonth()->endOfMonth())->sum('remain');

                         $paid = $contract->moneyInfos->whereBetween('date_action', [
                         Carbon\Carbon::now()->startOfMonth(),
                         Carbon\Carbon::now()->endOfMonth()
                     ])->sum('pay');

                        $discount = $contract->moneyInfos->whereBetween('date_action', [
                         Carbon\Carbon::now()->startOfMonth(),
                         Carbon\Carbon::now()->endOfMonth()
                     ])->sum('discount');
                        ?> <tr> <?php if(isset($isExcel)): ?> <td></td> <td></td> <?php endif; ?> <td></td> <td><?php echo e($contract->name); ?></td> <td><?php if(isset($isExcel)): ?> <?php echo e($cp); ?> <?php else: ?> <?php echo e(number_format($cp, 0, '.', '.')); ?> <?php endif; ?> </td> <td> <?php if(isset($isExcel)): ?> <?php echo e($remain); ?> <?php else: ?> <?php echo e(number_format($remain, 0, '.', '.')); ?> <?php endif; ?> </td> <td><?php if(isset($isExcel)): ?> <?php echo e($cp + $remain); ?> <?php else: ?> <?php echo e(number_format($cp + $remain, 0, '.', '.')); ?> <?php endif; ?></td> <td><?php if(isset($isExcel)): ?> <?php echo e($paid); ?> <?php else: ?> <?php echo e(number_format($paid, 0, '.', '.')); ?> <?php endif; ?> </td> <td><?php if(isset($isExcel)): ?> <?php echo e($cp + $remain - $paid - $discount); ?> <?php else: ?> <?php echo e(number_format($cp + $remain - $paid - $discount, 0, '.', '.')); ?> <?php endif; ?></td> <td></td> </tr> <?php endif; ?> <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?> <?php endif; ?> <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?> <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?> </table>