html本地多组烤箱闹钟讲解.docx
《html本地多组烤箱闹钟讲解.docx》由会员分享,可在线阅读,更多相关《html本地多组烤箱闹钟讲解.docx(28页珍藏版)》请在冰豆网上搜索。
html本地多组烤箱闹钟讲解
DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""http:
//www.w3.org/TR/html4/loose.dtd">
烤箱闹钟管理
body{
background-image:
URL(img/4.jpg);
background-position:
center;
background-repeat:
no-repeat;
background-attachment:
fixed;
}
.biaoti{
text-align:
center;
font-size:
18px;
border:
1pxsolid#DFFFDF;
}
.neirong{
text-align:
center;
font-size:
18px;
border:
1pxsolid#DFFFDF;
}
$(document).ready(function(){
//******************************************全局变量*****************************
varNo=0;//记录手机的编号
varstartTime="";//记录开始的时间
varendTime="";//记录取出时间
varreTime="";//剩余时间
varresult="";//业务结果
varsetTime=25;//烘烤时间默认值
varbeforTime=5;//提前拿出时间
varafterTime=5;//推迟拿出时间
varnow="";//文件夹名字
varcardLength=10;//卡号的长度
varautoInput=false;//自动增记录的变量
varNGN=0;//不良的数量
varOKN=0;//良品的数量
varresultNG="#FF5151";//结果NG的背景色
varresultOK="#53FF53";//结果为OK的背景色
//用于LOG
varcurrentTime=newDate();//当前时间
//时间计算法则(基于万年日历)
if(currentTime.getHours()>=8&¤tTime.getHours()<=19){
now=currentTime.getFullYear()+"年"+(currentTime.getMonth()+1)+"月"+currentTime.getDate()+"日白班";
}elseif(currentTime.getHours()>=0&¤tTime.getHours()<=7){
varpreDate=newDate(currentTime.getTime()-24*60*60*1000);//前一天
now=preDate.getFullYear()+"年"+(preDate.getMonth()+1)+"月"+preDate.getDate()+"日夜班";
}elseif(currentTime.getHours()>=20&¤tTime.getHours()<=23){
now=currentTime.getFullYear()+"年"+(currentTime.getMonth()+1)+"月"+currentTime.getDate()+"日夜班";
}
//*************************************页面每次加载的函数*******************************
init();//初始化部分必须参数
rebuildHTML();//log与HTML反编译
setInterval(everySecond,1000);//每秒执行函数注意函数名没有引号和括弧!
//**************************重要函数*****************************
//按键操作集合
document.onkeyup=function(event){
vare=window.event||event||arguments.callee.caller.arguments[0];
varkb=e&&e.keyCode;
startTime=formatOfTime();
if($("#pn").val().length>4&&$("#pn").val().length$("#pn").val("");
returnfalse;
}
if(kb==110){$("#pn").val("");returnfalse;}//小数点动作
if($("#pn").val()=="+"){if(setTime<60&&setTime>=1){setTime=setTime+1;}$("#pn").val("");returnfalse;}//时间加
if($("#pn").val()=="-"){if(setTime>1&&setTime<=60){setTime=setTime-1;}$("#pn").val("");returnfalse;}//时间减
if(kb==13){createtabletest();}//enter动作
}
//*******************每秒执行的内容**********************
functioneverySecond(){
$("#pn").focus();//PN输入获取焦点
operateLog();//自动白夜班转换记录
checkPN();//检查卡号(符合卡号的标准自动进行录入)
currentTime=newDate();//实时时间显示
$("#currenttime").text(formatOfTime());//实时时间显示
$("#setTime0").val(setTime);//更新设置倒计时的值
updateRetime();//更新倒计时
rangl();//查询有无闹钟需要激活
}
//**************************辅助函数****************************
//=====mut=====
functionmut(){
if(setTime>1&&setTime<=60){setTime=setTime-1;}
}
//=====add=====
functionadd(){
if(setTime<60&&setTime>=1){setTime=setTime+1;}
}
//=====更新倒计时=====
functionupdateRetime(){
vartable=document.getElementById("table2");
for(vari=0;i
if(table.rows[i].cells[6].innerHTML==""||table.rows[i].cells[6].innerHTML==null){//选取没有完结行
table.rows[i].cells[2].innerHTML=formatRetime(table.rows[i].cells[7].innerHTML);//更新显示
}
}
}
//=====激活闹钟函数=====
functionrangl(){
//如果okn和ngn发生变化~变多触发闹钟~变少不理会
init();
varhokn=0;//烘烤完成局部变量
varhngn=0;//烘烤超时局部变量
varwhoClock="";//打铃用户的标示
varhadOverTime=false;//存在超时的用户
varNGF=30;//检测频率30S
var$table=$("#table2");
for(vari=0;i<$table.find("tr").length;i++){//包含第一行
if($table.find("tr").eq(i).find("td").eq(6).text()==""||$table.find("tr").eq(i).find("td").eq(6).text()==null){//选取没有完结行
if((setTime*60-parseInt(currentTime.getTime()-$table.find("tr").eq(i).find("td").eq(7).text())/1000)<-afterTime*60){//超时部分
hngn=hngn+1;
hadOverTime=true;
whoClock=$table.find("tr").eq(i).find("td").eq(4).text().split("-")[0];
$table.find("tr").eq(i).find("td").eq
(2).css({"background-color":
"yellow"});
}elseif(setTime*60-parseInt(currentTime.getTime()-$table.find("tr").eq(i).find("td").eq(7).text())/1000<=0&&
(setTime*60-parseInt(currentTime.getTime()-$table.find("tr").eq(i).find("td").eq(7).text())/1000)>=-afterTime*60){//完成部分
hokn=hokn+1;
if(!
hadOverTime){whoClock=$table.find("tr").eq(i).find("td").eq(4).text().split("-")[0];}//不存超时部分记录下完成的名单
$table.find("tr").eq(i).find("td").eq
(2).css({"background-color":
"yellow"});
}else{//进行部分
$table.find("tr").eq(i).find("td").eq
(2).css({"background-color":
"#F5F5F5"});
}
}
}
if(NGF>0){NGF=NGF-1;}else{NGF=30;}//30s循环
//修理区打铃规则
/**
*只要有够钟或者不良的闹钟响起
*语音播报试运行
*ALL音乐(3秒)+定向人员名单(请~张三~取出靠烤箱电路板!
)(8秒)
*
*/
try{
if(hokn==0&&hngn==0){
document.embeds('clockNotice').stop();
document.embeds('clockName').stop();
}else{
document.embeds('OKM').play();
}
}catch(e){
//这里可以写入不执行音乐的代码
alert("音乐播放代码出错,联系开发者!
");
}
}
//=====倒计时数字格式化mm:
ss=====
functionformatRetime(a){
varoT=newDate(parseInt(a));//创建时间
currentTime=newDate();//实时时间
varmm=parseInt(((currentTime.getTime()-oT.getTime())/1000)/60);
varss=parseInt(((currentTime.getTime()-oT.getTime())/1000)%60);
return(mm<10?
"0"+mm:
mm)+":
"+(ss<10?
"0"+ss:
ss);//秒部分格式化
}
//=====Table2增加一行=====
functioncreatetabletest(){
varinput=true;
varpn=document.getElementById("pn").value.replace(/(^\s*)|(\s*$)/g,"").toUpperCase();
//非空验证
if(pn==""||pn==null){
returnfalse;
}
//长度规范
if(pn.length>4&&pn.lengthalert("代号最大允许4位数"+
"\u000d"+"比如:
A999/B999");
document.getElementById("pn").value="";
returnfalse;
}
//格式规范
if(pn.length!
=cardLength&&//非自动录入
((pn[0]!
="A"&&pn[0]!
="B"&&pn[0]!
="X"&&pn[0]!
="T")||//非A\B\X\T班
(pn[1]=="0")||
(pn.indexOf("-")!
=-1))//包含有-
){
varmessage="";
if(pn[0]!
="A"&&pn[0]!
="B"&&pn[0]!
="X"&&pn[0]!
="T"){message="首字母只能使用A、B、X、T";}
if(pn.indexOf("-")!
=-1){message="不可以使用-号";}
if(pn[1]=="0"){message="请不要在整数前面加0";}
alert("格式错误:
"+message+
"\u000d"+"提醒:
只需录入代号"
+"\u000d"+"正确样式:
B1"
+"\u000d"+"错误样式:
B01、B1-1、1B");
document.getElementById("pn").value="";
returnfalse;
}
//*************确定PN的值***********************
//根据代号或者卡号查找用户
varnameList=readUsernameText().toUpperCase();
if(nameList!
=null&&nameList!
=""){
for(vari=nameList.split(';').length-2;i>=0;i--){
varkahao=nameList.split(';')[i].split(',')[2].replace(/(\n)+|(\r\n)+/g,"");
vardaihao=nameList.split(';')[i].split(',')[0].replace(/(\n)+|(\r\n)+/g,"");
if((pn==daihao)||(pn==kahao)){
pn=nameList.split(';')[i].split(',')[1];
break;
}
}
}
//如果找不到用户,自动录入失败,转手动录入
if(pn.length==cardLength){
alert("卡号:
"+pn+"\u000d不存在,请手动录入!
");//1111111111
document.getElementById("pn").value="";
autoInput=false;
returnfalse;
}
varcPN=pn;
varout=false;
varnoPhone=true;
//*********以下查找修理师第n个PBA********
/**
*pn-x的格式eg:
A6-1、A6-2、A6-3
*/
vartable=document.getElementById("table2");
for(varj=100;j>=0;j--){
//pn动态变换
if(j==0){
cPN=pn;
}else{
cPN=pn+"-"+j;
}
for(vari=0;i
//如果找到该手机进行变号
if(table.rows[i].cells[4].innerHTML!
=""&&
table.rows[i].cells[4].innerHTML!
=null&&
table.rows[i].cells[4].innerHTML.replace(/(^\s*)|(\s*$)/g,"")==cPN){
oldPN=table.rows[i].cells[4].innerHTML.replace(/(^\s*)|(\s*$)/g,"");//中间变量
//首次变号
if(isNaN(oldPN.split('-')[1])){
pn=pn+"-2";
noPhone=false;
out=true;
break;
}
//非首变号
if(oldPN.split('-')[1]!
=null&&oldPN.split('-')[1]!
=""&&!
isNaN(oldPN.split('-')[1])){
pn=pn+"-"+(parseInt(oldPN.split('-')[1])+1);
out=true;
noPhone=false;
break;
}
}
}
//停止100次循环
if(out){
break;
}
}
//首次创建的格式
if(noPhone){
pn=pn+"-1";
}
//*****************创建闹钟**********************************************
if(autoInput||confirm("确定新增烘烤PBA:
"+
"\u000d"+"代码+编号:
"+pn+
"\u000d"+"闹钟编号:
"+No)){
//页面处理
varoTab=document.getElementById('table2div');
vargetTable=document.getElementById('table2');
varbulidTable="750px;'>"+buildTr(pn);
if(getTable.rows.length>0){//table2页面元素获取
for(varn=0;n<=getTable.rows.length-1;n++){
bulidTable=bulidTable+"
"+getTable.rows[n].innerHTML+"
";
}
}
bulidTable=bulidTable+"";
oTab.innerHTML=bulidTable;
No++;//闹钟编号自增
document.getElementById("pn").value="";
oTab=document.getElementById('table2div');
//log处理
table=document.getElementById("table2");
varbuildJilu=table.rows[0].cells[0].innerHTML+","+//闹钟编号0
table.rows[0].cells[1].innerHTML+","+//放入时间1
","+//剩余时间2
","+//取出时间3
table.rows[0].cells[4].innerHTML+","+//手机PN4
","+table.rows[0].cells[7].innerHTML+//手机放入时间5
";";//业务结果
quchuLogById(buildJilu);//更新LogTEXT记录*/
}
autoInput=false;
}
//=====创建新的Tr=====
functionbuildTr(pn){
init();
vars="";
returns="
107px;'class='neirong'style='color:
blue;'>"+No+""+//0
"107px;'class='neirong'>"+startTime+""+//1
"107px;'class='neirong'>"+reTime+""+//2
"107px;'class='neirong'>"+endTime+""+//3
"107px;'class='neirong'>"+pn+""+//4
展开阅读全文
相关搜索
|