<?php

 date_default_timezone_set('Asia/Karachi');
 include('db_con.php');
 
 
 $s_id = $_GET['id'];
 if($s_id == 0)
 {
  $sql = "select max(s_id) from sale";
  $statement = $connect->prepare($sql);
  $statement->execute();
  $s_id = $statement->fetchColumn();
 }
 $tot_qty = 0;
 $tot_amt = 0;
 $tot_lqty = 0;
 $discount =0;
 $freight = 0;
 $pre_balance = 0;
 $sql = "select title_id from sale where s_id = '".$s_id."'";
 $statement = $connect->prepare($sql);
                      $statement->execute(); 
                      $title_id = $statement->fetchColumn();
$statement = $connect->prepare("select * from titles where  id= :title_id
    
  ");
 $statement->execute(
  array(  
   ':title_id'       =>  $title_id
  )
 );
 $result = $statement->fetchAll();
 
  foreach($result as $row)
 {
  $heading1 = $row['heading1'];
  $heading2 = $row['heading2'];
  $heading3 = $row['heading3'];
 }
 

  
 

 
  ?>
  <!DOCTYPE html>
  <html>
  <head>
    <meta charset="utf-8">
    <title>Sale Invoice</title>
     <style>
    * {
      font-family: arial;
     
      padding: 1px;
      font-weight: bold;

    }
    

    p {
      font-size: 11px;
    }

    .inv_title {
      font-size: 20px;
      text-align: center;
    }

    .main_header {
      text-align: center;
      padding: 2px;
      line-height: 0px;
    }

    .font-bold {
      font-weight: bold;
    }
    table {
      border-collapse: collapse;
    }
    thead td {
      font-weight: bold;
      padding: 3px;
      border: 2px solid black;
      
      border-spacing: 0;
      border-collapse: collapse;
    }
    tbody td {
      
      padding: 4px;
     border-spacing: 0;
      border-collapse: collapse;
      border :1px solid black;
      font-size: 12px;
    }
    .font-bold {
      font-weight: bold;
    }
    .rightside {
      text-align: right;
    }
    table.table_head td{
      border: none;
    }
    .smallfont {
      font-size: 12px;
      font-weight: bold;
    }

    .no-border {
      border: none;
    }
   
  table.ledger th {
    border-bottom: 1px solid black;
    border-top: 1px solid black;
    font-size: 12px;
  }

  table.ledger td {
    border-bottom: 1px solid black;
    
    font-size: 8px;
  }

  table.side_total td {
    font-size: 12px;
  }

  .bottom-text {
    width: 50%;
    margin: 0 auto;
  }
  @page {
  margin: 1cm;
}
.balance {
  font-size: 1.5em;
  color:red;
}
 .urdu {
  font-size: 14px;
 }  
  </style>

  </head>
  <body onload="window.print();">
    <div class="main_header">
       <span class="inv_title"><?php echo $heading1;?></span>
      <p><?php echo $heading2;?></p>
      <p><?php echo $heading3;?></p>
    </div>
 <table width="100%" class="table_head">
  <?php 
  $statement = $connect->prepare("select m.s_id,m.inv_no,m.cust_id,m.chal_no,m.po_no,m.bilty_no,m.po_no,m.due_day,DATE_FORMAT(m.due_dated,'%d-%m-%Y') as due_dated,DATE_FORMAT(m.dated,'%d-%m-%Y') as dated,m.cur_stamp,m.description,m.inv_type,m.discount,m.discount_dsc,m.freight_dsc,m.cust_name,a.phone,m.contact,m.freight,m.gst_pr,m.pre_balance,a.acc_name name,o.user_name from sale m,user_detail o,accounts a where o.user_id=m.user_id and a.acc_no=m.cust_id and m.s_id= :s_id
    
  ");
 $statement->execute(
  array(  
   ':s_id'       =>  $s_id
  )
 );
  $result = $statement->fetchAll();

  foreach($result as $row)
 {
 $cust_id = $row['cust_id'];
  $acc_no = $row['cust_id'];


  $address = '';
  $statement = $connect->query("select IFNULL(address,'') from accounts where acc_no = '".$cust_id."'");
  $address = $statement->fetchColumn();
  $sql = "select sum(d.debit-d.credit) from jv_detail d, jv m where m.jv_id=d.jv_id and d.acc_no = '".$acc_no."'";
  $statement = $connect->query($sql);
  $balance = $statement->fetchColumn();
 if($row['inv_type']=='Cash')
  {
    $contact = $row['contact'];
   
    
    $name = $row['cust_name'];
  }else{$contact = $row['phone'];$name=$row['name'];}

  $discount = $row['discount'];
  $freight = $row['freight'];
  $s_id = $row['s_id'];
  $cur_stamp = $row['cur_stamp'];
  $pre_balance = $row['pre_balance'];

 echo '
  <tr>

  <td width="10%"><b>M/S :</b></td><td width = "50%" >'.$name.'</td><td width="15%"><b>Inv # :</b></td><td width = "25%" class="rightside">'.$s_id.'</td>
  </tr>
    <td width="10%"><b>Address:</b></td><td width = "50%" >'.$address.'</td><td width="15%"><b>Date:</b></td><td width = "25%" class="rightside">'.$row['dated'].'</td>
  <tr>
  <td width="10%" class="font-bold"><b>Ph:</b></td><td width = "50%">'.$contact.'</td><td width="15%"><b>Created at:</b><td width="25%" class="rightside">'.$cur_stamp.'</td>
  </tr>
  <tr>
  <td width="10%" class="font-bold"><b>Desc:</b></td><td width = "50%">'.$row['description'].'</td><td width="40%" colspan="2"><b></b><span class="smallfont"></span></td>
  </tr>
  ';
}
  ?> 
  </table>
  <table width="100%" id="table_header">
  <thead>

  <tr>
  
  
  <td width="3%" class="font-bold">#</td>
  <td width="55%"class="font-bold">Description</td>
  
  <td width="10%" class="font-bold">UOM</td>
<td width="7%" class="font-bold rightside">Qty</td>
  <td width="10%" class="rightside font-bold">Rate</td> 
    <td width="15%" class="rightside font-bold">Amount</td> 
  
  </tr>
  
</thead>

<tbody>
<?php

$sql = "select d.item_no,CONCAT( t.type_name, ' - ' ,i.item_name) as item_name,i.description, u.uom_name,d.ctn,d.qty,d.rate from  items i,item_type t, sale_detail d,item_uom u    where t.type_id=i.type_id and d.item_no=i.item_id and i.uom=u.uom_id and
    d.s_id= :s_id order by d.id asc";
$statement = $connect->prepare($sql);
$statement->execute(
  array(  
   ':s_id'       =>  $s_id
  )
 );
$result = $statement->fetchAll();
$count = 0;
foreach($result as $row)
 {

$amount = 0;

$tot_balance = 0;

  $qty = $row["qty"];
  $ctn = $row["ctn"];
  
  $rate = $row["rate"];
   $count = $count +1;
  
  $amount = $qty * $rate;
  $tot_qty = $tot_qty + $qty;
  $tot_amt = $tot_amt + $amount;
  

  
echo '
  
<tr>
  
   <td>'.number_format($count, 0).'</td>
   <td>'.$row["item_name"].' <span class="urdu">'.$row["description"].'</span></td>

<td class="rightside">'.$row['uom_name'].'</td>
<td class="rightside">'.number_format($qty, 0).'</td>
<td  class="rightside ">'.number_format($rate, 2).'</td>
<td class="rightside ">'.number_format($amount, 0).'</td>
   </tr>
   ';
   
  
  
  

}

$tot_balance =  $tot_amt;


echo '

<tr>
<td colspan="3" class="rightside no-border">Total : </td>
<td class="total_line rightside small-font no-border">'.number_format($tot_qty, 0).'</td>
<td class="total_line rightside small-font no-border"></td>
<td class="total_line rightside small-font no-border">'.number_format($tot_amt, 0).'</td>
 
</tr>
';
$sql = "select sum(debit-credit) balance from jv_detail where acc_no = '".$acc_no."'";
$statement = $connect->query($sql);
$balance = $statement->fetchColumn();
?>
<tr><th colspan="3" style="font-size:8px;border:1px solid black">
  <table class="ledger" width="100%">
<tr><th width="18%">Date</th><th width="15%">Ref</th><th width="47%">Desc</th><th width="10%">Debit</th><th width="10%">Credit</th></tr>
  <?php 
  $statement = $connect->query("select * from (select m.dated,m.source,left(m.description,20) description, m.ref_id,d.narr,d.debit,d.credit from jv_detail d, jv m where m.jv_id=d.jv_id and d.acc_no = '".$acc_no."' order by dated desc LIMIT 5)a order by dated asc");
  $result = $statement->fetchAll();
$totalRows = $statement->rowCount();
if($totalRows > 0)
{
 
  foreach ($result as $row) {
    echo '
    <tr><td>'.$row["dated"].'</td><td>'.$row["ref_id"].'</td><td>'.$row["description"].'</td><td>'.number_format($row["debit"],0).'</td><td>'.number_format($row["credit"],0).'</td></tr>
    ';
  }
}
  
 echo '
</table><td class="no-border"></td><td colspan="2" style="font-size:8px;border:1px solid black">
<div align="right">
 <table class="side_total"><tr>
<td class="rightside no-border smallfont">Discount:</td>


<td class="total_line rightside">'.number_format($discount, 0).'</td>
  
</tr>';

  echo '<tr>
<td class="rightside no-border">Freight:</td>

<td class="rightside ">'.number_format($freight, 0).'</td>
  
</tr>';

  $net_amt = $tot_amt - $discount + $freight;
  $pre_balance = $balance - $net_amt;
  echo '<tr>
<td class="rightside no-border">Invoice Total : </td>

<td  class="rightside ">'.number_format($net_amt, 0).'</td>
  
</tr>';

echo '
<tr>
<td class="rightside no-border" class="">PreBalance:</td>

<td  class="rightside  ">'.number_format($pre_balance,0).'</td>
  
</tr><tr>
<td class="rightside no-border" class="">CurBalance:</td>

<td  class="rightside  ">'.number_format($balance,0).'</td>
  
</tr>';

echo '<tr>
<td  class="rightside no-border"></td>

<td class="rightside no-border "></td>
  
</tr></table></div>

';
?>



</table>
<div align="center" class="bottom_text">
<p style="font-size: 15px;font-weight:bold;" > بل کے بغیر کوئی واپسی یا تبدیلی نہیں۔ </p>
<p style="font-size: 15px;font-weight:bold;" >بیٹری والی کوئی چیز کی قابلِ واپسی نہیں ہے موکے پر چیک کر لیں </p>
</div>
</body>
</html>