2014年2月26日 星期三

PDFCreateAndView.java 20140228

// e.g. http://192.168.10.8:8080/erp/PDFCreateAndView?db=erp&create=po&file=po1234&recordid=po14001
import java.io.File;
import java.io.FileInputStream;
import java.io.PrintWriter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;
import java.sql.SQLException;import java.sql.Statement;

public class PDFCreateAndView extends javax.servlet.http.HttpServlet {
static String db = "";
static poGenPDF poGenPDF = new poGenPDF();
// The MIME type associated with the kind of media to be served.
// For more info see
// http://www.utoronto.ca/webdocs/HTMLdocs/Book/Book-3ed/appb/mimetype.html
final static String CONTENT_TYPE = "application/pdf";
public PDFCreateAndView() {}
public void doGet(HttpServletRequest request, HttpServletResponse response) {
processRequest(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response) {
doGet(request, response);
}
public void processRequest(HttpServletRequest request,
HttpServletResponse response) {
response.setContentType(this.CONTENT_TYPE);
String recordID=request.getParameter("recordid");
try {

String dbID="root";
String dbPassword="root";
String paymentTerm=null;
String poNo=null;
String poSourceRef=null;
String poVer=null;
String poSupplier=null;
String poDate=null;
String poPaymentTerms=null;
String poContactName=null;
String shipToCompany=null;
String shipToContactName=null;
String shipToAddress=null;
String shipToTel=null;
String result="";
String supplierRef=null;
String poAddress=null;
String poTel=null;
ResultSet rs = null;
ResultSet rsB = null;
Connection con = null;
Statement stmt = null;

Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost/"+"BR201312111529"+"?useUnicode=true&characterEncoding=UTF8",dbID, dbPassword);
stmt = con.createStatement();
//SELECT SUPPLIER,VENDOR.NAME FROM PURCHASE_HEADER,VENDOR WHERE SUPPLIER=VENDOR.RECORDID;

String documentHeaderSqlString="select A.PURCHASE_ORDER,A.version,A.OUR_REF_NO,A.date,A.YOUR_REF_NO,A.PAYMENT_TERMS ,VENDOR.NAME,A.COMPANY_NAME,A.CONTACT_NAME,A.SHIP_TO_CONTACT, A.CONTACT_ADDRESS,A.SHIP_TO_ADDRESS ,A.CONTACT_TEL,A.SHIP_TO_TEL from PURCHASE_HEADER A,VENDOR where A.SUPPLIER=VENDOR.RECORDID and A.recordID="+recordID+";";
rs = stmt.executeQuery(documentHeaderSqlString);
if (rs.next()){
poNo=rs.getString(1);
poVer=rs.getString(2);
poSourceRef=rs.getString(3);
poDate=rs.getString(4);
supplierRef=rs.getString(5);
paymentTerm=rs.getString(6);
poSupplier=rs.getString(7);
shipToCompany=rs.getString(8);
poContactName=rs.getString(9);
shipToContactName=rs.getString(10);
poAddress=rs.getString(11);
shipToAddress=rs.getString(12);
poTel=rs.getString(13);
shipToTel=rs.getString(14);
}

/*
String documentLineSqlString="SELECT ITEM, MODEL , DESCRIPTION ,QTY,UNIT, PRICE,QTY*PRICE,PARENT_RECORDID FROM PO WHERE PARENT_RECORDID="+recordID+";";
rsB = stmt.executeQuery(documentLineSqlString);
*/






HttpSession session = request.getSession();
if (session.isNew() || session.getAttribute("Login") == null) {
response.sendRedirect("index.jsp");
}
db=request.getParameter("db");
String create=request.getParameter("create");
String fileName=request.getParameter("file");

if (create.equals("po")) {
poGenPDF.db=db;
poGenPDF.fileName=fileName;
poGenPDF.recordID=recordID;
poGenPDF.run();
}
File file1 = new File("/erp/"+db+"/"+fileName+".pdf");
FileInputStream fs = new FileInputStream(file1);
byte[] byteArray = new byte[(int) file1.length()];
fs.read(byteArray);
fs.close();
response.getOutputStream().write(byteArray);
} catch (Exception e) {
this.outErrorMessage(response,
"PDFCreateAndView.java Some exception occurred: " + e.getMessage());
return;
}
}
private void outErrorMessage(HttpServletResponse response, String errorMsg) {
response.setContentType("text/plain");
try {
PrintWriter out = response.getWriter();
out.println(errorMsg);
} catch (Exception e) {
}
}
}

沒有留言:

張貼留言