diff --git a/src/api/activity/drawPrize.js b/src/api/activity/drawPrize.js index f8b1c14..80e376f 100644 --- a/src/api/activity/drawPrize.js +++ b/src/api/activity/drawPrize.js @@ -29,7 +29,6 @@ export function destroyDrawLog(params) { - export function save(data) { return request({ url: '/api/admin/draw-prize/save', diff --git a/src/components/XyTable/index.vue b/src/components/XyTable/index.vue index 4838ba6..fe2cc3a 100644 --- a/src/components/XyTable/index.vue +++ b/src/components/XyTable/index.vue @@ -166,7 +166,10 @@ export default { }, toggleAllSelection() { this.$refs.table.toggleAllSelection() - } + }, + getSelection(){ + return this.$refs.table?.store?.states?.selection ?? [] + }, }, created() { this.initLoad() @@ -310,6 +313,7 @@ export default { prop={item.prop} sortable={item.sortable ?? true} type={item.type} + reserve-selection={ item.type === 'selection' ? item.reserveSelection : false } selectable={item.selectable} scopedSlots={item.type === 'expand' ? { default(props){ diff --git a/src/views/activity/drawPrizeLog.vue b/src/views/activity/drawPrizeLog.vue index db9f41e..9d8c428 100644 --- a/src/views/activity/drawPrizeLog.vue +++ b/src/views/activity/drawPrizeLog.vue @@ -1,209 +1,240 @@ - - - - - diff --git a/src/views/page/MidAutumnLotteryDraw.vue b/src/views/page/MidAutumnLotteryDraw.vue index 2b95767..0d5e23d 100644 --- a/src/views/page/MidAutumnLotteryDraw.vue +++ b/src/views/page/MidAutumnLotteryDraw.vue @@ -31,14 +31,14 @@
-
+
- + + + + + + + + + +
@@ -95,7 +101,8 @@ export default { maxHeight: '40vh', bkg, flag: false, //是否开始 - isEnd: false, //视图结束 + isEnd: true, //视图结束 + isOver: false,//抽奖是否结束 timer: null, config: { draw_prize: {}, @@ -144,6 +151,7 @@ export default { }, draw: throttle(async function () { + if (this.isOver) return if (!this.flag) { console.log("开始抽奖"); try { @@ -156,35 +164,36 @@ export default { ); this.result = result.draw_numbers; this.flag = true; - this.isEnd = true; + this.isEnd = false; this.timer = setInterval(() => { - let set = new Set(); - while (set.size < result.draw_numbers.length) { - let num = Math.floor( - Math.random() * this.config.numbers_list.length - ); - set.add(num); - } - - this.resultNumbers = Array.from(set); + // let set = new Set(); + // while (set.size < result.draw_numbers.length) { + // let num = Math.floor( + // Math.random() * this.config.numbers_list.length + // ); + // set.add(num); + // } + // + // this.resultNumbers = Array.from(set); if (!this.flag) { clearInterval(this.timer); setTimeout(() => { this.resultNumbers = result.draw_numbers; - this.isEnd = false; + this.isEnd = true; + this.isOver = true; }, 150); } }, 150); - setTimeout(() => { - this.flag = false; - console.log("结束抽奖"); - }, 3000); } catch (err) { console.log(err); } + } else { + + this.flag = false; + console.log("结束抽奖"); } }), }, @@ -201,12 +210,13 @@ export default { set.add( this.config.numbers_list[ Math.floor(Math.random() * this.config.numbers_list.length) - ] + ].toString().padStart(3,'0') ); } return Array.from(set).sort(() => Math.random() - 0.5); } + return this.config.numbers_list .sort(() => Math.random() - 0.5) .slice(0, 36); @@ -311,11 +321,13 @@ export default { } @keyframes blur { from { + text-shadow: 2px 4px #00000066; filter: blur(1.5px) drop-shadow(0 0 4px #00000055) drop-shadow(0 0 8px #00000033); } to { + text-shadow: 2px 4px #00000066; filter: blur(1.5px) drop-shadow(0 0 4px #00000055) drop-shadow(0 0 8px #00000033); - transform: translateY(-300%); + transform: translateY(-200%); } } &__item { @@ -374,13 +386,21 @@ export default { } } .btn { + border-width: 0 2px 2px 0; + display: block; cursor: pointer; + text-align: center; + font-size: 2.6em; width: 46.67%; - display: flex; - justify-content: center; + font-weight: 900; transition: all 0.2s; + background: linear-gradient(to bottom,rgb(242, 172, 106),rgb(247, 232, 203)); + border-radius: 6px; + color: rgb(152, 50, 22); + box-shadow: 1px 4px 10px 6px #00000055; - margin: 4.5vh auto 0 auto; + margin: 4.2vh auto 0 auto; + padding: 10px 0; } }