您的位置:首页 > Web前端 > JavaScript

js计算请假时长

2015-11-11 16:08 507 查看
  <?php

if ($msg) {
$class = Utils::getMessageType($msg['status']);
echo "<div class='alert {$class[0]} alert-dismissable'>
<i class='fa {$class[1]}'></i>
<button class='close' aria-hidden='true' data-dismiss='alert' type='button'>×</button>
<b>提示:</b>{$msg['msg']}
</div>
";

     if(isset($__model__)){

      echo "<script type='text/javascript'>

      {$this->gridId}.refresh();

      </script>";

     }

}

$form = $this->beginWidget('SimpleForm', array(

    'id' => 'form1',

    'enableAjaxSubmit' => isset($__model__),

    'ajaxUpdateId' => 'content-body',

    'focus' => array($model, 'approve'),

    'role' => 'form', //可省略

    'formClass' => 'form-horizontal', //可省略 表单对齐样式

    'autoValidation' => true,

        ));

$dept_chk = json_decode($dept_chk);

if($dept_chk == '' || is_null($dept_chk)){
$dept_chk = array();

}

$start = $model["start"];

$end = $model["end"];

 

 

?>

 

<head>

    <link href="js/datetimepicker/css/bootstrap-datetimepicker.min.css" rel="stylesheet" media="screen">

</head>

<div class="box-body">
<div class="form-group">

    <?php
    echo $form->activeHiddenField($model, 'id', array('id' => 'id'));
   ?>

    </div>
<div class="form-group">

    <label for="group_name" class="col-sm-2 control-label">员工</label>
   <div class="col-sm-6">
    <label class="control-label">
    <?php

            if(isset($__model__)){

            echo $model['user_name'];

            } else {

            echo Yii::app()->user->user_name;

            }

            ?>
    </label>
   </div>

    </div>

    <div class="form-group">

    <label for="group_name" class="col-sm-2 control-label">部门</label>
   <div class="col-sm-6">
    <?php echo $form->activeDropDownList($model,"dept_id",$dept_chk,array('class' =>'form-control', 'check-type' => 'required'));?>

        <span class="help-block" style="color:#FF9966">多部门员工请选择一个部门,便于统计考勤。</span>
   </div>
   <span class="help-block" id="valierr" style="color:#FF9966">*</span>

    </div>

    <div class="form-group">

    <label for="group_name" class="col-sm-2 control-label">请假类型</label>
   <div class="col-sm-6">
    <?php echo $form->activeDropDownList($model,"sub_type",DailyTask::getSubType(),array('class' =>'form-control'));?>
   </div>

    </div>

    

    

    

    

    

    

    

    

    <!--  <div class="form-group">

    <label for="group_name" class="col-sm-2 control-label">开始时间</label>
   <div class="input-group date form_datetime col-sm-6" 
   data-date="<?php echo date('Y-m-d H:i',time());?>" 
   data-date-format="yyyy-mm-dd   HH:ii:ss " 
   data-link-field="dtp_input1" 
   style=" padding:0px 15px;">

           <input class="form-control" size="16" type="text" id="time_start"  value="<?php echo $model["start"];?>" readonly   >-->

           

           <div class="form-group">

    <label for="group_name" class="col-sm-2 control-label">开始时间</label>
   <div class="input-group date form_datetime col-sm-6" 
   data-date="<?php echo date('Y-m-d H:i',time());?>" 
   data-date-format="yyyy-mm-dd   hh:ii:ss " 
   data-link-field="dtp_input1" 
   style=" padding:0px 15px;">

           <input class="form-control" size="16" type="text" id="time_start"   value="<?php echo $model["start"];?>" readonly   >

            

           

           
  <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>

        </div>

        <input type="hidden" id="dtp_input1" value="<?php echo $model["start"];?>" name="DailyTask[start]"/><br/>

    </div>

    

    

    <div class="form-group">

    <label for="group_name" class="col-sm-2 control-label">结束时间</label>
   <div class="input-group date form_datetime col-sm-6" 
   data-date="<?php echo date('Y-m-d H:i',time());?>" 
   data-date-format="yyyy-mm-dd   hh:ii:ss " 
   data-link-field="dtp_input2" 
   style=" padding:0px 15px;">

           <input class="form-control" size="16" type="text" id="time_end"   value="<?php echo $model["end"];?>" readonly   >

           

           
  <span onblur="settext();" class="input-group-addon">
  <span onblur="settext();"  class="glyphicon glyphicon-calendar"></span></span>
  

        </div>

        
<input type="hidden" id="dtp_input2" value="<?php echo $model["end"];?>" name="DailyTask[end]"/><br/>

    </div>  

    

    

    

    <div class="form-group">

    <label for="group_name" class="col-sm-2 control-label">天数</label>

   

   

   
  <input type="text" id="days" value=" " name="DailyTask[days]" />

    <label  class="control-label">天</label>

    <input  type="text" id="hours" value=" " name="DailyTask[hours]" />

   

   

    <label class="control-label">小时</label>

    <!--  <button type="button" id="get_time" onclick="gettime();" class="btn btn-primary btn-sm">计算请假时长</button>-->
   </div>

    </div>

    

    

    

    <div class="form-group">

    <label for="group_name"  class="col-sm-2 control-label">备注</label>
   <div class="col-sm-6">
    <?php
    echo $form->activeTextField($model, 'reason', array('id' => 'reason', 'class' => 'form-control', 'mixlength' => '6'));
    ?>
   </div>

    </div>

    

    

    

    <div class="form-group">

        <div id="buttonDiv" class
12d00
="col-sm-offset-2 col-sm-10">

            <!-- <button type="button" id="submit" onclick="gettime();" class="btn btn-primary btn-lg">提交信息</button> -->

            <button type="submit" id="submit1" class="btn btn-primary btn-lg">保存</button>

            <button type="reset" class="btn btn-default btn-lg" style="margin-left: 10px">重置</button>

        </div>

    </div>

</div>

<?php $this->endWidget();?>

<script type="text/javascript">
$(document).ready(function(){
<?php if($__model__ == 'view'){?>
$("#buttonDiv").hide();
$("#form1 :input").attr("disabled",true);
<?php }?>
});

</script>

<script type="text/javascript" src="js/datetimepicker/js/bootstrap-datetimepicker.js" charset="UTF-8"></script>

<script type="text/javascript" src="js/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js" charset="UTF-8"></script>

<script type="text/javascript">

$('.form_datetime').datetimepicker({

    language:  'zh-CN',

    weekStart: 1,

    todayBtn:  1,
autoclose: 1,
todayHighlight: 1,
startView: 2,
forceParse: 0,

    showMeridian: 1

});

</script>

<!--  ////////////////////////////////////////请假的js -->

<script type="text/javascript" >

$(document).ready(function(){

  $("#submit1").mouseenter(function(){  

///////获取输入的开始结束日期  

var starttime = $("#time_start").val();    

var endtime = $("#time_end").val();  

////取出开始时间和结束时间的 天  小时  分钟 

var day1=starttime.substring(8,10);

var hour1=starttime.substring(13,15);

var hour11=starttime.substring(13,15);

var min1=starttime.substring(16,18);

var min11=starttime.substring(16,18);

var day2=endtime.substring(8,10);

var hour2=endtime.substring(13,15);

var hour22=endtime.substring(13,15);

var min2=endtime.substring(16,18);

var min22=endtime.substring(16,18);

var starttimeleft=starttime.substring(0,8);

var endtimeleft=endtime.substring(0,8);

//////根据上班时间 8:30--17:30 把小时和分钟变换到工作时区内

if(hour1<08)///////开始时间的小时/分钟的处理

{

min1=30;

hour1=08;

}

if(hour1==08 && min1<=30)

{

min1=30;

hour1=08;

}

if(hour1>17&&min1>30)
{
min1=30;
hour1=08;
}

if(hour1>=18)

{

min1=30;

hour1=08;

}

/////////////结束时间的小时/分钟处理

if(hour2<08)
{

min2=30;

hour2=17;
}

if(hour2==08 && min2<=30)

{

min2=30;

hour2=17;

}

if(hour2>17&&min2>30)
{
min2=30;
hour2=17;
}

if(hour2>=18)

{

min2=30;

hour2=17;

}

 

///变换后新的开始和结束时间 

var newstarttime=starttimeleft+day1+"  "+hour1+":"+min1;

var newendtime=endtimeleft+day2+"  "+hour2+":"+min2;

 alert(newstarttime+"   "+newendtime); 

///////计算时间差 (天 时 分  )

if(starttime!="" && endtime!="")
{

var begintime_ms = Date.parse(new Date(newstarttime.replace(/-/g, "/"))); //newstarttime 为开始时间

var endtime_ms = Date.parse(new Date(newendtime.replace(/-/g, "/")));   // newendtime 为结束时间

var ms = endtime_ms-begintime_ms;  //时间差的毫秒数

//计算出相差天数

var days=Math.floor(ms/(24*3600*1000));

//计算出小时数

var leave1=ms%(24*3600*1000)  ;  //计算天数后剩余的毫秒数

var hours=Math.floor(leave1/(3600*1000));

//计算相差分钟数

var leave2=leave1%(3600*1000)  ;      //计算小时数后剩余的毫秒数

var minutes=Math.floor(leave2/(60*1000));

//计算相差秒数

var leave3=leave2%(60*1000)  ;    //计算分钟数后剩余的毫秒数

var seconds=Math.round(leave3/1000);

//alert(" 相差 "+day_s+"天 "+hour_s+"小时 "+minutes+" 分钟"+seconds+" 秒");

/////处理分钟临界值30 大于30按一小时 小与30 按0.5小时

if (minutes>=30)
{
hours=hours+1;
}

else if (minutes>1 && minutes<30)
{
hours=hours+0.5;
}

alert(hours);  

////////////// 输入日期的hour11 hour22 min11  min22根据输入的开始结束时间的小时 分钟 修正天数 小时 

if(hours>=9)
{
days=days+1;
hours=0;
}

if(hour11<08) 

{     
days=days;
}
if(hour11==08 && min11<=30)
{
days=days;
}
if(hour11>17&&min11>30)
{
days=days-1;
}
if(hour11>=18)
{
days=days-1;
}
if(hour22<08)
{
days=days-1;
}
if(hour22==08 && min22<=30)
{
days=days-1;
}
if(hour22>17&&min22>30)
{
days=days ;
}
if(hour22>=18)
{
days=days;
}

 

var weeknum=parseInt(days/7 );//算出请假时间段内有几周

if (weeknum>1)

{

days=days-2*(weeknum-1);

}

var weekleft=days%7;//////算出整周后剩下几天时间

//将时间格式转换为xx/xx/xx/的格式

var year=starttimeleft.substring(0,4);

var moon=starttimeleft.substring(5,7);

var d=starttime.substring(8,10);

var ymd=year+"/"+ moon+"/"+ d;

var dayinweek= new Date(ymd).getDay();/////开始日期是星期几

///??????????????????////

if (dayinweek==1)
{
days=days-2;
}

if (dayinweek==2)
{
days=days-2;
}

if (dayinweek==3)
{
days=days-2;
}

if (dayinweek==4)
{
days=days-2;
}

if (dayinweek==5)
{
days=days-2;
}

if (dayinweek==6)
{
days=days-2;
}

if (dayinweek==7)
{
days=days-1;
}

/////?????????///////////

////处理中午休息的2个小时

    if( (hour11<08) && ( hour22>17&&min22>30)    ) { hours=hours-2;}

    if( (hour11<08) && ( hour22>=18)    ) { hours=hours-2;}

    
if( (hour11==08 && min11<=30)&&( hour22>17&&min22>30) ){hours=hours-2;}
if( (hour11==08 && min11<=30)&&( hour22>=18) ){hours=hours-2;}

if( (hour11>17&&min11>30)&&(hour22>17&&min22>30)   ){hours=hours-2;}
if( (hour11>17&&min11>30)&&(hour22>=18)   ){hours=hours-2;}

if( (hour11>=18)&&( hour22>17&&min22>30)  ){hours=hours-2;}
if( (hour11>=18)&&( hour22>=18)  ){hours=hours-2;}

/////////////
if(  (hour11==08 && min11>30)&&(  ( hour22>17&&min22<=30)||hour22<=16 )  ){hours=hours-2;}
if(  (hour11==08 && min11>30)&&  ( hour22>=18) ){hours=hours-2;}

if(   (hour11>=09)&& (  ( hour22>17&&min22<=30)||hour22<=16 )   ){hours=hours-2;}
if(   (hour11>=09)&& ( hour22>=18)     ){hours=hours-2;}
if(hours<0){hours=0;}

///////////////////////////////////

var obj_data=document.getElementById("days");

obj_data.value=days;

var obj_data=document.getElementById("hours");

obj_data.value=hours

}

  });

  });

</script>

后来的

  <?php

if ($msg) {
$class = Utils::getMessageType($msg['status']);
echo "<div class='alert {$class[0]} alert-dismissable'>
<i class='fa {$class[1]}'></i>
<button class='close' aria-hidden='true' data-dismiss='alert' type='button'>×</button>
<b>提示:</b>{$msg['msg']}
</div>
";

     if(isset($__model__)){

      echo "<script type='text/javascript'>

      {$this->gridId}.refresh();

      </script>";

     }

}

$form = $this->beginWidget('SimpleForm', array(

    'id' => 'form1',

    'enableAjaxSubmit' => isset($__model__),

    'ajaxUpdateId' => 'content-body',

    'focus' => array($model, 'approve'),

    'role' => 'form', //可省略

    'formClass' => 'form-horizontal', //可省略 表单对齐样式

    'autoValidation' => true,

        ));

$dept_chk = json_decode($dept_chk);

if($dept_chk == '' || is_null($dept_chk)){
$dept_chk = array();

}

$start = $model["start"];

$end = $model["end"];

 

 

?>

 

<head>

    <link href="js/datetimepicker/css/bootstrap-datetimepicker.min.css" rel="stylesheet" media="screen">

</head>

<div class="box-body">
<div class="form-group">

    <?php
    echo $form->activeHiddenField($model, 'id', array('id' => 'id'));
   ?>

    </div>
<div class="form-group">

    <label for="group_name" class="col-sm-2 control-label">员工</label>
   <div class="col-sm-6">
    <label class="control-label">
    <?php

            if(isset($__model__)){

            echo $model['user_name'];

            } else {

            echo Yii::app()->user->user_name;

            }

            ?>
    </label>
   </div>

    </div>

    <div class="form-group">

    <label for="group_name" class="col-sm-2 control-label">部门</label>
   <div class="col-sm-6">
    <?php echo $form->activeDropDownList($model,"dept_id",$dept_chk,array('class' =>'form-control', 'check-type' => 'required'));?>

        <span class="help-block" style="color:#FF9966">多部门员工请选择一个部门,便于统计考勤。</span>
   </div>
   <span class="help-block" id="valierr" style="color:#FF9966">*</span>

    </div>

    <div class="form-group">

    <label for="group_name" class="col-sm-2 control-label">请假类型</label>
   <div class="col-sm-6">
    <?php echo $form->activeDropDownList($model,"sub_type",DailyTask::getSubType(),array('class' =>'form-control'));?>
   </div>

    </div>

    

    

    

    

    

    

    

    

    <!--  <div class="form-group">

    <label for="group_name" class="col-sm-2 control-label">开始时间</label>
   <div class="input-group date form_datetime col-sm-6" 
   data-date="<?php echo date('Y-m-d H:i',time());?>" 
   data-date-format="yyyy-mm-dd   HH:ii:ss " 
   data-link-field="dtp_input1" 
   style=" padding:0px 15px;">

           <input class="form-control" size="16" type="text" id="time_start"  value="<?php echo $model["start"];?>" readonly   >-->

           

           <div class="form-group">

    <label for="group_name" class="col-sm-2 control-label">开始时间</label>
   <div class="input-group date form_datetime col-sm-6" 
   data-date="<?php echo date('Y-m-d H:i',time());?>" 
   data-date-format="yyyy-mm-dd   hh:ii:ss " 
   data-link-field="dtp_input1" 
   style=" padding:0px 15px;">

           <input class="form-control" size="16" type="text" id="time_start"   value="<?php echo $model["start"];?>" readonly   >

            

           

           
  <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>

        </div>

        <input type="hidden" id="dtp_input1" value="<?php echo $model["start"];?>" name="DailyTask[start]"/><br/>

    </div>

    

    

    <div class="form-group">

    <label for="group_name" class="col-sm-2 control-label">结束时间</label>
   <div class="input-group date form_datetime col-sm-6" 
   data-date="<?php echo date('Y-m-d H:i',time());?>" 
   data-date-format="yyyy-mm-dd   hh:ii:ss " 
   data-link-field="dtp_input2" 
   style=" padding:0px 15px;">

           <input class="form-control" size="16" type="text" id="time_end"   value="<?php echo $model["end"];?>" readonly   >

           

           
  <span onblur="settext();" class="input-group-addon">
  <span onblur="settext();"  class="glyphicon glyphicon-calendar"></span></span>
  

        </div>

        
<input type="hidden" id="dtp_input2" value="<?php echo $model["end"];?>" name="DailyTask[end]"/><br/>

    </div>  

    

    

    

    <div class="form-group">

    <label for="group_name" class="col-sm-2 control-label">天数</label>

   

   

   
  <input type="text" id="days" value=" " name="DailyTask[days]" />

    <label  class="control-label">天</label>

    <input  type="text" id="hours" value=" " name="DailyTask[hours]" />

   

   

    <label class="control-label">小时</label>

    <!--  <button type="button" id="get_time" onclick="gettime();" class="btn btn-primary btn-sm">计算请假时长</button>-->
   </div>

    </div>

    

    

    

    <div class="form-group">

    <label for="group_name"  class="col-sm-2 control-label">备注</label>
   <div class="col-sm-6">
    <?php
    echo $form->activeTextField($model, 'reason', array('id' => 'reason', 'class' => 'form-control', 'mixlength' => '6'));
    ?>
   </div>

    </div>

    

    

    

    <div class="form-group">

        <div id="buttonDiv" class="col-sm-offset-2 col-sm-10">

            <!-- <button type="button" id="submit" onclick="gettime();" class="btn btn-primary btn-lg">提交信息</button> -->

            <button type="submit" id="submit1" class="btn btn-primary btn-lg">保存</button>

            <button type="reset" class="btn btn-default btn-lg" style="margin-left: 10px">重置</button>

        </div>

    </div>

</div>

<?php $this->endWidget();?>

<script type="text/javascript">
$(document).ready(function(){
<?php if($__model__ == 'view'){?>
$("#buttonDiv").hide();
$("#form1 :input").attr("disabled",true);
<?php }?>
});

</script>

<script type="text/javascript" src="js/datetimepicker/js/bootstrap-datetimepicker.js" charset="UTF-8"></script>

<script type="text/javascript" src="js/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js" charset="UTF-8"></script>

<script type="text/javascript">

$('.form_datetime').datetimepicker({

    language:  'zh-CN',

    weekStart: 1,

    todayBtn:  1,
autoclose: 1,
todayHighlight: 1,
startView: 2,
forceParse: 0,

    showMeridian: 1

});

</script>

<!--  ////////////////////////////////////////请假的js -->

<script type="text/javascript" >

$(document).ready(function(){

  $("#submit1").mouseenter(function(){  

///////获取输入的开始结束日期  

var starttime = $("#time_start").val();    

var endtime = $("#time_end").val();  

////取出开始时间和结束时间的 天  小时  分钟 

var day1=starttime.substring(8,10);

var hour1=starttime.substring(13,15);

var hour11=starttime.substring(13,15);

var min1=starttime.substring(16,18);

var min11=starttime.substring(16,18);

var day2=endtime.substring(8,10);

var hour2=endtime.substring(13,15);

var hour22=endtime.substring(13,15);

var min2=endtime.substring(16,18);

var min22=endtime.substring(16,18);

var starttimeleft=starttime.substring(0,8);

var endtimeleft=endtime.substring(0,8);

//////根据上班时间 8:30--17:30 把小时和分钟变换到工作时区内

if(hour1<08)///////开始时间的小时/分钟的处理

{

min1=30;

hour1=08;

}

if(hour1==08 && min1<=30)

{

min1=30;

hour1=08;

}

if(hour1>17&&min1>30)
{
min1=30;
hour1=08;
}

if(hour1>=18)

{

min1=30;

hour1=08;

}

/////////////结束时间的小时/分钟处理

if(hour2<08)
{

min2=30;

hour2=17;
}

if(hour2==08 && min2<=30)

{

min2=30;

hour2=17;

}

if(hour2>17&&min2>30)
{
min2=30;
hour2=17;
}

if(hour2>=18)

{

min2=30;

hour2=17;

}

///变换后新的开始和结束时间 

var newstarttime=starttimeleft+day1+"  "+hour1+":"+min1;

var newendtime=endtimeleft+day2+"  "+hour2+":"+min2;

 //alert(newstarttime+"   "+newendtime); 

///////计算时间差 (天 时 分  )

if(starttime!="" && endtime!="")
{

var begintime_ms = Date.parse(new Date(newstarttime.replace(/-/g, "/"))); //newstarttime 为开始时间

var endtime_ms = Date.parse(new Date(newendtime.replace(/-/g, "/")));   // newendtime 为结束时间

var ms = endtime_ms-begintime_ms;  //时间差的毫秒数

//计算出相差天数

var days=Math.floor(ms/(24*3600*1000));

//计算出小时数

var leave1=ms%(24*3600*1000)  ;  //计算天数后剩余的毫秒数

var hours=Math.floor(leave1/(3600*1000));

//计算相差分钟数

var leave2=leave1%(3600*1000)  ;      //计算小时数后剩余的毫秒数

var minutes=Math.floor(leave2/(60*1000));

//计算相差秒数

var leave3=leave2%(60*1000)  ;    //计算分钟数后剩余的毫秒数

var seconds=Math.round(leave3/1000);

//alert(" 相差 "+day_s+"天 "+hour_s+"小时 "+minutes+" 分钟"+seconds+" 秒");

////////////// 输入日期的hour11 hour22 min11  min22根据输入的开始结束时间的小时 分钟 修正天数 小时 

if(hours>=9)
{
days=days+1;
hours=0;
}

if(hour11<08) 

{     
days=days;
}
if(hour11==08 && min11<=30)
{
days=days;
}
if(hour11>17&&min11>30)
{
days=days-1;
}
if(hour11>=18)
{
days=days-1;
}
if(hour22<08)
{
days=days-1;
}
if(hour22==08 && min22<=30)
{
days=days-1;
}
if(hour22>17&&min22>30)
{
days=days ;
}
if(hour22>=18)
{
days=days;
}

// alert(hours);

var weeknum=parseInt(days/7 );//算出请假时间段内有几周

if (weeknum>1)

{

days=days-2*(weeknum-1);

}

var weekleft=days%7;//////算出整周后剩下几天时间

//将时间格式转换为xx/xx/xx/的格式

var year=starttimeleft.substring(0,4);

var moon=starttimeleft.substring(5,7);

var d=starttime.substring(8,10);

var ymd=year+"/"+ moon+"/"+ d;

var dayinweek= new Date(ymd).getDay();/////开始日期是星期几

if (dayinweek==1)
{
days=days-2;
}

if (dayinweek==2)
{
days=days-2;
}

if (dayinweek==3)
{
days=days-2;
}

if (dayinweek==4)
{
days=days-2;
}

if (dayinweek==5)
{
days=days-2;
}

if (dayinweek==6)
{
days=days-2;
}

if (dayinweek==7)
{
days=days-1;
}

////处理中午休息的2个小时

/////////// 

   if( (hour11<=11)&&( hour22==13&&min22>=30)  ){hours=hours-2;}

   if( (hour11<=11)&&( hour22>=14)  ){hours=hours-2;}

   if( (hour11==11 && min11<=30)&&( hour22==13&&min22>=30) ){hours=hours-2;}

   if( (hour11==11 && min11<=30)&&( hour22>=14) ){hours=hours-2;}

/////////////开始时间在午休内

   if( ((hour11==11 && min11>30)||(hour11>=12&&hour11<13)||(hour11==13 && min11<30))&&((hour22>=14)||(hour22==13&&min22>=30)) )
  { var hournoon=13;
  var minnoon=30;
  var noon =endtimeleft+day2+"  "+hournoon+":"+minnoon;
  //alert(noon);
  var ms1 = Date.parse(new Date(newstarttime.replace(/-/g, "/"))); //newstarttime 为开始时间
  var ms2 = Date.parse(new Date(noon.replace(/-/g, "/")));   // newendtime 为结束时间
  var msnoon =  ms2-ms1;  //时间差的毫秒数
  var leavenoon1=msnoon%(24*3600*1000)  ;  //计算天数后剩余的毫秒数
  var hoursnoon=Math.floor(leavenoon1/(3600*1000)); 
  var leavenoon2=leavenoon1%(3600*1000)  ;      //计算小时数后剩余的毫秒数
var minutesnoon=Math.floor(leavenoon2/(60*1000));
if(minutes>= minutesnoon){
minutes=minutes- minutesnoon;}
if(minutes< minutesnoon){
minutes=minutes- minutesnoon+60;
hours=hours-1;
}
hours=hours-hoursnoon;
  } 

///////结束时间在午休 

   if( ((hour11==11 && min11<30)||( hour11<11) )&&
  ((hour22==11 && min22>30)||(hour22>=12&&hour22<13)||(hour22==13 && min22<30)) )

   { var hournoon3=11;

   var minnoon3=30;

   var noon3 =starttimeleft+day1+"  "+hournoon3+":"+minnoon3;

   var ms31 = Date.parse(new Date(noon3.replace(/-/g, "/"))); //newstarttime 为开始时间

   var ms32 = Date.parse(new Date(newendtime.replace(/-/g, "/")));   // newendtime 为结束时间

   var msnoon3 =  ms32-ms31;  //时间差的毫秒数

   var leavenoon31=msnoon3%(24*3600*1000)  ;  //计算天数后剩余的毫秒数

   var hoursnoon3=Math.floor(leavenoon31/(3600*1000)); 

   var leavenoon32=leavenoon31%(3600*1000)  ;      //计算小时数后剩余的毫秒数
var minutesnoon3=Math.floor(leavenoon32/(60*1000));
//alert(minutes);
if(minutes>= minutesnoon3){
minutes=minutes- minutesnoon3;}
if(minutes< minutesnoon3){
minutes=minutes- minutesnoon3+60;
hours=hours-1;

}
hours=hours-hoursnoon3;
//alert(minutes);
//alert(hours);
//alert(hoursnoon3);
 
//alert(minutesnoon3);
//alert(hours);

   }  

////都在午休内 

   if( ((hour11==11 && min11>30)||(hour11>=12&&hour11<13)||(hour11==13 && min11<30))&&
  ((hour22==11 && min22>30)||(hour22>=12&&hour22<13)||(hour22==13 && min22<30)) )

   {  
minutes=0;
hours=0; 

   } 

   //alert(minutes);

/////处理分钟临界值30 大于30按   0.5小时

    

   if (minutes>=30)

    {

    hours=hours+0.5;

    }
if(hours<0){hours=0;}

///////////////////////////////////

var obj_data=document.getElementById("days");

obj_data.value=days;

var obj_data=document.getElementById("hours");

obj_data.value=hours

}

  });

  });

</script>

   

   
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: