<%@page contentType="text/html; charset=UTF-8" language="java" %>
<%@page import="com.csc.library.entry.HelpEntry,com.csc.library.system.*,com.csc.library.utilities.*,java.util.*"%>
<%@page import="com.csc.library.entry.*,com.csc.library.database.*,com.csc.library.session.*"  %>
<%@page import="com.csc.library.formula.FormulaString,java.text.DecimalFormat"  %>
<% request.setCharacterEncoding("UTF-8"); %>
<jsp:useBean id="EMV" class="com.csc.library.system.Task" scope="page" />
<jsp:setProperty name="EMV" property="appname" value="empview" />
<%
	EMV.setChannel(request, response);	
	
	ThaiUtilities thaicode = new ThaiUtilities();
	CheckNull chk = new CheckNull();
	String groupID = thaicode.ASCII2Unicode(chk.chkNullString(request.getParameter("__subgroupid")));
	String startDate = thaicode.ASCII2Unicode(chk.chkNullString(request.getParameter("date_start")));
	String endDate = thaicode.ASCII2Unicode(chk.chkNullString(request.getParameter("date_end")));
	
	DbInquiry inqChild = null;
	HelpEntry screen = (HelpEntry) EMV.process("HelpEntry", "MG_LEAVEHELP"); 
	if (!startDate.equals("") && !endDate.equals("")) {
		CscCalendar c1 = new CscCalendar(startDate);
		CscCalendar c2 = new CscCalendar(endDate);
		inqChild = (DbInquiry) screen.inq.getChild("Tleave_summary");
		String filter = "(dateid between '"+c1.getYYYYMMDD()+"' and '"+c2.getYYYYMMDD()+"')";
		filter += " and (doctype='A' or doctype='S')";
		if (request.getParameter("__select_lvtype")!=null) {
			String type = request.getParameter("__select_lvtype");
			if (!type.equals("ALL")) {
				filter += " and lv_type='"+type+"'";
			}
		}
		if (request.getParameter("__select_orderby")!=null) {
			inqChild.setOrderBy(request.getParameter("__select_orderby"));
		}
		inqChild.setFilter(filter);		
		//out.println("CHILD > "+inqChild.getChildTable()+"<br>");
	} else {
		//Default 
		CscCalendar tmp = new CscCalendar();
		CscCalendar c1 = new CscCalendar("01-"+tmp.getMM()+"-"+tmp.getYear());
		CscCalendar c2 = new CscCalendar(tmp.getDDMMYYYY());
		inqChild = (DbInquiry) screen.inq.getChild("Tleave_summary");
		String filter = "(dateid between '"+c1.getYYYYMMDD()+"' and '"+c2.getYYYYMMDD()+"') and (doctype='A' or doctype='S')";
		inqChild.setFilter(filter);		
	}
	screen.inq.refresh();	
	screen.nextRec();	
		
	CscCalendar cs = new CscCalendar();
	FormulaString fs = new FormulaString();
	DecimalFormat df = new DecimalFormat("0.00");
	DecimalFormat df2 = new DecimalFormat("00.00");
	
	CscCalendar c1 = new CscCalendar();
	CscCalendar c2 = new CscCalendar();
	try {
		String d1 = (String) StaticConfig.getConfigCompany(screen.getUProfile(), "ta1001");
		String d2 = (String) StaticConfig.getConfigCompany(screen.getUProfile(), "ta1002");
		if (d1!=null && d2!=null && !d1.equals("") && !d2.equals("")) {
			c1 = new CscCalendar(d1);
			c2 = new CscCalendar(d2);
		} 
	} catch (Exception e) {}
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="../Templates/template-emv-main.dwt.jsp" codeOutsideHTMLIsLocked="false" -->
<head>
<!-- InstanceBeginEditable name="doctitle" -->
<title>Employee View</title>
<!-- InstanceEndEditable -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<!-- InstanceBeginEditable name="head" -->
<!-- Begin CSS Links -->
<link rel="stylesheet" type="text/css" href="../CSS/DDMENU.css" />
<link rel="stylesheet" type="text/css" href="../CSS/EMV_LAYOUT.css" />
<link rel="stylesheet" type="text/css" href="../CSS/EMV_DEFAULT.css" />
<link rel="stylesheet" type="text/css" href="../CSS/EMV_LAYOUT_TWO.css" />
<link rel="stylesheet" type="text/css" href="../CSS/EMV_TEXT.css" />
<!-- End CSS Links -->
<!-- Begin Scripts -->
<!-- Begin script for Dropdown Menu -->
<!-- DO NOT EDIT -->
<link rel="stylesheet" type="text/css" href="../CSS/EMV_TEXT.css" /

<!-- End CSS Links -->
<!-- Begin Scripts -->
<!-- Begin script for Dropdown Menu -->
<!-- DO NOT EDIT -->
<script language="JavaScript" type="text/javascript" src="../JS/EVENTS.js"></script>
<script language="JavaScript"  type="text/javascript" src="../JS/DDMENU.js"></script>
<!--[if lt IE 7]><script language="JavaScript" type="text/javascript" src="../JS/IEHOVER-FIX.js"></script><![endif]-->
<!-- DO NOT EDIT -->
<!-- End script for Dropdown Menu -->
<script language="JavaScript" type="text/javascript" src="../JS/UTILITIES.js"></script>
<script language="JavaScript" type="text/javascript" src="../JS/ACTIVE_OBJECT.js"></script>
<script language="JavaScript" type="text/javascript" src="../JS/SCREEN.js"></script>
<script language="JavaScript" type="text/javascript" src="../JS/DATEINPUT.js"></script>
<script language="JavaScript" type="text/javascript" src="../JS/VIEWCALENDAR.js"></script>
<script language="JavaScript">setLang('<%=screen.getUProfile().get("lang")%>');</script>
<script language="JavaScript">
function goHelp(helpName,inputName){
	//alert(helpName+" "+inputName);
  	with(document.cscform){
		var helpReturn="";
		var fcon=__fixCon.value;
		var sub_value = "";
			__fixCon.value = "employeeid='<%=EMV.getUProfile().get("employeeid")%>'";
		if (inputName=="__subgroupid") {
			helpReturn = inputName+":groupid,__desc:edesc"
			linkHelp_Return(helpName,helpReturn);
		} 
		__fixCon.value = "";
	}
}

function GoSearch(){
	with(document.cscform){
		if (__subgroupid.value=="") {
			__desc.value = "";
		} 
		search();
	}
}

function getOrderByDesc(m){
	with(document.cscform){
		var orderName = "";
		var engOrder = new Array("Date","EmployeeID","Date [Max->Min]","EmployeeID  [Max->Min]");
		var thaiOrder = new Array("วันที่","รหัสพนักงาน","วันที่ [มาก->น้อย]","รหัสพนักงาน [มาก->น้อย]");
		if (m=='dateid') {
			m = 1;
		} else if (m=='employeeid') {
			m = 2;
		} else if (m=='dateid desc') {
			m = 3;
		} else if (m=='employeeid desc') {
			m = 4;
		} 
		if (__language.value=='tha') {
			orderName = thaiOrder[parseInt(m)-1];
		} else orderName = engOrder[parseInt(m)-1];
		//alert(m+" "+orderName);
		document.write(orderName);
	}
}

function pageLeaveStatistic(empID){	
	with(document.cscform){
		__fixCon.value=" employeeid='"+empID+"'";
		
		//alert(__fixCon.value);
		window.open("EMP_LEAVE_PT.jsp?__cmd="+
			"&__empID="+empID+
			"&__fixCon="+__fixCon.value,
			"Memployee","left=150,top=100,width=700,height=300,toolbar=no,status=yes,scrollbars=yes,resizable=yes"
		);
		//submit();			
	}
}

function pageLeaveDesc(empID, empName, lv, desc, date1, date2){	
	with(document.cscform){
		//var a=chkDateTime1(date1.value);
		//var b=chkDateTime1(date2.value);
		//alert(date1.value+"==="+date2.value);
		var lv_filter="lv_type='"+lv+"'";
		__fixCon.value=" employeeid='"+empID+"' and (dateid between '"+date1+"' and '"+date2+"') and "+lv_filter;
		
		//alert(__fixCon.value);
		window.open("EMP_LEAVEDESC.jsp?__cmd="+
			"&__date1="+date1+"&__date2="+date2+
			"&__empID="+empID+"&__empName="+empName+
			"&__lv_desc="+desc+
			"&__fixCon="+__fixCon.value,
			"Tleave_summary","left=150,top=100,width=700,height=300,toolbar=no,status=yes,scrollbars=yes,resizable=yes"
		);
		//submit();			
	}
}
</script>
<style type="text/css">
#header {
 	background: #FFFFFF ;
}
</style>
<!-- End Scripts -->
<!-- Begin Head -->

<!-- End Head -->
<!-- InstanceEndEditable -->
</head>
<body>
<div id="wrapper">
  <div id="header"><!-- InstanceBeginEditable name="header" -->
    <jsp:include page="EMV_HEADER.jsp" flush="true" />
   <!-- InstanceEndEditable -->  </div>
  <div id="topnav"><!-- InstanceBeginEditable name="top_navigation" -->
  	<jsp:include page="EMV_TOPMENU.jsp" flush="true" />
    <!-- InstanceEndEditable -->  </div>
  <div id="container">
   
    <div id="content"><!-- InstanceBeginEditable name="main_content" -->
    <jsp:include page="EMV_HELPBAR.jsp" flush="true" />
    <!-- Begin Main Content -->
      <div class="content">
      <!-- BEGIN CSC INITIAL ZONE -->
	  <%=screen.InitialVariable()%>
	  <!-- END CSC INITIAL ZONE -->
      <form name="cscform" method="post" action="MG_LEAVE_PT.jsp">
        <input type="hidden" name="__cmd" value="">
        <input type="hidden" name="__screen"  value="MG_LEAVE_PT"> 
        <input type="hidden" name="__help" value="">
        <input type="hidden" name="__helpReturn" value="">
        <input type="hidden" name="__helpName" value="">
        <input type="hidden" name="__pageCall" >
        <input type="hidden" name="__referPage" value="">
        <input type="hidden" name="__calendar">
        <script language="javascript">getInputFormatDate();</script>
        <input type="hidden" name="__companyid"  value="<%=screen.getUProfile().get("companyid")%>">
        <input type="hidden" name="__fixCon"  > 
        <input type="hidden" name="__language" value="<%=screen.getUProfile().get("lang")%>">
        <input type="hidden" name="__childFilter" >
        <div id="toolTipLayer" style="position:absolute; visibility: hidden"></div>
		<script language="javascript">initToolTips();</script> 
      		
            <div class="box-search-condition">
            <div class="content-title"><script language="javascript">swapLang("Please Input Condition to Search");</script></div>
           	<table width="100%" border="0" cellpadding="0" cellspacing="0" class="table-search-condition">
            	<tr>
                  	<td colspan="2" class="column-label">&nbsp;</td>
                </tr>
                <tr>
                  	<td width="150" class="column-label"><script language="javascript">swapLang("Subordinate Group");</script></td>
                  	<td class="column-input">
                  		<% if (request.getParameter("__subgroupid")!=null && !request.getParameter("__subgroupid").equals("")) { %>
                        	<input name="__subgroupid" type="text" class="text" size="15" value="<%=request.getParameter("__subgroupid")%>"/>
                        <% } else { %>
                  			<input name="__subgroupid" type="text" class="text" size="15" />
                        <% } %>
                       	<a href="javascript:goHelp('MSUBORDINATE_GRPHELP','__subgroupid')" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image2','','../IMAGES/BUTTON/SWAP/SEARCH_SWAP20.gif',1)"><img src="../IMAGES/BUTTON/MAIN/SEARCH20.gif" alt="Help" name="Image2"  border="0" align="absmiddle"></a>
                       	<% if (request.getParameter("__desc")!=null && !request.getParameter("__desc").equals("")) { %>
	                  		<input name="__desc" type="text" class="text" size="60" value="<%=request.getParameter("__desc")%>"/>
                      	<% } else { %>
                  			<input name="__desc" type="text" class="text" size="60" value="" />
                      	<% } %>
                  	</td>
                </tr>
              	<tr>
             		<td class="column-label"><script language="javascript">swapLang('Date')</script></td>
                 	<td class="column-input">
					  <% if (request.getParameter("date_start")==null) { %>									 
				  		<input name="date_start" type="text" value="<%="01-"+cs.getMM()+"-"+cs.getYear()%>" size="9" maxlength="10" onKeyup = "formatDate(this)" onBlur = "chkInputDate2(this,date_end)" onKeypress = "chkIntegerOfDate(this.value)" onMouseOver="toolTip('วันเริ่มต้น(DDMMYYYY)')" onMouseOut="toolTip()">
				  		&nbsp;
				  	    <% } else {%>
				   		<input name="date_start" type="text" value="<%=request.getParameter("date_start")%>" size="9" maxlength="10" onKeyup = "formatDate(this)" onBlur = "chkInputDate2(this,date_end)" onKeypress = "chkIntegerOfDate(this.value)" onMouseOver="toolTip('วันเริ่มต้น(DDMMYYYY)')" onMouseOut="toolTip()">
				   		&nbsp;
				  	    <% }%>
				  		<a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('calendar1','','../IMAGES/EMPVIEW/ICON_CALENDAR.gif',1)">
				  		<img src="../IMAGES/EMPVIEW/ICON_CALENDAR.gif" name="calendar1" width="20" height="20" border="0" align="absmiddle" onClick="viewCal('date_start')" alt="Calendar"></a>&nbsp;&nbsp;&nbsp;-&nbsp;&nbsp;&nbsp; 
					    <% if (request.getParameter("date_end")==null) { %>
				  		<input name="date_end" type="text" value="<%=cs.getDDMMYYYY()%>" size="9" maxlength="10" onKeyup = "formatDate(this)" onBlur = "chkInputDate2(date_start,this)" onKeypress = "chkIntegerOfDate(this.value)" onMouseOver="toolTip('วันสิ้นสุด(DDMMYYYY)')" onMouseOut="toolTip()">
				  		&nbsp;
				   	    <% } else {%>
                        <input name="date_end" type="text" value="<%=request.getParameter("date_end")%>" size="9" maxlength="10" onKeyup = "formatDate(this)" onBlur = "chkInputDate2(date_start,this)" onKeypress = "chkIntegerOfDate(this.value)" onMouseOver="toolTip('วันสิ้นสุด(DDMMYYYY)')" onMouseOut="toolTip()">
                       &nbsp;
				  	    <% }%>
			  		    <a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('calendar2','','../IMAGES/EMPVIEW/ICON_CALENDAR.gif',1)">
			  		    <img src="../IMAGES/EMPVIEW/ICON_CALENDAR.gif" name="calendar2" width="20" height="20" border="0" align="absmiddle" onClick="viewCal('date_end')" alt="Calendar"></a></td>
                </tr>
                <% 
					HashMap hm = new HashMap();
					try {
						DbInquiry inq = new InitialInquiry(screen.getUProfile()).getDbInquiry();
						inq.setSchemaName(screen.getUProfile().getSchemaName());
						inq.initMyTable("Meventgrp", "((DAYTYPE != '1') AND (DAYTYPE != '5') AND (DAYTYPE != '6') AND (DAYTYPE != '9'))", "");
						inq.setColumn("*");
						inq.refresh();
						while (inq.next()) {
							DbRecord rec = inq.getCurrentDbRecord();
							hm.put(rec.getString("eventgrpid"), rec.getString("tdesc"));								
						}
					} catch (Exception e) {}			
				%>
                <tr>
                    <td class="column-label"><script language="javascript">swapLang('Search By')</script></td>
                    <td class="column-input">
                    	<select name="__select_lvtype" class="text">
                    	<% 
							String s_lvtype = "";
							if (request.getParameter("__select_lvtype")!=null && !request.getParameter("__select_lvtype").equals("ALL")) {
								s_lvtype = request.getParameter("__select_lvtype");								
                           	} 
							out.println("<option value='ALL'><script language='javascript'>swapLang('All')</script></option>");
							for (Iterator IT = hm.keySet().iterator(); IT.hasNext(); ) {
								String key = (String) IT.next();
								String desc = (String) hm.get(key);
								if (key.equals(s_lvtype)) {
									out.println("<option value="+key+" selected>"+desc+"</option>");	
								} else out.println("<option value="+key+">"+desc+"</option>");	
							}
						%>
                        </select>
                    </td>
               	</tr>
                <tr>
                    <td class="column-label"><script language="javascript">swapLang('Order By')</script></td>
                    <td class="column-input">
                    	<select name="__select_orderby" class="text">
                        	<% 
								String s_order = "";
							 	if (request.getParameter("__select_orderby")!=null) {
									s_order = request.getParameter("__select_orderby");
								}
							%>
                        	<option value="dateid" <% if (s_order.equals("dateshift")) { %> selected <%}%>><script language="javascript">getOrderByDesc('dateid')</script></option>
                      		<option value="employeeid" <% if (s_order.equals("employeeid")) { %> selected <%}%>><script language="javascript">getOrderByDesc('employeeid')</script></option>
                     		<option value="dateid desc" <% if (s_order.equals("dateshift desc")) { %> selected <%}%>><script language="javascript">getOrderByDesc('dateid desc')</script></option>
                            <option value="employeeid desc" <% if (s_order.equals("employeeid desc")) { %> selected <%}%>><script language="javascript">getOrderByDesc('employeeid desc')</script></option>
                    	</select>
                        &nbsp;&nbsp;&nbsp;
				  	    <a href="javascript:GoSearch();"><img src="../IMAGES/EMPVIEW/BUTTON/SEARCH.gif" width="60" height="23" border="0" align="absmiddle"></a>
                	</td>
              	</tr>
                <tr>
                	<td class="column-label">&nbsp;</td>
                    <td colspan="2" class="column-input">&nbsp;</td>
                </tr>
              </table>
        	</div>      
      
          <div class="content-box2">
            <div class="content-header"><h2><script language="javascript">swapLang('Leave Detail PT')</script></h2></div>
            <table width="100%" border="0" cellpadding="0" cellspacing="1" class="table-content-list">
            <tr>
            	<td width="10%" class="column-header"><script language="javascript">swapLang('Date')</script></td>
                <td width="5%" class="column-header"><script language="javascript">swapLang('Day')</script></td>
                <td width="28%" class="column-header"><script language="javascript">swapLang('Name-Surname')</script></td>
                <td width="20%" class="column-header"><script language="javascript">swapLang('Position')</script></td>
                <td width="15%" class="column-header"><script language="javascript">swapLang('Leave Time')</script></td>
                <td width="7%" class="column-header"><script language="javascript">swapLang('Total')</script>(<script language="javascript">swapLang('HH MM')</script>)</td>
                <td width="15%" class="column-header"><script language="javascript">swapLang('Leave Type')</script></td>
           	</tr>
            <% 
				//if (!groupID.equals("")) {					
					int i=1;
					DbInquiry child = (DbInquiry) screen.inq.getChild("tleave_summary");
					if (child.recCount()>0) {
						do {
							CscCalendar cDate = new CscCalendar(child.getString("dateid"));
							String day = "";
							if (((String) screen.getUProfile().get("lang")).equalsIgnoreCase("THA")) { //แสดงวันจันทร์ , อังคาร, พุธ เป็นต้น
								day = cDate.getDOWTHI(); 
							} else day = cDate.getDOWENG(); 
							
							CscCalendar lv_bg = new CscCalendar(child.getString("lv_bg_date"));
							CscCalendar lv_en = new CscCalendar(child.getString("lv_en_date"));
							//String lv_time = lv_bg.getDDMMYYYY()+" - "+df2.format(child.getCurrentDbRecord().getDouble("lv_bg_time"))+" : "+
							//	lv_en.getDDMMYYYY()+" - "+df2.format(child.getCurrentDbRecord().getDouble("lv_en_time"));
							String lv_time = df2.format(child.getCurrentDbRecord().getDouble("lv_bg_time"))+" - "+df2.format(child.getCurrentDbRecord().getDouble("lv_en_time"));
							
			%>
			<%//=child.getCurrentDbRecord().getFieldList()%>
			<tr>
            	<td class="column-text-center"><%=cDate.getDDMMYYYY()%></td>
                <td class="column-text-center"><%=day%></td>
                <td class="column-text">
					<a href="javascript:pageLeaveStatistic('<%=child.getString("employeeid")%>')">
					<%=child.getString("employeeid")%>&nbsp;<%=child.getString("memployee", "fullname")%>
                    </a>
               	</td>
                <td class="column-text-center"><%=child.getString("mposition", "tdesc")%></td>
                <td class="column-text-center"><%=lv_time%></td>
                <td class="column-text-center"><%=df.format(child.getCurrentDbRecord().getDouble("m_lv"))%></td>
                <td class="column-text-center">
                	<a href="javascript:pageLeaveDesc('<%=child.getString("employeeid")%>','<%=child.getString("memployee", "fullname")%>','<%=child.getString("lv_type")%>','<%=child.getString("meventgrp", "tdesc")%>','<%=c1.getYYYYMMDD()%>','<%=c2.getYYYYMMDD()%>')">
					<%=child.getString("meventgrp", "tdesc")%><%//=child.getString("lv_type")%>			
                    </a>
             	</td>
           	</tr>
			<%
							i++;
						} while (child.next());
					} //End if (child.recCount()>0)
				//} //End if (!groupID.equals(""))
			%>
            </table>
            <div class="content-footer"><img src="../IMAGES/SPACER.gif" width="3" height="3" /></div>
          </div>   
       </form>  
      </div>
      <!-- End Main Content -->
      <!-- InstanceEndEditable -->    </div>
  </div>
  <div id="footer"><!-- InstanceBeginEditable name="footer" -->
  <jsp:include page="EMV_FOOTER.jsp" flush="true" />
  <!-- InstanceEndEditable -->  </div>
</div>
</body>
<!-- InstanceEnd --></html>