Commit 808b1155 authored by xieyishang's avatar xieyishang

’addxx

parent 2d1849c7
...@@ -2361,6 +2361,14 @@ ...@@ -2361,6 +2361,14 @@
"integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==",
"dev": true "dev": true
}, },
"axios": {
"version": "0.21.1",
"resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz",
"integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==",
"requires": {
"follow-redirects": "^1.10.0"
}
},
"babel-eslint": { "babel-eslint": {
"version": "10.1.0", "version": "10.1.0",
"resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz",
...@@ -2895,7 +2903,6 @@ ...@@ -2895,7 +2903,6 @@
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
"integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
"dev": true,
"requires": { "requires": {
"function-bind": "^1.1.1", "function-bind": "^1.1.1",
"get-intrinsic": "^1.0.2" "get-intrinsic": "^1.0.2"
...@@ -5432,8 +5439,7 @@ ...@@ -5432,8 +5439,7 @@
"follow-redirects": { "follow-redirects": {
"version": "1.14.1", "version": "1.14.1",
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz",
"integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==", "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg=="
"dev": true
}, },
"for-in": { "for-in": {
"version": "1.0.2", "version": "1.0.2",
...@@ -5528,8 +5534,7 @@ ...@@ -5528,8 +5534,7 @@
"function-bind": { "function-bind": {
"version": "1.1.1", "version": "1.1.1",
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
"dev": true
}, },
"functional-red-black-tree": { "functional-red-black-tree": {
"version": "1.0.1", "version": "1.0.1",
...@@ -5553,7 +5558,6 @@ ...@@ -5553,7 +5558,6 @@
"version": "1.1.1", "version": "1.1.1",
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
"integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
"dev": true,
"requires": { "requires": {
"function-bind": "^1.1.1", "function-bind": "^1.1.1",
"has": "^1.0.3", "has": "^1.0.3",
...@@ -5677,7 +5681,6 @@ ...@@ -5677,7 +5681,6 @@
"version": "1.0.3", "version": "1.0.3",
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
"dev": true,
"requires": { "requires": {
"function-bind": "^1.1.1" "function-bind": "^1.1.1"
} }
...@@ -5697,8 +5700,7 @@ ...@@ -5697,8 +5700,7 @@
"has-symbols": { "has-symbols": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz",
"integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw=="
"dev": true
}, },
"has-value": { "has-value": {
"version": "1.0.0", "version": "1.0.0",
...@@ -7664,8 +7666,7 @@ ...@@ -7664,8 +7666,7 @@
"object-inspect": { "object-inspect": {
"version": "1.11.0", "version": "1.11.0",
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz",
"integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==", "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg=="
"dev": true
}, },
"object-is": { "object-is": {
"version": "1.1.5", "version": "1.1.5",
...@@ -8894,10 +8895,12 @@ ...@@ -8894,10 +8895,12 @@
"dev": true "dev": true
}, },
"qs": { "qs": {
"version": "6.5.2", "version": "6.10.1",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz",
"integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==",
"dev": true "requires": {
"side-channel": "^1.0.4"
}
}, },
"query-string": { "query-string": {
"version": "4.3.4", "version": "4.3.4",
...@@ -9230,6 +9233,14 @@ ...@@ -9230,6 +9233,14 @@
"tough-cookie": "~2.5.0", "tough-cookie": "~2.5.0",
"tunnel-agent": "^0.6.0", "tunnel-agent": "^0.6.0",
"uuid": "^3.3.2" "uuid": "^3.3.2"
},
"dependencies": {
"qs": {
"version": "6.5.2",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
"integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==",
"dev": true
}
} }
}, },
"require-directory": { "require-directory": {
...@@ -9623,6 +9634,16 @@ ...@@ -9623,6 +9634,16 @@
"integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==", "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==",
"dev": true "dev": true
}, },
"side-channel": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
"integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
"requires": {
"call-bind": "^1.0.0",
"get-intrinsic": "^1.0.2",
"object-inspect": "^1.9.0"
}
},
"signal-exit": { "signal-exit": {
"version": "3.0.3", "version": "3.0.3",
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz",
......
...@@ -8,8 +8,10 @@ ...@@ -8,8 +8,10 @@
"lint": "vue-cli-service lint" "lint": "vue-cli-service lint"
}, },
"dependencies": { "dependencies": {
"axios": "^0.21.1",
"core-js": "^3.6.5", "core-js": "^3.6.5",
"element-ui": "^2.15.3", "element-ui": "^2.15.3",
"qs": "^6.10.1",
"vue": "^2.6.11", "vue": "^2.6.11",
"vue-router": "^3.2.0", "vue-router": "^3.2.0",
"vuex": "^3.4.0" "vuex": "^3.4.0"
......
<template> <template>
<!-- 二维码 --> <!-- 二维码 -->
<div class="qrcodebox"> <div class="qrcodebox">
<div ref="element" v-drag draggable="false" id="box" class="box " style="z-index: 999; position: absolute; width: 300px; height: 286px; top: 191px; left: 616px;">
<span style="font-size: 18.75px;text-align: center;color: #fff;">请扫码参与活动</span>
<img src="@/assets/news/qrcode.png" alt="活动二维码" title="活动二维码" class="qrcode">
<div id="coor" class="coor coor-right-bottom" style="display: block; top: 304px;"></div>
<div class="coor coor-bottom" style="display: block; top: 304px;"></div>
<div class="coor coor-right" style="display: block; top: 161px;"></div>
</div>
</div> </div>
</template> </template>
<script> <script>
export default {
data(){
return {
dd:"",
inout:""
}
},
//自定义指令
directives: {
drag(el){
let oDiv = el; //当前元素
let self = this; //上下文
//禁止选择网页上的文字
document.onselectstart = function() {
return false;
};
oDiv.onmousedown = function(e){
//鼠标按下,计算当前元素距离可视区的距离
let disX = e.clientX - oDiv.offsetLeft;
let disY = e.clientY - oDiv.offsetTop;
document.onmousemove = function(e){
//通过事件委托,计算移动的距离
let l = e.clientX - disX;
let t = e.clientY - disY;
//移动当前元素
oDiv.style.left = l + "px";
oDiv.style.top = t + "px";
}
document.onmouseup = function(e){
document.onmousemove = null;
document.onmouseup = null;
};
//return false不加的话可能导致黏连,就是拖到一个地方时div粘在鼠标上不下来,相当于onmouseup失效
return false;
};
}
}
}
</script> </script>
<style> <style>
.qrcodebox{
text-align: center;
}
#box {
width: 120px;
cursor: move;
position: absolute;
top: 60px;
right: 60px;
color: #fff;
text-align: center;
z-index: 999;
}
#box img {
width: 100%;
height: 100%;
}
</style> </style>
...@@ -2,6 +2,7 @@ import Vue from 'vue' ...@@ -2,6 +2,7 @@ import Vue from 'vue'
import VueRouter from 'vue-router' import VueRouter from 'vue-router'
import Home from '../views/Home/Home.vue' import Home from '../views/Home/Home.vue'
import Luckdraw from '../views/Luckdraw/Luckdraw.vue' import Luckdraw from '../views/Luckdraw/Luckdraw.vue'
import About from "../views/About.vue";
Vue.use(VueRouter) Vue.use(VueRouter)
...@@ -15,6 +16,11 @@ const routes = [ ...@@ -15,6 +16,11 @@ const routes = [
path:"/Luckdraw", path:"/Luckdraw",
name: 'Luckdraw', name: 'Luckdraw',
component: Luckdraw component: Luckdraw
},
{
path:"/About",
name:"About",
component:About,
} }
// { // {
// path: '/about', // path: '/about',
......
import { post,get,uploadImg } from '../http';
//get
//获取配置签名
export function getSignNewList(data) {
return post("/SignWin/getSignNewList", data, {noAuth: true});
}
//开奖接口
/***
* 参数count表示抽奖人数
*
*/
export function getWinner(data) {
return post("/SignWin/getWinner", data, {noAuth: true});
}
\ No newline at end of file
/**axios封装
* 请求拦截、相应拦截、错误统一处理
*/
import axios from 'axios';
import QS from 'qs';
import store from '../store/index'
import {message} from "element-ui";
// 环境的切换
/* if (process.env.NODE_ENV == 'development') {
axios.defaults.baseURL = '/api';
} else if (process.env.NODE_ENV == 'debug') {
axios.defaults.baseURL = '';
} else if (process.env.NODE_ENV == 'production') {
axios.defaults.baseURL = 'https://tj.jxlld.com/Wxapp/';
} */
axios.defaults.baseURL = 'https://zxluma.jxdsy.cn/api/';
// 请求超时时间
axios.defaults.timeout = 10000;
// post请求头
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';
// 请求拦截器
axios.interceptors.request.use(
config => {
// 每次发送请求之前判断是否存在token,如果存在,则统一在http请求的header都加上token,不用每次请求都手动添加了
// 即使本地存在token,也有可能token是过期的,所以在响应拦截器中要对返回状态进行判断
// const token = store.state.token;
// token && (config.headers.Authorization = token);
//rd3_sessionkey: MTU4ODM5NDk1Mmx6VnFWZEsxUDdJeW1NanJOejZt
//console.info(config,"config");
return config;
},
error => {
return Promise.error(error);
})
// 响应拦截器
axios.interceptors.response.use(
response => {
if (response.status === 200) {
return Promise.resolve(response);
} else {
return Promise.reject(response);
}
},
// 服务器状态码不是200的情况
error => {
if (error.response.status) {
switch (error.response.status) {
// 401: 未登录
// 未登录则跳转登录页面,并携带当前页面的路径
// 在登录成功后返回当前页面,这一步需要在登录页操作。
case 401:
/* router.replace({
path: '/login',
query: { redirect: router.currentRoute.fullPath }
}); */
break;
// 403 token过期
// 登录过期对用户进行提示
// 清除本地token和清空vuex中token对象
// 跳转登录页面
case 403:
message({
message: '登录过期,请重新登录',
type: 'warning'
});
// 清除token
localStorage.removeItem('token');
store.commit('loginSuccess', null);
// 跳转登录页面,并将要浏览的页面fullPath传过去,登录成功后跳转需要访问的页面
setTimeout(() => {
/* router.replace({
path: '/login',
query: {
redirect: router.currentRoute.fullPath
}
}); */
}, 1000);
break;
// 404请求不存在
case 404:
message({
message: '网络请求不存在',
type: 'warning',
});
break;
// 其他错误,直接抛出错误提示
default:
message({
message: error.response.data.message,
type: 'warning',
});
}
return Promise.reject(error.response);
}
}
);
/**
* get方法,对应get请求
* @param {String} url [请求的url地址]
* @param {Object} params [请求时携带的参数]
*/
export function get(url, params,isobj) {
console.info(isobj);
return new Promise((resolve, reject) => {
axios.get(url, {
params: params
})
.then(res => {
console.info("到这里了没");
resolve(res.data);
})
.catch(err => {
console.info("到这里了没1");
reject(err.data)
})
});
}
/**
* post方法,对应post请求
* @param {String} url [请求的url地址]
* @param {Object} params [请求时携带的参数]
*/
export function post(url, params,isobj) {
//params.rd3_sessionkey='MTU4ODM5NDk1Mmx6VnFWZEsxUDdJeW1NanJOejZt';
let user = JSON.parse(sessionStorage.getItem('user'));
// 已登录
if (user) {
params.rd3_sessionkey = user.rd3_skey;
}
console.info(isobj);
return new Promise((resolve, reject) => {
axios.post(url, QS.stringify(params))
.then(res => {
console.log(res,"res11");
if(res.data.code!=0){
console.info("提示");
message({
message: res.data.msg,
type: 'warning',
});
}
resolve(res.data);
})
.catch(err => {
reject(err.data)
})
});
}
/**
* 上传图片的方法
*
*
*/
export function uploadImg(url,img) { // img => base64图片地址
return new Promise((resolve, reject) => {
///resolve(res.data);
//reject(err.data)
let param = new FormData(); //创建form对象
param.append('uploadFile', img);// base64 转 二进制流 multipartFile => 后端要求的参数
axios.post({
method: 'post', // post 方式
url: 'https://zxluma.jxdsy.cn/api/'+url, // 接口地址
headers: { // 设置请求头
"Content-Type": "multipart/form-data"
},
data: param // 参数
}).then((res) => { // 成功
resolve(res.data);
}).catch((err) => { // 异常
reject(err)
})
});
}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
<template> <template>
<div class="about"> <div class="drag">
<h1>This is an about page</h1> <div ref="element" class="content" v-drag draggable="false">
</div> <p>文字网页</p>
</div>
<div style="height:2000px;width:100%"></div>
</div>
</template> </template>
<script >
export default {
data(){
return {
dd:"",
inout:""
}
},
directives: {
drag(el){
let oDiv = el; //当前元素
let self = this; //上下文
//禁止选择网页上的文字
document.onselectstart = function() {
return false;
};
oDiv.onmousedown = function(e){
//鼠标按下,计算当前元素距离可视区的距离
let disX = e.clientX - oDiv.offsetLeft;
let disY = e.clientY - oDiv.offsetTop;
document.onmousemove = function(e){
//通过事件委托,计算移动的距离
let l = e.clientX - disX;
let t = e.clientY - disY;
//移动当前元素
oDiv.style.left = l + "px";
oDiv.style.top = t + "px";
}
document.onmouseup = function(e){
document.onmousemove = null;
document.onmouseup = null;
};
//return false不加的话可能导致黏连,就是拖到一个地方时div粘在鼠标上不下来,相当于onmouseup失效
return false;
};
}
}
}
</script>
<style>
.drag{
position: relative;
}
/* position:absolute;这个还是要设的,不然拖动块定不了位置 */
.content{
position:absolute;
height:100px;
width:100px;
background-color: #67C23A;
cursor: pointer;
}
</style>
\ No newline at end of file
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
<div class="tp2"> <div class="tp2">
<div class="tp-1" style=""> <div class="tp-1" style="">
<div class="tp-3" id="counter">参与人数:15,850</div> <div class="tp-3" id="counter">参与人数:{{usersigcount}}</div>
</div> </div>
</div> </div>
</div> </div>
...@@ -32,100 +32,106 @@ ...@@ -32,100 +32,106 @@
<div class="qiandao" id="ddd" style="display: block;"> <div class="qiandao" id="ddd" style="display: block;">
<ul id="divDetail"> <ul id="divDetail">
<li class="qiaodaosf" v-for="(item,index) in Checkuserlist" :key="index"> <li class="qiaodaosf" v-for="(item,index) in Checkuserlist" :key="index">
<img class="qiaodaotx" :src="item.usertx"> <img class="qiaodaotx" :src="item.avatar">
<p class="qiaodaoxm">{{item.username}}</p> <p class="qiaodaoxm">{{item.nickname}}</p>
</li> </li>
</ul> </ul>
</div> </div>
</div> </div>
<qrcodebox ref="qrcodebox"></qrcodebox>
</div> </div>
</template> </template>
<script> <script>
import qrcodebox from "@/components/qrcodebox.vue";
import {
userlist
} from "@/utils/userlist.js";
import {getSignNewList} from "@/utils/api/api.js"
export default { export default {
name: 'Home', name: 'Home',
components: { components: {
qrcodebox,
}, },
data(){ data(){
return { return {
usersigcount:0,//参会总人数
jgtime:5000,
moniuserlist: userlist, //模拟数据列表
//显示的数据
Checkuserlist:[ Checkuserlist:[
{ {
username:"春暖花开", username:"春暖花开",
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png", usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
}, },
{
username:">☀️☀️☀",
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
},
{
username:"朱晓东",
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
},
{
username:"。。。",
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
},
{
username:"草M(赵立新)",
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
},
{
username:"君墨",
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
},
{
username:"牛奶咖啡",
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
},
{
username:"全村的期望",
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
},
{
username:"汪宏超",
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
},
{
username:"人人",
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
},
{
username:"时龙辉",
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
},
{
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
username:"愛曬太陽的喵",
},
{
username:"郭思雨",
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
},
{
username:"小谢",
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
}
] ]
} }
}, },
created() { created() {
this.demoadduser(); // this.demoadduser();
this.initgetdata();
}, },
methods:{ methods:{
demoadduser(){ demoadduser(){
setInterval(()=>{ // let index = 0;
this.Checkuserlist.push({ // let clearnm = setInterval(()=>{
username:"小谢", // this.Checkuserlist.push(this.moniuserlist[index]);
usertx:"https://p.qqan.com/up/2021-7/2021761012352324.png",
}); // let viedeheiht = document.getElementById("divDetail").clientHeight;
// document.getElementById('ddd').scrollTop=viedeheiht+200;//通过scrollTop设置滚动到100位置
// index++;
let viedeheiht = document.getElementById("divDetail").clientHeight; // if(index>=this.moniuserlist.length){
document.getElementById('ddd').scrollTop=viedeheiht+200;//通过scrollTop设置滚动到100位置 // clearInterval(clearnm);
// }
// },1500)
//加载更多数据
getSignNewList({
user_id:this.Checkuserlist[this.Checkuserlist.length-1].user_id,
}).then((res)=>{
if(res.code==0){
this.Checkuserlist = [...this.Checkuserlist,...res.data.list];//加入数据
this.usersigcount = res.data.count;
let viedeheiht = document.getElementById("divDetail").clientHeight;
document.getElementById('ddd').scrollTop=viedeheiht+999999;//通过scrollTop设置滚动到100位置
setTimeout(()=>{
this.demoadduser();//加载更多的数据
},this.jgtime)
}
}).catch((err)=>{
//报错了也要继续请求
setTimeout(()=>{
this.demoadduser();//加载更多的数据
},this.jgtime)
})
},
//获取数据
initgetdata(){
getSignNewList({
}).then((res)=>{
console.info("res",res);
if(res.code==0){
this.Checkuserlist = res.data.list;
this.usersigcount = res.data.count;
setTimeout(()=>{
let viedeheiht = document.getElementById("divDetail").clientHeight;
document.getElementById('ddd').scrollTop=viedeheiht+999999;//通过scrollTop设置滚动到100位置
},500)
},1500) setTimeout(()=>{
this.demoadduser();//加载更多的数据
},this.jgtime)
}
})
} }
} }
} }
......
...@@ -250,6 +250,7 @@ ...@@ -250,6 +250,7 @@
.lottery-right .lottery-win-list.lottery-horizontal .winner-name { .lottery-right .lottery-win-list.lottery-horizontal .winner-name {
width: 100%; width: 100%;
padding-top: 10px;
} }
.winner-name { .winner-name {
width: 100%; width: 100%;
...@@ -258,7 +259,6 @@ ...@@ -258,7 +259,6 @@
white-space: nowrap; white-space: nowrap;
font-size: 16px; font-size: 16px;
color: #fff; color: #fff;
line-height: 68px;
} }
.lottery-right .lottery-win-list .lottery-winner ul li img { .lottery-right .lottery-win-list .lottery-winner ul li img {
position: absolute; position: absolute;
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
<div class="tp2"> <div class="tp2">
<div class="tp-1" style=""> <div class="tp-1" style="">
<div class="tp-3" id="counter">参与人数:15,850</div> <div class="tp-3" id="counter">参与人数:{{usersigcount}}</div>
</div> </div>
</div> </div>
</div> </div>
...@@ -53,10 +53,15 @@ ...@@ -53,10 +53,15 @@
<ul class="lottery-win-scroll" tabindex="5000"> <ul class="lottery-win-scroll" tabindex="5000">
<li v-for="(item,index) in imitateuserlist" :key="index"> <li v-for="(item,index) in imitateuserlist" :key="index">
<div class="lottery-avatar-bd"> <div class="lottery-avatar-bd">
<div class="lottery-avatar-bg"><img :src="item.usertx"> <div class="lottery-avatar-bg">
<img :src="item.avatar">
</div> </div>
</div> </div>
<div class="winner-name">{{item.username}}</div> <div class="winner-name">
{{item.nickname}}
<br>
ID:{{item.user_id}}
</div>
</li> </li>
...@@ -73,9 +78,10 @@ ...@@ -73,9 +78,10 @@
<ul class="lottery-scroll"> <ul class="lottery-scroll">
<li v-for="(item,index) in dtuserzj" :key="index" style="width:14%;padding:14% 0 0 0;"> <li v-for="(item,index) in dtuserzj" :key="index" style="width:14%;padding:14% 0 0 0;">
<div class="lottery-item" style="font-size:1.4em"> <div class="lottery-item" style="font-size:1.4em">
<p>{{item.username}}</p> <p>{{item.nickname}}</p>
<p>ID:{{item.user_id}}</p>
</div> </div>
<img :src="item.usertx"> <img :src="item.avatar">
</li> </li>
</ul> </ul>
<div v-show="isshowstop" class="control-item-btn1"> <div v-show="isshowstop" class="control-item-btn1">
...@@ -87,7 +93,7 @@ ...@@ -87,7 +93,7 @@
</div> </div>
<qrcodebox ref="qrcodebox"></qrcodebox>
</div> </div>
</template> </template>
...@@ -97,78 +103,51 @@ ...@@ -97,78 +103,51 @@
userlist userlist
} from "@/utils/userlist.js" } from "@/utils/userlist.js"
let cls = 0; let cls = 0;
import qrcodebox from "@/components/qrcodebox.vue";
import {getSignNewList,getWinner} from "@/utils/api/api.js"
export default { export default {
components:{
qrcodebox
},
name: "Luckdraw", name: "Luckdraw",
data() { data() {
return { return {
moniuserlist: userlist, //模拟数据列表 moniuserlist: userlist, //模拟数据列表
Checkuserlist:[],//参会人员的数据
usersigcount:0,
Wintheprizenum: 1, Wintheprizenum: 1,
centerDialogVisible: false, centerDialogVisible: false,
//模拟数据 //模拟数据
imitateuserlist: [{ imitateuserlist: [
username: "现金啥",
usertx: "https://thirdwx.qlogo.cn/mmopen/vi_32/Q0j4TwGTfTLUVQibXaS2mk2scS5ZacUyc4dQkqfZXsz8K6at0b8UM0JxxCFQRs44KEiaG5DDItKFV6y6hrbklubQ/132",
},
{
username: "cd",
usertx: "https://thirdwx.qlogo.cn/mmopen/vi_32/zwb3VX705VW6RvgGiapTibWLf2GasKeiaB7BviaSbxTJicUeWfJq1OAuvI9qlEJUwCiaC8Ty1H6ZZEwatfHCrIUDgxAQ/132",
},
{
username: "黄斌斌",
usertx: "https://thirdwx.qlogo.cn/mmopen/vi_32/Qp6EnXhUrLJRVU3rRvV2n0PofBLj5MM7QpZgu7nYx6mZicSS6YFImhic4djyI8yXHEawgqutGQ9wyKSgY6lF6BpQ/132",
},
{
username: "钟霓",
usertx: "https://thirdwx.qlogo.cn/mmopen/vi_32/Q0j4TwGTfTJOsGtyIibIo4sz1kRXmzZmTpVlgQKRZEaepsicd5ftbyX3z1Uj9k0No75JiaaicPibDaPYvg76kURIhww/132",
},
{
username: "123",
usertx: "https://thirdwx.qlogo.cn/mmopen/vi_32/byk9mvYJ8Sxt1cLicKqgXyRI5UiazwQp9lN2wZBpZmyZTs1cqeWmSXIcvNCKb21iaJAkaL18EkibICs5hyAQ96iczUQ/132",
},
{
username: "胡冬兰",
usertx: "https://thirdwx.qlogo.cn/mmopen/vi_32/sL72V9yVUrFx3ib0nKzguUhgyk5u4wyXp754XiaDpdOiaibg78msqgH0QTibv9vKXz1hr3bYB5sPzD6WoOb4BQ96Z2A/132",
},
{ {
username: "曹聪", nickname: "w_code",
usertx: "https://thirdwx.qlogo.cn/mmopen/vi_32/tgQUUzHnIHicc9Ry2G2bwlRSNt2ERx5xT8BX7kSz2QlaoSZicZsp9npvDSzfWrB4zd2LF0ickhbo1I3oEJJdn9O6g/132", avatar: "https://thirdwx.qlogo.cn/mmopen/vi_32/Q0j4TwGTfTLUVQibXaS2mk2scS5ZacUyc4dQkqfZXsz8K6at0b8UM0JxxCFQRs44KEiaG5DDItKFV6y6hrbklubQ/132",
user_id:"9718",
}, },
{
username: "余凯",
usertx: "https://thirdwx.qlogo.cn/mmopen/vi_32/DYAIOgq83epJBHJiapUR6dalN9icy8hpNxzB85CFH6r7CKvNAmibNdAHv2K6EWDp2JdjgAE2RSptC5ibKfjAUXak7g/132",
},
{
username: "杨敢",
usertx: "https://thirdwx.qlogo.cn/mmopen/vi_32/gpGOLe5GJZ02u2DPDvSvSZkNFCWmRiaIS18qibErgaYiaV4mmXV4vUxnlNvLEkEAmcBiahb3xia1G880DuTDOPiaBfjg/132",
},
{
username: "现金啥",
usertx: "https://thirdwx.qlogo.cn/mmopen/vi_32/Q0j4TwGTfTLUVQibXaS2mk2scS5ZacUyc4dQkqfZXsz8K6at0b8UM0JxxCFQRs44KEiaG5DDItKFV6y6hrbklubQ/132",
},
{
username: "cd",
usertx: "https://thirdwx.qlogo.cn/mmopen/vi_32/zwb3VX705VW6RvgGiapTibWLf2GasKeiaB7BviaSbxTJicUeWfJq1OAuvI9qlEJUwCiaC8Ty1H6ZZEwatfHCrIUDgxAQ/132",
},
{
usertx: "https://thirdwx.qlogo.cn/mmopen/vi_32/Qp6EnXhUrLJRVU3rRvV2n0PofBLj5MM7QpZgu7nYx6mZicSS6YFImhic4djyI8yXHEawgqutGQ9wyKSgY6lF6BpQ/132",
username: "黄斌斌",
},
{
username: "钟霓",
usertx: "https://thirdwx.qlogo.cn/mmopen/vi_32/Q0j4TwGTfTJOsGtyIibIo4sz1kRXmzZmTpVlgQKRZEaepsicd5ftbyX3z1Uj9k0No75JiaaicPibDaPYvg76kURIhww/132",
},
{
username: "77六斤8",
usertx: "https://thirdwx.qlogo.cn/mmopen/vi_32/DYAIOgq83er132T98gMqaYMibNhAE7SkOMKAR7dgxRr27EXtnv50JqkdeMfGNra1U3I1Ww6lPMNWYY8VcK4bMdg/132",
}
], ],
dtuserzj: [], //动态中奖用户名单 dtuserzj: [], //动态中奖用户名单
isshowstop:false,//是否显示停止按钮 isshowstop:false,//是否显示停止按钮
} }
}, },
created(){
this.initgetdata();
},
methods: { methods: {
//获取数据 参会人员的数据
initgetdata(){
getSignNewList({
}).then((res)=>{
console.info("res",res);
if(res.code==0){
this.Checkuserlist = res.data.list;//餐后列表
this.usersigcount = res.data.count;//人数
}
})
},
//取指定范围内的随机数 //取指定范围内的随机数
randomNum(minNum, maxNum) { randomNum(minNum, maxNum) {
switch (arguments.length) { switch (arguments.length) {
...@@ -205,9 +184,9 @@ ...@@ -205,9 +184,9 @@
cls = setInterval(() => { cls = setInterval(() => {
let suijiarr = []; let suijiarr = [];
for (let i = 0; i < this.Wintheprizenum; i++) { for (let i = 0; i < this.Wintheprizenum; i++) {
let suijindex = this.randomNum(0, this.moniuserlist.length); let suijindex = this.randomNum(0, this.Checkuserlist.length);
// console.info("suijindex",suijindex); // console.info("suijindex",suijindex);
suijiarr.push(this.moniuserlist[suijindex]); suijiarr.push(this.Checkuserlist[suijindex]);
} }
this.dtuserzj = suijiarr; //赋值集合 this.dtuserzj = suijiarr; //赋值集合
index++; index++;
...@@ -216,18 +195,25 @@ ...@@ -216,18 +195,25 @@
}, },
//停止按钮点击 也就是开奖的方法 //停止按钮点击 也就是开奖的方法
stopkaijiang(){ stopkaijiang(){
this.dtuserzj = [this.moniuserlist[0]]; //设置最后的结果
clearInterval(cls);
cls = 0;
this.isshowstop = false;
//开奖 这个最后要请求真实数据 //开奖 这个最后要请求真实数据
let suijiarr = []; //请求开奖
for (let i = 0; i < this.Wintheprizenum; i++) { getWinner({
let suijindex = this.randomNum(0, this.moniuserlist.length); count:this.Wintheprizenum,
// console.info("suijindex",suijindex); }).then((res)=>{
suijiarr.push(this.moniuserlist[suijindex]); if(res.code==0){
} this.dtuserzj = []; //设置最后的结果
this.dtuserzj = suijiarr; //赋值集合 clearInterval(cls);//清除定时器
cls = 0;//去除事件id
this.isshowstop = false;//隐藏停止按钮
this.dtuserzj = res.data;//赋值中奖名单
}else{
this.dtuserzj = [];
}
}).catch((err)=>{
this.dtuserzj = [];
})
}, },
//打开弹窗的回调 //打开弹窗的回调
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment