<%@page contentType="text/html; charset=TIS620" language="java" %> <%@page import="com.csc.library.entry.HelpEntry,com.csc.library.system.*,com.csc.library.utilities.*,java.util.*"%> <%@page import="com.csc.library.utilities.CscCalendar,com.csc.library.entry.HelpEntry,com.csc.library.system.*"%> <%@page import="com.csc.library.entry.*,com.csc.library.database.*,com.csc.library.session.*,com.csc.library.formula.FormulaString" %> <%@page import="com.csc.library.timeattendance.DayShift,com.csc.library.timeattendance.Shift,com.csc.library.timeattendance.WorkingShift" %> <%@page import="java.text.DecimalFormat" %> <% request.setCharacterEncoding("TIS620"); %> <jsp:useBean id="EMV" class="com.csc.library.system.Task" scope="page" /> <jsp:setProperty name="EMV" property="appname" value="empview" /> <% EMV.setChannel(request, response); CheckNull chk = new CheckNull(); String groupID = chk.chkNullString(request.getParameter("__subgroupid")); String empList = ""; HelpEntry screen = (HelpEntry) EMV.process("HelpEntry", "MG_WORKINGTIMEHELP"); screen.inq.refresh(); //screen.nextRec(); while (screen.inq.next()) { empList += "'"+screen.inq.getString("employeeid")+"',"; } if (!empList.equals("")) { empList =empList.substring(0, empList.length()-1); } //out.println("TOTAL ====>"+empList); CscCalendar c = new CscCalendar(); FormulaString fs = new FormulaString(); DecimalFormat df = new DecimalFormat("0.00"); DecimalFormat df2 = new DecimalFormat("00.00"); DbInquiry inqEmpTime = new InitialInquiry(screen.getUProfile()).getDbInquiry(); inqEmpTime.initMyTable("Ttime_current", "", ""); inqEmpTime.setColumn("*"); %> <!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=TIS620" /> <!-- 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 --> <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">setLang('<%=screen.getUProfile().get("lang")%>');</script> <script language="JavaScript"> function goHelp(helpName,inputName){ with(document.cscform){ var helpReturn=""; var fcon=__fixCon.value; var sub_value = ""; if (inputName=="__subgroupid") { __fixCon.value = "employeeid='<%=EMV.getUProfile().get("employeeid")%>'"; helpReturn = inputName+":groupid,__desc:edesc" linkHelp_Return(helpName,helpReturn); } __fixCon.value = ""; } } function getMonthName(m){ with(document.cscform){ var monthName = ""; var engMonth = new Array("January","February","March","April","May","June","July","August","September","October","November","December"); var thaiMonth = new Array("มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม"); if (__language.value=='tha') { monthName = thaiMonth[parseInt(m)-1]; } else monthName = engMonth[parseInt(m)-1]; //alert(m+" "+engDate); document.write(monthName); } } function GoSearch(){ with(document.cscform){ if (__subgroupid.value=="") { __desc.value = ""; } search(); } } function alertData(emp, msg) { var message = msg.replace(/<br>/g,"\n"); alert(emp+"\n"+message); } function pageDesc(empCode, empName){ with(document.cscform){ window.open("EMP_WORKINGTIME_ACCESS.jsp?__cmd="+ "&__monthid="+__monthid.value+"&__yearid="+__yearid.value+ "&__empID="+empCode+"&__empName="+empName, "Memployee","left=150,top=100,width=750,height=350,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_WORKINGTIME_ACCESS.jsp"> <input type="hidden" name="__cmd" value=""> <input type="hidden" name="__screen" value="MG_WORKINGTIME"> <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"> <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"> </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) { %> <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) { %> <input name="__desc" type="text" class="text" size="60" value="<%=request.getParameter("__desc")%>"/> <% } else { %> <input name="__desc" type="text" class="text" size="60" /> <% } %> </td> </tr> <tr> <td width="150" class="column-label"><script language="javascript">swapLang("Month");</script></td> <td class="column-input"> <select name="__monthid"> <% String m = ""; if (request.getParameter("__monthid")!=null) { m = request.getParameter("__monthid"); } else { m =c.getMM(); } %> <option value="01" <% if (m.equals("01")) { %> selected <%}%>><script language="javascript">swapLang("January");</script></option> <option value="02" <% if (m.equals("02")) { %> selected <%}%>><script language="javascript">swapLang("February");</script></option> <option value="03" <% if (m.equals("03")) { %> selected <%}%>><script language="javascript">swapLang("March");</script></option> <option value="04" <% if (m.equals("04")) { %> selected <%}%>><script language="javascript">swapLang("April");</script></option> <option value="05" <% if (m.equals("05")) { %> selected <%}%>><script language="javascript">swapLang("May");</script></option> <option value="06" <% if (m.equals("06")) { %> selected <%}%>><script language="javascript">swapLang("June");</script></option> <option value="07" <% if (m.equals("07")) { %> selected <%}%>><script language="javascript">swapLang("July");</script></option> <option value="08" <% if (m.equals("08")) { %> selected <%}%>><script language="javascript">swapLang("August");</script></option> <option value="09" <% if (m.equals("09")) { %> selected <%}%>><script language="javascript">swapLang("September");</script></option> <option value="10" <% if (m.equals("10")) { %> selected <%}%>><script language="javascript">swapLang("October");</script></option> <option value="11" <% if (m.equals("11")) { %> selected <%}%>><script language="javascript">swapLang("November");</script></option> <option value="12" <% if (m.equals("12")) { %> selected <%}%>><script language="javascript">swapLang("December");</script></option> </select> <script language="javascript">swapLang("Year");</script> <% if (request.getParameter("__yearid")!=null) { %> <input type="text" name="__yearid" value="<%=request.getParameter("__yearid")%>" size="5" maxlength="4" onkeypress="chkInteger()" onkeyup="formatYear(this)" onblur="chkTrueYear(this)"> <% } else { %> <input type="text" name="__yearid" value="<%=c.getYear()%>" size="5" maxlength="4" onkeypress="chkInteger()" onkeyup="formatYear(this)" onblur="chkTrueYear(this)"> <% }%> <a href="javascript:GoSearch();"><img src="../IMAGES/EMPVIEW/BUTTON/SEARCH.gif" alt="Search" width="60" height="23" border="0" align="absmiddle" /></a> </td> </tr> <tr> <td class="column-label"> </td> <td colspan="2" class="column-input"> </td> </tr> </table> </div> <!--div align="center"><font size="4" color="FF0000"><strong>!!! ขออภัยในความไม่สะดวก หน้านี้ยังอยู่ระหว่างการดำเนินการแก้ไข !!!<strong></font></div--> <div class="content-box2"> <div class="content-header"><h2><script language="javascript">swapLang('Working Time Detail')</script></h2></div> <table width="100%" border="0" cellpadding="0" cellspacing="1" class="table-content-list"> <% if (!empList.equals("")) { %> <% String month = request.getParameter("__monthid"); String year = request.getParameter("__yearid"); if (month==null || year==null || month.equals("") && year.equals("")) { CscCalendar cDate = new CscCalendar(); month = cDate.getMM(); year = String.valueOf(cDate.getYear()); } if (month!=null && year!=null && !month.equals("") && !year.equals("")) { //out.println(">>>"+group+" >>>"+month+" >>>"+year); CscCalendar c1 = new CscCalendar("21"+"-"+month+"-"+year); int dayCount = c1.getEndDateOfMonth(); double col_width = 64/dayCount; String monthn = Integer.toString(Integer.parseInt(month)+1); monthn = (monthn.length() == 1)?"0"+monthn:monthn; CscCalendar c2 = new CscCalendar(20+"-"+monthn+"-"+year); %> <tr> <td rowspan="2" width="30%" class="center" bgcolor="#CADCE6"><script language="javascript">swapLang('Name Surname')</script></td> <% CscCalendar c1nm = new CscCalendar(c1.getDDMMYYYY()); int numDay = 0; String chkMonth = c1nm.getThaiMonth(); while(c1nm.beforeEquals(c2)){ if(!chkMonth.equals(c1nm.getThaiMonth())){ %> <td colspan="<%=numDay%>" width="30%" class="center" bgcolor="#CADCE6"><%=chkMonth%></td> <% numDay = 0; chkMonth = c1nm.getThaiMonth(); } numDay++; c1nm.incDate(); } %> <!--แสดงเดือนถัดไป โดยไม่สามารถแสดงใน loop ได้ แต่นำข้อมูลจาก loop มาแสดง--> <td colspan="<%=numDay%>" width="30%" class="center" bgcolor="#CADCE6"><%=chkMonth%></td> <td rowspan="2" width="3%" class="center" bgcolor="#CADCE6"><script language="javascript">swapLang('OT')</script></td> <td rowspan="2" width="3%" class="center" bgcolor="#CADCE6"><script language="javascript">swapLang('LE')</script></td> </tr> <tr> <% CscCalendar c1nd = new CscCalendar(c1.getDDMMYYYY()); while(c1nd.beforeEquals(c2)){ //for (int i=1;i<=dayCount;i++ ) { %> <td width="<%=col_width%>%" class="center" bgcolor="#CADCE6"><%=c1nd.getDD()%></td> <% c1nd.incDate(); } %> </tr> <% DbInquiry inqEmp = new InitialInquiry(screen.getUProfile()).getDbInquiry(); inqEmp.initMyTable("Memployee", "employeeid in ("+empList+")", "employeeid"); inqEmp.setColumn("employeeid,companyid,fname,lname,efname,elname,emp_prefix,emp_level,time0,bu1,bu2,bu3,bu4,bu5"); inqEmp.refresh(); while (inqEmp.next()) { CscTime ctLEAVE = new CscTime(0); CscTime ctOT = new CscTime(0); DbRecord rec = inqEmp.getCurrentDbRecord(); MyHashMap hmDate = new MyHashMap(); String filter = "employeeid='"+rec.getString("employeeid")+"' "+ " and (dateid between '"+c1.getYYYYMMDD()+"' and '"+c2.getYYYYMMDD()+"')"; inqEmpTime.setFilter(filter); inqEmpTime.refresh(); while (inqEmpTime.next()) { DbRecord recTime = inqEmpTime.getCurrentDbRecord(); CscCalendar d = new CscCalendar(recTime.getString("dateid")); MyHashMap hm = new MyHashMap(); hm.put("LATE", df.format(recTime.getDouble("lt"))); hm.put("LEAVE", df.format(recTime.getDouble("lv"))); hm.put("ABSENT", df.format(recTime.getDouble("absent"))); hm.put("OT", df.format(recTime.getDouble("ot"))); hm.put("EVENTGRP", recTime.getString("eventgrp")); hmDate.put(d.getDDMMYYYY(), hm); } //End while (inqEmpTime.next()) String emp = rec.getString("employeeid")+" : "+rec.getString("fullname"); %> <tr> <td class="left" bgcolor="#F4F4F4"><a href="javascript:pageDesc('<%=rec.getString("employeeid")%>','<%=rec.getString("fullname")%>')"><%=emp%></a></td> <% CscCalendar c1n = new CscCalendar(c1.getDDMMYYYY()); while(c1n.beforeEquals(c2)){ //for (int i=1;i<=dayCount;i++ ) { String sign = ""; String holiday = "#F4F4F4"; CscCalendar cLoop = new CscCalendar(c1n.getDDMMYYYY()); //CscCalendar cLoop = new CscCalendar(i+"-"+month+"-"+year); if (hmDate.get(cLoop.getDDMMYYYY())!=null) { MyHashMap hLoop = (MyHashMap) hmDate.get(cLoop.getDDMMYYYY()); if (hLoop.getDouble("LEAVE")>0) { sign += "L"; ctLEAVE.add(hLoop.getDouble("LEAVE")); } if (hLoop.getDouble("OT")>0) { sign += "O"; ctOT.add(hLoop.getDouble("OT")); } if (hLoop.getDouble("ABSENT")>0) { sign = "A"; } if (hLoop.getString("EVENTGRP").equals("H")) { //holiday = "#FF0000"; //nuiss edit 15/10/2551 holiday = "#FFCC66"; } else if (hLoop.getString("EVENTGRP").equals("I")) { holiday = "#FF00FF"; } } else { sign = "*"; }//end if %> <td class="center" bgcolor="<%=holiday%>"><%=sign%></td> <% c1n.incDate(); } //} %> <td class="center" bgcolor="#F4F4F4"><%=ctOT.getFloat()%></td> <td class="center" bgcolor="#F4F4F4"><%=ctLEAVE.getFloat()%></td> </tr> <% } //End while (inqEmp.next()) %> <% } //End if (group!=null && month!=null && year!=null && !group.equals("") && !month.equals("") && !year.equals("")) %> <% } //End if (!empList.equals("")) %> </tr> </table> <div class="content-footer"><img src="../IMAGES/SPACER.gif" width="3" height="3" /></div> </div> <!--nuiss add code 15/10/2551--> <table border="0" cellpadding="0" cellspacing="1"> <tr> <td colspan='9'><div><u><b><script language="javascript">swapLang('Sign Description')</script></div></b></u></td> </tr> <tr> <td><div> * = <script language="javascript">swapLang('NO DATA')</script>,</div></td> <td style='background:#C3C3C3;width:12px'> </td> <td><div> = <script language="javascript">swapLang('PRESENT')</script>,</div></td> <td><div> L = <script language="javascript">swapLang('LEAVE')</script>,</div></td> <td><div> A = <script language="javascript">swapLang('ABSENT')</script>,</div></td> <td><div> O = <script language="javascript">swapLang('OVERTIME')</script> ,</div></td> <td style='background:#FFCC66;width:12px'> </td> <td><div> = <script language="javascript">swapLang('HOLIDAY')</script></div></td> <td style='background:#FF00FF;width:12px'> </td> <td><div> = <script language="javascript">swapLang('ANNUAL HOLIDAY')</script></div></td> </td> </tr> </table> <!--nuiss add code 15/10/2551--> </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>