Current File : /home/obabain/khb_obaba_in/pinvoicedesign.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
    <%@page import="java.sql.*"
    import="javax.sql.*" %>
    <%@ include file="Connection.jsp" %>
    <%
    Statement ss1=con.createStatement();
    rcom=ss1.executeQuery("select * from ip_users");
   while(rcom.next())
   {
   	comp=rcom.getString("user_company");
   	 add1=rcom.getString("user_address_1");
	 add2=rcom.getString("user_address_2");
	 city=rcom.getString("user_city");
	 zip=rcom.getString("user_zip");
	 phone=rcom.getString("user_phone");
	 email=rcom.getString("user_email");
	 web=rcom.getString("user_web");
	 gst=rcom.getString("user_vat_id");
	  bankname=rcom.getString("bank_name");
		 acno=rcom.getString("account_no");
		 ifsc=rcom.getString("ifsc");
		 branch=rcom.getString("bank_branch");
		
			 
   }
   
    
	Statement st=con.createStatement();
	String id=request.getParameter("Id");
	String copy=request.getParameter("type");
	ResultSet rs=st.executeQuery("select tb.*,(select porder_despatch_through from ip_porders where porder_number=tb.pono)dpt from ip_puchase_invoice tb  where pinvoice_id="+id+"");
	while(rs.next())
	{
		sno=rs.getString("pinvoice_id");
		sdate=rs.getString("invoice_date_created");
		pono=rs.getString("pono");
		podate=rs.getString("podate");
		paym=rs.getString("payment_method");
		deptch=rs.getString("dpt");
		total=rs.getString("total");
	
		notes=rs.getString("ship_addr");
		pfc=rs.getString("purchase_pfc");
		
pino=rs.getString("purchase_invoice_no");
		

		
	}

	Statement st1=con.createStatement();
	 id=request.getParameter("Id");
	 rs=st1.executeQuery("select tb.*,IFNULL((select tax_rate_percent from ip_tax_rates where tax_rate_id=tb.item_tax_rate_id ),0)tx,IFNULL((select tax_rate_name from ip_tax_rates where tax_rate_id=tb.item_tax_rate_id ),0)txn from ip_purchase_invoice_item tb  where invoice_id ="+id+"");
	while(rs.next())
	{
		
		tax=rs.getString("tx");
		taxname=rs.getString("txn");
		
		
	
	}
		Statement stmt1=con.createStatement();
	rd=stmt1.executeQuery("select DATE_FORMAT('"+sdate+"','%d/%m/%Y') dt");
	while(rd.next())
	{
		invdate=rd.getString("dt");
	}
	Statement stmt2=con.createStatement();
	rd=stmt2.executeQuery("select DATE_FORMAT('"+podate+"','%d/%m/%Y') dt");
	while(rd.next())
	{
		pdate=rd.getString("dt");
	}
	%>
	<%!	
	
	double taxsub;
   int str;
	double sub;
		ResultSet rd=null;
	String id=null;
	ResultSet rs=null;
	String sno=null;
	
	String sdate=null; 
	String pono=null;
	String total=null;
	String qno=null;
		String invdate=null;
			String podate=null;
	String pdate=null;
	String deptch=null;
	String paym=null;
	String notes=null;
	String pfc=null;
	String terms=null;
	
	String comp=null;
	String add1=null;
	String add2=null;
	String city=null;
	String zip=null;
	String phone=null;
	String email=null;
	String web=null;
	String gst=null;
	String bankname=null;
	String acno=null;
	String ifsc=null;
	
String pino=null;
	String branch=null;
	ResultSet rcom=null;
	String tax=null;
	String taxname=null;
	String taxable=null;
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<link href="css/Mystyle.css" rel="stylesheet">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<style type="text/css">
footer {
  font-size: 9px;
  width:210mm;
  text-align: left;
  /* border-top:1px solid black;  */
}

@page {
  size: A4;
  margin: 9mm 17mm 17mm 17mm;
}

@media print {
  footer {
    position: fixed;
    bottom: 0;
    /* border-top:1px solid black;  */
    width:210mm;
    text-align:left;
    
  }
   body {
    width: 210mm;
    height: 297mm;
    
    
  }
  </style>
</head>
<body>
<body>

<%
Statement stmt=con.createStatement();
ResultSet rg=stmt.executeQuery("select count(invoice_id)count from ip_purchase_invoice_item where invoice_id="+id+"");
while(rg.next()){
	str=Integer.parseInt( rg.getString("count"));
}
%>
<div style="background-color:white; margin:50px 0px 0px 20px; width:780px; " align="right"><%=copy %></div>
<div style=" width:210mm; height:295.2mm; border:1px solid black; padding:0px 5px 50px 0px; font-family:DejaVu Serif Condensed;">
<table style=" width:210mm;">
<thead><tr><td><div style=" background-color:#DED9D1; font-size:x-large; width:210mm; text-align:center; font-family:Times New Roman; "><b><%=comp %></b></div></td></tr>
   <tr>
<td>
   <div style=" width:210mm;font-size: medium; text-align:center; font-family:Times New Roman; "><b><u>Purchase Invoice</u></b></div>
   </td>
</tr>
<tr><td><table style="width:210mm; border-bottom:1px solid black; font-size:15px;" >
<tr>
<td>
<%
          Statement smaster=con.createStatement();
          ResultSet rdetails=smaster.executeQuery("select * from ip_users");
          while(rdetails.next())
          {
          %>
<td style="padding-left:40px; width:30%;" valign="top"><img alt="" src="<%=rdetails.getString("user_logo")%>"></td>
<%} %>
<td style=" width:70%; ">
<table style="width:100%"><tr>
<td  align="left"><b>Invoice No</b></td>
<td  align="left"><b>&nbsp:<%=pino%></b></td>
<td align="left" style="padding-left:10px;" >PO No</td>
<td  align="left"><b>&nbsp:<%=pono %></b></td>
</tr>
<tr>
<td  align="left"><b>Invoice date</b></td>
<td  align="left"><b>&nbsp:<%=invdate %></b></td>
<td align="left" style="padding-left:10px;">PO Date</td>
<td align="left">:<%=pdate %></td>

</tr>
<tr><td align="left">E-Way Bill No.</td>
<td  align="left">&nbsp:</td>
<td align="left" style="padding-left:10px;">Freight</td>
<td  align="left">&nbsp:</td>
</tr>
<tr>

	<td  align="left">Mode of payment</td>
<%Statement s=con.createStatement();
ResultSet r=s.executeQuery("select * from ip_payment_methods where payment_method_id="+paym+"");
while(r.next())
{
%>
<td  align="left">&nbsp:<%=r.getString("payment_method_name") %></td>
<%} %>
<td style="padding-left:10px;">Dispatch through</td>
<td align="left">&nbsp:<%=deptch %></td>

</tr>
<tr>
<td align="left">Shipped by</td>
<%
Statement stm=con.createStatement();
rs=stm.executeQuery("select * from ip_suppliers where supplier_id=(select supplier_id from ip_puchase_invoice where pinvoice_id="+id+") ");
while(rs.next())
{
%>
<td align="left">&nbsp: <%=rs.getString("supplier_name") %></td>
<%} %>
<td align="left" style="padding-left:10px;">Destination</td>
<%-- <%Statement sd=con.createStatement();
ResultSet rd=sd.executeQuery("select * from ip_suppliers where supplier_id=(select supplier_id from ip_puchase_invoice where pinvoice_id="+id+")");
while(rd.next())
{
	%> --%>
<td align="left">&nbsp:
	</td><%-- <%}%> --%>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<div><table style="width:210mm;"><tr><td   style=" width:34%;" valign="top">

 <span style="font-size:15px;">
		                
					<font style="font-family:Times New Roman;"> <b>CUSTOMER:(Invoice To)</b></font><br>
					 <font style="font-family:Times New Roman;"> <b><%=comp %></b></font><br>
					<%=add1 %><br>
                     <%=add2 %><%=city %>-<%=zip %><br>
					  Ph-No:+91 <%=phone %><br>
					  Email: <%=email %><br>
					  <%=web %><br>
					 State Code:29<br>
					  GSTIN :<%=gst %>
					 </span>
					 </td>
					<td  style=" width:30%;" valign="top">
					 <span style="font-size:15px;">
					<font style="font-family:Times New Roman;"><b>SHIPPING:(Dispatch To)</b></font><br>
					<font style="font-family:Times New Roman;"><b><%=comp %></b></font><br>
					 <%=notes %><br>
					 Ph-No:+91 <%=phone %><br>
					  Email: <%=email %><br>
					  <%=web %><br>
					 State Code:29<br>
					  GSTIN :<%=gst %>	
					
					 </span>
					 </td>
					 <td  style=" width:30%;" valign="top">
					 
					 <%
					 Statement ss=con.createStatement();
					 ResultSet rr=ss.executeQuery("select * from ip_suppliers where supplier_id=(select supplier_id from ip_puchase_invoice where pinvoice_id="+id+")") ;
					 while(rr.next())
					 {
					 %>
					 
<span style="font-size:15px;">
		                
					<font style="font-family:Times New Roman;"><b>SUPPLIER:</b></font><br>
					 <font style="font-family:Times New Roman;"><b><%=rr.getString("supplier_name") %></b><br></font>
					 <%=rr.getString("supplier_address_1") %>
                     <%=rr.getString("supplier_address_2") %><br>
                     <%=rr.getString("supplier_city") %><br>
                      <%=rr.getString("supplier_state") %><br>
					  Ph-No:<%=rr.getString("supplier_phone") %><br>
					  Email:<%=rr.getString("supplier_email") %><br>			  
				GSTIN:<%=rr.getString("supplier_vat_id") %>
					 </span>
					 <%} %>
					 </td>
</tr>
</table>
</div>
</td>

</tr>
   </thead>
   <tbody>
<tr><td>
<table class="pdftable" style="border-top:1px solid black;height:100px; font-size:13px; width:210mm;">
<thead>
<tr>
<th style="text-align:left">No.</th>
<th style="text-align:left">HSN</th>
<th style="text-align:left">Item Description</th>
<th style="text-align:left">Specifications</th>
<th style="text-align:right">Qty</th>
<th style="text-align:right">UOM</th>
<th style="text-align:right">Price</th>
  <th style="text-align:right">Amount</th> 
<!-- <th style="text-align:right">CGST</th>
<th style="text-align:right">SGST</th>
<th style="text-align:right">IGST</th> -->

</tr>
</thead>
<tr>
<%
for(int i=1;i<=str;i++){
	Statement si=con.createStatement();
	ResultSet ri=si.executeQuery("select * from ip_purchase_invoice_item where invoice_id ="+id+" and item_order="+i+"");
	while(ri.next())
	{
	 %>
<td><%=ri.getString("item_order")%></td>
<td><%=ri.getString("item_sku")%></td>
<td>
<%=ri.getString("item_name")%></td>
<td><%=ri.getString("item_description")%></td>
<td align="right"><%=ri.getString("item_qty")%></td>
<td align="right"><%=ri.getString("item_UOM")%></td>
<td align="right"><%=ri.getString("item_price")%></td>

 
<%Statement s5=con.createStatement();
ResultSet r5=s5.executeQuery("select ROUND((item_qty*item_price),2) amt from ip_purchase_invoice_item where invoice_id="+id+" and item_order="+i+"");
while(r5.next())
{
	%>

<td align="right">
<%=r5.getString("amt")%> 

</td> 

<%Statement s2=con.createStatement();
ResultSet r2=s2.executeQuery("select tb.*,(case when tax_rate_name='IGST' then 0 else tax_rate_percent end) as tax_rate from ip_tax_rates tb where tax_rate_id=(select item_tax_rate_id from ip_purchase_invoice_item where invoice_id="+id+"  and item_order="+i+")");
while(r2.next())
{
	%>
<%-- <td align="right">

	(<%=r2.getString("tax_rate") %>%)<br>
	<%
Double a=Double.parseDouble(r5.getString("amt"));
	int sum=(int) Math.round(a);
	Double t= Double.parseDouble(r2.getString("tax_rate"));
	
	
	
	%>
<%=sum*t/100 %>
</td> --%>
<%} %>

<%Statement s3=con.createStatement();
ResultSet r3=s3.executeQuery("select tb.*,(case when tax_rate_name='IGST' then 0 else tax_rate_percent end) as tax_rate from ip_tax_rates tb where tax_rate_id=(select item_tax_rate_id from ip_purchase_invoice_item where invoice_id="+id+"  and item_order="+i+")");
while(r3.next())
{
	%>
<%-- <td align="right">
	(<%=r3.getString("tax_rate")%>%)<br>
	<%
Double a=Double.parseDouble(r5.getString("amt"));
	int sum=(int) Math.round(a);
	Double t=Double.parseDouble(r3.getString("tax_rate"));
	
	%>
<%=sum*t/100 %>

</td> --%>
<%} %>
<%Statement s4=con.createStatement();
ResultSet r4=s4.executeQuery("select tb.*,(case when tax_rate_name='IGST' then tax_rate_percent else 0 end) as tax_rate from ip_tax_rates tb where tax_rate_id=(select item_tax_rate_id from ip_purchase_invoice_item where invoice_id="+id+"  and item_order="+i+")");
while(r4.next())
{
	/* sub=Double.parseDouble(ri.getString("item_subtotal")); */
	%>
<%-- <td align="right">

	(<%=r4.getString("tax_rate") %>%)<br>
	<%
Double a=Double.parseDouble(r5.getString("amt"));
	int sum=(int) Math.round(a);
	Double t=Double.parseDouble(r4.getString("tax_rate"));
	
	%>
<%=sum*t/100 %>

</td> --%>
<%} %>

<%} %>
<%-- <td align="right"><%=ri.getString("item_subtotal")%></td> --%>
<%} %>

</tr>
<%} %>
<tr style="font-family:Times New Roman;">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td><td></td>
<td align="right" ><b>TOTAL</b></td>
<%
Statement smt1=con.createStatement();
ResultSet rmt=smt1.executeQuery("SELECT sum(item_subtotal)insubtot,ROUND(sum(item_qty*item_price),2)as amttot,ROUND(sum(case when (select tax_rate_name from ip_tax_rates where tax_rate_id=tb.item_tax_rate_id)='IGST'   then ((item_qty*item_price)*(select tax_rate_percent from ip_tax_rates where tax_rate_id=tb.item_tax_rate_id))/100 else 0 end),2)as igst,ROUND(sum(case when (select tax_rate_name from ip_tax_rates where tax_rate_id=tb.item_tax_rate_id)='IGST'  then 0 else  ((item_qty*item_price)*(select tax_rate_percent from ip_tax_rates where tax_rate_id=tb.item_tax_rate_id))/100 end),2)as sgst FROM ip_purchase_invoice_item tb where invoice_id ="+id+"");
while(rmt.next())
{
%>
 <td align="right"> <b><%=rmt.getString("amttot") %></b></td> 


<%} %>
</tr>
</table>

</td></tr>

<tr><td>

 </td></tr>
 



</tbody>
   
   
</table>
 <footer>
<table style="width:211.5mm; border-top:1px solid black;border-bottom:1px solid black; font-size:15px;">
<tr>
<td align="right">Freight Charge:</td><td align="right" style="padding-right:5px;"><b><%=pfc%></b></td>
</tr>
 <tr>
<%Statement smt=con.createStatement();
ResultSet ra=smt.executeQuery("select sum(item_subtotal)sub from  ip_purchase_invoice_item where invoice_id ="+id+"");
while(ra.next())
{
	
	double a=(ra.getDouble("sub"));
	double bg=Double.parseDouble(pfc);
	 taxsub=a+bg;
	%>

<td align="right" style="width:50%;font-family:Times New Roman;"><b>Sub Total:</b></td><td style="width:50%; padding-right:5px;" align="right"><b><%=taxsub%></b>
<%} %>
</td>
</tr> 

<%
double taxamt=(taxsub)*(Double.parseDouble(tax))/100; 

System.out.print(taxable);
if(taxname.equals("IGST"))
{
%>
<tr><td align="right">IGST @<%=tax %>%:</td><td align="right" style="padding-right:5px;"><b><%=taxamt%></b></td></tr>
<%-- <tr><td align="right">SGST @<%=tax %>%:</td><td align="right" style="padding-right:5px;"><b><%=taxamt%></b></td></tr> --%>
<%}
else
{
	%>
	<tr><td align="right">CGST @<%=tax %>%:</td><td align="right" style="padding-right:5px;"><b><%=taxamt%></b></td></tr>
<tr><td align="right">SGST @<%=tax %>%:</td><td align="right" style="padding-right:5px;"><b><%=taxamt%></b></td></tr>
	<%
}

%>

<tr><td align="right" style="font-family:Times New Roman;"><b>Grand Total:</b></td><td align="right" style="padding-right:5px;"><b><%=total%></b></td>
</tr>
</table>
<table style="width:212mm; ">
<tr>
<%
String ones[]={"","One","Two","Three","Four","Five","Six","Seven","Eight","Nine","Ten","Eleven","Twelve","Thirteen","Fourteen","Fifteen","Sixteen","Seventeen","Eighteen","Nineteen"};
String tens[]={"","Ten","Twenty","Thirty","Fourty","Fifty","Sixty","Seventy","Eighty","Ninety"};
String hundreds[]={"","Hundred","Thousands","Lakhs","Crores"};
String a=total;
Double n=Double.parseDouble(a);
int number=(int) Math.round(n);
String soFar="";
int len=a.length();
int div=0;
if(len==9)
{
	div=number/100000;
	soFar=ones[div]+" Lakhs";
	number%=100000;
	if(number/1000 <20)
	{
		div=number/1000;
		soFar=soFar+" "+ ones[div]+" Thousand";
		number%=1000;
		if(number>100)
		{
		div=number/100;
		soFar=soFar +" "+ones[div]+ " Hundred ";
		number%=100;
		if(number>20)
		{
			div=number/10;
			soFar=soFar+" "+tens[div];
			number%=10;
			soFar=soFar+" "+ones[number];
		}
		else
		{
			
		
			soFar=soFar+" "+ones[number];
		}
		}
		else
		
		div=number/10;
		soFar=soFar +" "+tens[div]+" "+ ones[number%10];
		
	}else{
		
	div=number/10000;
	
	soFar=soFar+" "+tens[div];
	number%=10000;
	div=number/1000;
	soFar=soFar+" "+ ones[div]+ " Thousand";
	number%=1000;
	div=number/100;
	soFar=soFar +" "+ ones[div]+ " Hundred ";
	number%=100;
	//if(number==0)
	div=number/10;
	soFar=soFar +" "+ tens[div]+" "+ ones[number%10];
	
	
}
}
if(len==8)
{
	if(number/1000 <20)
	{
		div=number/1000;
		soFar=ones[div]+" Thousand";
		number%=1000;
		if(number>100)
		{
		div=number/100;
		soFar=soFar +" "+ones[div]+ " Hundred ";
		number%=100;
		if(number>20)
		{
			div=number/10;
			soFar=soFar+" "+tens[div];
			number%=10;
			soFar=soFar+" "+ones[number];
		}
		else
		{
			
		
			soFar=soFar+" "+ones[number];
		}
		}
		else{
		
		div=number/10;
		soFar=soFar +" "+ tens[div]+" "+ ones[number%10];
		}
	}
		
	
		else{
		
	div=number/10000;
	
	soFar=soFar+" "+tens[div];
	number%=10000;
	div=number/1000;
	soFar=soFar+" "+ ones[div]+ " Thousand";
	number%=1000;
	if(number==0)
	{
		soFar=soFar+" ";
	}
	else
	{
	if(number>100)
	{
		div=number/100;
	soFar=soFar +" "+ ones[div]+ " Hundred ";
	number%=100;
	//if(number==0)
	div=number/10;
	soFar=soFar +" "+ tens[div]+" "+ ones[number%10];
	}
	else{
		div=number/10;
	soFar=soFar +" "+ tens[div]+" "+ ones[number%10];
	}
	
}
}
}
String am="";
am=soFar + " Only";
if(len==7)
{
div=number/1000;
soFar=ones[div]+ " Thousand ";
number%=1000;
div=number/100;
soFar=soFar +" "+ ones[div]+ " Hundred ";
number%=100;
//if(number==0)
div=number/10;
soFar=soFar +" "+tens[div]+" "+ ones[number%10];
}
 am="";
am=soFar + " Only";
 if(len==6){

 if (number % 100 < 20){
    soFar = ones[number % 100];
    number /= 100;
}
    else {
        soFar = ones[number % 10];
        number /= 10;

        soFar = tens[number % 10] + soFar;
        number /= 10;
      }
 soFar=ones[number] + " Hundred and " + soFar;
}


	am=soFar + " Only";
	
	if(len==5)
	{
	div=number/10;
	if(div >1)
	{
	soFar=tens[div];
		number%=10;
	if(number==0)
		soFar=soFar + "Only" ;
	else
		soFar=soFar +" "+ ones[number];
	
	}
	else
		soFar=ones[number];
	}
	if(len==4)
		soFar=ones[number];
//am= ones[number] + " hundred and" + soFar;
am=soFar +" only";

%>
 

<td style="padding-left:10px;  border-bottom:1px solid black; font-size:15px; font-family:Times New Roman;"><b>Amount in words:</b><%=am %></td>
</tr>
</table>
<p><b><font size="2" >Declaration</font></b></p>
            <span style="font-size:15px;">1.Once goods hand over to transport will not be taken back.<br>
2.Responsibility ceases once hand over to Transport /
Vehicle.<br>
3.Delay in payments would attract Annual Interest of 18%.<br>
4.All disputes are subjected to Bangalore jurisdiction.<br>
5.We declare that this invoice shows the actual price of the
goods described and that all particulars are true and
correct.
                  
              
            </span><br>
            
          
<%--    <span style="padding-left:10px;font-size:15px;">Bank Details:&nbsp;  Canara Bank    :&nbsp; A/C No:&nbsp; 2437261000100 &nbsp;;&emsp;&nbsp;&nbsp;&nbsp; IFSCode:&nbsp;&nbsp;CNRB0002437    <%=branch %></span>
 --%> <br>
  <hr>
         <span style="padding-left:10px;font-size:15px;">Bank Details:<%=bankname %>: A/C NO:<%=acno %>; IFSC CODE:<%=ifsc %>; BRANCH: <%=branch %></span>
 <br>
           <table style="width:211.5mm;font-size:15px;border-top:1px solid black; height:65px;">
             <tr>
             <td Style="padding-left:10px; width:40% " valign="top">
           <span>Purchase Officer:</span>
            </td>
            <td Style="padding-left:10px;width:30% " valign="top">
            Prepared by:
            </td>
            <td style="width:30%; font-family:Times New Roman; " align="right" valign="top">
           <span><b>Foundry Demo Application</b></span>           
            </td>            
            </tr>
            <tr>
            <td>
            </td>
            <td></td>
            <td style="padding-right:10px;width:30% ;font-family:Times New Roman;" align="right" valign="bottom"><b>Authorized Signatory</b></td>
            </tr>
             </table>
This is a computer generated Invoice</footer>
</div>

</body>
</html>