📄 all_users_duty.php
字号:
<?php
include_once( "inc/auth.php" );
include_once( "inc/check_type.php" );
include_once( "inc/utility_all.php" );
echo "\r\n<html>\r\n<head>\r\n<title>上下班记录查询</title>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\">\r\n<script language=\"JavaScript\">\r\nfunction remark(USER_ID,REGISTER_TYPE,REGISTER_TIME)\r\n{\r\n URL=\"remark.php?USER_ID=\"+USER_ID+\"®ISTER_TYPE=\"+REGISTER_TYPE+\"®ISTER_TIME=\"+REGISTER_TIME;\r\n myleft=(screen.availWidth-650)/2;\r\n 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\");\r\n}\r\n\r\n</script>\r\n</head>\r\n\r\n<body class=\"bodycolor\" topmargin=\"5\">\r\n";
if ( $DATE1 != "" )
{
$TIME_OK = is_date( $DATE1 );
if ( !$TIME_OK )
{
message( "错误", "起始日期格式不对,应形如 1999-1-2" );
button_back( );
exit( );
}
}
if ( $DATE2 != "" )
{
$TIME_OK = is_date( $DATE2 );
if ( !$TIME_OK )
{
message( "错误", "截止日期格式不对,应形如 1999-1-2" );
button_back( );
exit( );
}
}
if ( compare_date( $DATE1, $DATE2 ) == 1 )
{
message( "错误", "查询的起始日期不能晚于截止日期" );
button_back( );
exit( );
}
$query = "SELECT to_days('".$DATE2."')-to_days('{$DATE1}') from ATTEND_CONFIG";
$cursor = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor ) )
{
$DAY_TOTAL = $ROW[0] + 1;
}
echo "\r\n<table border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"3\" class=\"small\">\r\n <tr>\r\n <td class=\"Big\"><img src=\"/images/menu/attendance.gif\" WIDTH=\"22\" HEIGHT=\"20\" align=\"absmiddle\">\r\n <span class=\"big3\"> 上下班查询结果 - [";
echo format_date( $DATE1 );
echo " 至 ";
echo format_date( $DATE2 );
echo " 共 ";
echo $DAY_TOTAL;
echo " 天]</span><br>\r\n </td>\r\n </tr>\r\n</table>\r\n\r\n<br>\r\n\r\n";
$query = "SELECT * from SYS_PARA where PARA_NAME='NO_DUTY_USER'";
$cursor = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor ) )
{
$NO_DUTY_USER = $ROW['PARA_VALUE'];
}
$WHERE_STR = " where 1=1";
if ( $DEPARTMENT1 != "ALL_DEPT" )
{
$WHERE_STR .= " and DEPARTMENT.DEPT_ID='".$DEPARTMENT1."'";
}
if ( $DUTY_TYPE1 != "ALL_TYPE" )
{
$WHERE_STR .= " and USER.DUTY_TYPE='".$DUTY_TYPE1."' ";
}
$query4 = "SELECT USER.DUTY_TYPE,USER.USER_NAME,USER.USER_ID,DEPARTMENT.DEPT_NAME from USER,USER_PRIV,DEPARTMENT ".$WHERE_STR.( " and USER.NOT_LOGIN='0' and not find_in_set(USER.USER_ID,'".$NO_DUTY_USER."') and DEPARTMENT.DEPT_ID = USER.DEPT_ID and USER.USER_PRIV=USER_PRIV.USER_PRIV order by DEPT_NO,PRIV_NO,USER_NO,USER_NAME" );
$cursor4 = exequery( $connection, $query4 );
$USER_COUNT = 0;
while ( $ROW4 = mysql_fetch_array( $cursor4 ) )
{
++$USER_COUNT;
$DUTY_TYPE = $ROW4['DUTY_TYPE'];
$USER_NAME = $ROW4['USER_NAME'];
$DEPT_NAME = $ROW4['DEPT_NAME'];
$USER_ID = $ROW4['USER_ID'];
$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'];
}
if ( $USER_COUNT == 1 )
{
echo "\r\n<table class=\"TableList\" width=\"95%\" align=\"center\">\r\n <tr class=\"TableHeader\">\r\n <td nowrap align=\"center\">日期</td>\r\n <td nowrap align=\"center\">姓名</td> \r\n <td nowrap align=\"center\">部门</td> \r\n";
$COUNT = 0;
if ( $DUTY_TIME1 != "" )
{
++$COUNT;
if ( $DUTY_TYPE1 == "1" )
{
$DUTY_TYPE_DESC = "上班";
}
else
{
$DUTY_TYPE_DESC = "下班";
}
echo " <td nowrap align=\"center\">";
echo $DUTY_TYPE_DESC;
echo "(";
echo $DUTY_TIME1;
echo ")</td>\r\n";
}
if ( $DUTY_TIME2 != "" )
{
++$COUNT;
if ( $DUTY_TYPE2 == "1" )
{
$DUTY_TYPE_DESC = "上班";
}
else
{
$DUTY_TYPE_DESC = "下班";
}
echo " <td nowrap align=\"center\">";
echo $DUTY_TYPE_DESC;
echo "(";
echo $DUTY_TIME2;
echo ")</td>\r\n";
}
if ( $DUTY_TIME3 != "" )
{
++$COUNT;
if ( $DUTY_TYPE3 == "1" )
{
$DUTY_TYPE_DESC = "上班";
}
else
{
$DUTY_TYPE_DESC = "下班";
}
echo " <td nowrap align=\"center\">";
echo $DUTY_TYPE_DESC;
echo "(";
echo $DUTY_TIME3;
echo ")</td>\r\n";
}
if ( $DUTY_TIME4 != "" )
{
++$COUNT;
if ( $DUTY_TYPE4 == "1" )
{
$DUTY_TYPE_DESC = "上班";
}
else
{
$DUTY_TYPE_DESC = "下班";
}
echo " <td nowrap align=\"center\">";
echo $DUTY_TYPE_DESC;
echo "(";
echo $DUTY_TIME4;
echo ")</td>\r\n";
}
if ( $DUTY_TIME5 != "" )
{
++$COUNT;
if ( $DUTY_TYPE5 == "1" )
{
$DUTY_TYPE_DESC = "上班";
}
else
{
$DUTY_TYPE_DESC = "下班";
}
echo " <td nowrap align=\"center\">";
echo $DUTY_TYPE_DESC;
echo "(";
echo $DUTY_TIME5;
echo ")</td>\r\n";
}
if ( $DUTY_TIME6 != "" )
{
++$COUNT;
if ( $DUTY_TYPE6 == "1" )
{
$DUTY_TYPE_DESC = "上班";
}
else
{
$DUTY_TYPE_DESC = "下班";
}
echo " <td nowrap align=\"center\">";
echo $DUTY_TYPE_DESC;
echo "(";
echo $DUTY_TIME6;
echo ")</td>\r\n";
}
echo " </tr>\r\n";
}
$J = $DATE1;
for ( ; $J <= $DATE2; $J = date( "Y-m-d", strtotime( $J ) + 86400 ) )
{
$WEEK = date( "w", strtotime( $J ) );
$HOLIDAY = "";
$query = "select * from ATTEND_HOLIDAY where BEGIN_DATE <='".$J."' and END_DATE>='{$J}'";
$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>";
}
$query1 = "SELECT * from ATTEND_DUTY where USER_ID='".$USER_ID."' and to_days(REGISTER_TIME)=to_days('{$J}') GROUP by to_days(REGISTER_TIME)";
$cursor1 = exequery( $connection, $query1 );
$LINE_COUNT = 0;
if ( $ROW = mysql_fetch_array( $cursor1 ) )
{
++$LINE_COUNT;
$REGISTER_TIME = $ROW['REGISTER_TIME'];
if ( $HOLIDAY == "" )
{
$TableLine = "TableData";
}
else
{
$TableLine = "TableContent";
}
$query = "select * from ATTEND_EVECTION where USER_ID='".$USER_ID."' and ALLOW='1' and to_days(EVECTION_DATE1)<=to_days('{$J}') and to_days(EVECTION_DATE2)>=to_days('{$J}')";
$cursor = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor ) )
{
$HOLIDAY = "<font color='#008000'>出差</font>";
}
echo " <tr class=\"";
echo $TableLine;
echo "\">\r\n <td nowrap align=\"center\">";
echo $J;
echo "(周";
echo get_week( $J );
echo ")</td>\r\n <td nowrap align=\"center\">";
echo $USER_NAME;
echo "</td>\r\n <td nowrap align=\"center\">";
echo $DEPT_NAME;
echo "</td> \r\n";
$I = 1;
for ( ; $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;
if ( !( $DUTY_TIME_I == "" ) )
{
if ( $DUTY_TIME_I == "00:00:00" )
{
break;
}
}
else
{
continue;
}
$HOLIDAY1 = "";
if ( $HOLIDAY == "" )
{
$query = "select * from ATTEND_LEAVE where USER_ID='".$USER_ID."' and ALLOW='1' and LEAVE_DATE1<='{$J} {$DUTY_TIME_I}' and LEAVE_DATE2>='{$J} {$DUTY_TIME_I}'";
$cursor = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor ) )
{
$HOLIDAY1 = "<font color='#008000'>请假</font>";
}
}
else
{
$HOLIDAY1 = $HOLIDAY;
}
if ( $HOLIDAY == "" && $HOLIDAY1 == "" )
{
$query = "select * from ATTEND_OUT where USER_ID='".$USER_ID."' and ALLOW='1' and to_days(SUBMIT_TIME)=to_days('{$J}') 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 = "";
$REMARK = "";
$query = "SELECT * from ATTEND_DUTY where USER_ID='".$USER_ID."' and to_days(REGISTER_TIME)=to_days('{$J}') and REGISTER_TYPE='{$I}'";
$cursor = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor ) )
{
$REGISTER_TIME2 = $ROW['REGISTER_TIME'];
$REGISTER_TIME = $ROW['REGISTER_TIME'];
$REMARK = $ROW['REMARK'];
$REMARK = str_replace( "\n", "<br>", $REMARK );
$REGISTER_TIME = strtok( $REGISTER_TIME, " " );
$REGISTER_TIME = strtok( " " );
if ( $HOLIDAY1 == "" && $DUTY_TYPE_I == "1" && compare_time( $REGISTER_TIME, $DUTY_TIME_I ) == 1 )
{
$REGISTER_TIME .= " 迟到";
}
if ( $HOLIDAY1 == "" && $DUTY_TYPE_I == "2" && compare_time( $REGISTER_TIME, $DUTY_TIME_I ) == -1 )
{
$REGISTER_TIME .= " 早退";
}
if ( $REMARK != "" )
{
$REMARK = "<br>备注:".$REMARK;
}
}
else if ( $HOLIDAY1 == "" )
{
$REGISTER_TIME = "未登记";
}
else
{
$REGISTER_TIME = $HOLIDAY1;
}
echo " <td nowrap align=\"center\">";
echo $REGISTER_TIME;
echo $REMARK;
echo " \r\n";
if ( $REMARK != "" )
{
echo "<a href=\"javascript:remark('";
echo $USER_ID;
echo "','";
echo $I;
echo "','";
echo $REGISTER_TIME2;
echo "');\" title=\"修改备注\">修改</a>";
}
echo "\t\r\n </td>\r\n";
}
echo " </tr>\r\n";
}
else
{
echo " <tr>\r\n <td nowrap align=\"center\">";
echo $J;
echo "(周";
echo get_week( $J );
echo ")</td>\r\n <td nowrap align=\"center\">";
echo $USER_NAME;
echo "</td>\r\n <td nowrap align=\"center\">";
echo $DEPT_NAME;
echo "</td>\r\n";
$I = 1;
for ( ; $I <= $COUNT; ++$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;
$OUT = "";
$query = "select USER_ID from ATTEND_EVECTION where USER_ID='".$USER_ID."' and ALLOW='1' and to_days(EVECTION_DATE1)<=to_days('{$J}') and to_days(EVECTION_DATE2)>=to_days('{$J}')";
$cursor = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor ) )
{
$OUT = "<font color='#008000'>出差</font>";
}
$query = "select * from ATTEND_OUT where USER_ID='".$USER_ID."' and ALLOW='1' and to_days(SUBMIT_TIME)=to_days('{$J}') 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 ) )
{
$OUT = "<font color=red>未登记</font>(<font color='#008000'>外出</font>)";
}
$query = "select * from ATTEND_LEAVE where USER_ID='".$USER_ID."' and ALLOW='1' and LEAVE_DATE1 <= '{$J} {$DUTY_TIME_I}' and LEAVE_DATE2 >= '{$J} {$DUTY_TIME_I}'";
$cursor = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor ) )
{
$OUT = "<font color='#008000'>请假</font>";
}
if ( $OUT != "" && $HOLIDAY == "" )
{
echo "<td nowrap align=center>";
echo $OUT;
echo "</td>";
}
else if ( $HOLIDAY != "" )
{
echo "<td nowrap align=center>";
echo $HOLIDAY;
echo "</td>";
}
else
{
echo "<td nowrap align=center><font color=red>未登记</font></td>";
}
}
echo " \r\n </tr> \t\r\n";
}
}
}
echo "</table>\r\n";
button_back( );
echo "\r\n</body>\r\n</html>";
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -