<%@page contentType="text/html; charset=UTF-8;" pageEncoding="UTF-8" %> <%@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="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.session.*" %> <%@page import="com.csc.library.utilities.*,com.csc.library.database.DataSet,java.util.*" %> <%@page import="com.csc.library.database.CscConnection" %> <%@page import="com.csc.library.fpprocess.*" %> <%@page import="com.csc.library.fputility.*" %> <%@page import="com.google.gson.Gson" %> <%@page import="com.google.gson.GsonBuilder" %> <% MsgPackage rtnmsg = new MsgPackage(); MsgPackage mypck = new MsgPackage(); try { System.out.print("/**************************************/"); System.out.print("prepare time attendance request page has been called from client"); boolean isMultipart = ServletFileUpload.isMultipartContent(request); 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(); long curtime = System.currentTimeMillis(); 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 { System.out.print("!! File upload detected !!"); } } /* send receive msg to servr */ if(dataitem.containsKey("data")){ String rawtimedata = (String) dataitem.get("data"); mypck = rtnmsg.convStrToMsgPackage(rawtimedata); /* use mypck to save into db */ SV_SaveTimeAttReq savereq = new SV_SaveTimeAttReq(mypck); savereq.run(); System.out.print("---save time att req time att. return data ---"); System.out.print("encrypted --> " + mypck.getPackage()); } }else{ String rawtimedata = "{\"devno\":\"\",\"passcode\":\"\",\"companyid\":\"100\",\"comcode\":\"\",\"serialno\":\"\",\"authtype\":\"\",\"install\":false,\"logserv1\":\"\",\"logserv2\":\"\",\"datserv\":\"\",\"dev_loc\":\"\",\"dev_long\":\"\",\"dev_lat\":\"\",\"authen\":false,\"fpid\":0,\"empid\":\"0078\",\"fpfilename\":\"\",\"servClock\":\"\",\"tasklist\":[],\"emplist\":[],\"timelist\":[],\"accinfolist\":[],\"empfp\":[],\"lang\":\"\",\"msg\":\"\",\"condition\":\"\",\"status\":\"0\",\"fptp\":null,\"taskcond\":null,\"chksum\":7832,\"chksumfp\":0,\"isValidPackage\":true,\"reqTimeAttdata\":{\"start_date\":\"\",\"end_date\":\"\",\"arrTimeAtt\":[{\"swipedate\":\"06-03-2014\",\"swipetime\":\"17.00\",\"swipetype\":\"1\",\"reasonid\":\"\",\"reason_desc\":\"\"},{\"swipedate\":\"14-03-2014\",\"swipetime\":\"17.00\",\"swipetype\":\"1\",\"reasonid\":\"\",\"reason_desc\":\"\"},{\"swipedate\":\"15-03-2014\",\"swipetime\":\"08.00\",\"swipetype\":\"0\",\"reasonid\":\"\",\"reason_desc\":\"\"},{\"swipedate\":\"15-03-2014\",\"swipetime\":\"16.00\",\"swipetype\":\"1\",\"reasonid\":\"\",\"reason_desc\":\"\"}],\"arrReason\":[{\"reasonid\":\"001\",\"reason_desc\":\"ลืมบันทึกเวลา\"},{\"reasonid\":\"002\",\"reason_desc\":\"ลืมบัตรพนักงาน\"},{\"reasonid\":\"003\",\"reason_desc\":\"กิจกรรมบริษัท\"},{\"reasonid\":\"004\",\"reason_desc\":\"เข้างานใหม่(ยังไม่มีบัตร)\"},{\"reasonid\":\"005\",\"reason_desc\":\"อบรมนอกสถานที่\"},{\"reasonid\":\"006\",\"reason_desc\":\"ปฏิบัติงานนอกสถานที่\"},{\"reasonid\":\"007\",\"reason_desc\":\"บัตรหาย/ชำรุด\"},{\"reasonid\":\"008\",\"reason_desc\":\"ไม่มีเครื่องบันทึกเวลา (เฉพาะพนักงานบางซื่อ)\"},{\"reasonid\":\"009\",\"reason_desc\":\"รถบริษัทมาสาย\"}],\"sendto_id\":\"1020\",\"sendto_name\":\"Mr. PRACHYA Brother Bands\",\"employeeid\":\"0078\",\"status\":false,\"msg\":\"\"}}"; mypck = rtnmsg.convStrToMsgPackage(rawtimedata); /* use mypck to save into db */ SV_SaveTimeAttReq savereq = new SV_SaveTimeAttReq(mypck); savereq.run(); } } catch(Exception e){ e.printStackTrace(); } out.print(mypck.getPackage()); %>