html本地多组烤箱闹钟讲解文档格式.docx
《html本地多组烤箱闹钟讲解文档格式.docx》由会员分享,可在线阅读,更多相关《html本地多组烤箱闹钟讲解文档格式.docx(28页珍藏版)》请在冰点文库上搜索。
![html本地多组烤箱闹钟讲解文档格式.docx](https://file1.bingdoc.com/fileroot1/2023-4/30/066d1fc8-1061-4c92-a488-99c30acb4f81/066d1fc8-1061-4c92-a488-99c30acb4f811.gif)
//记录开始的时间
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&
&
currentTime.getHours()<
=19){
now=currentTime.getFullYear()+"
年"
+(currentTime.getMonth()+1)+"
月"
+currentTime.getDate()+"
日白班"
}elseif(currentTime.getHours()>
=0&
=7){
varpreDate=newDate(currentTime.getTime()-24*60*60*1000);
//前一天
now=preDate.getFullYear()+"
+(preDate.getMonth()+1)+"
+preDate.getDate()+"
日夜班"
=20&
=23){
//*************************************页面每次加载的函数*******************************
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&
$("
).val().length<
cardLength){//控制输入长度小于5位
).val("
);
returnfalse;
}
if(kb==110){$("
returnfalse;
}//小数点动作
).val()=="
+"
){if(setTime<
60&
setTime>
=1){setTime=setTime+1;
}$("
}//时间加
-"
){if(setTime>
1&
setTime<
=60){setTime=setTime-1;
}//时间减
if(kb==13){createtabletest();
}//enter动作
//*******************每秒执行的内容**********************
functioneverySecond(){
).focus();
//PN输入获取焦点
operateLog();
//自动白夜班转换记录
checkPN();
//检查卡号(符合卡号的标准自动进行录入)
currentTime=newDate();
//实时时间显示
#currenttime"
).text(formatOfTime());
//实时时间显示
#setTime0"
).val(setTime);
//更新设置倒计时的值
updateRetime();
//更新倒计时
rangl();
//查询有无闹钟需要激活
//**************************辅助函数****************************
//=====mut=====
functionmut(){
if(setTime>
//=====add=====
functionadd(){
if(setTime<
//=====更新倒计时=====
functionupdateRetime(){
vartable=document.getElementById("
table2"
for(vari=0;
i<
table.rows.length;
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"
$table.find("
tr"
).length;
i++){//包含第一行
if($table.find("
).eq(i).find("
td"
).eq(6).text()=="
||$table.find("
).eq(6).text()==null){//选取没有完结行
if((setTime*60-parseInt(currentTime.getTime()-$table.find("
).eq(7).text())/1000)<
-afterTime*60){//超时部分
hngn=hngn+1;
hadOverTime=true;
whoClock=$table.find("
).eq(4).text().split("
)[0];
$table.find("
).eq
(2).css({"
background-color"
:
yellow"
});
}elseif(setTime*60-parseInt(currentTime.getTime()-$table.find("
).eq(7).text())/1000<
(setTime*60-parseInt(currentTime.getTime()-$table.find("
).eq(7).text())/1000)>
=-afterTime*60){//完成部分
hokn=hokn+1;
if(!
hadOverTime){whoClock=$table.find("
}//不存超时部分记录下完成的名单
}else{//进行部分
$table.find("
#F5F5F5"
if(NGF>
0){NGF=NGF-1;
}else{NGF=30;
}//30s循环
//修理区打铃规则
/**
*只要有够钟或者不良的闹钟响起
*语音播报试运行
*ALL音乐(3秒)+定向人员名单(请~张三~取出靠烤箱电路板!
)(8秒)
*
*/
try{
if(hokn==0&
hngn==0){
document.embeds('
clockNotice'
).stop();
clockName'
}else{
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<
+ss:
ss);
//秒部分格式化
//=====Table2增加一行=====
functioncreatetabletest(){
varinput=true;
varpn=document.getElementById("
pn"
).value.replace(/(^\s*)|(\s*$)/g,"
).toUpperCase();
//非空验证
if(pn=="
||pn==null){
//长度规范
if(pn.length>
pn.length<
cardLength){
代号最大允许4位数"
+
"
\u000d"
比如:
A999/B999"
document.getElementById("
).value="
returnfalse;
}
//格式规范
if(pn.length!
=cardLength&
//非自动录入
((pn[0]!
="
A"
&
pn[0]!
B"
X"
T"
)||//非A\B\X\T班
(pn[1]=="
)||
(pn.indexOf("
)!
=-1))//包含有-
){
varmessage="
if(pn[0]!
){message="
首字母只能使用A、B、X、T"
if(pn.indexOf("
=-1){message="
不可以使用-号"
if(pn[1]=="
请不要在整数前面加0"
格式错误:
+message+
提醒:
只需录入代号"
+"
正确样式:
B1"
错误样式:
B01、B1-1、1B"
//*************确定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('
)[0].replace(/(\n)+|(\r\n)+/g,"
if((pn==daihao)||(pn==kahao)){
pn=nameList.split('
)[1];
break;
}
//如果找不到用户,自动录入失败,转手动录入
if(pn.length==cardLength){
alert("
卡号:
+pn+"
\u000d不存在,请手动录入!
//1111111111
document.getElementById("
autoInput=false;
returnfalse;
varcPN=pn;
varout=false;
varnoPhone=true;
//*********以下查找修理师第n个PBA********
*pn-x的格式eg:
A6-1、A6-2、A6-3
vartable=document.getElementById("
for(varj=100;
j>
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!
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]!
oldPN.split('
!
isNaN(oldPN.split('
)[1])){
+(parseInt(oldPN.split('
)[1])+1);
}
//停止100次循环
if(out){
break;
//首次创建的格式
if(noPhone){
pn=pn+"
-1"
//*****************创建闹钟**********************************************
if(autoInput||confirm("
确定新增烘烤PBA:
代码+编号:
+pn+
闹钟编号:
+No)){
//页面处理
varoTab=document.getElementById('
table2div'
vargetTable=document.getElementById('
table2'
varbulidTable="
tableid='
cellspacing='
0'
cellpadding='
style='
width:
750px;
+buildTr(pn);
if(getTable.rows.length>
0){//table2页面元素获取
for(varn=0;
n<
=getTable.rows.length-1;
n++){
bulidTable=bulidTable+"
tr>
+getTable.rows[n].innerHTML+"
/tr>
}
}
bulidTable=bulidTable+"
/table>
oTab.innerHTML=bulidTable;
No++;
//闹钟编号自增
document.getElementById("
oTab=document.getElementById('
//log处理
table=document.getElementById("
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){
vars="
returns="
tdname='
phone.id'
107px;
class='
neirong'
color:
blue;
+No+"
/td>
+//0
phone.startTime'
+startTime+"
+//1
phone.retime'
+reTime+"
+//2
phone.endTime'
+endTime+"
+//3
phone.pn'
>
+//4