📄 import.php
字号:
<?php
include_once( "inc/auth.php" );
include_once( "inc/utility_all.php" );
echo "<html>\r\n<head>\r\n<title>导入数据</title>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\">\r\n</head>\r\n<body class=\"bodycolor\" topmargin=\"5\">\r\n";
if ( $FILE_NAME == "" )
{
echo "<script Language=\"JavaScript\">\r\nfunction CheckForm()\r\n{\r\n if(document.form1.CSV_FILE.value==\"\")\r\n { alert(\"请选择要导入的文件!\");\r\n return (false);\r\n }\r\n\r\n if (document.form1.CSV_FILE.value!=\"\")\r\n {\r\n var file_temp=document.form1.CSV_FILE.value,file_name;\r\n var Pos;\r\n Pos=file_temp.lastIndexOf(\"\\\\\");\r\n file_name=file_temp.substring(Pos+1,file_temp.length);\r\n document.form1.FILE_NAME.value=file_name;\r\n }\r\n\r\n return (true);\r\n}\r\n\r\n</script>\r\n <table border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"3\" class=\"small\">\r\n <tr>\r\n <td class=\"Big\"><img src=\"/images/sys_config.gif\" align=\"absmiddle\"><span class=\"big3\"> 导入人事数据</span><br>\r\n </td>\r\n </tr>\r\n </table>\r\n <br>\r\n <br>\r\n <div align=\"center\" class=\"Big1\">\r\n <b>请指定用于导入的CSV文件:</b>\r\n <form name=\"form1\" method=\"post\" action=\"import.php?FLOW_ID=";
echo $FLOW_ID;
echo "\" enctype=\"multipart/form-data\" onSubmit=\"return CheckForm();\">\r\n <input type=\"file\" name=\"CSV_FILE\" class=\"BigInput\" size=\"30\">\r\n <input type=\"hidden\" name=\"FILE_NAME\">\r\n <input type=\"hidden\" name=\"GROUP_ID\" value=\"";
echo $GROUP_ID;
echo "\">\r\n <input type=\"submit\" value=\"导入\" class=\"BigButton\">\r\n </form>\r\n 请使用人事档案模板导入数据!<a href=\"#\" onClick=\"window.location='templet_export.php'\">人事档案模板下载</a>\r\n <br>\r\n ";
if ( $FILE_NAME == "" )
{
message( "说明", "1)EXECL的人事报表的第一列必须为姓名,余下的列名称必须与人员档案基本信息相对应;<BR>2)将改好的EXECL人员信息报表另存为CSV格式的文件;" );
}
echo " </div>\r\n";
exit( );
}
if ( strtolower( substr( $FILE_NAME, -3 ) ) != "csv" )
{
message( "错误", "只能导入CSV文件!" );
button_back( );
exit( );
}
$title = array( "姓名" => "USER_ID", "部门" => "DEPT_NAME", "编号" => "NO", "身份证号码" => "CARD_NO", "婚姻状况" => "MARRY", "民族" => "NATION", "籍贯" => "NATIVE_PLACE", "户口所在地" => "HUKOU_PLACE", "参加工作时间" => "WORK_DATE", "加入本单位时间" => "JOIN_DATE", "学历" => "EDUCATION", "专业" => "SPECIALITY", "毕业院校" => "SCHOOL", "政治面貌" => "POLITICS", "职务" => "POST", "职称" => "TECH_POST", "家庭住址" => "HOME_ADDR", "家庭电话" => "HOME_TEL", "职务情况" => "CERTIFICATE", "奖惩记录" => "REWARD", "培训记录" => "TRAIN", "教育背景" => "EDU", "工作简历" => "WORK", "社会关系" => "SOCIATY", "岗位变动情况" => "POST_CHANGE", "担保记录" => "SURETY", "劳动合同签订情况" => "CONTRACT", "社保缴纳情况" => "INSURE", "体检记录" => "BODY_EXAMIM", "备 注" => "RESUME", "出生日期" => "HR_BIRTHDAY", "员工类型" => "CONTRACTTYPE", "性别" => "SEX", "合同开始日期" => "CONTRACT_DATE1", "合同结束日期" => "CONTRACT_DATE2", "电子邮件" => "EMAIL" );
$ROW_COUNT = 0;
$data = file_get_contents( $CSV_FILE );
if ( !$data )
{
message( "错误", "打开文件错误!" );
button_back( );
exit( );
}
$lines = csv2array( $data, $title );
$MSG_ERROR = array( );
foreach ( $lines as $line )
{
$DATA_NUM = count( $line );
$STR_VALUE = "";
$STR_UPDATE = "";
$STR_KEY = "";
$STR_UPDATEKEY = "";
$MSG_ERROR[$ROW_COUNT] = "成功";
foreach ( $line as $key => $value )
{
$value = ltrim( $value );
if ( $key != "DEPT_NAME" && $key != "USER_ID" )
{
$STR_KEY .= $key.",";
$STR_UPDATEKEY .= $key.",";
}
else
{
if ( $key == "DEPT_NAME" )
{
$DEPT_NAME = $value;
}
if ( $key == "USER_ID" )
{
$USER_NAME = $value;
if ( $value == "" )
{
$MSG_ERROR[$ROW_COUNT] = "<font color=red>用户为空,未导入</font>";
}
}
}
if ( $key == "HR_BIRTHDAY" )
{
$BIRTHDAY = $value;
}
if ( $key == "SEX" )
{
if ( $value == "男" )
{
$SEX = "0";
}
else
{
$SEX = "1";
}
}
switch ( $value )
{
case "未婚" :
$value = "0";
break;
case "已婚" :
$value = "1";
break;
case "离异" :
$value = "2";
break;
case "丧偶" :
$value = "3";
break;
case "群众" :
$value = "1";
break;
case "团员" :
$value = "2";
break;
case "党员" :
$value = "3";
break;
case "预备党员" :
$value = "4";
break;
case "男" :
$value = "0";
break;
case "女" :
$value = "1";
}
if ( $key != "NATIVE_PLACE" && $key != "EDUCATION" && $key != "TECH_POST" && $key != "CONTRACTTYPE" && $key != "DEPT_NAME" && $key != "USER_ID" )
{
$STR_VALUE .= "'".$value."',";
$STR_UPDATE .= "{$key}='{$value}',";
}
else if ( !( $key != "DEPT_NAME" ) && !( $key != "USER_ID" ) )
{
$query1 = "select CODE_NO from SYS_CODE where PARENT_NO='".$key."' and CODE_NAME='{$value}'";
if ( $key == "NATIVE_PLACE" )
{
$query1 = "select CODE_NO from SYS_CODE where PARENT_NO='AREA' and CODE_NAME='".$value."'";
}
if ( $key == "EDUCATION" )
{
$query1 = "select CODE_NO from SYS_CODE where PARENT_NO='EDUCATION' and CODE_NAME='".$value."'";
}
$cursor1 = exequery( $connection, $query1 );
if ( $ROW = mysql_fetch_array( $cursor1 ) )
{
$STR_VALUE .= "'".$ROW['0']."',";
$STR_UPDATE .= "{$key}='{$ROW['0']}',";
}
else
{
$STR_VALUE .= "'".$value."',";
$STR_UPDATE .= "{$key}='{$value}',";
}
}
}
if ( substr( $STR_KEY, -1 ) == "," )
{
$STR_KEY = substr( $STR_KEY, 0, -1 );
$STR_UPDATEKEY = substr( $STR_UPDATEKEY, 0, -1 );
}
if ( substr( $STR_VALUE, -1 ) == "," )
{
$STR_VALUE = substr( $STR_VALUE, 0, -1 );
$STR_UPDATE = substr( $STR_UPDATE, 0, -1 );
}
$query1 = "SELECT a.USER_ID,a.DEPT_ID from USER a left outer join DEPARTMENT b on a.DEPT_ID=b.DEPT_ID where a.USER_NAME='".$USER_NAME."' and b.DEPT_NAME='{$DEPT_NAME}'";
$cursor1 = exequery( $connection, $query1 );
if ( $ROW = mysql_fetch_array( $cursor1 ) )
{
$USER_ID = $ROW['USER_ID'];
$MSG_ERROR[$ROW_COUNT] = "<font color=green>已有用户,资料已更新</font>";
$query1 = "SELECT * from HRMS where USER_ID='".$USER_ID."'";
$cursor = exequery( $connection, $query1 );
if ( mysql_num_rows( $cursor ) == 0 )
{
$query = "insert into HRMS (USER_ID,".$STR_KEY.( ") values ('".$USER_ID."'," ).$STR_VALUE.")";
exequery( $connection, $query );
}
else
{
$query1 = "update `HRMS` SET ".$STR_UPDATE." where USER_ID='".$USER_ID."'";
$cursor1 = exequery( $connection, $query1 );
}
}
else
{
do
{
$USER_ID = rand( 1000, 20000 );
$query1 = "select USER_ID from USER where USER_ID='".$USER_ID."'";
$cursor1 = exequery( $connection, $query1 );
} while ( $ROW = mysql_fetch_array( $cursor1 ) );
$query1 = "select USER_PRIV from USER_PRIV order by PRIV_NO DESC";
$cursor1 = exequery( $connection, $query1 );
if ( $ROW = mysql_fetch_array( $cursor1 ) )
{
$USER_PRIV = $ROW['USER_PRIV'];
}
$query1 = "select DEPT_ID from DEPARTMENT where DEPT_NAME='".$DEPT_NAME."'";
$cursor1 = exequery( $connection, $query1 );
if ( $ROW = mysql_fetch_array( $cursor1 ) )
{
$DEPT_ID = $ROW['DEPT_ID'];
}
else
{
$DEPT_ID = 0;
}
$PASSWORD = crypt( "" );
if ( $USER_NAME != "" )
{
$query1 = "insert into USER (USER_ID,USER_NAME,SEX,PASSWORD,USER_PRIV,POST_PRIV,POST_DEPT,CANBROADCAST,DEPT_ID,AVATAR,CALL_SOUND,DUTY_TYPE,SMS_ON,EMAIL_CAPACITY,FOLDER_CAPACITY,USER_PRIV_OTHER,USER_NO,NOT_LOGIN,NOT_VIEW_USER,NOT_VIEW_TABLE,BYNAME,BIRTHDAY,THEME,MOBIL_NO,MOBIL_NO_HIDDEN)\r\n values ('".$USER_ID."','{$USER_NAME}','{$SEX}','{$PASSWORD}','{$USER_PRIV}','0','','0','{$DEPT_ID}','1','1','1','1',0,0,'','{$USER_NO}','1','1','1','','{$BIRTHDAY}','1','','')";
exequery( $connection, $query1 );
add_log( 6, $USER_ID, $LOGIN_USER_ID );
}
}
++$ROW_COUNT;
}
if ( file_exists( $CSV_FILE ) )
{
@unlink( $CSV_FILE );
}
echo "<br>\r\n<table class=\"TableList\" width=\"100%\" align=\"center\">\r\n <thead 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 <td nowrap align=\"center\">出生年月</td>\r\n <td nowrap align=\"center\">民族</td>\r\n <td nowrap align=\"center\">籍贯</td>\r\n\t <td nowrap align=\"center\">政治面貌</td>\r\n\t <td nowrap align=\"center\">身份证号码</td>\r\n <td nowrap align=\"center\">信息</td>\r\n\t <td nowrap align=\"center\">备注</td>\r\n </thead>\r\n";
$I = 0;
for ( ; $I < count( $lines ); ++$I )
{
echo " <tr align=\"center\" style=\"";
echo $TR_STYLE;
echo "\" class=\"TableData\">\r\n <td>";
echo $lines[$I]['USER_ID'];
echo "</td>\r\n <td>";
echo $lines[$I]['DEPT_NAME'];
echo "</td>\r\n <td>";
echo $lines[$I]['SEX'];
echo "</td>\r\n <td>";
echo $lines[$I]['HR_BIRTHDAY'];
echo "</td>\r\n\t <td>";
echo $lines[$I]['NATION'];
echo "</td> \r\n <td>";
echo $lines[$I]['NATIVE_PLACE'];
echo "</td>\r\n\t <td>";
echo $lines[$I]['POLITICS'];
echo "</td>\r\n\t <td>";
echo $lines[$I]['CARD_NO'];
echo "</td>\r\n\t <td>";
echo $lines[$I]['RESUME'];
echo "</td>\r\n <td align=\"left\">";
echo $MSG_ERROR[$I];
echo "</td>\r\n </tr>\r\n";
}
echo "</table>\r\n";
message( "", "共".$ROW_COUNT."条数据导入!" );
echo "</body>\r\n</html>\r\n";
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -