You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
bocai_supplyChain_pc/src/components/screen/largeScreen.vue

855 lines
35 KiB
Vue

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<template>
<div class="mmtt111" @click="startAudio">
<!-- <span @click="aa1" style="font-size:36px;color:#fff;position:relative;cursor: pointer;">1111</span> -->
<div v-if="!isShow">
<a-form :selfUpdate="true" :form="formScreen" class="formDiv" @submit="handleSubmit">
<a-form-item :label-col="formItemLayout.labelCol" :wrapper-col="formItemLayout.wrapperCol" label="口令">
<a-input type="password" id='inputId' v-focus="true" ref="id" v-decorator="['passowrd',{ rules: [{ required: true, message: '请输入口令' }] }]" onfocus="this.removeAttribute('readonly');" onblur="this.setAttribute('readonly',true);" :readonly="true" autocomplete="new-password" autoComplete="new-password" placeholder="请输入口令" />
</a-form-item>
<a-form-item :label-col="formTailLayout.labelCol" :wrapper-col="formTailLayout.wrapperCol">
<a-button type="primary" html-type="submit">
确定
</a-button>
</a-form-item>
</a-form>
</div>
<div v-else>
<!-- <div> -->
<div class="static" v-if="!imgCarouselShow">
<div class="s_left">
<!-- @click="test" -->
<h4 class="f24 cf s_title fwb">交付中心实时数据
<!-- <span @click="aa1">1111</span> <span @click="aa2">2222</span> -->
<div class="f14 pr">
<!-- <span>昨日18:15-当日18:15</span> -->
<!-- <span class="right-h5">延误 {{delayNum.delay18}} 逾期 {{delayNum.delay36}}</span> -->
</div>
</h4>
<div class="tth" style="margin-top:12px !important;position:relative;">
<div style="display:table-row;font-weight:500">
<div class="ttd tc1 fwb" style="" @click="test">日排名</div>
<div class="ttd tc2 fwb" style="">姓名</div>
<!-- <div class="ttd tc7" style=""></div> -->
<!-- @click="ani" -->
<div class="ttd tc3 fwb" style="">简历数</div>
<!-- <div class="ttd">已处理</div> -->
<!-- <div class="ttd">约面数</div> -->
<div class="ttd tc4 fwb" style=""><span>约面丨到面</span>丨<span>通过</span></div>
<!-- @click="playAudio1" -->
<!-- <div class="ttd" @click="playAudio2">通过数</div> -->
<div class="ttd tc5 fwb" style="">入职</div>
<!-- @click="aaa" -->
<div class="ttd tc6 fwb">转化丨漏斗</div>
<!-- @click="aaa" -->
</div>
</div>
<a-carousel effect="scrollx" ref="welcome" autoplay dotsClass="dotClass" :autoplaySpeed="autoSpeed" :speed="1000" :pauseOnHover="false" v-trigger>
<div v-for="(item1, index1) in array" v-bind:key="index1">
<div v-for="(item, index) in item1" v-bind:key="index">
<div class="tth" style="margin-top:48px;position:relative;margin-top: 0 !important;">
<div style="display:table-row;font-weight:500">
<div class="ttd tc1" style="">{{index1 * pageSize + index + 1}}</div>
<div class="ttd tc2 " :class="showaliasName_curr == item.aliasName ?'numeAni' : ''" style="">{{item.aliasName}}</div>
<!-- <div class="ttd tc7"></div> -->
<div class="ttd tc3">{{item.resumeNum}}</div>
<div class="ttd tc4" style="">{{item.signUps}} | <span :class="daomianStyle == item.aliasName ?'bulingbuling' : ''">{{item.arrived}}</span> | <span :class="tongguoStyle == item.aliasName ?'bulingbuling' : ''">{{item.passed}}</span></span></div>
<div class="ttd tc5" style=""><span :class="ruzhiStyle == item.aliasName ?'bulingbuling' : ''">{{item.entry}}/*</span></span>
<!-- /{{parseFloat(item.entryNumMonthNum).toFixed(1).replace(/(.0)$/,'')}} -->
</div>
<div class="ttd tc6">
<span style="display: inline-block;width:80px;text-align: right;">{{Number(item.transferRatio * 100).toFixed(0)}}</span>丨<span style="display: inline-block;width:80px;text-align: left;">{{item.funnel}}</span></div>
<!-- {{Number(item.funnel*100).toFixed(0)}} -->
</div>
</div>
</div>
</div>
</a-carousel>
<!-- </div> -->
<!-- <div class="f14 cf tl" style="margin-left: 146px;margin-top: 10px;">
(昨天 18:30 - 今天 18:30 招聘数据)
</div> -->
</div>
<div class="clb"></div>
<div class=" fullPage" v-if="ifani">
<div class="bgppp">
</div>
<div class="animate__animated animate__zoomInDown animate_h animate__infinite animate__zoomOutUp">
{{showaliasName}}
<!-- 墨竹/王泽流 -->
<!-- 12 -->
</div>
</div>
</div>
<!-- <div class="imgPlay" @click="hideImg" v-if="imgCarouselShow">
<a-carousel autoplay effect="fade" :autoplaySpeed="5000" :speed="1000" :dots="false" :pauseOnHover="false">
<div class="tcImg" v-for="(image, index) in slideImages">
<div class="pr">
<h3 class="imgText" v-text="image.aliasName">1</h3>
<img :src="image.url" class="mw100" alt="" />
</div>
</div>
</a-carousel>
</div> -->
</div>
<audio id="myaudio" src="http://matripeweb.oss-cn-hangzhou.aliyuncs.com/antd/huanhu.wav"></audio>
</div>
</template>
<script>
import { axios, doAsyncHttpRequest } from '@/utils/request';
import { isNotEmptyCheck, timeagoOfDateStr } from '@/utils/commonUtil';
import {
screen
} from "../../api/screen";
// import { serverAddress, numFormat3 } from '@/utils/global';
// import store from '@/store';
const formItemLayout = {
labelCol: { span: 6 },
wrapperCol: { span: 16 },
};
const formTailLayout = {
labelCol: { span: 6 },
wrapperCol: { span: 8, offset: 6 },
};
var timeClear;
var timer //定时器
var flag = false;
var timeStamp = 0;
var timeStamp2 = 0;
var tempJson = { "classify": 0, "message": [] }
export default {
directives: {
focus: {
inserted: function(el, { value }) {
console.log(el, { value })
if (value) {
el.focus();
}
}
},
trigger:{
inserted(el,binging){
el.click()
}
}
},
data() {
return {
recordTodayList: [],
delayNum: { delay18: 0, delay36: 0 },
formLayout: 'horizontal',
formScreen: this.$form.createForm(this),
isShow: true,
formItemLayout,
formTailLayout,
passowrd: '',
// audioUrl1: 'http://matripeweb.oss-cn-hangzhou.aliyuncs.com/antd/money.wav', //声音文件
// audioUrl2: 'http://matripeweb.oss-cn-hangzhou.aliyuncs.com/antd/mario.wav', //声音文件
// audioUrl3: 'http://matripeweb.oss-cn-hangzhou.aliyuncs.com/antd/huanhu.wav', //声音文件
//websocket参数===================start
// wsUri: 'ws://127.0.0.1:9004/webSocket/' + this.$route.query.id,
// wsUri: 'ws://127.0.0.1:9004/webSocket/',
isWebSocket: false, //判断是否链接成功!
reconnect: 0,
ifani: false,
showaliasName: '',
showaliasName_curr: '专员B',
nameArray: [],
daomianStyle: '',
tongguoStyle: '',
ruzhiStyle: '',
array: [],
isAuto: true,
autoSpeed: 10000,
pageSize: 10,
// pageSize: 5,
imgCarouselShow: false,
// [{"allotNum":1,"disposeNum":0,"entryNumMonthNum":15,"entry":0,"funnelRate7":"2.03","interviewNum":0,"passed":0,"interviewPassPercent":"3.23","arrived":1,"showScreen":0,"id":236530,"aliasName":"百合/刘月霞"}
//websocket参数===================end
//所有店铺信息
storeImages: [],
//轮播的店铺图片
slideImages: [],
slideImgNum: 10,
}
},
mounted() {
var that = this;
// document.getElementById('inputId').focus();
// this.$refs.id.focus();
// document.querySelector('html').setAttribute('style', 'background-image: url(http://matripeweb.oss-cn-hangzhou.aliyuncs.com/antd/screen_bg.png);background-size: 100% 100%;min-height:100vh;');
// // overflow:hidden;
// document.querySelector('body').setAttribute('style', 'background: none');
that.initWebSocket();
that.initClock();
// if (that.isShow) {
setInterval(() => that.websocketHeartCheck(), 30000); //每隔1分钟刷新一次
// }
// that.getData()
// timer = setInterval(() => that.getData(), 60000*5); //每隔5分钟刷新一次
},
destroyed() {
// this.websock.close() //离开路由之后断开websocket连接
},
beforeDestroy() { //在组件生命周期结束的时候销毁。
var that = this;
if(timer){
clearInterval(timer);
}
document.querySelector('html').removeAttribute('style', '')
document.querySelector('body').removeAttribute('style', '')
},
methods: {
startAudio(){
var that = this;
let audioPlay = document.getElementById('myaudio')
audioPlay.play()
setTimeout(() => {
audioPlay.pause()
audioPlay.load()
}, 1000)
// setTimeout(() => {
// that.playAudio3();
// }, 5000)
},
// async getData(){
// var that = this;
// try {
// const data = await screen();
// console.log(data);
// if (data.status === 200) {
// that.array = [];
// for (var i = 0; i < data.data.data.list.length; i += that.pageSize) {
// this.array.push(data.data.data.list.slice(i, i + that.pageSize));
// }
// } else {
// console.log(1);
// }
// } catch (error) {
// console.log(error);
// this.$message.warning(error.message);
// }
// },
showTargetResume(item) {
/*if(item.targetResume - item.monthentry <= 0) {
return "(★)";
}
return "" + new Number(item.targetResume - item.monthentry).toFixed(1) + "";*/
return "" + item.monthentry + "/" + item.targetResume + "";
},
ani() { //点击专员
var that = this;
console.log(that.nameArray);
return new Promise((resolve, reject) => {
// alert(that.showaliasName);
if (that.showaliasName != '' && flag) {
this.ifani = true;
that.playAudio3();
setTimeout(function() {
that.ifani = false;
flag = false;
resolve();
}, 15000)
}
})
},
func() {
var that = this;
console.log(this.nameArray);
// debugger
if (this.nameArray[0].type == '1') {
that.showaliasName_curr = this.nameArray[0].aliasName
that.daomianStyle = this.nameArray[0].aliasName;
console.log(that.showaliasName_curr)
console.log( that.daomianStyle)
that.playAudio1();
let pageInt = parseInt(this.nameArray[0].indexA / that.pageSize)
setTimeout(function() {
that.autoSpeed = 10000;
that.$refs.welcome.goTo(pageInt, true);
}, 0);
setTimeout(function() {
that.showaliasName_curr = '';
that.daomianStyle = '';
// console.log(JSON.stringify(that.nameArray));
that.nameArray.shift();
if (that.nameArray.length > 0) {
that.func();
} else {
that.autoSpeed = 10000;
that.$refs.welcome.goTo(pageInt, true);
}
}, 10000)
} else if (this.nameArray[0].type == '2') {
that.showaliasName_curr = this.nameArray[0].aliasName
that.tongguoStyle = this.nameArray[0].aliasName;
that.playAudio2();
let pageInt = parseInt(this.nameArray[0].indexA / that.pageSize)
setTimeout(function() {
that.autoSpeed = 10000;
that.$refs.welcome.goTo(pageInt, true)
}, 0);
setTimeout(function() {
that.showaliasName_curr = '';
that.tongguoStyle = '';
that.nameArray.shift();
if (that.nameArray.length > 0) {
that.func();
that.imgCarouselShow = false;
} else {
// debugger;
// that.showPictures(90000);
that.autoSpeed = 10000;
}
}, 10000)
} else if (this.nameArray[0].type == '3') {
that.showaliasName = this.nameArray[0].aliasName;
that.showaliasName_curr = this.nameArray[0].aliasName
that.ruzhiStyle = this.nameArray[0].aliasName;
// if (that.showaliasName != '') {
// that.playAudio3();
// that.ani();
let pageInt = parseInt(this.nameArray[0].indexA / that.pageSize)
console.log("入职===" + pageInt);
// that.$refs.welcome.goTo(pageInt, true)
setTimeout(function() {
that.autoSpeed = 30000;
that.$refs.welcome.goTo(pageInt, true)
}, 0);
flag = true;
// }
that.ani().then(() => {
setTimeout(function() {
flag = false;
that.nameArray.shift();
that.showaliasName_curr = '';
// that.showaliasName = '';
that.ruzhiStyle = '';
// console.log(JSON.stringify(that.nameArray));
if (that.nameArray.length > 0) {
setTimeout(function() {
that.func();
}, 15000)
} else {
// debugger;
console.log("33333=====================")
// that.showPictures(90000);
that.autoSpeed = 10000;
}
}, 10000)
})
}
// }
},
websocketonmessage(e) { //数据接收
// const redata = JSON.parse(e.data);
var that = this;
console.log("接收消息", e.data)
// console.log(JSON.parse(e.data))
// console.log(JSON.parse(e.data).list)
// console.log(new Date());
// that.array = [];
// type 25 到面 30通过 40入职
// 180000
// debugger
if(e.data != '"pong"' && (timeStamp == 0 || new Date().getTime() - timeStamp >= 40000 )){
timeStamp = new Date().getTime();
var getWebsocketData = JSON.parse(e.data);
// console.log(getWebsocketData);
// console.log(getWebsocketData.list);
// that.array = [...getWebsocketData.list]
that.array = [];
var arr = [...getWebsocketData.list]
var arrLength = arr.length;
// that.array = [];
for (var i = 0; i < arrLength; i += that.pageSize) {
that.array.push(arr.slice(i, i + that.pageSize));
}
that.array.forEach((item,index)=>{
if(getWebsocketData.type == "25" || getWebsocketData.type == 25){ //到面
if(item.id == getWebsocketData.applyUserId){
this.nameArray.push({ type: '1', aliasName: item.aliasName, daomianStyle: item.aliasName, indexA: index });
}
}else if(getWebsocketData.type == "30" || getWebsocketData.type == 30){ //通过
if(item.id == getWebsocketData.applyUserId){
this.nameArray.push({ type: '2', aliasName: item.aliasName, tongguoStyle: item.aliasName, indexA: index });
}
}else if(getWebsocketData.type == "40" || getWebsocketData.type == 40){ //入职
if(item.id == getWebsocketData.applyUserId){
this.nameArray.push({ type: '3', aliasName: item.aliasName, ruzhiStyle: item.aliasName, indexA: index });
}
}
})
console.log(this.nameArray);
if (this.nameArray.length >= 1) {
this.func();
}
}
},
test(e) { //数据接收
var that = this;
e.data = '{"applyUserId":122240,"list":[{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":8,"agencyTeamName":"交付一组","aliasName":"常笑","arrived":1,"entry":2,"entryGPA":1.34,"finshedGPA":0,"funnel":3.40,"id":122240,"inAgencyStatistics":0,"nickName":"微信用户","obJob":25,"passed":2,"resumeNum":50,"showAgencyScreen":0,"signUps":4,"tel":"19036980063","transferRatio":0.04},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":2,"agencyTeamId":5,"agencyTeamName":"交付二组","aliasName":"陶帅","arrived":2,"entry":2,"entryGPA":1.47,"finshedGPA":0,"funnel":2.80,"id":321961,"inAgencyStatistics":0,"obJob":2,"passed":0,"resumeNum":50,"showAgencyScreen":0,"signUps":4,"tel":"19036980509","transferRatio":0.04},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":8,"agencyTeamName":"交付一组","aliasName":"刘深圳","arrived":2,"entry":1,"entryGPA":0.67,"finshedGPA":0.30,"funnel":2.60,"id":321653,"inAgencyStatistics":0,"obJob":6,"passed":2,"resumeNum":50,"showAgencyScreen":0,"signUps":4,"tel":"13271233701","transferRatio":0.02},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":5,"agencyTeamName":"交付二组","aliasName":"刘欢欢","arrived":0,"entry":2,"entryGPA":2.00,"finshedGPA":0,"funnel":2.50,"id":321654,"inAgencyStatistics":0,"obJob":8,"passed":1,"resumeNum":50,"showAgencyScreen":0,"signUps":1,"tel":"19036980372","transferRatio":0.04},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":5,"agencyTeamName":"交付二组","aliasName":"渠森森","arrived":0,"entry":1,"entryGPA":0.33,"finshedGPA":0,"funnel":1.70,"id":321650,"inAgencyStatistics":0,"obJob":2,"passed":1,"resumeNum":50,"showAgencyScreen":0,"signUps":3,"tel":"19036980059","transferRatio":0.02},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":8,"agencyTeamName":"交付一组","aliasName":"张驰","arrived":2,"entry":1,"entryGPA":0.00,"finshedGPA":0,"funnel":1.70,"id":319087,"inAgencyStatistics":0,"nickName":"张驰","obJob":12,"passed":0,"resumeNum":50,"showAgencyScreen":0,"signUps":3,"tel":"19036980035","transferRatio":0.02},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":2,"agencyTeamId":8,"agencyTeamName":"交付一组","aliasName":"闫兴乐","arrived":0,"entry":1,"entryGPA":0.00,"finshedGPA":0.67,"funnel":1.30,"id":318688,"inAgencyStatistics":0,"nickName":"微信用户","obJob":20,"passed":0,"resumeNum":50,"showAgencyScreen":0,"signUps":3,"tel":"19036980028","transferRatio":0.02},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":4,"agencyTeamName":"交付三组","aliasName":"申振磊","arrived":1,"entry":0,"entryGPA":0,"finshedGPA":0,"funnel":0.70,"id":322120,"inAgencyStatistics":0,"obJob":1,"passed":0,"resumeNum":50,"showAgencyScreen":0,"signUps":5,"tel":"19036980052","transferRatio":0.00},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":5,"agencyTeamName":"交付二组","aliasName":"朱永辉","arrived":0,"entry":0,"entryGPA":0,"finshedGPA":0,"funnel":0.30,"id":321652,"inAgencyStatistics":0,"obJob":9,"passed":0,"resumeNum":50,"showAgencyScreen":0,"signUps":3,"tel":"19036980508","transferRatio":0.00},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":4,"agencyTeamName":"交付三组","aliasName":"王尚","arrived":0,"entry":0,"entryGPA":0,"finshedGPA":0,"funnel":0.20,"id":322356,"inAgencyStatistics":0,"obJob":1,"passed":0,"resumeNum":50,"showAgencyScreen":0,"signUps":2,"tel":"19036980507","transferRatio":0.00},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":5,"agencyTeamName":"交付二组","aliasName":"李沂航","arrived":1,"entry":0,"entryGPA":0,"finshedGPA":0,"funnel":0.20,"id":122379,"inAgencyStatistics":0,"nickName":"杰伦","obJob":3,"passed":0,"resumeNum":50,"showAgencyScreen":0,"signUps":0,"tel":"19036980030","transferRatio":0.00},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":4,"agencyTeamName":"交付三组","aliasName":"王名扬","arrived":0,"entry":0,"entryGPA":0,"finshedGPA":0,"funnel":0.10,"id":322355,"inAgencyStatistics":0,"obJob":0,"passed":0,"resumeNum":50,"showAgencyScreen":0,"signUps":1,"tel":"19036980031","transferRatio":0.00},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":3,"agencyTeamName":"待分组","aliasName":"徐倩林","arrived":0,"entry":0,"entryGPA":0,"finshedGPA":0,"funnel":0.10,"id":321999,"inAgencyStatistics":0,"obJob":2,"passed":0,"resumeNum":50,"showAgencyScreen":0,"signUps":1,"tel":"19036980513","transferRatio":0.00},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":8,"agencyTeamName":"交付一组","aliasName":"邓高琦","arrived":0,"entry":0,"entryGPA":0,"finshedGPA":0.00,"funnel":0.10,"id":321964,"inAgencyStatistics":0,"obJob":2,"passed":0,"resumeNum":50,"showAgencyScreen":0,"signUps":1,"tel":"19036980023","transferRatio":0.00},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":8,"agencyTeamName":"交付一组","aliasName":"张静","arrived":0,"entry":0,"entryGPA":0,"finshedGPA":0,"funnel":0.10,"id":321400,"inAgencyStatistics":0,"obJob":8,"passed":0,"resumeNum":50,"showAgencyScreen":0,"signUps":1,"tel":"19036980034","transferRatio":0.00},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":4,"agencyTeamName":"交付三组","aliasName":"李林锟","arrived":0,"entry":0,"entryGPA":0,"finshedGPA":0,"funnel":0.00,"id":322206,"inAgencyStatistics":0,"obJob":0,"passed":0,"resumeNum":50,"showAgencyScreen":0,"signUps":0,"tel":"19036980061","transferRatio":0.00},{"agencyPermissions":"job:list,apply:add,apply:list,apply:user,user:pwd,user:tel","agencyRole":3,"agencyTeamId":5,"agencyTeamName":"交付二组","aliasName":"王正坤","arrived":0,"entry":0,"entryGPA":0,"finshedGPA":0,"funnel":0.00,"id":318852,"inAgencyStatistics":0,"nickName":"郭星池","obJob":6,"passed":0,"resumeNum":50,"showAgencyScreen":0,"signUps":0,"tel":"19036980051","transferRatio":0.00}],"type":"25"}'
console.log(JSON.parse(e.data));
console.log(e.data != '"pong"');
console.log(timeStamp == 0 || new Date().getTime() - timeStamp2 >= 40000);
// debugger
// && (timeStamp2 == 0 || new Date().getTime() - timeStamp2 >= 40000 )
if(e.data != '"pong"'){
//
timeStamp2 = new Date().getTime();
var getWebsocketData = JSON.parse(e.data);
console.log(getWebsocketData);
// console.log(getWebsocketData.list);
// that.array = [...getWebsocketData.list]
that.array = [];
var arr = [...getWebsocketData.list]
var arrLength = arr.length;
// that.array = [];
for (var i = 0; i < arrLength; i += that.pageSize) {
that.array.push(arr.slice(i, i + that.pageSize));
}
console.log(that.array);
arr.forEach((item,index)=>{
console.log(getWebsocketData.type);
if(getWebsocketData.type == "25" || getWebsocketData.type == 25){ //到面
if(item.id - getWebsocketData.applyUserId == 0){
this.nameArray.push({ type: '1', aliasName: item.aliasName, daomianStyle: item.aliasName, indexA: index });
}
}else if(getWebsocketData.type == "30" || getWebsocketData.type == 30){ //通过
if(item.id - getWebsocketData.applyUserId == 0){
this.nameArray.push({ type: '2', aliasName: item.aliasName, tongguoStyle: item.aliasName, indexA: index });
}
}else if(getWebsocketData.type == "40" || getWebsocketData.type == 40){ //入职
if(item.id - getWebsocketData.applyUserId == 0){
this.nameArray.push({ type: '3', aliasName: item.aliasName, ruzhiStyle: item.aliasName, indexA: index });
}
}
})
console.log(this.nameArray);
// var timer = window.setInterval(function () {
// if (this.nameArray.length > 0){
// this.func()
// }else{
// window.clearInterval(timer);
// }
// }, 1000);
if (this.nameArray.length >= 1) {
this.func()
}
}
},
playAudio1() { //点击约面 到面
var that = this;
let audio1 = new Audio()
audio1.src = "http://matripeweb.oss-cn-hangzhou.aliyuncs.com/antd/money.wav"
audio1.play();
},
playAudio2() {
var that = this;
let audio2 = new Audio()
audio2.src = "http://matripeweb.oss-cn-hangzhou.aliyuncs.com/antd/mario.wav"
audio2.play();
},
playAudio3() {
var that = this;
let audio3 = new Audio()
this.ifani = true;
audio3.src = "http://matripeweb.oss-cn-hangzhou.aliyuncs.com/antd/huanhu.wav"
audio3.play();
setTimeout(function() {
that.ifani = false;
}, 15000)
},
playClockAudio(type) {
let clockAudio = new Audio()
var _src = "http://matripeweb.oss-cn-hangzhou.aliyuncs.com/antd/5416.wav";
if (type == 2) {
_src = "http://matripeweb.oss-cn-hangzhou.aliyuncs.com/antd/4031076792.mp3";
}
clockAudio.src = _src;
clockAudio.play();
},
initClock() { //初始化闹钟每天12001330执行
var that = this;
console.log('初始化闹钟')
setInterval(() => {
var d = new Date();
var hour = d.getHours();
var minues = d.getMinutes();
var seconds = d.getSeconds();
if (hour - 11 == 0 && minues - 59 == 0) { //1200
setTimeout(function() {
that.playClockAudio(1);
}, 1000 * (60 - seconds));
}
if (hour - 13 == 0 && minues - 29 == 0) { //1330
setTimeout(function() {
that.playClockAudio(2);
}, 1000 * (60 - seconds));
}
//that.playClockAudio();
//console.log(hour + ":" + minues);
}, 60000); //每隔1分钟刷新一次
},
initWebSocket() { //初始化weosocket
//ws://daotian.matripe.com.cn/daotian/statistic/socket?agencyId=3087
// var wsUri = serverAddress + '/websocket/statisticsServer/' + this.reconnect;
// var wsUri = serverAddress + '/daotian/statistic/socket?agencyId=3087';
var wsUri = 'wss://daotian.matripe.com.cn/socket/daotian/statistic?agency=3087'
// wsUri = wsUri.replace("https", "ws").replace("http", "ws");
this.websock = new WebSocket(wsUri);
this.websock.onmessage = this.websocketonmessage;
this.websock.onopen = this.websocketonopen;
this.websock.onerror = this.websocketonerror;
},
websocketonopen() { //连接建立之后执行send方法发送数据
this.isWebSocket = true;
this.reconnect = 0;
console.log("链接成功!", this.isWebSocket)
// this.websocketsend(JSON.stringify(actions));
},
websocketonerror() { //连接建立失败重连
console.log("连接建立失败");
var that = this;
that.reconnect = 1;
setTimeout(function() {
that.initWebSocket();
}, 2000);
// this.$message.info("重新建立链接中");
// this.initWebSocket();
},
websocketsend(data) { //数据发送
let actions = {
"msg": data
};
console.log("您正在发送消息", actions);
if (this.isWebSocket) {
this.websock.send(JSON.stringify(actions));
} else {
console.log("请先建立链接");
// this.$message.error("请先建立链接")
}
},
websocketclose(e) { //关闭
console.log('断开连接', e);
this.isWebSocket = false;
this.websock.close();
this.initWebSocket();
},
websocketHeartCheck() {
console.log("readyState===", this.websock.readyState);
if (this.websock.readyState == 2 || this.websock.readyState == 3) {
this.reconnect = 1;
this.initWebSocket();
} else {
console.log('连接中...');
}
this.websocketsend("ping");
},
handleSubmit(e) {
var that = this;
e.preventDefault();
this.formScreen.validateFields((err, values) => {
if (!err) {
console.log('Received values of form: ', values);
that.passowrd = values.passowrd;
that.checkPagePassowrd();
}
});
},
checkPagePassowrd() {
var that = this;
axios({
url: '/admin/v3/user/allotOrder/checkPagePassowrd',
method: 'post',
data: {
passowrd: that.passowrd
},
}).then(response => {
console.log(response);
if (response.status == 200) {
// 测试的时候需要注释
that.initWebSocket();
that.initClock();
if (that.isShow) {
setInterval(() => that.websocketHeartCheck(), 60000); //每隔1分钟刷新一次
}
// 测试的时候需要注释
that.isShow = false;
} else {
that.isShow = true;
that.$message.error(response.msg);
}
})
},
timeagoOfDateStr(_time) {
return timeagoOfDateStr(_time);
},
},
}
</script>
<style scoped>
@import 'http://matripeweb.oss-cn-hangzhou.aliyuncs.com/antd/ant.css';
@import 'http://matripeweb.oss-cn-hangzhou.aliyuncs.com/antd/animate.min.css';
@import 'http://matripeweb.oss-cn-hangzhou.aliyuncs.com/antd/bigScreen1.css';
div{
color: #fff;
}
/deep/ .ttd{
text-align: center;
font-size: 36px;
}
.mmtt111{
background-image: url('http://matripeweb.oss-cn-hangzhou.aliyuncs.com/antd/screen_bg.png');background-size: 100% 100%;
background-repeat: no-repeat;
min-height:100vh;
}
.imgPlay .ant-carousel .slick-slide img {
display: inline-block;
}
.imgPlay .slick-list {
display: flex;
align-items: center;
}
.imgPlay .ant-carousel {
background-color: rgba(0, 0, 0, 1);
}
/deep/.slick-dots{
bottom: -30px !important;
}
.imgPlay .tcImg {
position: relative;
width: 100vw;
height: 100vh;
display: flex !important;
align-items: center;
justify-content: center;
}
.imgPlay .mw100 {
max-width: 100%;
max-height: 100vh;
}
.imgPlay .imgText {
position: absolute;
top: 0;
left: 0;
text-align: left;
font-size: 36px;
margin-left: 24px;
color: #FFF;
}
.imgPlay .slick-track {
display: flex;
align-items: center;
}
.ant-carousel>>>.slick-slide {
/*text-align: center;*/
/*height: 560px;
line-height: 160px;
background: #364d79;*/
color: #fff;
overflow: hidden;
}
.ant-carousel>>>.slick-slide h3 {
color: #fff
}
.tth {
width: 100%;
padding-right: 0;
}
.tc1, .tc7 {
width: 12%;
min-width: 70px;
}
.tc2 {
width: 18%;
padding-left: 0px;
text-align: center;
}
.tc3 {
width: 10%;
}
.tc4 {
width: 30%;
}
.tc5 {
width: 14%;
}
@media screen and (max-width: 1500px) {
h4.f24 {
font-size: 48px;
}
.ttd{
text-align: center;
font-size: 25px;
}
.s_left {
width: 96%;
}
.tc1 {
min-width: 50px;
}
.tc2{
width:16%
}
.tc5 {
width: 10%;
}
}
</style>
<style>
::-webkit-scrollbar {
display: none;
}
.ant-carousel .slick-dots-bottom {
bottom: -48px;
}
h4.f24 {
font-size: 56px;
}
.dotClass button:before {
content: '';
width: 16px;
height: 16px;
position: absolute;
left: 0;
top: -6px;
}
.dotClass button:before {
content: '';
width: 16px;
height: 24px;
position: absolute;
left: 0;
top: -12px;
}
.dotClass button.slick-active:before {
content: '';
width: 24px;
}
</style>