⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 workmng.asp

📁 asp+access实现web环境中的企业实时考勤
💻 ASP
📖 第 1 页 / 共 5 页
字号:
<%@LANGUAGE="VBScript"%>
<!--#include file="login.asp"-->
<%
'程序:王星亮 网名:血饮狂刀 国外的叫我LANBOO
'OICQ:40001
'EMAIL:webmaster@xytime.com
'我是什么都有,您想要我开发什么程序,尽管说。只要价格合理就行。
'我电话:13308715776 0871-3394913
response.expires = 0
Const PageSize=15
Page=CInt(request("Page"))
if Page<=0 then Page=1
OperID= session("My_Login_ID")
LoginName= session("My_Login_Name")
gpy=request("gpy")
AddTime=now
AddIp=request.servervariables("remote_addr")
OperId=OperID
'////定义星期
 dim WeekName(8)
 WeekName(1)="日"
 WeekName(2)="一"
 WeekName(3)="二"
 WeekName(4)="三"
 WeekName(5)="四"
 WeekName(6)="五"
 WeekName(7)="六"
'///结束定义


set FileObject=Server.CreateObject("Scripting.FileSystemObject")
SetupFileName=Server.MapPath("./work.ini")
if not FileObject.FileExists(SetupFileName) then
  TextContent="8:40:00||12:00:00||13:00:00||17:40:00||-30||30||-30||30||-30||30||-30||30"
  set MyTextFile=FileObject.CreateTextFile(SetupFileName)
  MyTextFile.WriteLine(TextContent)
  MyTextFile.Close
end if
set MyTextFile=FileObject.OpenTextFile(SetupFileName)
TextContent=MyTextFile.ReadLine
MyTextFile.Close
SetupValue=split(TextContent,"||")
BeginTime1=date&" "&SetupValue(0)		'上午上班时间
EndTime1=date&" "&SetupValue(1)		'上午下班时间
BeginTime2=date&" "&SetupValue(2)		'下午上班时间
Endtime2=date&" "&SetupValue(3)	'下午下班时间
MBeginWork1=CInt(SetupValue(4))  '上午上班允许最早打卡时间
MBeginWork2=CInt(SetupValue(5))   '上午上班允许最晚打卡时间
if DeptId=16 then MBeginWork2=MBeginWork2+65 '如果是技术部人员,推迟六十五分钟
MEndWork1=CInt(SetupValue(6))    '上午下班允许最早打卡时间
MEndWork2=CInt(SetupValue(7))     '上午下班允许最晚打卡时间
ABeginWork1=CInt(SetupValue(8))	 '下午上班允许最早打卡时间
ABeginWork2=CInt(SetupValue(9))   '下午上班允许最晚打卡时间
AEndWork1=CInt(SetupValue(10))	 '下午下班允许最早打卡时间
AEndWork2=CInt(SetupValue(11))	 '下午下班允许最晚打卡时间
numBegin1=DateDiff("n",BeginTime1,AddTime)
numBegin2=DateDiff("n",BeginTime2,AddTime)
numEnd1=DateDiff("n",EndTime1,AddTime)
numEnd2=DateDiff("n",EndTime2,AddTime)
'response.write numBegin1&"||"&numBegin2&"||"&numEnd1&"||"&numEnd2&"<br>"
'response.write ABeginWork1&"||"&ABeginWork2

LeaveMark=request("LeaveMark")
 dim MarkName(2)
 MarkName(0)="请假"
 MarkName(1)="出差"


'显示主界面
if gpy="" then
 set sql=conn.Execute("select OperType from MyOper where OperType>1 and ID="&OperID) '判断是否高级用户
 if sql.eof then ButtonType1=0 else ButtonType1=1 end if
 set sql=conn.Execute("select Chief from MyDept where Chief="&OperID) '判断是否部门领导
 if sql.eof then ButtonType2=0 else ButtonType2=1 end if


'////////在第一个人上班时,将今天的所有人的上班记录初始化
  set sqlLog=conn.Execute("select * from GpyWorkLog where WorkDate=#"&Date&"#")
  if sqlLog.eof then
     set sqlOper=conn.Execute("select LoginName from MyOper where OperType>0")
     while not sqlOper.eof 
       InsertQuery="Insert into GpyWorkLog (LoginName,WorkDate,WorkWeek) values('"&sqlOper("LoginName")&"',#"&date&"#,'"&WeekName(weekday(date))&"')"
       'response.write InsertQuery & "<br>"
	   conn.Execute(InsertQuery)
       sqlOper.movenext
     wend
  end if
'///////

 ShowLookHtml

'上班登记 WeekName(weekday(date))
elseif gpy="BeginWork" then
 Query="select * from GpyWorkLog where LoginName='"&LoginName&"' and WorkDate=#"&Date&"#"
 set sql=conn.Execute(Query)
 if not sql.eof then
    if numBegin1>=MBeginWork1 and numBegin1<=MBeginWork2+5 then
	   if sql("MBeginTime")<>"" then Back("对不起,已经登记过!请不要重复登记!")
       Query="Update GpyWorkLog set MBeginTime=#"&Time&"# where WorkLogId="&sql("WorkLogId")
	elseif numBegin2>=ABeginWork1 and numBegin2<=ABeginWork2+5 then 
	   if sql("ABeginTime")<>"" then Back("对不起,已经登记过!请不要重复登记!")
	   Query="Update GpyWorkLog set ABeginTime=#"&Time&"# where WorkLogId="&sql("WorkLogId")
	end if
 else
    if numBegin1>=MBeginWork1 and numBegin1<=MBeginWork2+5 then
       Query="Insert into GpyWorkLog (LoginName,WorkDate,WorkWeek,MBeginTime) values('"&LoginName&"',#"&date&"#,'"&WeekName(weekday(date))&"',#"&Time&"#)"
	elseif numBegin2>=ABeginWork1 and numBegin2<=ABeginWork2+5 then 
       Query="Insert into GpyWorkLog (LoginName,WorkDate,WorkWeek,ABeginTime) values('"&LoginName&"',#"&date&"#,'"&WeekName(weekday(date))&"',#"&Time&"#)"
	end if
 end if
 'response.write Query
 conn.Execute(Query)
%>
  <script language='javascript'>
    alert('上班登记成功!登记时间:<%=time%>');
    window.location.href = "<%=UrlName%>";
 </script>
<%

'下班登记
elseif gpy="EndWork" then
 Query="select * from GpyWorkLog where LoginName='"&LoginName&"' and WorkDate=#"&date&"#"
 set sql=conn.Execute(Query)
 if not sql.eof then
	if numEnd1>=MEndWork1 and numEnd1<=MEndWork2+5 then 
	   if sql("MEndTime")<>"" then Back("对不起,已经登记过!请不要重复登记!")
       Query="Update GpyWorkLog set MEndTime=#"&Time&"# where WorkLogId="&sql("WorkLogId")
	elseif numEnd2>=AEndWork1 and numEnd2<=AEndWork2+5 then 
	   if sql("AEndTime")<>"" then Back("对不起,已经登记过!请不要重复登记!")
       Query="Update GpyWorkLog set AEndTime=#"&Time&"# where WorkLogId="&sql("WorkLogId")
	end if
 else
	if numEnd1>=MEndWork1 and numEnd1<=MEndWork2+5 then 
       Query="Insert into GpyWorkLog (LoginName,WorkDate,MEndTime) values('"&LoginName&"',#"&date&"#,#"&Time&"#)"
	elseif numEnd2>=AEndWork1 and numEnd2<=AEndWork2+5 then 
       Query="Insert into GpyWorkLog (LoginName,WorkDate,AEndTime) values('"&LoginName&"',#"&date&"#,#"&Time&"#)"
	end if
 end if
 'response.write Query
 conn.Execute(Query)
%>
  <script language='javascript'>
    alert('下班登记成功!登记时间:<%=AddTime%>');
    window.location.href = "<%=UrlName%>";
 </script>
<%

'显示请假和出差登记的界面
elseif gpy="Holiday" then
  ShowHolidayHtml()

'出差和请假登记
elseif gpy="AddHoliday" then
  BeginTime=request("Byy")&"-"&request("Bmm")&"-"&request("Bdd")&" "&request("BHour")&":"&request("BMin")&":00"
  EndTime=request("Eyy")&"-"&request("Emm")&"-"&request("Edd")&" "&request("EHour")&":"&request("EMin")&":00"
  About=html(request("About"))
  LookMan=request("LookMan")
  Query="Insert into GpyLeaveLog (LeaveMark,LoginName,BeginTime,EndTime,AddTime,AddIp,About,LookMan) values('"&LeaveMark&"','"&LoginName&"',#"&BeginTime&"#,#"&EndTime&"#,'"&AddTime&"','"&AddIp&"','"&About&"','"&LookMan&"')"
  conn.Execute(Query)
%>
  <script language='javascript'>
    alert('申请登记成功!请等候处理!');
    window.location.href = "<%=UrlName%>";
 </script>
<%

'处理出差和请假的网页
elseif gpy="Look" or gpy="Look1" then
 LeaveLogId=request("LeaveLogId")
 Query="select * from GpyLeaveLog where LeaveLogId="&LeaveLogId
 set sql=conn.Execute(Query)
 ShowLook(sql)

'处理出差和请假的结果
elseif gpy="AddIder" then
 LeaveLogId=request("LeaveLogId")
 LookIder=html(request("LookIder"))
 Query="Update GpyLeaveLog set LookTime='"&AddTime&"',LookIp='"&AddIp&"',LookIder='"&LookIder&"' where LeaveLogId="&LeaveLogId
' response.write Query
 conn.Execute(Query)
%>
  <script language='javascript'>
    alert('申请处理成功!');
    window.close();
 </script>
<%
'显示高级功能网页
elseif gpy="Expert" then
  ShowExpertHtml()

elseif gpy="FindOk" then
  FindSB=request("FindSB")
  FindQJ=request("FindQJ")
  FindCC=request("FindCC")
  Byy=request("Byy")
  Bmm=request("Bmm")
  Bdd=request("Bdd")
  BeginDate=Byy&"-"&Bmm&"-"&Bdd
  BeginTime=BeginDate&" 00:00:01"
  Eyy=request("Eyy")
  Emm=request("Emm")
  Edd=request("Edd")
  EndDate=Eyy&"-"&Emm&"-"&Edd
  EndTime=EndDate&" 23:59:59"
  DeptId=request("DeptId")
  FindLoginName=request("FindLoginName")
  if FindSB="" and FindQJ="" and FindCC="" then Back("提示:请选择查询类型!")
  Query="select OperType,MyDept.ID,MyDept.Name from MyOper,MyDept where MyDept.ID=MyOper.DeptID and MyOper.ID="&OperID
  set sqlOper1=conn.Execute(Query)
  if not sqlOper1.eof then 
    if sqlOper1("OperType")>1 then DeptAll=1 else DeptAll=0 end if '判断是否有查看所以部门的权限
  else 
     DeptAll=0
  end if
  Query="select ID from MyDept where Chief="&OperID
  set sqlDept=conn.Execute(Query)
  if not sqlDept.eof then '判断是否有查询本部门的所有人的权限
    OperAll=1
    FindDeptId=sqlDept("ID")
  else
    OperAll=0
  end if

  HtmlHead("考勤记录查询结果")
  response.write "<table width='600' border='1' cellspacing='0' cellpadding='0' bordercolorlight='#7C7C7C' bordercolordark='#FFFFFF'>"
  if FindSB="1" then '上班记录
    if DeptId=0 and FindLoginName="0" then  '所有人的记录
	  Query="select WorkLogId,Name,GpyWorkLog.LoginName,WorkDate,WorkWeek,MBeginTime,MEndTime,ABeginTime,AEndTime,Memo,WorkMark from GpyWorkLog,MyOper where GpyWorkLog.LoginName=MyOper.LoginName and  WorkDate>=#"&BeginDate&"# and WorkDate<=#"&EndDate&"# order by WorkLogId desc"
	elseif FindLoginName<>"0" and FindLoginName<>"" then '指定人的记录
	  Query="select WorkLogId,Name,GpyWorkLog.LoginName,WorkDate,WorkWeek,MBeginTime,MEndTime,ABeginTime,AEndTime,Memo,WorkMark from GpyWorkLog,MyOper where GpyWorkLog.LoginName=MyOper.LoginName and  WorkDate>=#"&BeginDate&"# and WorkDate<=#"&EndDate&"# and GpyWorkLog.LoginName='"&FindLoginName&"' order by WorkDate desc"
	elseif DeptId<>0 and FindLoginName="0"  then
	  Query="select WorkLogId,Name,GpyWorkLog.LoginName,WorkDate,WorkWeek,MBeginTime,MEndTime,ABeginTime,AEndTime,Memo,WorkMark from GpyWorkLog,MyOper where GpyWorkLog.LoginName=MyOper.LoginName and WorkDate>=#"&BeginDate&"# and WorkDate<=#"&EndDate&"# and DeptId="&DeptId&" order by WorkLogId desc"
	end if
'	response.write Query
    set sqlSB=conn.Execute(Query)
	ShowSBRecord(sqlSB)
  end if
  if FindQJ="1" then '请假记录
    if DeptId=0 and FindLoginName="0" then  '所有人的记录
	  Query="select LeaveLogId,Name,GpyLeaveLog.LoginName,BeginTime,EndTime,GpyLeaveLog.AddTime,LookMan,LookTime,LookIder,About from GpyLeaveLog,MyOper where GpyLeaveLog.LoginName=MyOper.LoginName and  BeginTime>=#"&BeginTime&"# and BeginTime<=#"&EndTime&"# and LeaveMark=0 order by BeginTime desc"
	elseif FindLoginName<>"0" and FindLoginName<>"" then '指定人的记录
	  Query="select LeaveLogId,Name,GpyLeaveLog.LoginName,BeginTime,EndTime,GpyLeaveLog.AddTime,LookMan,LookTime,LookIder,About from GpyLeaveLog,MyOper where GpyLeaveLog.LoginName=MyOper.LoginName and  BeginTime>=#"&BeginTime&"# and BeginTime<=#"&EndTime&"# and GpyLeaveLog.LoginName='"&FindLoginName&"' and LeaveMark=0 order by BeginTime desc"
	elseif DeptId<>0 and FindLoginName="0"  then
	  Query="select LeaveLogId,Name,GpyLeaveLog.LoginName,BeginTime,EndTime,GpyLeaveLog.AddTime,LookMan,LookTime,LookIder,About from GpyLeaveLog,MyOper where GpyLeaveLog.LoginName=MyOper.LoginName and  BeginTime>=#"&BeginTime&"# and BeginTime<=#"&EndTime&"# and DeptId="&DeptId&" and LeaveMark=0 order by BeginTime desc"
	end if
	set sqlQJ=conn.Execute(Query)
	ShowQJRecord(sqlQJ)
  end if
  if FindCC="1" then '出差记录
    if DeptId=0 and FindLoginName="0" then  '所有人的记录
	  Query="select LeaveLogId,Name,GpyLeaveLog.LoginName,BeginTime,EndTime,GpyLeaveLog.AddTime,LookMan,LookTime,LookIder,About from GpyLeaveLog,MyOper where GpyLeaveLog.LoginName=MyOper.LoginName and  BeginTime>=#"&BeginTime&"# and BeginTime<=#"&EndTime&"# and LeaveMark=1 order by BeginTime desc"
	elseif FindLoginName<>"0" and FindLoginName<>"" then '指定人的记录
	  Query="select LeaveLogId,Name,GpyLeaveLog.LoginName,BeginTime,EndTime,GpyLeaveLog.AddTime,LookMan,LookTime,LookIder,About from GpyLeaveLog,MyOper where GpyLeaveLog.LoginName=MyOper.LoginName and  BeginTime>=#"&BeginTime&"# and BeginTime<=#"&EndTime&"# and GpyLeaveLog.LoginName='"&FindLoginName&"' and LeaveMark=1 order by BeginTime desc"
	elseif DeptId<>0 and FindLoginName="0"  then
	  Query="select LeaveLogId,Name,GpyLeaveLog.LoginName,BeginTime,EndTime,GpyLeaveLog.AddTime,LookMan,LookTime,LookIder,About from GpyLeaveLog,MyOper where GpyLeaveLog.LoginName=MyOper.LoginName and  BeginTime>=#"&BeginTime&"# and BeginTime<=#"&EndTime&"# and DeptId="&DeptId&" and LeaveMark=1 order by BeginTime desc"
	end if
	set sqlCC=conn.Execute(Query)
	ShowCCRecord(sqlCC)
  end if
  response.write "</table>"
 HtmlEnd
 
 elseif gpy="Modi" then
   WorkLogId=request("WorkLogId")
   ModiLogId=request("ModiLogId")
   Query="select WorkLogId,Name,GpyWorkLog.LoginName,WorkDate,MBeginTime,MEndTime,ABeginTime,AEndTime,Memo,WorkMark,ModiAbout from GpyWorkLog,MyOper,GpyModiLog where WorkDate=ModiDate and GpyWorkLog.LoginName=MyOper.LoginName and WorkLogId='"&WorkLogId&"'"
   set sql=conn.Execute(Query)
   set sql1=conn.Execute("select ModiAbout from GpyModiLog where ModiLogId='"&ModiLogId&"'")
   ShowModiHtml sql,sql1

elseif gpy="Modi_Ok" then
  MBeginTime1=request("MBeginTime")
  MEndTime1=request("MEndTime")
  ABeginTime1=request("ABeginTime")
  AEndTime1=request("AEndTime")
  WorkLogId=request("WorkLogId")
  ModiLogId=request("ModiLogId")
  Query="select WorkLogId,Name,GpyWorkLog.LoginName,WorkDate,MBeginTime,MEndTime,ABeginTime,AEndTime,Memo,WorkMark from GpyWorkLog,MyOper where GpyWorkLog.LoginName=MyOper.LoginName and WorkLogId='"&WorkLogId&"'"
  set sql=conn.Execute(Query)
  About=sql("Memo")
  if html(request("About"))<>"" then
    About=About&"因为如下原因:"&html(request("About"))
  end if
  if MBeginTime1<>sql("MBeginTime") then  
    About=About&"将上午上班时间从["&sql("MBeginTime")&"]改为["&MBeginTime1&"]"
  end if
  if MBeginTime1<>"" and IsNull(sql("MBeginTime")) then  
    About=About&"将上午上班时间改为["&MBeginTime1&"]"
  end if
  if MEndTime1 <> sql("MEndTime") then
    About=About&"将上午下班时间从["&sql("MEndTime")&"]改为["&MEndTime1&"]"
  end if
  if MEndTime1 <>"" and  IsNull(sql("MEndTime")) then
    About=About&"将上午下班时间改为["&MEndTime1&"]"
  end if
  if ABeginTime1<>sql("ABeginTime") then  
    About=About&"将下午上班时间从["&sql("ABeginTime")&"]改为["&ABeginTime1&"]" 
  end if
  if ABeginTime1<>"" and IsNull(sql("ABeginTime")) then  
    About=About&"将下午上班时间改为["&ABeginTime1&"]" 
  end if
  if AEndTime1<>sql("AEndTime") then
    About=About&"将下午下班时间从["&sql("AEndTime")&"]改为["&AEndTime1&"]"
  end if
  if AEndTime1<>"" and IsNull(sql("AEndTime")) then

⌨️ 快捷键说明

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