<%@page contentType="text/html; charset=UTF-8"%> <%@page import="com.csc.library.entry.HelpEntry,com.csc.library.system.*,com.csc.library.utilities.*,com.csc.library.formula.*"%> <%@page import="com.csc.library.entry.*,com.csc.library.database.*,com.csc.library.session.*,com.csc.library.timeattendance.*"%> <%@page import="com.csc.library.timeattendance.GenShift,java.util.TreeMap,java.util.Iterator,java.util.HashMap"%> <jsp:useBean id="SHOWLEAVE" class="com.csc.library.system.Task" scope="page" /> <% SHOWLEAVE.setChannel(request ,response); HelpEntry screen = (HelpEntry) SHOWLEAVE.process("HelpEntry","SHOWLEAVEHELP"); screen.process(); screen.nextRec(); CheckNull chkNull=new CheckNull(); CscCalendar cs = new CscCalendar(); String sDate = "01-"+cs.getMM()+"-"+cs.getYear(); String eDate = cs.getDDMMYYYY(); String empid =chkNull.chkNullString(request.getParameter("__employeeid"),screen.getString("employeeid")); try { sDate = StaticConfig.getConfigCompany(screen.getUProfile(), "ta1001"); eDate = StaticConfig.getConfigCompany(screen.getUProfile(), "ta1002"); } catch (Exception e) {} CscCalendar cssDate = new CscCalendar(sDate); CscCalendar cseDate = new CscCalendar(eDate); %> <html> <head> <title></title> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8"> <LINK HREF="../CSS/MYNOTE.css" REL="stylesheet" TYPE="text/css"> <script language="JavaScript" src="../JS/SCREEN.js"></script> <script language='javascript'>setLang('<%=screen.getUProfile().get("lang")%>');</script> <script language="JavaScript" type="text/JavaScript"> function back(unit){ with(window.opener.document.cscform){ locateId.value =unit; } window.close(); } function pageDesc(c){ with(document.cscform){ var a = '<%=cssDate.getYYYYMMDD()%>'; var b = '<%=cseDate.getYYYYMMDD()%>'; action="SHOWLEAVE_WF_DESC.jsp?__cmd=&__gorec="+ "&__date_start="+a+"&__date_end="+b; __fixCon.value=" employeeid='<%=request.getParameter("__employeeid")%>' and dateid between '"+a+"' and '"+b+"' and lv_type='"+c+"'"; //alert(__fixCon.value); submit(); } } </script> </head> <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> <form name="cscform" method="post" > <!----------BEGIN CSC INITIAL ZONE ------------------------> <%=screen.InitialVariable()%> <!----------END CSC INITIAL ZONE --------------------------> <input type="hidden" name="__screen" value="SHOWLEAVE"> <input type="hidden" name="__cmd" value=""> <input type="hidden" name="__help" value=""> <input type="hidden" name="__goPage" value=""> <input type="hidden" name="__orderBy" value=""> <input type="hidden" name="__helpName" value="<%=request.getParameter("__helpName")%>"> <input type="hidden" name="__pageCall" value="<%=request.getParameter("__screen")%>"> <input type="hidden" name="__fixCon" value="employeeid='<%=chkNull.chkNullString(request.getParameter("__employeeid"),screen.getString("employeeid"))%>'"> <input type="hidden" name="__empID" value="<%=empid%>"> <input type="hidden" name="__empName" value="<%=screen.getString("fullname")%>"> <table cellspacing='0' cellpadding='0' width='100%' align='center' border='0' > <tr > <td colspan="2"> <div align="center"> <table width="98%" border="0" align="center" cellpadding="1" cellspacing="1"> <td colspan="6" class="row-title"><div align="center"><script language="javascript">swapLang("Leave Statistic");</script> <script language="javascript">swapLang("From Date");</script> <%=cssDate.getDDMMYYYY()%> <script language="javascript">swapLang("To Date");</script> <%=cseDate.getDDMMYYYY()%> </div> </td> </tr> <tr > <td width="250" class="row-header" rowspan="2"><div align="CENTER"><b><script language="javascript">swapLang("Leave Type");</script></b></div></td> <td width="100" height="17" class="row-header"><div align="CENTER"><b><script language="javascript">swapLang("Limit Last Year");</script></div></td> <td width="100" height="17" class="row-header"><div align="CENTER"><b><script language="javascript">swapLang("Limit Next Year");</script></div></td> <td width="100" height="17" class="row-header"> <div align="CENTER"><b><script language="javascript">swapLang("Limit");</script></b></div></td> <td width="100" height="17" class="row-header"> <div align="CENTER"><b><script language="javascript">swapLang("Used");</script></b></div></td> <td width="100" height="17" class="row-header"> <div align="CENTER"><b><script language="javascript">swapLang("Remain");</script></b></div></td> </tr> <tr> <td width="100" height="10" class="row-header"><div align="CENTER"><script language="javascript">swapLang("DD HH MM");</script></div></td> <td width="100" height="10" class="row-header"><div align="CENTER"><script language="javascript">swapLang("DD HH MM");</script></div></td> <td width="100" height="10" class="row-header"><div align="CENTER"><script language="javascript">swapLang("DD HH MM");</script></div></td> <td width="100" height="10" class="row-header"><div align="CENTER"><script language="javascript">swapLang("DD HH MM");</script></div></td> <td width="100" height="10" class="row-header"><div align="CENTER"><script language="javascript">swapLang("DD HH MM");</script></div></td> </tr> <% String vacation0_get = "00:00:00"; String vacation0 = "00:00:00"; String vacation1 = "00:00:00"; FormulaString fs = new FormulaString(); DbInquiry inqEmp = new InitialInquiry(screen.getUProfile()).getDbInquiry("Memployee"); inqEmp.setSchemaName(screen.getUProfile().getSchemaName()); inqEmp.setFilter("employeeid='"+empid+"'"); inqEmp.setColumn("employeeid, companyid, emp_level, vacation0, vacation1, vacation0_get"); inqEmp.refresh(); if (inqEmp.next()){ vacation0 = inqEmp.getString("vacation0"); vacation1 = inqEmp.getString("vacation1"); vacation0_get = inqEmp.getString("vacation0_get"); } String cFont = ""; String v0_limit = ""; String v1_limit = ""; String fld = getMConfigValue(screen.getUProfile(), "TALVFD"); DbInquiry inq = new InitialInquiry(screen.getUProfile()).getDbInquiry("Meventgrp1"); inq.setSchemaName(screen.getUProfile().getSchemaName()); //inq.setFilter("(daytype!='1' and daytype !='5' and daytype !='6' and daytype !='9') and display=1 and branchid = (select BRANCH from MEMPLOYEE where EMPLOYEEID = '" + empid + "')"); inq.setFilter("display = '1' and (daytype!='1' and daytype !='5' and daytype !='6' and daytype !='9') and BRANCHID = (select " + fld + " from MEMPLOYEE where EMPLOYEEID = '" +empid+ "')"); //out.print(inq.getFilter()); //inq.setFilter("(daytype!='1' and daytype !='5' and daytype !='6' and daytype !='9') "); inq.setOrderBy("display_order,edesc"); inq.setColumn("*"); inq.refresh(); StringBuffer sb = new StringBuffer(); while(inq.next()){ String a="simmemployee_tadjtime0$"+ inq.getString("eventgrpid"); String b= inq.getString("eventgrpid"); String type = inq.getString("daytype"); boolean display = inq.getString("display_limit").equals("1"); String event_desc = inq.getString("event_desc"); String psoveravi = inq.getString("ps_over_avi"); boolean isPrvAvailable = (psoveravi.equals("1"))?true:false; if (screen.inq.getString(a+"_remain").indexOf('-')>-1) { cFont = "error"; } else { cFont = ""; } String result = ""; String c_limit = screen.inq.getString(a+"_limit"); String c_used = screen.inq.getString(a+"_used"); String c_remain = screen.inq.getString(a+"_remain"); String lastyear_v1 = chkNull.chkNullString(screen.inq.getString(a+"_previous_rem"),"00:00:00"); String nextyear_v1 = chkNull.chkNullString(screen.inq.getString(a+"_next_rem"),"00:00:00"); String curyear_id = chkNull.chkNullString(screen.inq.getString(a+"_cur_year")); String lastyear_id = chkNull.chkNullString(screen.inq.getString(a+"_previous_year")); String nextyear_id = chkNull.chkNullString(screen.inq.getString(a+"_next_year")); String list[] = {vacation0,vacation1,c_used,c_remain}; String list_value[] = {"","","",""}; String leaveadvance = chkNull.chkNullString(screen.inq.getString(a+"_leaveadvance")); if (type.equals("7") || isCompensateLV(b) || isPublicLV(b) || isPrvAvailable) { if (vacation0.equals("")) { vacation0 = "00:00:00"; } if (vacation1.equals("")) { vacation1= "00:00:00"; } list[0] = vacation0; list[1] = c_limit; } else { lastyear_v1 = ""; nextyear_v1 = ""; list[0] = ""; list[1] = c_limit; } for(int i = 0; i<list.length; i++){ String splitTime[] = list[i].split(":"); int day = chkNull.chkNullStringToInt(splitTime[0]); if(splitTime.length > 2){ if (Float.parseFloat(splitTime[1]) == 0) { result = day + ".0"; } else if (Float.parseFloat(splitTime[1]) <= 4.5) { result = day + ".5"; } else { result = day + ".0"; } list_value[i] = result; } } /* send all to main page (TAU120_NSTDA) */ if(sb.length() > 0) sb.append(","); sb.append(b).append("#"); sb.append(type).append("#"); sb.append(curyear_id).append("#"); sb.append(lastyear_id).append("#"); sb.append((type.equals("7") || isCompensateLV(b) || isPublicLV(b) || isPrvAvailable)?lastyear_v1:"00:00:00").append("#"); sb.append(nextyear_id).append("#"); sb.append((type.equals("7"))?nextyear_v1:"00:00:00").append("#"); sb.append(list[1]).append("#"); sb.append(list[2]).append("#"); sb.append(list[3]); %> <tr > <td class="row-data"> <div align="left"> <a href="javascript:pageDesc('<%=b%>')"><%=screen.getUProfile().get("lang").equalsIgnoreCase("tha")?inq.getString("tdesc"):inq.getString("edesc")%></a> </div> </td> <input type="hidden" name="<%="L"+b+"_USED"%>" value="<%=fs.DhmToM(screen.inq.getString(a+"_used"), 8)%>"> <td class="row-data"> <div align="center"><font class='<%=cFont%>'><%=lastyear_v1%></font>   </div></td> <td class="row-data"> <div align="center"><font class='<%=cFont%>'><%=nextyear_v1%></font>   </div></td> <td class="row-data"> <div align="center"><font class='<%=cFont%>'><%=(display)?list[1]:"00:00:00"%></font>   </div></td> <td class="row-data"> <div align="center"><font class='<%=cFont%>'><%=list[2]%></font>   </div></td> <td class="row-data"> <div align="center"><font class='<%=cFont%>'><%=(display)?list[3]:"00:00:00"%></font>   </div></td> <%//}%> </tr> <% }%> </table> </div> </td> </tr> </td> </tr> </table> <input type="hidden" id="_allleave" name="_allleave" value="<%=sb.toString()%>"> </form> </body> </html> <%! public String getMConfigValue(UProfile upf, String filed){ String srt = ""; try { srt = (String) StaticConfig.getConfigCompany(upf, filed) ; }catch(Exception e){ e.printStackTrace(); } return srt ; } public Double convertHHMMtoMinute(String HHMM){ return (double) new CscTime().getTime_to_min(HHMM); } public boolean isCompensateLV(String evt){ try { if(evt.equals("COT") || evt.equals("COF")){ return true ; } }catch(Exception e){ e.printStackTrace(); } return false ; } public boolean isPublicLV(String evt){ try { if(evt.equals("PH")){ return true ; } }catch(Exception e){ e.printStackTrace(); } return false ; } %>