<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%@ page contentType="text/html; charset=UTF-8"%>
<%@ page import="com.csc.library.entry.*,com.csc.library.system.*,com.csc.library.session.*,com.csc.library.utilities.*,java.text.DecimalFormat"%>
<%@ page import="java.util.*,java.io.*,java.sql.*"%>
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page import="java.util.Locale" %>
<%@ page import="java.util.Date" %>
<%@ page import="com.csc.library.components.*" %>
<%@ page import="com.csc.library.report.ReportUDF" %>
<%@ page import="com.csc.api.recruit.*" %>
<%@ page import="com.csc.library.databean.Simmcandidatewithgson" %>
<%@ page import="com.csc.library.databean.Simmappointmentwithgson" %>
<%@ page import="com.csc.library.databean.Simmapplicanthisotherwithgson" %>
<%@ page import="com.csc.library.utilities.gsonmapping.*" %>
<%
	response.setHeader("Cache-Control","must-revalidate");
	response.setContentType("application/vnd.ms-excel; UTF-8");
	response.setHeader("Content-Disposition", "inline; filename=" + "export.xls");

	CheckNull chk = new CheckNull();
	CscCalendar c = new CscCalendar();
	ReportUDF udf = new ReportUDF();
	UProfile up = null;

	if (session !=null){
		up = (UProfile)session.getAttribute("userprofile");
	}

	String lang = up.get("lang");
	String filter = chk.chkNullString(request.getParameter("__filter"));
	String cmd = chk.chkNullString(request.getParameter("__cmd"));

	DbRecord dbrec = new InitialRecord(up).getDbRecord("memployee");
	dbrec.setColumn("*");
%>

<html>
	<head>
		<title></title>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<!-- <link href="../CSS/TISCO.css" rel="stylesheet" type="text/css"> -->
		<script language="JavaScript" src="../JS/SCREEN.js"></script>
		<script language="javascript">setLang('<%=up.get("lang")%>');</script>

		<style>
			img[height="20"] {
				padding: 0px;
			}
			.center{
				text-align: center;
			}
			.wd-40{
				width:40%;
			}
		</style>
	</head>
	<%
		String helpReturn="";
		if(request.getParameter("__helpReturn")!=null){
		  helpReturn=request.getParameter("__helpReturn");
		}
		String fieldSearch="";
		if(request.getParameter("__fieldSearch")!=null){
		  fieldSearch=request.getParameter("__fieldSearch");
		}
	%>
	<body leftmargin="0" topmargin="0">
		<form name="cscform" method="post" action="RRC027.jsp">
			<!----------BEGIN CSC INITIAL ZONE ------------------------>
			<%/*=screen.InitialVariable()*/%>
			<!----------END CSC INITIAL ZONE -------------------------->
			<input type="hidden" name="__cmd" value="">
			<input type="hidden" name="__screen" value="RRC027">
			<input type="hidden" name="__help" value="">
			<input type="hidden" name="__goPage" value="">
			<input type="hidden" name="__language" value="<%=up.get("lang")%>">
			<input type="hidden" name="__orderBy" value="<%=request.getParameter("__orderBy")%>">
			<input type="hidden" name="__helpReturn" value="<%=helpReturn%>">
			<input type="hidden" name="__fieldSearch" value="<%=fieldSearch%>">
			<input type="hidden" name="__helpName" value="<%=request.getParameter("__helpName")%>">
			<input type="hidden" name="__pageCall" value="<%=request.getParameter("__screen")%>">
			<input type="hidden" name="__fixCon" value="<%=request.getParameter("__fixCon")%>">
			<input type="hidden" name="__export" value="">
			<input type="hidden" name="__filter" value="<%=filter%>">
			<input type="hidden" name="__calendar" value="">
			<script language="javascript">getInputFormatDate()</script>
			<br>
			<table class="maxsize table table-bordered " border="1" cellpadding="0" cellspacing="1" cols=10 >
				</tr>
					<td class="row1 center" style="text-align:center" colspan='11'><%=up.get("lang").equals("tha")?"รายงานสรุปผลการสมัครงาน":"Job Application Results Conclusion"%></td>
				</tr>
				<tr>
					<td class="row1 center"style="text-align:center"><%=up.get("lang").equals("tha")?"ชื่อตำแหน่งที่ลงประกาศ":"Position Name"%></td>
					<td class="row1 center"style="text-align:center"><%=up.get("lang").equals("tha")?"วันที่สมัคร":"Applied Date"%></td>
					<td class="row1 center"style="text-align:center"><%=up.get("lang").equals("tha")?"ชื่อผู้สมัคร":"Applicant Name"%></td>
					<td class="row1 center"style="text-align:center"><%=up.get("lang").equals("tha")?"แหล่งที่มา":"Channel"%></td>
					<td class="row1 center"style="text-align:center"><%=up.get("lang").equals("tha")?"สถานะ":"Status"%></td>
					<td class="row1 center"style="text-align:center"><%=up.get("lang").equals("tha")?"วันที่นัดสัมภาษณ์":"Appointment Date"%></td>
					<td class="row1 center"style="text-align:center"><%=up.get("lang").equals("tha")?"เวลา":"Time"%></td>
					<td class="row1 center"style="text-align:center"><%=up.get("lang").equals("tha")?"ชื่อผู้สัมภาษณ์":"Interviewer Name"%></td>
					<td class="row1 center"style="text-align:center"><%=up.get("lang").equals("tha")?"คะแนนสอบ":"Test Score"%></td>
					<td class="row1 center"style="text-align:center"><%=up.get("lang").equals("tha")?"หมายเหตุ":"Remark"%></td>
					<td class="row1 center"style="text-align:center"><%=up.get("lang").equals("tha")?"วันที่เริ่มงาน":"Employed Date"%></td>
				</tr>
				<%
					// >>>>>>>>>>>>  Current Zone  <<<<<<<<<<<<
					String committees = "";
					String isappointmentTH = "";
					String isappointmentEN = "";
					String jobTH = "";
					String jobEN = "";
					String dateinterview = "";
					String timestart = "";
					String timeend = "";
					String dateavailable = "";
					String emp_pass_name_list = "";
					String startDate = "";
					String ExamData = "0";
					String Fullname = "";
					String FullnameHis = "";
					int Point = 0;
					DbInquiry inqcan = new InitialInquiry(up).getDbInquiry("Simmcandidatewithgson");
					DbInquiry inqpre = new InitialInquiry(up).getDbInquiry("mprefix");
					DbInquiry inqpoint = new InitialInquiry(up).getDbInquiry("Simmappointmentwithgson");
					DbInquiry inqappointment = new InitialInquiry(up).getDbInquiry("mappointment");//get date and time
					DbInquiry inqrequest = new InitialInquiry(up).getDbInquiry("mrequest");
					DbInquiry inqjob = new InitialInquiry(up).getDbInquiry("mjobcode");
					DbInquiry inqsourcejob = new InitialInquiry(up).getDbInquiry("msourcejob");
					DbInquiry inqcom = new InitialInquiry(up).getDbInquiry("mcommittee");
					DbInquiry inqemp = new InitialInquiry(up).getDbInquiry("memployee");
					DbInquiry inqstat = new InitialInquiry(up).getDbInquiry("mstatus");
					DbInquiry inqapp_his = new InitialInquiry(up).getDbInquiry("mapplicant_his");
					inqcan.setColumn("*");

					inqcom.putChild(inqemp);
					inqcan.putChild(inqjob);
					inqcan.putChild(inqappointment);
					inqcan.putChild(inqrequest);
					inqcan.putChild(inqsourcejob);
					inqcan.putChild(inqpoint);
					inqcan.putChild(inqstat);

					inqcan.setFilter(filter);
					inqcan.refresh();

					while(inqcan.next()){
						committees = "";
						ExamData = "";
						Simmcandidatewithgson simmcandidatewithgson = (Simmcandidatewithgson) inqcan.getCurrentDbRecord();
						Simmappointmentwithgson simmappointmentwithgson = (Simmappointmentwithgson) inqpoint.getCurrentDbRecord();

						inqpre.setFilter("prefixid = '"+simmcandidatewithgson.mcandidatePersonal.prefixid+"'");
						inqpre.refresh();
						inqpre.next();

						inqsourcejob.setFilter("sourcejobid = '"+simmcandidatewithgson.mcandidateOther.sourcejob+"'");
						inqsourcejob.refresh();
						inqsourcejob.next();
 
						for (McandidateJobrouter.JobRouter jobrouter : simmcandidatewithgson.mcandidateJobrouter.jobrouter) {    
							if(jobrouter.question != null){
								for (McandidateJobrouter.JobRouter.Question question : jobrouter.question){		
									if(question.ansgroup.value != null ){
										ExamData += question.ansgroup.value;
										Point = Integer.valueOf(chk.chkNullString(ExamData,"0"));
									}
									if(question.ansgroup.choice != null){
										for (McandidateJobrouter.JobRouter.Question.AnsGroup.Choice choice : question.ansgroup.choice){												
										}  
									}											
								}
							}				
						}
						if(simmappointmentwithgson.mappointmentdetail != null){
							dateinterview = c.setCscCalendar(simmappointmentwithgson.mappointmentdetail.date).getDDMMYYYY();
							timestart = simmappointmentwithgson.mappointmentdetail.time.start;
							timeend = simmappointmentwithgson.mappointmentdetail.time.end;
							isappointmentTH = "มีการนัดหมายแล้ว";
							isappointmentEN = "Have an appointment";
						}else{
							dateinterview = "";
							timestart = "";
							timeend = "";
							isappointmentTH = "ยังไม่มีการนัดหมาย";
							isappointmentEN = "No appointments";
						}
						if(simmcandidatewithgson.mcandidatePersonal != null){
							dateavailable = c.setCscCalendar((simmcandidatewithgson.mcandidatePersonal.dateavailable).substring(0,10)).getDDMMYYYY();
						}else{
							dateavailable = "";
						}

						inqcom.setFilter("requestid = '"+inqpoint.getString("requestid")+"'");
						inqcom.refresh();
						while(inqcom.next()){
							if(committees.equals("")){
								committees = inqcom.getString("MEMPLOYEE","fullname");
							}else{
								committees += ", "+inqcom.getString("MEMPLOYEE","fullname");
							
							}
						}
						while(inqapp_his.next()){
							inqemp.setFilter("employeeid = '"+inqapp_his.getString("employeeid")+"'");
							inqemp.refresh();
							while(inqemp.next()){
								if(emp_pass_name_list.equals("")){
									emp_pass_name_list = inqemp.getString("fullname");
									startDate = c.setCscCalendar(inqemp.getString("startdate")).getDDMMYYYY();
								}else{
									emp_pass_name_list += ", "+inqemp.getString("fullname");
									startDate += ", "+c.setCscCalendar(inqemp.getString("startdate")).getDDMMYYYY();
								}
							}
						}
						if(up.get("lang").equals("tha")){
							Fullname = inqpre.getString("tdesc")+ simmcandidatewithgson.mcandidatePersonal.fname.tha+" "+simmcandidatewithgson.mcandidatePersonal.lname.tha;
						}else{
							Fullname = inqpre.getString("edesc")+ simmcandidatewithgson.mcandidatePersonal.fname.eng+" "+simmcandidatewithgson.mcandidatePersonal.lname.eng;
						}
					%>
					<tr>
						<td class='center'style="text-align:center"><%=up.get("lang").equals("tha")?inqcan.getString("mjobcode","tdesc"):inqcan.getString("mjobcode","edesc")%></td>	
						<td class='center'style="text-align:center"><%=c.setCscCalendar(inqcan.getString("APPLICANTDATE")).getDDMMYYYY()%></td> 
						<td class='center'style="text-align:center"><%=Fullname%></td>
						<td class='center'style="text-align:center"><%=up.get("lang").equals("tha")?inqsourcejob.getString("msourcejob","tdesc"):inqsourcejob.getString("msourcejob","edesc")%></td>
						<td class='center'style="text-align:center"><%=up.get("lang").equals("tha")?inqcan.getString("mstatus","tdesc"):inqcan.getString("mstatus","edesc")%></td> 
						<td class='center'style="text-align:center"><%=dateinterview%></td>
						<td class='center'style="text-align:center"><%=timestart%> - <%=timeend%></td> 
						<td class='center'style="text-align:center"><%=committees%></td>
						<td class='center'style="text-align:center"><%=Point%></td>
						<td class='center'style="text-align:center"><%=inqcan.getString("remark")%></td> 	
						<td class='center'style="text-align:center"><%=startDate%></td> 	
					</tr>
					<%
						}
						// >>>>>>>>>>>>  History Zone  <<<<<<<<<<<<

						DbInquiry inqapphis = new InitialInquiry(up).getDbInquiry("Simmapplicanthisotherwithgson");
						DbInquiry inqemp2 = new InitialInquiry(up).getDbInquiry("memployee");

						inqemp2.setColumn("*");
						inqapphis.putChild(inqjob);
						inqapphis.putChild(inqpoint);
						inqapphis.putChild(inqemp2);
						inqapphis.putChild(inqstat);
						inqcom.putChild(inqemp);
						inqapphis.setColumn("*");
						inqapphis.setFilter(filter);
						inqapphis.refresh();
						while(inqapphis.next()){
							Simmapplicanthisotherwithgson simmapplicanthisotherwithgson = (Simmapplicanthisotherwithgson) inqapphis.getCurrentDbRecord();
							Simmappointmentwithgson simmappointmentwithgson = (Simmappointmentwithgson) inqpoint.getCurrentDbRecord();
							committees ="";
							for (MapplicanthisJobrouter.JobRouter jobrouter : simmapplicanthisotherwithgson.mapplicanthisJobrouter.jobrouter) {    
								if(jobrouter.question != null){
									for (MapplicanthisJobrouter.JobRouter.Question question : jobrouter.question){
										if(question.ansgroup.value != null ){
											ExamData = chk.chkNullString(question.ansgroup.value,"0");
											Point = Integer.valueOf(ExamData);
										}
										if(question.ansgroup.choice != null){
											for (MapplicanthisJobrouter.JobRouter.Question.AnsGroup.Choice choice : question.ansgroup.choice){	
											}  
										}
									}
								}
							}
							inqpre.setFilter("prefixid = '"+simmapplicanthisotherwithgson.mapplicanthisPersonal.prefixid+"'");
							inqpre.refresh();
							inqpre.next();

							inqsourcejob.setFilter("sourcejobid = '"+simmapplicanthisotherwithgson.mapplicanthisother.sourcejob+"'");
							inqsourcejob.refresh();
							inqsourcejob.next();

							if(simmappointmentwithgson.mappointmentdetail != null){
								dateinterview = c.setCscCalendar(simmappointmentwithgson.mappointmentdetail.date).getDDMMYYYY();
								isappointmentTH = "มีการนัดหมายแล้ว";
								isappointmentEN = "Have an appointment";
							}else{
								dateinterview = "";
								isappointmentTH = "ยังไม่มีการนัดหมาย";
								isappointmentEN = "No appointments";
							}

							inqcom.setFilter("requestid = '"+inqpoint.getString("requestid")+"'");
							inqcom.refresh();
							while(inqcom.next()){
								if(committees.equals("")){
									committees = inqcom.getString("MEMPLOYEE","fullname");
								}else{
									committees += ", "+inqcom.getString("MEMPLOYEE","fullname");
								}
							}
							if(inqapphis.isFirst()){
								%>
							<%-- <tr>
								<td colspan='11'>ประวัติ</td>
							</tr> --%>
							<%								
								}
								if(up.get("lang").equals("tha")){
									FullnameHis = inqpre.getString("tdesc")+ simmapplicanthisotherwithgson.mapplicanthisPersonal.fname.tha+" "+simmapplicanthisotherwithgson.mapplicanthisPersonal.lname.tha;
								}else{
									FullnameHis = inqpre.getString("edesc")+ simmapplicanthisotherwithgson.mapplicanthisPersonal.fname.eng+" "+simmapplicanthisotherwithgson.mapplicanthisPersonal.lname.eng;
								}
							%>
							<%-- <tr>
								<td class='center'><%=inqapphis.getString("mjobcode","tdesc")%></td>
								<td class='center'><%=c.setCscCalendar(inqapphis.getString("APPLICANTDATE")).getDDMMYYYY()%></td>
								<td class='center'><%=FullnameHis%></td>
								<td class='center'><%=up.get("lang").equals("tha")?inqsourcejob.getString("tdesc"):inqsourcejob.getString("edesc")%></td>
								<td class='center'><%=up.get("lang").equals("tha")?inqcan.getString("mstatus","tdesc"):inqcan.getString("mstatus","edesc")%></td> 
								<td class='center'><%=dateinterview%></td>
								<td class='center'><%=timestart%> - <%=timeend%></td> 		
								<td class='center'><%=committees%></td>
								<td class='center'><%=Point%></td>
								<td class='center'><%=inqapphis.getString("employeeid").equals("0")?inqapphis.getString("remark"):"ยืนยัน"%></td> 	
								<td class='center'><%=inqapphis.getString("employeeid").equals("0")?"":c.setCscCalendar(inqemp2.getString("startdate")).getDDMMYYYY()%></td>
							</tr> --%>
						<%
							}
						%>
				</table>
		</form>
	</body>
</html>