<%@ page contentType="text/html; charset=utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%@ taglib prefix="cm" uri="/commons-tags" %>

<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>考勤模块的系统配置</title>
<link href="../resources/style/base.css" rel="stylesheet" type="text/css"/>
<s:include value="../common/head.jsp" />
<script language="javascript" src="../resources/js/calendar/calendar.js"></script>
<script language="javascript">
function otherCheck(){
	if(!checkPeriod()) return false;
	if(!monthBeginCheck()) return false;
	return true;
}

function monthBeginCheck(){
	var isCurr=$("#monthTypeId").val()=="true";
	var $obj=$("#beginDayId");
	var bday=parseInt($obj.val(),10);
	if(isCurr){
		if(bday>=1 && bday<=15){
			return true;
		}
	}else{
		if(bday>=16 && bday <=28){
			return true;
		}
	}
	checkMessage($obj.get(0),"如果选择上月，只允许16日- 28日；如果是本月，只允许1日- 15日；缺省为本月1日。");
	return false;
}

function checkPeriod(){
	for(i=1;i<4;i++){
		if( (!checkSmall("late_"+i+"_1","late_"+i+"_2")) || (!checkSmall("early_"+i+"_1","early_"+i+"_2")) )
			return false;	
	}
	if( 
		(!checkSame("late_1_2","late_2_1")) || (!checkSame("late_2_2","late_3_1")) ||
		(!checkSame("early_1_2","early_2_1")) || (!checkSame("early_2_2","early_3_1"))
	){ return false; }
	return true;
}

function checkSame(id1,id2){
	var o1=$("#"+id1);
	var o2=$("#"+id2);
	if(parseInt(o1.val(),10)!=parseInt(o2.val(),10)){
		checkMessage(o2.get(0),"前一时间段的结束值（"+o1.val()+"）必须等于后一时间段的起始值（"+o2.val()+"）。");
		return false;
	}
	return true;
}

function checkSmall(id1,id2){
	var o1=$("#"+id1);
	var o2=$("#"+id2);
	if(parseInt(o1.val(),10)>parseInt(o2.val(),10)){
		checkMessage(o2.get(0),"时间段的结束值（"+o2.val()+"）不能小于起始值（"+o1.val()+"）。");
		return false;
	}
	return true;
}

</script>
</head>

<body>
<div class="body_form">
<s:include value="../common/body.jsp" />
<s:form action="sysConfigAtt" namespace="/system" onsubmit="return checkForm(this,otherCheck)">

 <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" class="table_line">
   <tr class="form_title">
     <td>迟到早退缺勤</td>
   </tr>
   <tr class="form_tr">
     <td>
     <span class="item">&nbsp;</span>迟到次数：迟到在 <s:textfield id="late_1_1" title="迟到时间 为必填项，且必须为数字" cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_LATE_1_MIN}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_LATE_1_MIN).value}"
     	cssStyle="width:30px;"/> 到 <s:textfield id="late_1_2" title="迟到时间 为必填项，且必须为数字"  cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_LATE_1_MAX}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_LATE_1_MAX).value}"
     	cssStyle="width:30px;"/> 分钟内算一次
        ；
     	迟到在 <s:textfield id="late_2_1" title="迟到时间 为必填项，且必须为数字"  cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_LATE_2_MIN}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_LATE_2_MIN).value}"
     	cssStyle="width:30px;"/> 到 <s:textfield id="late_2_2" title="迟到时间 为必填项，且必须为数字"  cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_LATE_2_MAX}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_LATE_2_MAX).value}"
     	cssStyle="width:30px;"/> 
     	分钟内算两次
		；
    	迟到在 
     	<s:textfield id="late_3_1" title="迟到时间 为必填项，且必须为数字" cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_LATE_3_MIN}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_LATE_3_MIN).value}"
     	cssStyle="width:30px;"/> 到 <s:textfield id="late_3_2" title="迟到时间 为必填项，且必须为数字" cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_LATE_3_MAX}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_LATE_3_MAX).value}"
     	cssStyle="width:30px;"/> 
     	分钟内算三次
     </td>
   </tr>  
    <tr class="form_tr">
     <td>
     <span class="item">&nbsp;</span>早退次数：早退在 <s:textfield id="early_1_1" title="早退时间 为必填项，且必须为数字" cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_EARLY_1_MIN}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_EARLY_1_MIN).value}"
     	cssStyle="width:30px;"/> 到 <s:textfield id="early_1_2" title="早退时间 为必填项，且必须为数字" cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_EARLY_1_MAX}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_EARLY_1_MAX).value}"
     	cssStyle="width:30px;"/> 分钟内算一次
        ；
     	早退在 <s:textfield id="early_2_1" title="早退时间 为必填项，且必须为数字" cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_EARLY_2_MIN}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_EARLY_2_MIN).value}"
     	cssStyle="width:30px;"/> 到 <s:textfield id="early_2_2" title="早退时间 为必填项，且必须为数字" cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_EARLY_2_MAX}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_EARLY_2_MAX).value}"
     	cssStyle="width:30px;"/> 
     	分钟内算两次
		；
    	早退在 
     	<s:textfield id="early_3_1" title="早退时间 为必填项，且必须为数字" cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_EARLY_3_MIN}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_EARLY_3_MIN).value}"
     	cssStyle="width:30px;"/> 到 <s:textfield id="early_3_2" title="早退时间 为必填项，且必须为数字" cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_EARLY_3_MAX}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_EARLY_3_MAX).value}"
     	cssStyle="width:30px;"/> 
     	分钟内算三次
     </td>
   </tr>  
    <tr class="form_tr">
     <td>
     <span class="item">&nbsp;</span>缺勤时间：迟到早退超过
     	<s:textfield title="缺勤时间 为必填项，且必须为数字" cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_ABSENT_MINUTES}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_ABSENT_MINUTES).value}"
     	cssStyle="width:30px;"/> 
     分钟算缺勤。 
     </td>
   </tr>     
 </table>

  <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" class="table_line" style="margin-top:15px;">
   <tr class="form_title">
     <td>考勤刷卡</td>
   </tr>
   <tr class="form_tr">
     <td>
     	<span class="item">&nbsp;</span>提前刷卡：上班最多提前<s:textfield title="提前刷卡时间 为必填项，且必须为数字" cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_ONJOB_SIGN_BEFORE_MINUTES}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_ONJOB_SIGN_BEFORE_MINUTES).value}"
     	cssStyle="width:30px;"/> 分钟刷卡。 
     </td>
   </tr>
   <tr class="form_tr">
     <td>
     	<span class="item">&nbsp;</span>延后刷卡：下班最晚延后<s:textfield title="延后刷卡时间 为必填项，且必须为数字" cssClass="center"
     	name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_ONJOB_SIGN_AFTER_MINUTES}']" 
     	value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_ONJOB_SIGN_AFTER_MINUTES).value}"
     	cssStyle="width:30px;"/> 分钟刷卡。 
     </td>
   </tr>   
 </table>

  <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" class="table_line" style="margin-top:15px;">
   <tr class="form_title">
     <td>考勤统计</td>
   </tr>
   <tr class="form_tr">
     <td>
     	<span class="item">&nbsp;</span>
        每月考勤汇总：从
        <s:select id="monthTypeId" name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_DATE_MONTH_IS_CURR}']"
        	list="#{'false':'上月', 'true':'本月'}"
            value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_DATE_MONTH_IS_CURR).value}"/>
        <s:textfield id="beginDayId" title="每月考勤汇总 为必填项，且必须为数字" cssClass="center"
     		name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_DATE_MONTH_BEGIN_DAY}']" 
     		value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_DATE_MONTH_BEGIN_DAY).value}"
     		cssStyle="width:30px;"/> 日开始计算
			&nbsp;&nbsp;
			<div style="margin:2px 0 5px 18px;" class="info">
			如果选择上月，只允许16日- 28日；如果是本月，只允许1日- 15日；缺省为本月1日。
			</div>

     </td>
   </tr>
   <tr class="form_tr">
     <td>
     	<span class="item">&nbsp;</span>
        考勤时间换算：一天等于<s:textfield title="考勤时间换算值 必须为数字" cssClass="center"
     		name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_HOUR_CONVERT_DAY}']" 
     		value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_HOUR_CONVERT_DAY).value}"
     		cssStyle="width:30px;"/> 小时 
     </td>
   </tr>  
   <tr class="form_tr">
     <td>
     	<span class="item">&nbsp;</span>
        出差时间换算：出差时间包含了
        <s:textfield title="出差时间换算时间段 为必填项" cssClass="date_input" onClick="showTimeOnly(this,false)" 
     		name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_TRAVEL_FULL_DAY_BEGIN_TIME}']" 
     		value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_TRAVEL_FULL_DAY_BEGIN_TIME).value}"
     		cssStyle="width:50px;"/>
            至
            <s:textfield title="出差时间换算时间段 为必填项" cssClass="date_input" onClick="showTimeOnly(this,false)" 
     		name="formData['%{@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_TRAVEL_FULL_DAY_END_TIME}']" 
     		value="%{confMap.get(@com.hrmex.web.constants.ConstantSysConfig$AttConfig@ATT_TRAVEL_FULL_DAY_END_TIME).value}"
     		cssStyle="width:50px;"/>
            时间段的算一天，否则算半天。
     </td>
   </tr>      
 </table>


	<div style="padding:10px; text-align:center;">
    <input type="submit" name="button" id="button" value="修 改" />
    </div>

</s:form>
</div>
</body>
</html>