<%@ page contentType="text/html; charset=UTF-8"%> <%@ page import="com.csc.library.entry.HelpEntry,com.csc.library.system.Task"%> <%@ page import="com.csc.library.database.*,com.csc.library.session.*" %> <%@ page import="com.csc.library.utilities.CheckNull"%> <%@ page import="com.csc.library.utilities.*"%> <%@page import="java.text.DecimalFormat"%> <% request.setCharacterEncoding("UTF-8"); %> <jsp:useBean id="PSR002" class="com.csc.library.system.Task" scope="page"/> <% CheckNull chk = new CheckNull(); CscCalendar cc = new CscCalendar(); PSR002.setChannel(request, response); HelpEntry screen = (HelpEntry) PSR002.process("HelpEntry","MEMPLOYEEREPORTHELP"); screen.setMaxLine(20); screen.getInquiry().setParam("__active_on", "off"); String statusFirst = chk.chkNullString(request.getParameter("statusFirst"), "false"); String branch = chk.chkNullString(request.getParameter("branch")); String branchDesc = chk.chkNullString(request.getParameter("MBRANCH@TDESC")); String view = chk.chkNullString(request.getParameter("__view")); String filter = chk.chkNullString(request.getParameter("__filter"),"1=1"); String allbranch = chk.chkNullString(request.getParameter("allbranch")); UProfile uprofile = screen.getUProfile(); DecimalFormat dc = new DecimalFormat("#0.00"); screen.process(); if(!allbranch.equals("")){ filter += allbranch; } if(!branch.equals("")){ filter += " and branch = '"+branch+"'"; } %> <%! private String getFixtab(String employeeid, String fixtabid,UProfile up) { CheckNull chk = new CheckNull(); String val = "0.0"; try { DbInquiry inq = new InitialInquiry(up).getDbInquiry("MEMPL_FIX"); inq.setColumn("tdesc"); inq.clearOldCondition(); inq.setFilter("fixtabid='"+ fixtabid +"' and employeeid = '"+employeeid+"'"); inq.refresh(); if (inq.next()) { val = chk.chkNullString(inq.getString("emp_data"),"0.0"); } } catch (Exception e) { e.printStackTrace(); } return val; } private String getEdu(String employeeid,String field,UProfile up) { CheckNull chk = new CheckNull(); String val = ""; String addsql ="top 1"; String addpgsql =""; if(up.getDbType().equalsIgnoreCase("PGSQL")){ addsql=""; addpgsql="limit 1"; } String sql = "select "+addsql+" mdg.TDESC as bg ,mj.TDESC as mj,med.GPA as gpa,mi.TDESC as ins from MEMPL_EDUCATE med left join MEDUBACKGROUND meb on med.BACKGROUNDID = meb.BACKGROUNDID left join MMAJOR mj on med.MAJORID = mj.MAJORID left join MINSTITUE mi on med.INSTITUE = mi.INSTITUEID left join MDEGREE mdg on med.degreeid = mdg.degreeid where med.employeeid = '"+employeeid+"' order by mdg.degree_level desc "+addpgsql; try { DataSet ds = new DataSet(sql,up.get("dbname"),"MEMPL_EDUCATE"); ds.initConnection(up); while (ds.next()) { val = chk.chkNullString(ds.getString(field)); } } catch (Exception e) { e.printStackTrace(); } return val; } %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html ng-app="myHR"> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <link href="../CSS/TISCO.css" rel="stylesheet" type="text/css"> <link href="../CSS/bootstrap.css" rel="stylesheet"> <script src="../JS/jquery-1.11.3.min.js"></script> <script src="../JS/bootstrap.min.js"></script> <script type="text/javascript" language="javascript" src="../JS/SCREEN.js"></script> <script src="../JS/angular-1.3.15/angular.js" type="text/javascript"></script> <script src="../JS/ANGULAR/SCREEN_ANGULAR.js" type="text/javascript"></script> <script type="text/javascript" language="javascript" src="../JS/VIEWCALENDAR.js"></script> <script language="javascript" src="../JS/DATEINPUT.js"></script> <script language="javascript">setLang("<%=screen.getUProfile().get("lang")%>");</script> <script language="JavaScript" type="text/JavaScript"> function goHelp(helpName,inputName) { var helpReturn = ""; helpReturn = inputName+":branchid,MBRANCH@TDESC"; linkHelp_Return(helpName,helpReturn); } function GoExport(){ with(document.cscform){ //alert(__filter.value); var param = "PSRN002_EXP.jsp?allbranch="+allbranch.value+"&branch="+branch.value; window.open(param); } } function GoPrint(){ with(document.cscform){ var param = "PSR001_PDF.jsp?__filter=<%=filter%>"; window.open(param); submit(); } } function GoView(){ with(document.cscform){ __view.value = "1" submit(); } } function checkBox(){ with(document.cscform){ if(allbranch.checked==true){ allbranch.value=" and BRANCH in (select branchid from MBRANCH) "; //alert(allbranch.value); }else{ allbranch.value=""; //alert(allbranch.value); } } } $(function() { $('#export').click(function() { GoExport(); }); $('#preview').click(function() { GoView(); }); $('#print').click(function() { GoPrint(); }); }); </script> <style> .table-condensed > tbody > tr > td { padding: 4px; border: 0px solid #ddd; } img[height="20"] { padding: 0px; } .table-bordered th { color: #ffffff; text-align: center; vertical-align: middle; background-color: #336699; } .eiei { overflow: scroll; height: 100%; } </style> </head> <body leftmargin="0" topmargin="0"> <form name="cscform" method="post"> <input type="hidden" name="__language" value="<%=screen.getUProfile().get("lang")%>"> <input type="hidden" name="__fixCon" value=""> <input type="hidden" name="__cmd" value=""> <input type="hidden" name="__view" value=""> <input type="hidden" name="__screen" value="PSRN002"> <input type="hidden" name="__goPage" value =""> <input type="hidden" name="__employeeid" value=""> <input type="hidden" name="__companyid" value="<%=screen.getUProfile().get("companyid")%>"> <input type="hidden" name="__orderBy" value=""> <input type="hidden" name="__empview" value=""> <input type="hidden" name="__calendar" value=""> <input type="hidden" name="__filter" value=""> <script language="javascript">getInputFormatDate();</script> <table class="table table-condensed maxsize"> <tbody> <tr> <td colspan="2" class="header"><span swlang code="SW012055">รายงานประวัติพนักงาน(ข้อมูลส่วนตัว การทำงาน และรายได้)</span> </td> </tr> <tr> <td colspan="2"> </td> </tr> <tr style="text-align: center; " > <td width="40%" style="text-align: right;"> </td> <td style="text-align: left;"> <input type="checkbox" name="allbranch" id="allbranch" onclick="checkBox()" value="<%=allbranch%>" <%=allbranch.equals("")?"":"checked"%>> <span swlang code="SW000131">Include All Branches</span> </td> </tr> <tr style="text-align: center;"> <td width="40%" style="text-align: right;"><span swlang code="SW000314">Branch</span></td> <td style="text-align: left;"> <input type="text" id="branch" name="branch" value="<%=branch%>" size="10"> <a href ="javascript:goHelp('MBRANCHHELP','branch');" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('emp_image','','../IMAGES/BUTTON/SWAP/SEARCH_SWAP20.gif',1)"><img src="../IMAGES/BUTTON/MAIN/SEARCH20.gif" ALT="SEARCH" name="emp_image" width="20" height="20" border="0" style="vertical-align: middle"></a> <input type="text" id="MBRANCH@TDESC" name="MBRANCH@TDESC" value="<%=branchDesc %>" size="35"> </td> </tr> <tr> <td colspan="2"> </td> </tr> <tr> <td colspan="2" style="text-align: center;"> <div id="export" class="btn btn-primary btn-sm" style="padding-top: 2px;"> <span class="glyphicon glyphicon-export"></span> Export </div> <div id="preview" class="btn btn-primary btn-sm" style="padding-top: 2px;"> <span class="glyphicon glyphicon-triangle-right"></span> Search </div> </td> </tr> <tr><td colspan="2"> </td></tr> <tr> <td colspan="2" class="bottom" style="padding-top: 0px; padding-bottom: 0px;"> </td> </tr> </tbody> </table> <%if (view.equals("1")){ %> <img src="../IMAGES/loading2.gif" id="loading" style="margin-left: 40%"> <table class="table table-bordered maxsize"> <thead> <tr> <th rowspan="2" style="vertical-align: middle;"><span swlang code="SW001393">No.</span></th> <th rowspan="2" style="vertical-align: middle;"><span swlang code="SW000274">Employee ID</span></th> <th rowspan="2" style="vertical-align: middle;"><span swlang code="SW012049">Name-Surname</span></th> <th colspan="8" style="vertical-align: middle;"><span swlang code="SW000328">Time Current</span></th> <th colspan="5" style="vertical-align: middle;"><span swlang code="SW002074">Personal Profile</span></th> <th colspan="4" style="vertical-align: middle;"><span swlang code="SW001796">Education Information</span></th> <th colspan="6" style="vertical-align: middle;"><span swlang code="SW012056">Income Data</span></th> </tr> <tr> <th style="vertical-align: middle;"><span swlang code="SW000639">Location</span></th> <th style="vertical-align: middle;"><span swlang code="SW000308">Position</span></th> <th style="vertical-align: middle;"><span swlang code="SW012057">PG-S</span></th> <th style="vertical-align: middle;"><span swlang code="SW010728">Division</span></th> <th style="vertical-align: middle;"><span swlang code="SW007425">Section</span></th> <th style="vertical-align: middle;"><span swlang code="SW000233">Unit</span></th> <th style="vertical-align: middle;"><span swlang code="SW006755">Starting date</span></th> <th style="vertical-align: middle;"><span swlang code="SW012058">อายุงาน(ปี)</span></th> <th style="vertical-align: middle;"><span swlang code="SW002055">Sex</span></th> <th style="vertical-align: middle;"><span swlang code="SW000172">Age</span></th> <th style="vertical-align: middle;"><span swlang code="SW012059">Personal status</span></th> <th style="vertical-align: middle;"><span swlang code="SW000060">religion</span></th> <th style="vertical-align: middle;"><span swlang code="SW011760">ID CARD</span></th> <th style="vertical-align: middle;"><span swlang code="SW002284">Transcript</span></th> <th style="vertical-align: middle;"><span swlang code="SW000314">Branch</span></th> <th style="vertical-align: middle;"><span swlang code="SW000069">Grade</span></th> <th style="vertical-align: middle;"><span swlang code="SW003473">Instutute</span></th> <th style="vertical-align: middle;"><span swlang code="SW012060">Wage</span></th> <th style="vertical-align: middle;"><span swlang code="SW012061">Skill Cost</span></th> <th style="vertical-align: middle;"><span swlang code="SW012062">Knowledge Cost</span></th> <th style="vertical-align: middle;"><span swlang code="SW012063">Knowledge Engineer Cost</span></th> <th style="vertical-align: middle;"><span swlang code="SW012064">Experts Cost</span></th> <th style="vertical-align: middle;"><span swlang code="SW012065">Traveling Expenses</span></th> </tr> </thead> <tbody> <% int no = 1; String addsql="+"; String dbo = "dbo."; if(screen.getUProfile().getDbType().equalsIgnoreCase("PGSQL")){ addsql="||"; dbo = ""; } String sql = "select me.EMPLOYEEID,pre.TDESC"+addsql+"me.FNAME"+addsql+"' '"+addsql+"me.LNAME as fullname,wo.TDESC as workarea,po.TDESC as posiiton,me.PL,b5.TDESC as bu5,b4.TDESC as bu4,b3.TDESC as bu3,STARTDATE ,case when me.SEX='1' then 'ชาย' else 'หญิง' end as sex,BIRTHDAY,case STATMARRY when 'S' then 'โสด' when 'M' then 'สมรส' when 'D' then 'หย่า' when 'W' then 'หม้าย' when 'E' then 'แยกกันอยู่' end as statmarry,mr.TDESC as religion,ID_PEOPLE,"+dbo+"base64Decoder(salary) as salary,emp_every from MEMPLOYEE me left join MPREFIX pre on me.EMP_PREFIX = pre.PREFIXID left join MWORKAREA wo on me.WORKAREA = wo.WORKAREAID left join MPOSITION po on me.EMP_POSITION = po.POSITIONID left join MBU3 b3 on me.BU3 = b3.BU3ID left join MBU4 b4 on me.BU4 = b4.BU4ID left join MBU5 b5 on me.BU5 = b5.BU5ID left join MRELIGION mr on me.RELIGION = mr.RELIGIONID where "+filter; //out.print(sql); try{ DataSet ds = new DataSet(sql,screen.getUProfile().get("dbname"),"Memployee"); ds.initConnection(screen.getUProfile()); while (ds.next()) { CscCalendar date = new CscCalendar(); CscCalendar stDate = new CscCalendar(chk.chkNullString(ds.getString("startdate"))); CscCalendar birthday = new CscCalendar(chk.chkNullString(ds.getString("birthday"))); CountAge count = new CountAge(screen.getUProfile().get("lang")); String workage = count.getCountAges(stDate,date,true); String age = count.getCountAges(birthday,date,true); Double cost =0.0; if(chk.chkNullString(ds.getString("emp_every")).equals("M")){ cost = (Double.parseDouble(chk.chkNullString(ds.getString("salary"),"0.0"))/30)/8; }else if(chk.chkNullString(ds.getString("emp_every")).equals("")){ cost = Double.parseDouble(chk.chkNullString(ds.getString("salary"),"0.0")); } %> <tr> <td align="center"><div style="width: 50px;"><%=no%></div></td> <td align="center"><div style="width: 150px;"><%=chk.chkNullString(ds.getString("employeeid"))%></div></td> <td align="left"><div style="width: 300px;"><%=chk.chkNullString(ds.getString("fullname"))%></div></td> <td align="center"><div style="width: 300px;"><%=chk.chkNullString(ds.getString("workarea"))%></div></td> <td align="center"><div style="width: 300px;"><%=chk.chkNullString(ds.getString("posiiton"))%></div></td> <td align="center"><div style="width: 300px;"><%=chk.chkNullString(ds.getString("pl"))%></div></td> <td align="center"><div style="width: 200px;"><%=chk.chkNullString(ds.getString("bu3"))%></div></td> <td align="center"><div style="width: 200px;"><%=chk.chkNullString(ds.getString("bu4"))%></div></td> <td align="center"><div style="width: 200px;"><%=chk.chkNullString(ds.getString("bu5"))%></div></td> <td align="center"><div style="width: 100px;"><%=stDate.getDD()+"/"+stDate.getMM()+"/"+stDate.getYear()%></div></td> <td align="center"><div style="width: 100px;"><%=workage%></div></td> <td align="center"><div style="width: 70px;"><%=chk.chkNullString(ds.getString("sex"))%></div></td> <td align="center"><div style="width: 50px;"><%=age.substring(0,2)%></div></td> <td align="center"><div style="width: 80px;"><%=chk.chkNullString(ds.getString("statmarry"))%></div></td> <td align="center"><div style="width: 100px;"><%=chk.chkNullString(ds.getString("religion"))%></div></td> <td align="center"><div style="width: 150px;"><%=chk.chkNullString(ds.getString("id_people"))%></div></td> <td align="center"> <div style="width: 200px;"> <%=getEdu(chk.chkNullString(ds.getString("employeeid")),"bg",screen.getUProfile())%> </div> </td> <td align="center"> <div style="width: 200px;"> <%=getEdu(chk.chkNullString(ds.getString("employeeid")),"mj",screen.getUProfile())%> </div> </td> <td align="center"> <div style="width: 200px;"> <%=getEdu(chk.chkNullString(ds.getString("employeeid")),"gpa",screen.getUProfile())%> </div> </td> <td align="center"> <div style="width: 200px;"> <%=getEdu(chk.chkNullString(ds.getString("employeeid")),"ins",screen.getUProfile())%> </div> </td> <td align="center"> <div style="width: 80px;"> <%=dc.format(cost)%> </div> </td> <td align="center"> <div style="width: 80px;"> <%=dc.format(Double.parseDouble(getFixtab(chk.chkNullString(ds.getString("employeeid")),"F200",screen.getUProfile())))%> </div> </td> <td align="center"> <div style="width: 80px;"> <%=dc.format(Double.parseDouble(getFixtab(chk.chkNullString(ds.getString("employeeid")),"F201",screen.getUProfile())))%> </div> </td> <td align="center"> <div style="width: 80px;"> <%=dc.format(Double.parseDouble(getFixtab(chk.chkNullString(ds.getString("employeeid")),"F203",screen.getUProfile())))%> </div> </td> <td align="center"> <div style="width: 80px;"> <%=dc.format(Double.parseDouble(getFixtab(chk.chkNullString(ds.getString("employeeid")),"F204",screen.getUProfile())))%> </div> </td> <td align="center"> <div style="width: 80px;"> <%=dc.format(Double.parseDouble(getFixtab(chk.chkNullString(ds.getString("employeeid")),"F205",screen.getUProfile())))%> </div> </td> </tr> <% no++; } } catch(Exception e) { e.printStackTrace(); } %> </tbody> </table> <%} else if (statusFirst.equals("true")) {%> <div align="center" style="color: red;">ไม่พบข้อมูล</div><% }%> <!----------BEGIN CSC ENDING ZONE ------------------------> <%=screen.endJSP()%> <!----------END CSC ENDING ZONE --------------------------> <script>$('#loading').hide();</script> </form> </body> </html>