feat:项目积分获取规则更换按钮

This commit is contained in:
dongwug
2022-10-24 10:06:24 +08:00
parent 6acebdcec0
commit 17a2b7fc51
2 changed files with 374 additions and 346 deletions

View File

@@ -1,141 +1,167 @@
<!--发布公告-->
<template>
<div class="content3">
<a-tabs v-model:activeKey="activeKeyScore">
<a-tab-pane key="1" tab="学员获取">
<div class="group">
<div class="groupleft">
<div class="groupname" style="width: 42px">姓名</div>
<a-input v-model:value="value" placeholder="请输入姓名" style="width: 131px"/>
</div>
<div class="groupright">
<div class="btn1">
<img src="../../assets/images/courseManage/search0.png" />
<span class="btn1text">搜索</span>
</div>
<div class="btn2">
<img src="../../assets/images/courseManage/reset1.png" />
<span class="btn2text">重置</span>
</div>
</div>
</div>
<div class="tab" style="margin: 20px 32px 30px 32px">
<a-table
style="border: 1px solid #f2f6fe"
:columns="tablecolumnStu"
:data-source="tabledataStu"
:loading="tableDataTotal === -1 ? true : false"
expandRowByClick="true"
@expand="expandTable"
:pagination="false"
/>
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize"
:current="currentPage"
:total="tableDataTotal"
class="pagination"
/>
</div>
</div>
</a-tab-pane>
<a-tab-pane key="2" tab="榜单" force-render>
<div class="scorelist">
<div class="grouprightscore">
<div class="sbutton" @click="stuValue=!stuValue">
<div class="wh" :class="stuValue?'sImage0':'sImage'"></div>
<div :class="stuValue?'':'btn1'">学员积分榜</div>
</div>
<div class="sbutton" @click="stuValue=!stuValue">
<div class="wh" :class="stuValue?'group':'group0'" ></div>
<div :class="stuValue?'btn1':''">小组积分榜</div>
</div>
</div>
<div class="group" style="justify-content: center;">
<div class="groupleft">
<div class="groupname" style="width:42px">姓名</div>
<a-input
v-model:value="value"
placeholder="请输入姓名"
style="width:130px;"/>
</div>
<div class="groupright">
<div class="btn1" style="margin-left: 16px;;">
<img src="../../assets/images/courseManage/search0.png" />
<span class="btn1text">搜索</span>
</div>
<div class="btn2">
<img src="../../assets/images/courseManage/reset1.png" />
<span class="btn2text">重置</span>
</div>
</div>
</div>
<div class="radiobutton">
<a-radio-group v-model:value="todayvalue" button-style="solid" @change="changeday">
<a-radio-button class="today" value="1">今天</a-radio-button>
<a-radio-button class="today" value="2">七天</a-radio-button>
<a-radio-button class="today" value="3">近一个月</a-radio-button>
</a-radio-group>
</div>
<div class="slist">
<a-list :data-source="stuValue?datascoreg:datascore">
<template #renderItem="{ item }">
<div class="item">
<div v-if="item.id==1" class="itemleft" ><div class="itemimage" ><img src="../../assets/images/taskpage/gold.png"/></div><div class="itemid">{{ item.id}}</div></div>
<div v-else-if="item.id==2" class="itemleft"><div class="itemimage" ><img src="../../assets/images/taskpage/siler.png"/></div><div class="itemid">{{ item.id}}</div></div>
<div v-else-if="item.id==3" class="itemleft"><div class="itemimage" ><img src="../../assets/images/taskpage/copper.png"/></div><div class="itemid">{{ item.id}}</div></div>
<div v-else class="itemleft"><div class="elseid">{{ item.id}}</div></div>
<div class="itemcenter"> {{ item.name }}</div>
<div class="itemright">{{ item.score }}</div>
</div>
</template>
</a-list>
</div>
</div>
</a-tab-pane>
<a-tab-pane key="3" tab="获取规则">
<div class="projectscore">
<div class="pjc_body">
<div class="pjcb_header">
<span>规则</span>
<div class="edit_btn">
<div class="edit"></div>
<div class="btnText">编辑</div>
</div>
</div>
<div class="pjcb_content">
<div class="content content1"><span>当前设计下学员可以获得 10 积分</span></div>
<div class="content content2"><span>完成必修/选修获得 5 积分</span></div>
<div class="content content3"><span>优秀学员可获得 5 积分</span></div>
</div>
</div>
</div></a-tab-pane>
</a-tabs>
<a-tabs v-model:activeKey="activeKeyScore">
<a-tab-pane key="1" tab="学员获取">
<div class="group">
<div class="groupleft">
<div class="groupname" style="width: 42px">姓名</div>
<a-input
v-model:value="value"
placeholder="请输入姓名"
style="width: 131px"
/>
</div>
<div class="groupright">
<div class="btn1">
<img src="../../assets/images/courseManage/search0.png" />
<span class="btn1text">搜索</span>
</div>
<div class="btn2">
<img src="../../assets/images/courseManage/reset1.png" />
<span class="btn2text">重置</span>
</div>
</div>
</div>
<div class="tab" style="margin: 20px 32px 30px 32px">
<a-table
style="border: 1px solid #f2f6fe"
:columns="tablecolumnStu"
:data-source="tabledataStu"
:loading="tableDataTotal === -1 ? true : false"
expandRowByClick="true"
@expand="expandTable"
:pagination="false"
/>
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize"
:current="currentPage"
:total="tableDataTotal"
class="pagination"
/>
</div>
</div>
</a-tab-pane>
<a-tab-pane key="2" tab="榜单" force-render>
<div class="scorelist">
<div class="grouprightscore">
<div class="sbutton" @click="stuValue = !stuValue">
<div class="wh" :class="stuValue ? 'sImage0' : 'sImage'"></div>
<div :class="stuValue ? '' : 'btn1'">学员积分榜</div>
</div>
<div class="sbutton" @click="stuValue = !stuValue">
<div class="wh" :class="stuValue ? 'group' : 'group0'"></div>
<div :class="stuValue ? 'btn1' : ''">小组积分榜</div>
</div>
</div>
<div class="group" style="justify-content: center">
<div class="groupleft">
<div class="groupname" style="width: 42px">姓名</div>
<a-input
v-model:value="value"
placeholder="请输入姓名"
style="width: 130px"
/>
</div>
<div class="groupright">
<div class="btn1" style="margin-left: 16px ;">
<img src="../../assets/images/courseManage/search0.png" />
<span class="btn1text">搜索</span>
</div>
<div class="btn2">
<img src="../../assets/images/courseManage/reset1.png" />
<span class="btn2text">重置</span>
</div>
</div>
</div>
<div class="radiobutton">
<a-radio-group
v-model:value="todayvalue"
button-style="solid"
@change="changeday"
>
<a-radio-button class="today" value="1">今天</a-radio-button>
<a-radio-button class="today" value="2">七天</a-radio-button>
<a-radio-button class="today" value="3">近一个月</a-radio-button>
</a-radio-group>
</div>
<div class="slist">
<a-list :data-source="stuValue ? datascoreg : datascore">
<template #renderItem="{ item }">
<div class="item">
<div v-if="item.id == 1" class="itemleft">
<div class="itemimage">
<img src="../../assets/images/taskpage/gold.png" />
</div>
<div class="itemid">{{ item.id }}</div>
</div>
<div v-else-if="item.id == 2" class="itemleft">
<div class="itemimage">
<img src="../../assets/images/taskpage/siler.png" />
</div>
<div class="itemid">{{ item.id }}</div>
</div>
<div v-else-if="item.id == 3" class="itemleft">
<div class="itemimage">
<img src="../../assets/images/taskpage/copper.png" />
</div>
<div class="itemid">{{ item.id }}</div>
</div>
<div v-else class="itemleft">
<div class="elseid">{{ item.id }}</div>
</div>
<div class="itemcenter">{{ item.name }}</div>
<div class="itemright">{{ item.score }}</div>
</div>
</template>
</a-list>
</div>
</div>
</a-tab-pane>
<a-tab-pane key="3" tab="获取规则">
<div class="projectscore">
<div class="pjc_body">
<div class="pjcb_header">
<span>规则</span>
<div class="btns">
<div class="edit_btn1">
<div class="btnText">取消</div>
</div>
<div class="edit_btn2">
<div class="btnText">确定</div>
</div>
</div>
</div>
<div class="pjcb_content">
<div class="content content1">
<span>当前设计下学员可以获得 10 积分</span>
</div>
<div class="content content2">
<span>完成必修/选修获得 5 积分</span>
</div>
<div class="content content3">
<span>优秀学员可获得 5 积分</span>
</div>
</div>
</div>
</div></a-tab-pane
>
</a-tabs>
</div>
</template>
<script>
import { reactive,toRefs} from "vue";
import { reactive, toRefs } from "vue";
export default {
name: "ProjectScore",
setup(){
const state = reactive({
name: "ProjectScore",
setup() {
const state = reactive({
tabledataStu: [
{
key: 1,
@@ -144,9 +170,8 @@ export default {
gangw: "产品经理",
group: "好好学习",
diploma: "0",
operation:"查看",
operation: "查看",
putin: "手动加入",
},
{
key: 2,
@@ -155,9 +180,8 @@ export default {
gangw: "产品经理",
group: "天天向上",
diploma: "0",
operation:"查看",
operation: "查看",
putin: "手动加入",
},
{
key: 3,
@@ -166,7 +190,7 @@ export default {
gangw: "后端",
group: "好好学习",
diploma: "0",
operation:"查看",
operation: "查看",
putin: "手动加入",
},
{
@@ -176,12 +200,11 @@ export default {
gangw: "前端",
group: "天天向上",
diploma: "0",
operation:"查看",
operation: "查看",
putin: "手动加入",
},
],
tablecolumnStu: [
{
title: "姓名",
@@ -231,251 +254,256 @@ export default {
align: "center",
className: "operation",
},
],
datascore:[
datascore: [
{
id:1,
name:"张三的名字很长很长很长",
score:"10分",
id: 1,
name: "张三的名字很长很长很长",
score: "10分",
},
{
id:2,
name:"李四",
score:"10分",
id: 2,
name: "李四",
score: "10分",
},
{
id:3,
name:"王五的名字一定要比张三的还长",
score:"10分",
id: 3,
name: "王五的名字一定要比张三的还长",
score: "10分",
},
{
id:4,
name:"赵六",
score:"10分",
id: 4,
name: "赵六",
score: "10分",
},
{
id:5,
name:"冯七",
score:"10分",
id: 5,
name: "冯七",
score: "10分",
},
],
datascoreg:[
],
datascoreg: [
{
id:1,
name:"第一组的同学们",
score:"10分",
id: 1,
name: "第一组的同学们",
score: "10分",
},
{
id:2,
name:"第2组的同学们",
score:"9分",
id: 2,
name: "第2组的同学们",
score: "9分",
},
{
id:3,
name:"第3组的同学们",
score:"8分",
id: 3,
name: "第3组的同学们",
score: "8分",
},
{
id:4,
name:"第4组的同学们",
score:"7分",
id: 4,
name: "第4组的同学们",
score: "7分",
},
{
id:5,
name:"第五组的同学们",
score:"6分",
id: 5,
name: "第五组的同学们",
score: "6分",
},
],
],
valueName: "", //排行榜输入姓名
valueDate: "", //排行榜输入日期
noticeChecked: true,
noticeContent: "请输入要发布的公告",
activeKeyScore:"1",
stuName:"请输入姓名",
todayvalue:"1",
tableDataTotal:30,
stuValue:false,
activeKeyScore: "1",
stuName: "请输入姓名",
todayvalue: "1",
tableDataTotal: 30,
stuValue: false,
});
return{
return {
...toRefs(state),
}
},
}
};
},
};
</script>
<style lang="scss">
.content3 {
margin-top: 20px;
.group {
display: flex;
justify-content: space-between;
.groupleft {
display: flex;
flex-wrap: wrap;
align-items: center;
margin-left: 32px;
.groupname {
height: 22px;
width: 70px;
color: #000000;
font-size: 14px;
}
}
}
.scorelist{
padding-left: 382px;
padding-right: 382px;
padding-bottom: 100px;
padding-top: 50px;
.grouprightscore{
display: flex;
justify-content: space-evenly;
margin-bottom: 30px;
text-align: center;
.sbutton{
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.wh{
width: 40px;
height: 40px;
}
.sImage0{
background-image: url(@/assets/images/taskpage/stu0.png);
}
.sImage{
background-image: url(@/assets/images/taskpage/stu.png);
}
.group0{
background-image: url(@/assets/images/taskpage/group0.png);
}
.group{
background-image: url(@/assets/images/taskpage/group.png);
}
.btn1{
color: #409EFF;
}
}
.radiobutton{
margin-top: 23px;
margin-bottom: 23px;
justify-content: center;
display: flex;
text-align: center;
.today{
width: 105px;
}
}
.slist{
background-color: #f5f8fc;
padding-left: 20px;
padding-right: 20px;
padding-bottom: 20px;
padding-top: 10px;
font-size: 18px;
.item{
display: flex;
justify-content: space-evenly;
text-align: center;
border-bottom: none;
height: 60px;
align-items: center;
background-color: white;
border-radius: 21px;
margin-top: 10px;
.itemleft{
justify-content: center;
display: flex;
align-items: center;
width: 150px;
.itemid{
font-size: 46px;
font-family: math;
font-style: italic;
font-weight: 700;
color: #409EFF;
margin-left: 5px;
}
.elseid{
font-size: 26px;
font-family: math;
font-weight: 500;
margin-left: 40px;
}
}
.itemcenter{
width: 300px;
}
.itemright{
width:150px;
}
}
}
}
.content3 {
margin-top: 20px;
.group {
display: flex;
justify-content: space-between;
.groupleft {
display: flex;
flex-wrap: wrap;
align-items: center;
margin-left: 32px;
.groupname {
height: 22px;
width: 70px;
color: #000000;
font-size: 14px;
}
}
}
.projectscore{
.pjc_body{
margin-left:34px;
margin-right:34px;
.pjcb_header{
.scorelist {
padding-left: 382px;
padding-right: 382px;
padding-bottom: 100px;
padding-top: 50px;
.grouprightscore {
display: flex;
justify-content: space-evenly;
margin-bottom: 30px;
text-align: center;
.sbutton {
display: flex;
justify-content: space-between;
flex-direction: column;
align-items: center;
margin:24px auto;
.edit_btn{
width: 100px;
// padding: 0px 26px 0px 26px;
height: 38px;
background: rgb(64, 158, 255);
border-radius: 8px;
border: 1px solid rgba(64, 158, 255, 1);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
cursor: pointer;
.edit {
width: 15px;
height: 15px;
background-image: url(@/assets/images/coursewareManage/export1.png);
background-size: 100% 100%;
}
.btnText {
justify-content: center;
}
.wh {
width: 40px;
height: 40px;
}
.sImage0 {
background-image: url(@/assets/images/taskpage/stu0.png);
}
.sImage {
background-image: url(@/assets/images/taskpage/stu.png);
}
.group0 {
background-image: url(@/assets/images/taskpage/group0.png);
}
.group {
background-image: url(@/assets/images/taskpage/group.png);
}
.btn1 {
color: #409eff;
}
}
.radiobutton {
margin-top: 23px;
margin-bottom: 23px;
justify-content: center;
display: flex;
text-align: center;
.today {
width: 105px;
}
}
.slist {
background-color: #f5f8fc;
padding-left: 20px;
padding-right: 20px;
padding-bottom: 20px;
padding-top: 10px;
font-size: 18px;
.item {
display: flex;
justify-content: space-evenly;
text-align: center;
border-bottom: none;
height: 60px;
align-items: center;
background-color: white;
border-radius: 21px;
margin-top: 10px;
.itemleft {
justify-content: center;
display: flex;
align-items: center;
width: 150px;
.itemid {
font-size: 46px;
font-family: math;
font-style: italic;
font-weight: 700;
color: #409eff;
margin-left: 5px;
}
.elseid {
font-size: 26px;
font-family: math;
font-weight: 500;
margin-left: 40px;
}
}
.itemcenter {
width: 300px;
}
.itemright {
width: 150px;
}
}
}
}
}
.projectscore {
.pjc_body {
margin-left: 34px;
margin-right: 34px;
.pjcb_header {
display: flex;
justify-content: space-between;
align-items: center;
margin: 24px auto;
.btns {
display: flex;
.edit_btn1 {
width: 100px;
// padding: 0px 26px 0px 26px;
height: 38px;
margin-left: 15px;
border-radius: 8px;
border: 1px solid rgba(64, 158, 255, 1);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
cursor: pointer;
background-color: rgb(255, 255, 255);
.btnText {
font-size: 14px;
font-weight: 400;
color: rgb(64, 158, 255);
line-height: 36px;
margin-left: 5px;
}
}
.edit_btn2 {
width: 100px;
// padding: 0px 26px 0px 26px;
height: 38px;
margin-left: 15px;
border-radius: 8px;
border: 1px solid rgba(64, 158, 255, 1);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
cursor: pointer;
background-color: rgb(64, 158, 255);
.btnText {
font-size: 14px;
font-weight: 400;
color: rgb(255, 255, 255);
line-height: 36px;
margin-left: 5px;
}
}
}
}
}
.pjcb_content{
border: 1px solid #409EFF;
padding: 32px;
.pjcb_content :last-child{
margin-bottom:0px;
}
.content{
margin-bottom:24px;
}
margin-bottom:130px;
.pjcb_content {
border: 1px solid #409eff;
padding: 32px;
.pjcb_content :last-child {
margin-bottom: 0px;
}
.content {
margin-bottom: 24px;
}
margin-bottom: 130px;
}
}
}
}
</style>

View File

@@ -1,4 +1,4 @@
<template>
<template>
<a-drawer
:visible="Seevisible"
class="drawerStyle seestu"