Files
fe-student/src/views/ballot/BallotPage.vue
2022-12-11 21:18:27 +08:00

573 lines
15 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<div class="moreactive">
<!-- 面包屑导航 -->
<div class="crumb">
<div>混合制项目</div>
<div style="margin-left: 6px; margin-right: 6px">/</div>
<div>管理者进阶-腾飞班</div>
<div style="margin-left: 6px; margin-right: 6px">/</div>
<div style="font-weight: 700; font-size: 16px">投票详情</div>
<div class="preNext">
<button class="btn btn01"></button>
<span class="content" style="margin-left: 6px">上一个</span>
<span class="content" style="margin-left: 31px">下一个</span>
<button class="btn btn02" style="margin-left: 6px"></button>
</div>
</div>
<!-- 面包屑导航 -->
<div class="debateTitle">投票管理者进阶腾飞班 - 授课方式</div>
<!-- 详细信息 -->
<div class="detailinfo">
<div class="detail">
<div class="detailT">
<div class="left">
<div class="title">
<img
width="20px"
height="20px"
src="../../assets/image/yuan.png"
/>
<div class="text">参与情况</div>
<div class="box"></div>
</div>
<!-- <div style="display: flex; align-items: center"></div> -->
<div class="all">
<div class="item allbox1">
<!-- <div class="item1" style="color: #089dff">
{{ data.accessCnt }}
</div> -->
<div class="item2">参与数</div>
</div>
<div class="item allbox2">
<!-- <div class="item1" style="color: #387df7">
{{ data.voteCnt }}
</div> -->
<div class="item2">总票数</div>
</div>
<div class="item allbox3">
<!-- <div class="item1" style="color: #00c6ff">
{{ data.viewCnt }}
</div> -->
<div class="item2">浏览数</div>
</div>
</div>
<div class="title">
<img
width="20px"
height="20px"
src="../../assets/image/yuan.png"
/>
<div class="text">参与投票</div>
<div class="box"></div>
</div>
<div class="join">
<div class="imgcontent">
<div class="imgone" style="margin-right: 10px"></div>
<div class="imgone"></div>
</div>
<!-- todo #投票任务 参与投票下面这段文字是固定的么-->
<div class="ontitle">
通过对各级人员的软件平台培训使其能够了解如何运用乾元坤和智能信息管理系统来提升企业管理水平最大限度发挥软件产品在企业中的作用;
<br />
<br />
培训目标
<br />
<br />
1.使企业不同部门人员掌握便捷有效的系统平台操作方法;
<br />
<br />
2.通过系统平台的培训提高员工对企业的管理理念认识与提升
<br />
<br />
3.通过系统平台培训加强沟通统一部署协同工作提高效率
<br />
<br />
培训对象
<br />
<br />
集团领导各相关部门领导总经理车间主管车间操作员等;
</div>
</div>
</div>
<div class="right">
<div class="righttitle">
<img
width="20px"
height="20px"
src="../../assets/image/yuan.png"
/>
<div class="text">投票时间</div>
<div class="box"></div>
</div>
<div class="timebox clearfix">
<!-- <div class="innertime">
{{
data.detail?.voteStartTime
}}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{{
data.detail?.voteEndTime
}}
</div> -->
<div class="endtime clearfix">
<div class="endtimetext">
距离结束还有&nbsp;&nbsp;
<!-- <span class="te">{{
parseInt(
dayjs(data.detail?.voteEndTime).diff(dayjs(), "minute") /
60
)
}}</span
>&nbsp;&nbsp; 小时&nbsp;&nbsp;<span class="te">{{
dayjs(data.detail?.voteEndTime).diff(dayjs(), "minute") % 60
}}</span
>&nbsp;&nbsp;分钟 -->
</div>
</div>
</div>
<div class="righttitle">
<img
width="20px"
height="20px"
src="../../assets/image/yuan.png"
/>
<div class="text">投票说明</div>
<div class="box"></div>
</div>
<div class="explain clearfix">
<!-- <div
class="explaincontent"
v-html="data.detail?.voteExplain"
></div> -->
</div>
</div>
</div>
</div>
</div>
<!-- 详细信息 -->
</div>
</template>
<script setup>
import { useRequest } from "@/api/request";
import {
ROUTER_CHAPTER_LIST,
ROUTER_LIST,
TASK_VOTE_DETAIL,
VOTE_DETAIL2,
} from "@/api/api";
import dayjs from "dayjs";
import { useRoute } from "vue-router/dist/vue-router";
// const { data } = useRequest(TASK_VOTE_DETAIL, {});
// console.log("datadatadata", data);
const {
query: { ballotId = 3 },
} = useRoute();
const { data: dataInfo } = useRequest(VOTE_DETAIL2(ballotId));
console.log("dataInfo", dataInfo);
const handleClick = (tab, event) => {
console.log(tab, event);
};
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped lang="scss">
.clearfix:before,
.clearfix:after {
content: "";
display: table;
clear: both;
}
.moreactive {
.crumb {
color: #fff;
display: flex;
font-size: 14px;
line-height: 24px;
position: relative;
}
.preNext {
position: absolute;
right: 0px;
.content {
font-size: 14px;
color: #fff;
width: 43px;
height: 14px;
display: inline-block;
position: relative;
top: -6px;
cursor: pointer;
}
.btn {
width: 23px;
height: 23px;
border-radius: 50%;
border: 0;
cursor: pointer;
}
.btn01 {
background-image: url("../../assets/image/prev.png");
}
.btn02 {
background-image: url("../../assets/image/next.png");
}
}
.debateTitle {
margin-top: 15px;
font-size: 20px;
line-height: 24px;
height: 24px;
font-weight: 600;
color: #fff;
margin-left: -10px;
}
.detailinfo {
width: 100%;
margin-top: 20px;
display: flex;
.detail {
flex: 1;
// margin-right: 20px;
.detailT {
min-height: 800px;
background: #ffffff;
border-radius: 8px;
color: rgba(51, 51, 51, 1);
display: flex;
padding-bottom: 20px;
.left {
margin-left: 48px;
flex: 1;
}
.right {
width: 417px;
margin-right: 48px;
.righttitle {
display: flex;
padding-top: 39px;
position: relative;
.text {
margin-left: 8px;
font-size: 16px;
color: rgba(51, 51, 51, 1);
font-weight: 800;
}
.box {
width: 75px;
height: 10px;
background-color: rgba(36, 120, 255, 0.15);
position: absolute;
left: 23px;
top: 53px;
}
}
.timebox {
width: 417px;
height: 149px;
background: linear-gradient(90deg, #b6c6e1 0%, #89aed6 100%);
border-radius: 4px;
margin-top: 42px;
}
.innertime {
margin-top: 17px;
margin-left: 55px;
font-size: 14px;
font-weight: 500;
color: #ffffff;
line-height: 24px;
}
.endtime {
margin-left: 10px;
margin-top: 16px;
width: 397px;
height: 81px;
background: #f2f5f7;
border-radius: 0px 8px 0px 8px;
.endtimetext {
margin-top: 25px;
margin-left: 46px;
.te {
font-size: 28px;
font-weight: 800;
color: #4a9cf8;
line-height: 24px;
}
}
}
.explain {
margin-top: 30px;
width: 416px;
padding-bottom: 50px;
background: #f2f5f7;
border-radius: 8px;
}
.explaincontent {
width: 368px;
font-size: 16px;
font-weight: 500;
color: #333330;
line-height: 24px;
margin-left: 24px;
margin-top: 47px;
}
}
.title {
display: flex;
align-items: center;
padding-top: 39px;
position: relative;
}
.title .text {
margin-left: 8px;
font-size: 16px;
color: rgba(51, 51, 51, 1);
font-weight: 800;
}
.title .box {
width: 75px;
height: 10px;
background-color: rgba(36, 120, 255, 0.15);
position: absolute;
left: 23px;
top: 53px;
}
.all {
display: flex;
justify-content: space-between;
// width: 1280px;
margin-right: 48px;
margin-top: 43px;
.allbox1 {
margin-right: 22px;
background: linear-gradient(
0deg,
rgba(160, 193, 230, 0) 0%,
rgba(161, 195, 231, 0.2) 100%
);
}
.allbox2 {
margin-right: 22px;
background: linear-gradient(
0deg,
rgba(177, 219, 229, 0) 0%,
rgba(172, 216, 227, 0.2) 100%
);
}
.allbox3 {
background: linear-gradient(
0deg,
rgba(195, 209, 234, 0) 0%,
rgba(191, 206, 231, 0.2) 100%
);
}
.item {
// width: 410px;
width: calc(100% - 44px);
height: 149px;
text-align: center;
border-radius: 4px;
.item1 {
color: #089dff;
font-size: 24px;
font-weight: bold;
margin-top: 36px;
}
.item2 {
color: #333330;
font-size: 14px;
margin-top: 29px;
}
}
}
.join {
// width: 1280px;
margin-right: 48px;
// min-height: 408px;
// background: #f5f6f7;
// border-radius: 8px;
margin-top: 32px;
flex: 1;
.imgcontent {
display: flex;
.imgone {
width: 140px;
height: 140px;
border-radius: 8px;
background-image: url(../../assets/image/px.png);
background-size: 100% 100%;
background-position: center;
}
}
.ontitle {
margin-top: 27px;
font-size: 14px;
color: #333330;
}
}
}
.detailB {
min-height: 363px;
background: #ffffff;
border-radius: 8px;
margin-top: 20px;
.el-tabs__item {
height: 69px;
padding: 25px 7px 0px 52px;
font-size: 14px;
font-weight: 500;
}
.el-tabs__nav-wrap::after {
background-color: rgba(56, 125, 247, 0.2);
}
.enclosure {
height: 89px;
margin-left: 51px;
margin-right: 40px;
// border-bottom: 1px solid rgba(56, 125, 247, 0.2);
display: flex;
justify-content: space-between;
align-items: center;
.enclosureL {
display: flex;
align-items: center;
font-size: 14px;
font-weight: 400;
color: #677d86;
line-height: 24px;
}
.download {
display: flex;
align-items: center;
font-size: 16px;
font-weight: 400;
color: #2478ff;
line-height: 24px;
cursor: pointer;
}
}
.work {
margin-left: 51px;
margin-right: 40px;
display: flex;
justify-content: space-between;
align-items: center;
margin-top: 37px;
}
.work .question {
font-size: 14px;
font-weight: 500;
color: #333330;
line-height: 18px;
}
.work .active {
width: 82px;
height: 28px;
background: linear-gradient(90deg, #a5d4e0 0%, #b4dce6 100%);
border-radius: 4px;
font-size: 14px;
font-weight: 500;
color: #ffffff;
line-height: 24px;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
margin-right: 11px;
}
.work .unactive {
width: 80px;
height: 26px;
border: 1px solid #a5d4e0;
border-radius: 4px;
font-size: 14px;
font-weight: 500;
color: #a5d4e0;
line-height: 24px;
display: flex;
align-items: center;
justify-content: center;
margin-right: 11px;
cursor: pointer;
}
.work .btncolor {
background: linear-gradient(90deg, #84aad2 0%, #a4c5e9 100%);
}
.work .bordercolor {
border: 1px solid #85aad2;
}
.work .fontcolor {
color: rgba(133, 170, 210, 1);
}
.work .submit {
width: 126px;
height: 46px;
background: #2478ff;
box-shadow: 0px 1px 8px 0px rgba(56, 125, 247, 0.7);
border-radius: 4px;
font-size: 16px;
font-weight: 800;
color: #ffffff;
line-height: 24px;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
}
}
}
}
}
</style>