志愿者端

duhanyu
吕天方 2 years ago
parent f413addc6c
commit a37837d40c

Binary file not shown.

After

Width:  |  Height:  |  Size: 203 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 157 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

@ -25,6 +25,7 @@ const permission = {
state.topbarRouters = routes
},
SET_SIDEBAR_ROUTERS: (state, routes) => {
console.log(routes)
state.sidebarRouters = routes
},
},

@ -0,0 +1,47 @@
<template>
<div class="my-inputs">
<el-input v-model="input" placeholder="请输入内容"></el-input>
<div class="btn" @click="inputValue"><i class="el-icon-search"></i></div>
</div>
</template>
<script>
export default {
data() {
return {
input:'',
}
},
methods:{
inputValue(){
this.$emit('changeInput',this.input)
},
},
}
</script>
<style lang="scss" scoped>
.my-inputs {
display: flex;
::v-deep .el-input {
width: 515px;
height: 40px;
.el-input__inner {
width: 100%;
height: 100%;
border-right: none;
border-radius: 4px 0 0 4px;
border: 1px solid #DBD7D7;
}
}
.btn {
display: flex;
align-items: center;
justify-content: center;
width: 52px;
height: 40px;
border-radius: 0 4px 4px 0;
background-color: #F8414D;
cursor: pointer;
color: #fff;
}
}
</style>

@ -0,0 +1,108 @@
<!--
* @Descripttion:
* @version:
* @Author: JC9527
* @Date: 2023-09-04 13:11:33
* @LastEditors: JC9527
* @LastEditTime: 2023-09-18 16:07:36
-->
<template>
<div class="pagination">
<!-- <span class="custom"
>{{ total }}显示{{
total == 0
? "0"
: pageNum == 1
? "1"
: pageSize * (pageNum - 1) + 1
}}-{{ numberMap() }}</span
> -->
<el-pagination
background
:small="true"
:page-sizes="[10, 15]"
:total="total"
layout=" prev, pager, next, sizes, jumper"
@current-change="currentChange"
@size-change="sizeChange"
:current-page.sync="pageNum"
:page-size.sync="pageSize"
>
</el-pagination>
</div>
</template>
<script>
export default {
data() {
return {
pageNum:1,
pageSize:10,
}
},
props:{
total:{
type:Number,
required:true
},
},
methods:{
currentChange(e) {
this.pageNum = e;
this.$emit('pagesChange',{pageSize:this.pageSize,pageNum:e})
},
//
sizeChange(e) {
this.pageSize = e;
this.pageNum = 1;
this.$emit('pagesChange',{pageSize:e,pageNum:this.pageNum})
},
//
numberMap() {
// if (this.total == this.tableData.length) {
// return this.total;
// } else
if (
this.total >
this.pageNum * this.pageSize
) {
return this.pageNum * this.pageSize;
} else if (
this.total < this.pageNum * this.pageSize ||
this.total == this.pageNum * this.pageSize
) {
return this.total;
}
},
},
mounted() {
document.getElementsByClassName(
"el-pagination__jump"
)[0].childNodes[0].nodeValue = "跳至";
},
}
</script>
<style lang="scss" scoped>
.pagination {
// margin-top: vh(20);
display: flex;
align-items: center;
justify-content: flex-end;
// padding-bottom: vh(20);
::v-deep .el-pagination__jump {
margin: 0;
}
::v-deep .el-input--mini .el-input__inner {
height: 23px;
line-height: 23px;
}
::v-deep .el-input--mini .el-input__icon {
line-height: 23px;
}
.custom {
font-size: 12px;
font-family: Alibaba PuHuiTi;
font-weight: 400;
color: #525966;
}
}
</style>

@ -0,0 +1,71 @@
<!--
* @Descripttion:
* @version:
* @Author: JC9527
* @Date: 2023-09-18 10:08:30
* @LastEditors: JC9527
* @LastEditTime: 2023-09-18 16:21:18
-->
<template>
<div class="plan-management">
<div class="plan-topBox">
<el-tabs v-model="activeName" type="card" @tab-click="handleClick">
<el-tab-pane label="活动推荐" name="recommendView"></el-tab-pane>
<el-tab-pane label="活动邀请" name="inviteView"></el-tab-pane>
</el-tabs>
<my-input @changeInput="changeInput"></my-input>
</div>
<div class="plan-bottomBox">
<component :is="defaultRouter" :value="input"></component>
</div>
</div>
</template>
<script>
import inviteView from '../components/invite.vue'
import recommendView from '../components/recommend.vue'
import myInput from "@/views/components/myInput/index.vue"
export default {
components:{inviteView,recommendView,myInput},
data() {
return {
input: '',
activeName: 'recommendView',
defaultRouter:'recommendView'
}
},
methods:{
//
changeInput(value){
this.input = value;
},
handleClick() {
this.defaultRouter = this.activeName
}
},
async created() {
},
}
</script>
<style lang="scss" scoped>
.plan-management {
padding: 0 20px 10px 20px;
background-color: #fff;
height: 100%;
width: 100%;
border-radius: 10px 10px 0 0;
box-shadow: 0px 0px 15px 0px rgba(229,212,212,0.58);
.plan-topBox {
display: flex;
align-items: center;
justify-content: space-between;
padding: 10px 0 0 0;
::v-deep .el-tabs--top {
height: 40px;
}
}
.plan-bottomBox {
margin-top: 10px;
}
}
</style>

@ -0,0 +1,249 @@
<template>
<div>
<div class="tables">
<el-table
:data="tableData"
:border="false"
:height="555"
v-loading="loading"
tooltip-effect="light"
:row-class-name="tableRowClassName"
:cell-style="cellStyle"
>
<el-table-column
label="序号"
type="index"
header-align="center"
width="70">
</el-table-column>
<el-table-column
prop="content"
label="参与活动"
width="280"
>
<template slot-scope="scope">
<div class="activity">
<div>{{ scope.row.content.split(' ')[0] }}</div>
<div>{{ scope.row.content.split(' ')[1] }}</div>
</div>
</template>
</el-table-column>
<el-table-column
prop="person"
label="参与人员"
show-overflow-tooltip
width="180"
>
</el-table-column>
<el-table-column
prop="duration"
label="状态"
>
</el-table-column>
<el-table-column
prop="time"
label="兑换时间"
>
</el-table-column>
<el-table-column
label="操作"
width="250"
>
<template slot-scope="scope">
<div class="tabs-btns">
<div class="look" @click="look(scope.row)">
<img src="@/assets/images/look.png" alt="">
<span>查看</span>
</div>
</div>
</template>
</el-table-column>
</el-table>
</div>
<div class="pagination">
<my-pagination :total="total" @pagesChange="pagesChange"></my-pagination>
</div>
</div>
</template>
<script>
import myPagination from "@/views/components/myPagination/index.vue"
export default {
components:{myPagination},
data() {
return {
tableData: [
{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'11',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},
],
pages:{
pageSize:10,
pageNum:1
},
total:0,
loading:false,
}
},
props:{
value:{
type:String,
default:''
}
},
watch:{
value:{
handler(newInput,oldInput) {
//
},
}
},
methods:{
//
pagesChange(pages){
// console.log(pages)
this.getList(pages)
},
// tabsclass
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 !== 0) {
return "success-row";
}
return "";
},
// style
cellStyle({ row, column, rowIndex, columnIndex }) {
if (columnIndex === 0) {
return `text-align:center`;
} else {
return '';
}
},
},
}
</script>
<style lang="scss" scoped>
.tables {
::v-deep .el-table {
.success-row {
background-color: rgba(250, 247, 247, 0.5);
}
.activity {
div {
text-align: left;
&:nth-child(1) {
font-size: 14px;
font-family: 'Alibaba PuHuiTi';
font-weight: 400;
color: #4D4949;
}
&:nth-child(2) {
width: 180px;
font-size: 14px;
font-family: 'Alibaba PuHuiTi';
font-weight: 400;
color: #999191;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
}
}
td {
height: 42px;
box-sizing: border-box;
// text-align: center;
font-size: 14px;
font-family: 'Alibaba PuHuiTi';
font-weight: 400;
color: #525966;
padding: 2px 0;
}
th {
height: 45px;
background-color: #F7F5F5;
font-size: 15px;
font-family: 'Alibaba PuHuiTi';
font-weight: bold;
color: #4D4949;
.el-checkbox {
display: none;
}
}
}
::v-deep .el-table::before {
height: 0;
}
.tabs-btns {
display: flex;
align-items: center;
// justify-content: center;
.look{
display: flex;
// align-items: center;
margin-right: 30px;
cursor: pointer;
img {
width: 20px;
margin-right: 5px;
}
span {
font-size: 15px;
font-family: Alibaba PuHuiTi;
font-weight: 400;
color: #045FFD;
}
}
}
}
.pagination {
margin-top: 10px;
}
</style>

@ -0,0 +1,253 @@
<template>
<div>
<div class="tables">
<el-table
:data="tableData"
:border="false"
:height="555"
v-loading="loading"
tooltip-effect="light"
:row-class-name="tableRowClassName"
:cell-style="cellStyle"
>
<el-table-column
label="序号"
type="index"
header-align="center"
width="70">
</el-table-column>
<el-table-column
prop="content"
label="参与活动"
width="280"
>
<template slot-scope="scope">
<div class="activity">
<div>{{ scope.row.content.split(' ')[0] }}</div>
<div>{{ scope.row.content.split(' ')[1] }}</div>
</div>
</template>
</el-table-column>
<el-table-column
prop="person"
label="参与人员"
show-overflow-tooltip
width="180"
>
</el-table-column>
<el-table-column
prop="duration"
label="状态"
>
</el-table-column>
<el-table-column
prop="time"
label="兑换时间"
>
</el-table-column>
<el-table-column
label="操作"
width="250"
>
<template slot-scope="scope">
<div class="tabs-btns">
<div class="look" @click="look(scope.row)">
<img src="@/assets/images/look.png" alt="">
<span>查看</span>
</div>
<div class="look" @click="look(scope.row)">
<img src="@/assets/images/look.png" alt="">
<span>参与</span>
</div>
</div>
</template>
</el-table-column>
</el-table>
</div>
<div class="pagination">
<my-pagination :total="total" @pagesChange="pagesChange"></my-pagination>
</div>
</div>
</template>
<script>
import myPagination from "@/views/components/myPagination/index.vue"
export default {
components:{myPagination},
data() {
return {
tableData: [
{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},
],
pages:{
pageSize:10,
pageNum:1
},
total:0,
loading:false,
}
},
props:{
value:{
type:String,
default:''
}
},
watch:{
value:{
handler(newInput,oldInput) {
//
},
}
},
methods:{
//
pagesChange(pages){
// console.log(pages)
this.getList(pages)
},
// tabsclass
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 !== 0) {
return "success-row";
}
return "";
},
// style
cellStyle({ row, column, rowIndex, columnIndex }) {
if (columnIndex === 0) {
return `text-align:center`;
} else {
return '';
}
},
},
}
</script>
<style lang="scss" scoped>
.tables {
::v-deep .el-table {
.success-row {
background-color: rgba(250, 247, 247, 0.5);
}
.activity {
div {
text-align: left;
&:nth-child(1) {
font-size: 14px;
font-family: 'Alibaba PuHuiTi';
font-weight: 400;
color: #4D4949;
}
&:nth-child(2) {
width: 180px;
font-size: 14px;
font-family: 'Alibaba PuHuiTi';
font-weight: 400;
color: #999191;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
}
}
td {
height: 42px;
box-sizing: border-box;
// text-align: center;
font-size: 14px;
font-family: 'Alibaba PuHuiTi';
font-weight: 400;
color: #525966;
padding: 2px 0;
}
th {
height: 45px;
background-color: #F7F5F5;
font-size: 15px;
font-family: 'Alibaba PuHuiTi';
font-weight: bold;
color: #4D4949;
.el-checkbox {
display: none;
}
}
}
::v-deep .el-table::before {
height: 0;
}
.tabs-btns {
display: flex;
align-items: center;
// justify-content: center;
.look{
display: flex;
// align-items: center;
margin-right: 30px;
cursor: pointer;
img {
width: 20px;
margin-right: 5px;
}
span {
font-size: 15px;
font-family: Alibaba PuHuiTi;
font-weight: 400;
color: #045FFD;
}
}
}
}
.pagination {
margin-top: 10px;
}
</style>

@ -0,0 +1,272 @@
<!--
* @Descripttion:
* @version:
* @Author: JC9527
* @Date: 2023-09-18 10:08:30
* @LastEditors: JC9527
* @LastEditTime: 2023-09-18 15:34:55
-->
<template>
<div class="plan-management">
<div class="plan-topBox">
<my-input @changeInput="changeInput"></my-input>
</div>
<div class="plan-bottomBox">
<div class="tables">
<el-table
:data="tableData"
:border="false"
:height="555"
v-loading="loading"
tooltip-effect="light"
:row-class-name="tableRowClassName"
:cell-style="cellStyle"
>
<el-table-column
label="序号"
type="index"
header-align="center"
width="70">
</el-table-column>
<el-table-column
prop="content"
label="参与活动"
width="280"
>
<template slot-scope="scope">
<div class="activity">
<div>{{ scope.row.content.split(' ')[0] }}</div>
<div>{{ scope.row.content.split(' ')[1] }}</div>
</div>
</template>
</el-table-column>
<el-table-column
prop="person"
label="参与人员"
show-overflow-tooltip
width="180"
>
</el-table-column>
<el-table-column
prop="duration"
label="状态"
>
</el-table-column>
<el-table-column
prop="time"
label="兑换时间"
>
</el-table-column>
<el-table-column
label="操作"
width="250"
>
<template slot-scope="scope">
<div class="tabs-btns">
<div class="look" @click="look(scope.row)">
<img src="@/assets/images/look.png" alt="">
<span>查看</span>
</div>
</div>
</template>
</el-table-column>
</el-table>
</div>
<div class="pagination">
<my-pagination :total="total" @pagesChange="pagesChange"></my-pagination>
</div>
</div>
</div>
</template>
<script>
import myPagination from "@/views/components/myPagination/index.vue"
import myInput from "@/views/components/myInput/index.vue"
export default {
components:{myPagination,myInput},
data() {
return {
tableData: [
{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},
],
input: '',
pages:{
pageSize:10,
pageNum:1
},
total:0,
loading:false,
}
},
methods:{
//
pagesChange(pages){
// console.log(pages)
this.getList(pages)
},
//
changeInput(value){
this.input = value;
},
// tabsclass
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 !== 0) {
return "success-row";
}
return "";
},
// style
cellStyle({ row, column, rowIndex, columnIndex }) {
if (columnIndex === 0) {
return `text-align:center`;
} else {
return '';
}
},
},
async created() {
},
}
</script>
<style lang="scss" scoped>
.plan-management {
padding: 0 20px 10px 20px;
background-color: #fff;
height: 100%;
width: 100%;
border-radius: 10px 10px 0 0;
box-shadow: 0px 0px 15px 0px rgba(229,212,212,0.58);
.plan-topBox {
padding: 10px 0 0 0;
}
.plan-bottomBox {
margin-top: 10px;
.tables {
::v-deep .el-table {
.success-row {
background-color: rgba(250, 247, 247, 0.5);
}
.activity {
div {
text-align: left;
&:nth-child(1) {
font-size: 14px;
font-family: 'Alibaba PuHuiTi';
font-weight: 400;
color: #4D4949;
}
&:nth-child(2) {
width: 180px;
font-size: 14px;
font-family: 'Alibaba PuHuiTi';
font-weight: 400;
color: #999191;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
}
}
td {
height: 42px;
box-sizing: border-box;
// text-align: center;
font-size: 14px;
font-family: 'Alibaba PuHuiTi';
font-weight: 400;
color: #525966;
padding: 2px 0;
}
th {
height: 45px;
background-color: #F7F5F5;
font-size: 15px;
font-family: 'Alibaba PuHuiTi';
font-weight: bold;
color: #4D4949;
.el-checkbox {
display: none;
}
}
}
::v-deep .el-table::before {
height: 0;
}
.tabs-btns {
display: flex;
align-items: center;
// justify-content: center;
.look{
display: flex;
// align-items: center;
margin-right: 30px;
cursor: pointer;
img {
width: 20px;
margin-right: 5px;
}
span {
font-size: 15px;
font-family: Alibaba PuHuiTi;
font-weight: 400;
color: #045FFD;
}
}
}
}
.pagination {
margin-top: 10px;
}
}
}
</style>

@ -0,0 +1,143 @@
<!--
* @Descripttion:
* @version:
* @Author: JC9527
* @Date: 2023-09-18 10:08:30
* @LastEditors: JC9527
* @LastEditTime: 2023-09-18 16:26:48
-->
<template>
<div class="mainBox">
<div class="convert-topBox">
<my-input @changeInput="changeInput"></my-input>
</div>
<div class="convert-content">
<div class="integral-lists">
<div class="list" v-for="item in certificateList">
<div class="list-top" :class="item.type == 1 ? 'top-two' : item.type == 2 ? 'top-three' : '' "></div>
<div class="list-bottom">
<span class="bottom-left">{{ item.type == 0 ? '高级' : item.type == 1 ? '中级' : '初级' }}</span>
<span class="bottom-right">兑换</span>
</div>
</div>
</div>
<div class="pagination">
<my-pagination :total="total" @pagesChange="pagesChange"></my-pagination>
</div>
</div>
</div>
</template>
<script>
import myInput from "@/views/components/myInput/index.vue"
import myPagination from "@/views/components/myPagination/index.vue"
export default {
data() {
return {
total:0,
certificateList:[
{
type:2,
},{
type:1,
},{
type:0,
},{
type:2,
},{
type:1,
},{
type:0,
},{
type:2,
},{
type:1,
}
]
};
},
components: {
myInput,myPagination
},
mounted() {
},
methods: {
pagesChange(pages){
},
changeInput(e){
}
},
};
</script>
<style lang="scss" scoped>
.mainBox {
height: 100%;
width: 100%;
border-radius: 10px 10px 0 0;
background-color: #fff;
padding: 0 20px 10px 20px;
box-shadow: 0px 0px 15px 0px rgba(229,212,212,0.58);
.convert-topBox {
padding: 10px 0 0 0;
}
.convert-content {
.integral-lists {
// display: flex;
// flex-wrap: wrap;
margin-top: 10px;
display: grid;
grid-template-columns: repeat(4, 290px);
grid-column-gap: 40px;
grid-row-gap: 10px;
.list {
width: 300px;
height: 275px;
// background: linear-gradient(0deg, #EFE6D9, #DDC9AC);
box-shadow: 0px 3px 15px 0px rgba(184,184,184,0.22);
border-radius: 10px;
.list-top {
background: url('../../../assets/images/icon1.png') no-repeat center center;
background-size: 100% 100%;
height: 238px;
width: 100%;
}
.top-two {
background: url('../../../assets/images/icon2.png') no-repeat center center;
background-size: 100% 100%;
}
.top-three {
background: url('../../../assets/images/icon3.png') no-repeat center center;
background-size: 100% 100%;
}
.list-bottom {
display: flex;
justify-content: space-between;
align-items: center;
padding: 2px 20px;
.bottom-left {
font-size: 16px;
font-family: FZDaBiaoSong-B06S;
font-weight: 400;
color: #4D4949;
}
.bottom-right {
padding: 3px 15px;
border-radius: 4px;
background-color: rgba(249,86,95,0.1);
font-size: 14px;
font-family: 'Alibaba PuHuiTi';
font-weight: 400;
color: #F8414D;
cursor: pointer;
}
}
}
}
.pagination {
margin-top: 5px;
}
}
}
</style>

@ -0,0 +1,273 @@
<!--
* @Descripttion:
* @version:
* @Author: JC9527
* @Date: 2023-09-18 10:08:30
* @LastEditors: JC9527
* @LastEditTime: 2023-09-18 11:33:57
-->
<template>
<div class="plan-management">
<div class="plan-topBox">
<my-input @changeInput="changeInput"></my-input>
</div>
<div class="plan-bottomBox">
<div class="tables">
<el-table
:data="tableData"
:border="false"
:height="555"
v-loading="loading"
tooltip-effect="light"
:row-class-name="tableRowClassName"
:cell-style="cellStyle"
>
<el-table-column
label="序号"
type="index"
header-align="center"
width="70">
</el-table-column>
<el-table-column
prop="content"
label="参与活动"
width="280"
>
<template slot-scope="scope">
<div class="activity">
<div>{{ scope.row.content.split(' ')[0] }}</div>
<div>{{ scope.row.content.split(' ')[1] }}</div>
</div>
</template>
</el-table-column>
<el-table-column
prop="person"
label="参与人员"
show-overflow-tooltip
width="180"
>
</el-table-column>
<el-table-column
prop="duration"
label="服务活动时长"
>
</el-table-column>
<el-table-column
prop="time"
label="参与时间"
>
</el-table-column>
<el-table-column
label="操作"
width="250"
>
<template slot-scope="scope">
<div class="tabs-btns">
<div class="look" @click="look(scope.row)">
<img src="@/assets/images/look.png" alt="">
<span>查看</span>
</div>
<div><span>评估评分</span></div>
</div>
</template>
</el-table-column>
</el-table>
</div>
<div class="pagination">
<my-pagination :total="total" @pagesChange="pagesChange"></my-pagination>
</div>
</div>
</div>
</template>
<script>
import myPagination from "@/views/components/myPagination/index.vue"
import myInput from "@/views/components/myInput/index.vue"
export default {
components:{myPagination,myInput},
data() {
return {
tableData: [
{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},{
content:'志愿活动协助指挥交通 我参加的志愿者活动,指挥交通',
person:'吴加好',
duration:'10',
time:'2023-08-14'
},
],
input: '',
pages:{
pageSize:10,
pageNum:1
},
total:0,
loading:false,
}
},
methods:{
//
pagesChange(pages){
// console.log(pages)
this.getList(pages)
},
//
changeInput(value){
this.input = value;
},
// tabsclass
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 !== 0) {
return "success-row";
}
return "";
},
// style
cellStyle({ row, column, rowIndex, columnIndex }) {
if (columnIndex === 0) {
return `text-align:center`;
} else {
return '';
}
},
},
async created() {
},
}
</script>
<style lang="scss" scoped>
.plan-management {
padding: 0 20px 10px 20px;
background-color: #fff;
height: 100%;
width: 100%;
border-radius: 10px 10px 0 0;
box-shadow: 0px 0px 15px 0px rgba(229,212,212,0.58);
.plan-topBox {
padding: 10px 0 0 0;
}
.plan-bottomBox {
margin-top: 10px;
.tables {
::v-deep .el-table {
.success-row {
background-color: rgba(250, 247, 247, 0.5);
}
.activity {
div {
text-align: left;
&:nth-child(1) {
font-size: 14px;
font-family: 'Alibaba PuHuiTi';
font-weight: 400;
color: #4D4949;
}
&:nth-child(2) {
width: 180px;
font-size: 14px;
font-family: 'Alibaba PuHuiTi';
font-weight: 400;
color: #999191;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
}
}
td {
height: 42px;
box-sizing: border-box;
// text-align: center;
font-size: 14px;
font-family: 'Alibaba PuHuiTi';
font-weight: 400;
color: #525966;
padding: 2px 0;
}
th {
height: 45px;
background-color: #F7F5F5;
font-size: 15px;
font-family: 'Alibaba PuHuiTi';
font-weight: bold;
color: #4D4949;
.el-checkbox {
display: none;
}
}
}
::v-deep .el-table::before {
height: 0;
}
.tabs-btns {
display: flex;
align-items: center;
// justify-content: center;
.look{
display: flex;
// align-items: center;
margin-right: 30px;
cursor: pointer;
img {
width: 20px;
margin-right: 5px;
}
span {
font-size: 15px;
font-family: Alibaba PuHuiTi;
font-weight: 400;
color: #045FFD;
}
}
}
}
.pagination {
margin-top: 10px;
}
}
}
</style>
Loading…
Cancel
Save