原创-今日值班js调用代码带asp后台管理功能-可以按顺序不分任意调整

近期在公安局做内网建设,在使用多个cms都没找到合适的功能,因为公安局内网要文件签收、今日值班等一系列的功能,只能用动易还算勉强能用。

文件签收不是大问题,但今日值班就成问题了,一是值班不一定按周排,二是随时可能会变动,这要一是要求要能方便调整,二是要求能支持按他们要求轮换显示值班人。

比如经侦支队要求是四个班一轮、情报支队要求是五天一轮、而刑侦支队要求一周一轮,这样只有做一个通用的代码才能方便使用。

代码分两部分,一是zb.js这是显示当日值班的,有每个班的值班时间设置,天的整数倍,比如可以一个班值两天才换;二是postzhiban.asp这是后台设置的

 原创-今日值班js调用代码带asp后台管理功能-可以按顺序不分任意调整

原创-今日值班js调用代码带asp后台管理功能-可以按顺序不分任意调整

以下是zb,js代码:

var now =new Date();var dutyTeam=[];var pastDay=1;var startTime="2011/2/23 8:00:00";
dutyTeam[0]="☆★☆韩旭  凌明钊";
dutyTeam[1]="☆★☆凌强  张落";
dutyTeam[2]="☆★☆李乐意  黄敦伦";
dutyTeam[3]="☆★☆博春前  孙浩";
var loop=Math.floor((now.getTime()-Date.parse(startTime))/(24*60*60*1000*pastDay));
var inx=loop%dutyTeam.length;
var i=4;
document.write(dutyTeam[inx]+"  值班电话  内线:2168  外线:3055632")

以下是postzhiban.asp代码

 <script src=/js/zb.js></script>
<div style="margin:0 auto;width:100%"><center>
<form method=POST action=?action=fucnok>
  
  <div style=height:60px;line-height:60px><b>本页面为值班设置页面</b></div>

<%
dim fso1,openfile,tmpstr,tmp,ad_num,ad_i,ad_tmp
set fso1 = server.createobject("scripting.filesystemobject")
Set openfile=fso1.OpenTextFile(Server.MapPath("/js/zb.js"))
tmpstr=openfile.readall
tmp=split(tmpstr,chr(13)&chr(10))
'取出值班轮次
ad_num=replace(tmp(UBound(tmp)-1),"var i=","")
ad_num=int(replace(ad_num,";",""))
'取出开始时间
starttime=replace(tmp(0),"var now =new Date();var dutyTeam=[];var pastDay=1;var startTime=""","")
starttime=replace(starttime,""";","")
'取出联系方式
lianxi=replace(tmp(UBound(tmp)),"document.write(dutyTeam[inx]+""&nbsp;&nbsp;值班电话  ","")
lianxi=replace(lianxi,""")","")
'显示值班相关内容以便修改
response.write"<div><span style=width:170px>开始时间</span><textarea  rows=1 cols=30 name=starttime style='font-family: 宋体; font-size: 10pt'>"&starttime&"</textarea></div>"
response.write"<div><span style=width:170px>联系方式</span><textarea  rows=1 cols=30 name=lianxi style='font-family: 宋体; font-size: 10pt'>"&lianxi&"</textarea></div>"
for ad_i=1 to ad_num
ad_tmp=replace(tmp(ad_i),"dutyTeam["&ad_i-1&"]=""☆★☆","")
ad_tmp=replace(ad_tmp,""";","")
response.write"<div><span style=width:170px>"&ad_i&"</span><textarea  rows=1 cols=30 name=ad_v"&ad_i&" style='font-family: 宋体; font-size: 10pt'>"&ad_tmp&"</textarea></div>"
 server.scripttimeout=5
 next
openfile.close
set fso1=nothing
%> 
  <div><span style=width:170px>增加值班班次</span><textarea rows=1 cols=30 name=ad_v<%=ad_num+1%> rows="2" style="font-family: 宋体; font-size: 10pt"></textarea></div>
    <div>
    <input type="submit" value="  确  认  修  改  " name="B1"></div>
</form>


<%
if Request("action")="fucnok" then
dim adv_num,ad_msg
set fso1 = server.createobject("scripting.filesystemobject")
Set openfile=fso1.OpenTextFile(Server.MapPath("/js/zb.js"))
tmpstr=openfile.readall
tmp=split(tmpstr,chr(13)&chr(10))
'取出值班轮次
ad_num=replace(tmp(UBound(tmp)-1),"var i=","")
ad_num=int(replace(ad_num,";",""))
openfile.close
set fso1=nothing
adv_num=0

ad_msg="var now =new Date();var dutyTeam=[];var pastDay=1;"&"var startTime="""&request.form("starttime")&""";"&vbcrlf

for ad_i=1 to ad_num+1
ad_tmp=replace(request.form("ad_v"&ad_i&""),"'","")
ad_tmp=replace(ad_tmp,chr(13)&chr(10),"")
if trim(ad_tmp)<>"" or isnull(ad_tmp)then
adv_num=adv_num+1
ad_msg=ad_msg&"dutyTeam["&adv_num-1&"]=""☆★☆"&ad_tmp&""";"&vbcrlf
end if
next
ad_msg=ad_msg&"var loop=Math.floor((now.getTime()-Date.parse(startTime))/(24*60*60*1000*pastDay));"&vbcrlf
ad_msg=ad_msg&"var inx=loop%dutyTeam.length;"&vbcrlf
ad_msg=ad_msg&"var i="&adv_num&";"&vbcrlf
ad_msg=ad_msg&"document.write(dutyTeam[inx]+""&nbsp;&nbsp;值班电话  "
ad_msg=ad_msg&request.form("lianxi")&""")"
dim objFSO,objname
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set objname=objFSO.CreateTextFile(Server.MapPath("/js/zb.js"),True)
objname.Write ad_msg
objname.close
set objfso=nothing
response.redirect"Postzhiban.Asp"
end if
%>