sv_regfp_org_185.jsp 5.38 KB
Newer Older
Thitichaipun Wutthisak committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160
<%@page contentType="text/html;  charset=UTF-8;" pageEncoding="UTF-8"  %>

<%@page import="com.csc.library.utilities.*,com.csc.library.database.DataSet,java.util.*,com.csc.library.utilities.ThaiUtilities" %>
<%@page import="com.csc.library.database.CscConnection" %>
<%@page import="com.sun.org.apache.xerces.internal.impl.dv.util.Base64" %>
<%@page import="java.awt.image.BufferedImage"  %>
<%@page import="java.io.ByteArrayInputStream" %>
<%@page import="java.io.ByteArrayOutputStream" %>
<%@page import="java.io.File" %>
<%@page import="java.io.IOException" %>
<%@page import="java.io.InputStream" %>
<%@page import="javax.imageio.ImageIO" %>
<%@page import="org.apache.commons.fileupload.servlet.ServletFileUpload" %>
<%@page import="org.apache.commons.fileupload.FileItemFactory" %>
<%@page import="org.apache.commons.fileupload.disk.DiskFileItemFactory" %>
<%@page import="org.apache.commons.fileupload.FileItem" %>
<%@page import="com.csc.library.fputility.MsgPackage" %>
<%@page import="com.csc.library.session.*" %>
<%@page import="com.csc.library.fpprocess.*" %>
<%@page import="com.google.gson.Gson" %>
<%@page import="com.google.gson.GsonBuilder" %>

<%
		System.out.print("***!! Save finger print page has been called from client !!***");

		boolean isMultipart = ServletFileUpload.isMultipartContent(request);
		MsgPackage recdata = new MsgPackage();
		//Gson gson = new Gson();
		//Gson gs = new GsonBuilder().serializeNulls().create();
		long curtime = System.currentTimeMillis();

		if(isMultipart){
			System.out.print("!! Multipart data detected !!");
			// Create a factory for disk-based file items
			FileItemFactory factory = new DiskFileItemFactory();

			// Create a new file upload handler
			ServletFileUpload upload = new ServletFileUpload(factory);

			// Parse the request
			List /* FileItem */ items = upload.parseRequest(request);

			// Process the uploaded items
			Iterator iter = items.iterator();
			HashMap dataitem = new HashMap();
			while (iter.hasNext()) {
				FileItem item = (FileItem) iter.next();

				if (item.isFormField()) {
					String name = item.getFieldName();
					String value = item.getString();
					dataitem.put(name, value);
					System.out.print("!! Field name : "+ name + " value " + value);
				} else {
					try {
						System.out.print("!! File upload detected !!");
						dataitem.put("attchfile", item);

						/*
						String fieldName = item.getFieldName();
						String fileName = item.getName();
						String contentType = item.getContentType();
						
						boolean isInMemory = item.isInMemory();
						long sizeInBytes = item.getSize();

						String path = "D:/EnterprisePT/myHRAppServer/webapps/CSC/hrAppWeb.war/UPLOAD/REGISFP/PICTURES/" + recdata.getCompany() + "/" ;
						File uploadedFile = new File(path + curtime + ".dat");

						System.out.print("!! Absolute path -> " + uploadedFile.getAbsolutePath());
						item.write(uploadedFile);*/
					}catch(Exception e){
						System.out.print(e.getMessage());
					}
				}
			}

			/* save detail */
			if(dataitem.containsKey("data")){
				boolean uploadcomplete = false ;
				/* upload file and save into folder */
				if(dataitem.containsKey("attchfile")){
					
					try {
						FileItem item = (FileItem) dataitem.get("attchfile");

						String fieldName = item.getFieldName();
						String fileName = item.getName();
						String contentType = item.getContentType();
						
						boolean isInMemory = item.isInMemory();
						long sizeInBytes = item.getSize();

						String comp = (recdata.getCompany().equals(""))?"100":recdata.getCompany() ;
						//String path = "D:/EnterprisePT/Programmer/myHRAppServer/webapps/SYS/hrAppWeb.war/UPLOAD/REGISFP/PICTURES/" + comp + "/" ;
						String path = "D:/EnterprisePT/myHrAppServer/webapps/CSC/hrAppWeb.war/UPLOAD/REGISFP/PICTURES/" + comp + "/";

						System.out.print(" !! Save fp file -- " + path + curtime + ".dat");
						/* create path if not exist */
						File file = new File(path);
						if (!file.exists()) {
							if (file.mkdir()) {
								System.out.println("Directory is created!");

								File uploadedFile = new File(path + curtime + ".dat");
								item.write(uploadedFile);
							} else {
								System.out.println("Failed to create directory!");
							}
						}else{
							File uploadedFile = new File(path + curtime + ".dat");
							item.write(uploadedFile);
							
							uploadcomplete = true ;
						}
					}catch(Exception e){
						System.out.print(e.getMessage());
					}
				}

				try {
					System.out.print("show --> " + (String) dataitem.get("data"));
					MsgPackage msgpack = new MsgPackage();
					recdata = msgpack.convStrToMsgPackage((String) dataitem.get("data"));
					recdata.setFpfilename(curtime + ".dat");

					/*set default (test used)*/
					//recdata.setDevNo("001");
					//recdata.setPassCode("ZBCDFGHJKIUYT");
					//recdata.setCompanyid("100");
					//recdata.setSerialNo("1236547890");
					/*******/

					if(uploadcomplete){
						SV_RegisFingerprint regf = new SV_RegisFingerprint(recdata);
						regf.run();
						recdata.setMessage("Upload fp template complete");
						recdata.setStatusComplete(); /* error status */
					}else{ /* upload file failed */
						recdata.setMessage("Upload failed");
						recdata.setStatusError(); /* error status */
					}
				}catch(Exception e){
					System.out.print(e.getMessage());
				}

				
			}
		}else{
			System.out.print("!! package received is not in multipart format !!");
		}
%>

<%=recdata.getPackage()%>