user.php

来自「通达OA2007SE源代码 非常好的」· PHP 代码 · 共 391 行

PHP
391
字号
<?
  function datediff ($interval, $date1, $date2)
  {
    $timedifference = (y_m_d ($date2) - y_m_d ($date1));
    switch ($interval)
    {
      case 'w':
      {
        $retval = bcdiv ($timedifference, 604800, 0);
        break;
      }
      case 'd':
      {
        $retval = bcdiv ($timedifference, 86400, 0);
        break;
      }
      case 'h':
      {
        $retval = bcdiv ($timedifference, 3600, 0);
        break;
      }
      case 'n':
      {
        $retval = bcdiv ($timedifference, 60, 0);
        break;
      }
      case 's':
      {
        $retval = $timedifference;
        break;
      }
    }
    return ($retval + 1);
  }
  function y_m_d ($date)
  {
    $STR = strtok ($date, '-');
    $YEAR = $STR;
    $STR = strtok ('-');
    $MONTH = $STR;
    $STR = strtok (' ');
    $DAY = $STR;
    $TIME = mktime (0, 0, 0, $MONTH, $DAY, $YEAR);
    return $TIME;
  }
  include_once 'inc/auth.php';
  include_once 'inc/utility_all.php';
  echo '
<html>
<head>
<title>人员考勤管理</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
';
  echo '<s';
  echo 'cript language="JavaScript">
function remark(USER_ID,REGISTER_TYPE,REGISTER_TIME)
{
  URL="remark.php?USER_ID="+USER_ID+"&REGISTER_TYPE="+REGISTER_TYPE+"&REGISTER_TIME="+REGISTER_TIME;
  myleft=(screen.availWidth-650)/2;
  window.open(URL,"formul_edit","height=250,width=450,status=0,toolbar=no,menubar=no,location=no,scrollbars=yes,top=150,left="+myleft+",resizable=yes");
}
function CheckF';
  echo 'orm1()
{
   if(document.form1.DATE1.value=="")
   { alert("起始日期不能为空!");
     return (false);
   }
   if(document.form1.DATE2.value=="")
   { alert("截止日期不能为空!");
     return (false);
   }
   return (true);
}
function CheckForm2()
{
   if(document.form2.SOME_DATE.value=="")
   { alert("查询日期不能为空!");
     return (false);
   }
   return (true);
}
';
  echo '
function td_calendar(fieldname)
{
  myleft=document.body.scrollLeft+event.clientX-event.offsetX-80;
  mytop=document.body.scrollTop+event.clientY-event.offsetY+140;
  window.showModalDialog("/inc/calendar.php?FIELDNAME="+fieldname,self,"edge:raised;scroll:0;status:0;help:0;resizable:1;dialogWidth:280px;dialogHeight:215px;dialogTop:"+mytop+"px;dialogLeft:"+myleft+"px");
}
</script>
</head>
';
  echo '
<body class="bodycolor" topmargin="5">
';
  $SOME_DATE = date ('Y-m-d', time ());
  $query1 = (((''.'select * from USER where USER_ID=\'').$USER_ID).'\'');
  $cursor1 = exequery ($connection, $query1);
  if ($ROW = mysql_fetch_array ($cursor1))
  {
    $DUTY_TYPE = $ROW['DUTY_TYPE'];
    $USER_NAME = $ROW['USER_NAME'];
  }
  $CUR_DATE = date ('Y-m-d', time ());
  $query = (((''.'SELECT LEAVE_TYPE from HRMS where USER_ID=\'').$USER_ID).'\'');
  $cursor = exequery ($connection, $query);
  if ($ROW = mysql_fetch_array ($cursor))
  {
    $LEAVE_TYPE1 = $ROW['LEAVE_TYPE'];
  }
  $BEGIN_TIME = (substr ($CUR_DATE, 0, 4).'-01-01 00:00:01');
  $END_TIME = (substr ($CUR_DATE, 0, 4).'-12-30 23:59:59');
  $query = (((((((''.'SELECT * from ATTEND_LEAVE where USER_ID=\'').$USER_ID).'\' and (STATUS!=\'0\' or STATUS!=\'2\') and LEAVE_DATE1 >=\'').$BEGIN_TIME).'\' and LEAVE_DATE2 <=\'').$END_TIME).'\'');
  $cursor = exequery ($connection, $query);
  while ($ROW = mysql_fetch_array ($cursor))
  {
    $LEAVE_DATE1 = $ROW['LEAVE_DATE1'];
    $LEAVE_DATE2 = $ROW['LEAVE_DATE2'];
    $DIFF = datediff ('d', $LEAVE_DATE1, $LEAVE_DATE2);
    $DAYS = ($DAYS + $DIFF);
  }
  $MY_DAYS = ($LEAVE_TYPE1 - $DAYS);
  message ('', ((($USER_NAME.'<br>年假还剩').$MY_DAYS).'天'));
  $query = ((''.'SELECT * from ATTEND_CONFIG where DUTY_TYPE=').$DUTY_TYPE);
  $cursor = exequery ($connection, $query);
  if ($ROW = mysql_fetch_array ($cursor))
  {
    $DUTY_NAME = $ROW['DUTY_NAME'];
    $GENERAL = $ROW['GENERAL'];
    $DUTY_TIME1 = $ROW['DUTY_TIME1'];
    $DUTY_TIME2 = $ROW['DUTY_TIME2'];
    $DUTY_TIME3 = $ROW['DUTY_TIME3'];
    $DUTY_TIME4 = $ROW['DUTY_TIME4'];
    $DUTY_TIME5 = $ROW['DUTY_TIME5'];
    $DUTY_TIME6 = $ROW['DUTY_TIME6'];
    $DUTY_TYPE1 = $ROW['DUTY_TYPE1'];
    $DUTY_TYPE2 = $ROW['DUTY_TYPE2'];
    $DUTY_TYPE3 = $ROW['DUTY_TYPE3'];
    $DUTY_TYPE4 = $ROW['DUTY_TYPE4'];
    $DUTY_TYPE5 = $ROW['DUTY_TYPE5'];
    $DUTY_TYPE6 = $ROW['DUTY_TYPE6'];
  }
  $WEEK = date ('w', strtotime ($SOME_DATE));
  $HOLIDAY = '';
  $query = (((((''.'select * from ATTEND_HOLIDAY where BEGIN_DATE <=\'').$SOME_DATE).'\' and END_DATE>=\'').$SOME_DATE).'\'');
  $cursor = exequery ($connection, $query);
  if ($ROW = mysql_fetch_array ($cursor))
  {
    $HOLIDAY = '<font color=\'#008000\'>节假日</font>';
  }
  else
  {
    if (find_id ($GENERAL, $WEEK))
    {
      $HOLIDAY = '<font color=\'#008000\'>公休日</font>';
    }
  }
  if (($HOLIDAY == ''))
  {
    $query = (((((((''.'select * from ATTEND_EVECTION where USER_ID=\'').$USER_ID).'\' and ALLOW=\'1\' and to_days(EVECTION_DATE1)<=to_days(\'').$SOME_DATE).'\') and to_days(EVECTION_DATE2)>=to_days(\'').$SOME_DATE).'\')');
    $cursor = exequery ($connection, $query);
    if ($ROW = mysql_fetch_array ($cursor))
    {
      $HOLIDAY = '<font color=\'#008000\'>出差</font>';
    }
  }
  echo '
<!----  上下班登记 ---->
<table border="0" width="100%" cellspacing="0" cellpadding="3" class="small">
  <tr>
    <td class="Big"><img src="/images/menu/attendance.gif" WIDTH="22" HEIGHT="20" align="absmiddle">';
  echo '<s';
  echo 'pan class="big3"> 今日上下班登记 (';
  echo $DUTY_NAME;
  echo ')</span><br>
    </td>
  </tr>
</table>
<table border="0" cellspacing="1" width="95%" class="small" bgcolor="#000000" cellpadding="2" align="center">
    <tr class="TableHeader">
      <td nowrap align="center">登记次序</td>
      <td nowrap align="center">登记类型</td>
      <td nowrap align="center">规定时间</td>
      <td nowrap align="center">登记时间</td>
      <td nowrap align="center">登记IP</td';
  echo '>
      <td nowrap align="center">操作</td>
    </tr>
';
  $CUR_DATE = date ('Y-m-d', time ());
  for ($I = 1; ($I <= 6); ++$I)
  {
    $DUTY_TIME_I = ('DUTY_TIME'.$I);
    $DUTY_TIME_I = $$DUTY_TIME_I;
    $DUTY_TYPE_I = ('DUTY_TYPE'.$I);
    $DUTY_TYPE_I = $$DUTY_TYPE_I;
    $SIGN = '0';
    if ((($DUTY_TIME_I == '') OR ($DUTY_TIME_I == '00:00:00')))
    {
      continue;
    }
    else
    {
      $HOLIDAY1 = '';
      if (($HOLIDAY == ''))
      {
        $query = (((((((((((''.'select * from ATTEND_LEAVE where USER_ID=\'').$USER_ID).'\' and ALLOW=\'1\' and LEAVE_DATE1<=\'').$SOME_DATE).' ').$DUTY_TIME_I).'\' and LEAVE_DATE2>=\'').$SOME_DATE).' ').$DUTY_TIME_I).'\'');
        $cursor = exequery ($connection, $query);
        if ($ROW = mysql_fetch_array ($cursor))
        {
          $HOLIDAY1 = '<font color=\'#008000\'>请假</font>';
        }
      }
      else
      {
        $HOLIDAY1 = $HOLIDAY;
      }
      if ((($HOLIDAY == '') AND ($HOLIDAY1 == '')))
      {
        $query = (((((((((''.'select * from ATTEND_OUT where USER_ID=\'').$USER_ID).'\' and ALLOW=\'1\' and to_days(SUBMIT_TIME)=to_days(\'').$SOME_DATE).'\') and OUT_TIME1<=\'').substr ($DUTY_TIME_I, 0, strrpos ($DUTY_TIME_I, ':'))).'\' and OUT_TIME2>=\'').substr ($DUTY_TIME_I, 0, strrpos ($DUTY_TIME_I, ':'))).'\'');
        $cursor = exequery ($connection, $query);
        if ($ROW = mysql_fetch_array ($cursor))
        {
          $HOLIDAY1 = '<font color=\'#008000\'>外出</font>';
        }
      }
      $REGISTER_TIME = '';
      $REGISTER_IP = '';
      $REMARK = '';
      $query = (((((((''.'SELECT * from ATTEND_DUTY where USER_ID=\'').$USER_ID).'\' and to_days(REGISTER_TIME)=to_days(\'').$CUR_DATE).'\') and REGISTER_TYPE=\'').$I).'\'');
      $cursor = exequery ($connection, $query);
      if ($ROW = mysql_fetch_array ($cursor))
      {
        $REGISTER_TIME = $ROW['REGISTER_TIME'];
        $REGISTER_TIME2 = $ROW['REGISTER_TIME'];
        $REMARK = $ROW['REMARK'];
        $REGISTER_IP = $ROW['REGISTER_IP'];
        $REGISTER_TIME = strtok ($REGISTER_TIME, ' ');
        $REGISTER_TIME = strtok (' ');
        if (((($HOLIDAY1 == '') AND ($DUTY_TYPE_I == '1')) AND (compare_time ($REGISTER_TIME, $DUTY_TIME_I) == 1)))
        {
          ($REGISTER_TIME .= ' 迟到');
          $SIGN = '1';
        }
        if (((($HOLIDAY1 == '') AND ($DUTY_TYPE_I == '2')) AND (compare_time ($REGISTER_TIME, $DUTY_TIME_I) == -1)))
        {
          ($REGISTER_TIME .= ' 早退');
          $SIGN = '1';
        }
        if (($REMARK != ''))
        {
          $REMARK = ('<br>备注:'.$REMARK);
        }
      }
      if (($DUTY_TYPE_I == '1'))
      {
        $DUTY_TYPE_DESC = '上班登记';
      }
      else
      {
        $DUTY_TYPE_DESC = '下班登记';
      }
      echo '    <tr class="TableData">
      <td nowrap align="center">第';
      echo $I;
      echo '次登记</td>
      <td nowrap align="center">';
      echo $DUTY_TYPE_DESC;
      echo '</td>
      <td nowrap align="center">';
      echo $DUTY_TIME_I;
      echo '</td>
      <td nowrap align="center">
';
      if (($REGISTER_TIME == ''))
      {
        if (($HOLIDAY1 == ''))
        {
          echo '未登记';
        }
        else
        {
          echo $HOLIDAY1;
        }
      }
      else
      {
        echo ($REGISTER_TIME.$REMARK);
      }
      echo '      </td>
      <td nowrap align="center">';
      echo $REGISTER_IP;
      echo '</td>
      <td nowrap align="center">
';
      if (($REGISTER_TIME == ''))
      {
        echo '        <a href="duty_submit.php?REGISTER_TYPE=';
        echo $I;
        echo '&USER_ID=';
        echo $USER_ID;
        echo '">';
        echo $DUTY_TYPE_DESC;
        echo '</a>
';
      }
      else
      {
        echo '       <a href="javascript:remark(\'';
        echo $USER_ID;
        echo '\',\'';
        echo $I;
        echo '\',\'';
        echo $REGISTER_TIME2;
        echo '\');">备注</a>
';
      }
      echo '      </td>
    </tr>
';
      continue;
    }
  }
  echo '  <tr class="TableHeader">
  <td colspan="6" align="center">
  <input type="button"  value="修改登记时间" class="SmallButton" onClick="location=\'duty_edit.php?DUTY_TYPE=';
  echo $DUTY_TYPE;
  echo '&USER_ID=';
  echo $USER_ID;
  echo '&SOME_DATE=';
  echo $SOME_DATE;
  echo '\'">
  </td>
  </tr>
</table>
<br>
<table width="95%" border="0" cellspacing="0" cellpadding="0" height="3">
 <tr>
   <td background="/images/dian1.gif" width="100%"></td>
 </tr>
</table>
<table border="0" width="100%" cellspacing="0" cellpadding="3" class="small">
  <tr>
    <td class="Big"><img src="/images/menu/attendance.gif" WIDTH="22" HEIGHT="20" align="absmiddle">';
  echo '<s';
  echo 'pan class="big3"> 考勤查询与统计</span><br>
    </td>
  </tr>
</table>
';
  $CUR_DATE_FIRST = date ('Y-m-01', time ());
  echo '
<div align="center" class="big1">
<form action="search.php" name="form1" onsubmit="return CheckForm1();">
<b>
起始日期:<input type="text" name="DATE1" class="BigInput" size="10" maxlength="10" value="';
  echo $CUR_DATE_FIRST;
  echo '">
          <img src="/images/menu/calendar.gif" border="0" style="cursor:hand" onclick="td_calendar(\'form1.DATE1\');">
&nbsp;
截止日期:<input type="text" name="DATE2" class="BigInput" size="10" maxlength="10" value="';
  echo $CUR_DATE;
  echo '">
          <img src="/images/menu/calendar.gif" border="0" style="cursor:hand" onclick="td_calendar(\'form1.DATE2\');">
&nbsp;
<input type="hidden" name="USER_ID" value="';
  echo $USER_ID;
  echo '">
<input type="submit" value="考勤统计" class="BigButton" title="考勤统计">
</form>
<br>
<form action="some_day.php" name="form2" onsubmit="return CheckForm2();">
查询日期:<input type="text" name="SOME_DATE" class="BigInput" size="10" maxlength="10" value="';
  echo $CUR_DATE;
  echo '">
          <img src="/images/menu/calendar.gif" border="0" style="cursor:hand" onclick="td_calendar(\'form2.SOME_DATE\');">
&nbsp;
<input type="hidden" name="USER_ID" value="';
  echo $USER_ID;
  echo '">
<input type="submit" value="上下班登记查询" class="BigButton" title="上下班登记查询">
</b>
</form>
</div>
<br>
</body>
</html>
';
?>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?