@php $no_of_bills = 0; @endphp @foreach($bills as $bill) @php $no_of_bills = $no_of_bills + 1; $isNewBill = isset($bill->rounding_amount) && !is_null($bill->rounding_amount) && $bill->rounding_amount != 0; if ($isRoundingEnabled) { if ($isNewBill) { $finalGrandTotal = $bill->grandtotal; $roundValue = $bill->rounding_amount; } else { $grandAmount = $bill->grandtotal; $ceilAmount = ceil($grandAmount); $floorAmount = floor($grandAmount); $roundValue = $ceilAmount - $grandAmount; $finalGrandTotal = ($roundValue > 0 && $roundValue <= 0.50) ? $ceilAmount : $floorAmount; } } else { $finalGrandTotal = $isNewBill ? $bill->grandtotal - $bill->rounding_amount : $bill->grandtotal; $roundValue = 0; } $billAmount = $bill->amount; $serviceChAmount = ($billAmount * $bill->service_charge_percent)/100; $amountAndService = $billAmount + $serviceChAmount; $fuelAmount = ($amountAndService * $bill->fchpercent)/100; $otherChAmount = $bill->other_charge; $totAmount = $amountAndService + $fuelAmount + $otherChAmount; $billitems = DB::table('bill_item_preferences')->where(['client_id'=>$bill->client_id])->where(['branch_id'=>$branchId])->select(['bill_item'])->first(); $billitempreferences = ''; if ($billitems !="" || $billitems != NULL || $billitems != null) { $billitempreferences = json_decode($billitems->bill_item, true); } else { $billitems = DB::table('bill_item_preferences')->where(['client_id'=>'0'])->where(['branch_id'=>$branchId])->select(['bill_item'])->first(); $billitempreferences = json_decode($billitems->bill_item, true); } $totalColsValue = 11; foreach ($billitempreferences as $key => $value) { if ($key == 'package_type') { continue; } if ($key == 'receiver' || $key == 'center' || $key == 'remark' || $key == 'carrier' || $key == 'weight' || $key == 'insurance' || $key == 'fuel_charge') { if ($value == 0) { $totalColsValue--; } } } $parcels = DB::table('bills as bl') ->leftJoin('parcels as p','p.client_id','=','bl.clientid') ->leftJoin('receivers as r','r.id','=','p.receiver_id') ->where(['bl.id'=>$bill->id, 'p.bill_id'=>$bill->id, 'p.is_international'=>1, 'bl.branch_id'=>$branchId]) ->whereBetween('p.date', array($bill->start_date, $bill->end_last)) ->select([DB::raw('SUM(p.net_amt) as total_amount')])->get(); $all_parcels = DB::table('bills as bl') ->leftJoin('parcels as p','p.client_id','=','bl.clientid') ->leftJoin('receivers as r','r.id','=','p.receiver_id') ->leftJoin('centers as c','c.id','=','p.center_id') ->leftJoin('carriers as car','car.id','=','p.carrier_id') ->leftJoin('clients as clnt','clnt.id','=','bl.clientid') ->leftJoin('default_packagetypes as dp','dp.id','=','p.package_type') ->where(['bl.id'=>$bill->id, 'p.bill_id'=>$bill->id, 'p.is_international'=>1, 'bl.branch_id'=>$branchId]) ->whereBetween('p.date', array($bill->start_date, $bill->end_last)) ->select([ 'p.id as parcel_id', 'p.net_amt', 'p.amont', 'p.weight', 'dp.name as dp_name', 'dp.weight_type as weight_type', 'p.consignment_no', 'p.number_of_box', 'r.name as receiver_name', 'c.name as city_name', 'car.name as carrier_name', 'p.date', 'p.insurance_amt', 'p.fuel_charge', 'p.ess_charge', 'p.remakrs', 'clnt.weight_in_mails as clientWeight', 'clnt.charge_in_mails as clientCharge', DB::raw('(SELECT SUM(parcel_charges.charge_amount) FROM parcel_charges WHERE parcel_charges.parcel_id = p.id) as total_other_charges_amount'), ])->orderBy('p.date')->orderBy('p.consignment_no')->get(); $data = array(); $total_fuel_for_main_bill = 0; foreach ($all_parcels as $parcel) { $parcel_array = array(); $parcel_array['receiver'] = $parcel->receiver_name; $parcel_array['center'] = $parcel->city_name; $parcel_array['carrier'] = $parcel->carrier_name; $parcel_array['date'] = $parcel->date; $parcel_array['cons_no'] = $parcel->consignment_no; $parcel_array['number_of_box'] = $parcel->number_of_box; $parcel_array['remakrs'] = $parcel->remakrs; $parcel_array['parcel_amount'] = $parcel->amont; $parcel_array['weight'] = $parcel->weight; $parcel_array['weight_type'] = $parcel->weight_type; $parcel_array['insurance'] = $parcel->insurance_amt; $parcel_array['ess_charge'] = $parcel->ess_charge; $parcel_array['ess_charge_amount'] = (($parcel->amont + $parcel->total_other_charges_amount) * ($parcel->ess_charge) / 100); $parcel_array['fuel_percentage'] = $parcel->fuel_charge; $parcel_array['fuel_amount'] = (($parcel->amont + $parcel->total_other_charges_amount + $parcel_array['ess_charge_amount']) * $parcel->fuel_charge) / 100; $parcel_array['amount'] = $parcel->amont + $parcel_array['ess_charge_amount'] + $parcel_array['fuel_amount'] + $parcel->insurance_amt; $parcel_array['total_other_charges_amount'] = $parcel->total_other_charges_amount; $total_fuel_for_main_bill = $total_fuel_for_main_bill + $parcel_array['fuel_amount']; // $parcel_fuel_amount = ($parcel->amont * $parcel->fuel_charge)/100; // $parcel_array['fuel'] = $parcel_fuel_amount; // $parcel_array['fuel_percentage'] = $parcel->fuel_charge; // $parcel_array['amount'] = $parcel->amont + $parcel_fuel_amount + $parcel->insurance_amt; // $total_fuel_for_main_bill = $total_fuel_for_main_bill + $parcel_fuel_amount; $data[] = $parcel_array; $all_charge_type_parcels = DB::table('parcels as par') ->leftJoin('parcel_charges as par_charge','par.id','=','par_charge.parcel_id') ->leftJoin('_lists as list','list.id','=','par_charge.charge_type') ->where(['par_charge.branch_id'=>$branchId, 'par_charge.parcel_id'=>$parcel->parcel_id]) ->select([ 'list.item_name as charge_name', 'par_charge.charge_amount', ])->get(); if (!empty($all_charge_type_parcels)) { $other_amount = 0; foreach ($all_charge_type_parcels as $charge_type_parcel) { $info = array(); $info['receiver'] = $charge_type_parcel->charge_name; $info['center'] = ''; $info['carrier'] = ''; $info['date'] = ''; $info['cons_no'] = ''; $info['remakrs'] = ''; $info['parcel_amount'] = $charge_type_parcel->charge_amount; $info['weight'] = ''; $info['weight_type'] = ''; $info['insurance'] = ''; $info['fuel_amount'] = ''; $info['fuel_percentage'] = ''; $info['amount'] = $charge_type_parcel->charge_amount; $other_amount = $other_amount + $charge_type_parcel->charge_amount; $data[] = $info; } } } $final_value = number_format((double)($parcels[0]->total_amount - $bill->amount), 2); if($final_value > 0){ $value = 'Positive'; }else{ $value = 'Negative'; } sleep(2); @endphp
DEBIT MEMO / CASH MEMO

TAX INVOICE

ORIGINAL / DUPLICATE / TRIPLICATE

{{@$branch['person_name']}}

{{@$branch['address']}}, {{@$branch['city']}} - {{@$branch['zipcode']}}
Period Bill / {{date("d M Y", strtotime($bill->start_date))}} - {{date("d M Y", strtotime($bill->end_last))}}

M/s.

{{$bill->name}}

Address

{{@$bill->address1.' '.@$bill->address2.' '.@$bill->city}}

Phone

{{@$bill->phone1}}

GST No.

{{@$bill->gstno}}

Bill No. {{$bill->billno}}

Date{{date("d/m/Y", strtotime($bill->created_at))}}

@if($value == 'Positive') @else @endif @if($value == 'Positive') {{-- @else --}} @endif @if($roundValue > 0 && $roundValue <= 0.50) @endif
PARTICULAR AMOUNT
COURIER CHARGES FOR THE {{date("d M Y", strtotime($bill->start_date))}} TO {{date("d M Y", strtotime($bill->end_last))}} {{Laracore::showPrice($parcels[0]->total_amount - $total_fuel_for_main_bill)}}
COURIER CHARGES FOR THE {{date("d M Y", strtotime($bill->start_date))}} TO {{date("d M Y", strtotime($bill->end_last))}} {{Laracore::showPrice($parcels[0]->total_amount + abs($parcels[0]->total_amount - $bill->amount) - $total_fuel_for_main_bill)}}
DISCOUNT - {{Laracore::showPrice($parcels[0]->total_amount - $bill->amount)}}
DISCOUNT --
Fuel Charge {{Laracore::showPrice($total_fuel_for_main_bill)}}
CGST % ({{$bill->cgstpercent}}) {{Laracore::showPrice(($totAmount * $bill->cgstpercent)/100)}}
SGST / UTGST % ({{$bill->sgstpercent}}) {{Laracore::showPrice(($totAmount * $bill->sgstpercent)/100)}}
IGST % ({{$bill->igstpercent}}) {{Laracore::showPrice(($totAmount * $bill->igstpercent)/100)}}
Round Of {{Laracore::showPrice($roundValue)}}
GRAND TOTAL {{ Laracore::showPrice($finalGrandTotal) }}

(Rupees in words){{ getIndianCurrency($finalGrandTotal) }}

GST No.- {{@$branch['gstno']}}
{{@$branch['bank_address']}}
A/C. No. - {{@$branch['bank_acno']}}
IFSC CODE - {{@$branch['ifsc_code']}}
MSME No. - {{@$branch['msme_no']}}
HSN/SAC CODE - {{@$branch['sac_code']}}
Pan Card No.- {{@$branch['pancard']}}
Mo. {{@$branch['contact_no']}}

@if($branch['bill_terms_and_conditions'] != '')

@php $termsAndConditionsArr = explode("\n", str_replace("\r", "", @$branch['bill_terms_and_conditions'])); @endphp @foreach($termsAndConditionsArr as $termsAndConditions) {{$termsAndConditions}}
@endforeach

@else

PLEASE MAKE PAYMENT BY A/c. PAYEE CHEQUE IN FAVOR OF {{strtoupper(@$branch['name'])}}

PLEASE MAKE PAYMENT BY AMOUNT DUE ON 1 TO 5 DAYS

@endif
@if($branch['payment_qr_code'])

Payment QR Code

Stamp
@endif
@if($digital_signature == 1)

Digitally signed by {{strtoupper(@$branch['name'])}}

Date:{{date("d/m/Y", strtotime($bill->created_at))}}
Location:{{@$branch['city']}}
@elseif($digital_signature == 2 && $branch['stamp'] != '')

For, {{@$branch['name']}}

Stamp
@else

For, {{@$branch['name']}}

Autho / Sign.
@endif
@if(count($all_parcels) > 0)
Bill Detail / {{date("d M Y", strtotime($bill->start_date))}} - {{date("d M Y", strtotime($bill->end_last))}}
@php $srno = 1; $amountColsValue = 0; $total_parcel_amount = $total_ins = $total_fuel = 0; @endphp @foreach($data as $parcels) @endforeach @php if($billitempreferences['insurance'] == '0'){ $amountColsValue = $amountColsValue + 1; } if($billitempreferences['fuel_charge'] == '0'){ $amountColsValue = $amountColsValue + 1; } @endphp @if($roundValue > 0 && $roundValue <= 0.50) @endif
Sr Receiver Center Date Cons_No Remark Carrier Weight Amount Insur. Fuel Charge Charges
{{(@$parcels['center'] != '') ? $srno :''}} {{@$parcels['receiver']}} {{@$parcels['center']}} {{(@$parcels['date'] != '') ? date("d/m/Y", strtotime(@$parcels['date'])) :''}} {{@$parcels['cons_no']}} {{@$parcels['remakrs']}} {{@$parcels['carrier']}} {{@$parcels['weight']}} {{strtoupper(@$parcels['weight_type'])}} @if(@$parcels['number_of_box'] != null)
({{$parcels['number_of_box']}} Box)
@endif
{{@$parcels['parcel_amount']}} {{@$parcels['insurance']}} {{number_format((float)@$parcels['fuel_amount'],2)}} {{(@$parcels['fuel_percentage'] > 0) ? ('('.number_format($parcels['fuel_percentage'],2).'%)') : ''}} {{Laracore::showPrice(@$parcels['amount'])}}
Amount {{Laracore::showPrice($total_parcel_amount)}} {{Laracore::showPrice($total_ins)}} {{Laracore::showPrice($total_fuel)}} {{Laracore::showPrice($bill->amount)}}
CGST % ({{$bill->cgstpercent}}) {{Laracore::showPrice(($totAmount * $bill->cgstpercent)/100)}}
SGST / UTGST % ({{$bill->sgstpercent}}) {{Laracore::showPrice(($totAmount * $bill->sgstpercent)/100)}}
IGST % ({{$bill->igstpercent}}) {{Laracore::showPrice(($totAmount * $bill->igstpercent)/100)}}
Round Of {{Laracore::showPrice($roundValue)}}
GRAND TOTAL {{ Laracore::showPrice($finalGrandTotal) }}

(Rupees in words){{ getIndianCurrency($finalGrandTotal) }}

@if($digital_signature == 1)

Digitally signed by {{strtoupper(@$branch['name'])}}

Date:{{date("d/m/Y", strtotime($bill->created_at))}}
Location:{{@$branch['city']}}
@elseif($digital_signature == 2 && $branch['stamp'] != '')

For, {{@$branch['name']}}

Stamp
@else

For, {{@$branch['name']}}

Autho / Sign.
@endif
@endif
   
@endforeach