德育管理中心班级管理红旗班表格

init
zhusiyu 3 years ago
parent f8e44059ce
commit d7f2739f3c

@ -10,21 +10,66 @@
</div> </div>
<div style="width: 100%;height: calc(100% - 30px);"> <div style="width: 100%;height: calc(100% - 30px);">
<a-empty description="暂无数据" v-if="classManageTableData.length == 0" class="timeLine-empty"/> <a-empty description="暂无数据" v-if="classManageTableData.length == 0" class="timeLine-empty"/>
<vue-scroll v-if="classManageTableData.length != 0" :ops="listScroll" <div v-if="classManageTableData.length != 0">
<div class="classManage-tableBody" v-if="classManageTableBody">
<vue-scroll :ops="listScroll"
:style="showPage?'height:15.1rem':'height:15.1rem'" :style="showPage?'height:15.1rem':'height:15.1rem'"
class="score-list-div"> class="score-list-div">
<div class="classManage-tableBody"> <a-table :columns="columns" :data-source="classManageTableData"
<a-table :columns="columns" :data-source="classManageTableData" :pagination="false" :pagination="false"
rowKey="index"
:rowKey="record=>record.key"
:customRow="getCustomRow"> :customRow="getCustomRow">
<span slot="action" slot-scope="text,record"> <span slot="action" slot-scope="text,record">
<template> <template>
<a @click="handleEdit(record.Id)">>></a> <!-- <a @click="handleEdit()">>></a>-->
<a @click="handleEdit(record)">>></a>
</template> </template>
</span> </span>
</a-table> </a-table>
</vue-scroll>
</div> </div>
<!--点击进入后的表格-->
<div class="detailTable" v-if="!classManageTableBody">
<span class="detailTable-title">< 2021-2022学年度上学期-09-红旗班评比结果 ></span>
<a class="detailTable-back" @click="exitdetail"><< </a>
<vue-scroll v-if="classManageTableData.length != 0" :ops="listScroll"
:style="showPage?'height:15.1rem':'height:15.1rem'"
class="score-list-div">
<a-table :columns="detailTableColumns" :data-source="detailTableData"
:pagination="false"
rowKey="index"
:customRow="getCustomRow">
</a-table>
</vue-scroll> </vue-scroll>
<div class="detailTableBox">
<img src="../images/detailMaster.png" alt="">
<div class="detailTableBox-text">
<a-row style="position: absolute;bottom: 58px;width: 100%;height: 40px;left: 15px;"
type="flex">
<a-col style="position: absolute;left: 0;top: 0;width: 40px;height: 40px;border-radius: 50%">
<img src="../images/bestPer.png" alt=""
style="width:100%;height: 100%;border-radius: 15%">
</a-col>
<a-col style="color: #00FFFF;position: absolute;top: 4px;left: 48px;">
<span style="display:inline-block;color:#D7D7D7;font-size: 12px;margin-bottom: 3px;">班主任</span>
<br>{{bestHeadMasterName}}
</a-col>
</a-row>
<a-row style="position: absolute;width: 100px;height: 20px;bottom: 24px;left: 15px;color: #fff">
<a-col>{{bestHeadMasterClass}}</a-col>
</a-row>
<a-row style="color: #7DF8F9;position: absolute;bottom: 10px;width: 100%;height: 12px;left: 11px;"
type="flex">
<a-col style="border-right: 1px dashed #5B9BAE;padding-right: 7px;margin-right: 7px;">
排名/1
</a-col>
<a-col>积分/{{bestHeadMasterScore}}</a-col>
</a-row>
</div>
</div>
</div>
</div>
</div> </div>
</div> </div>
<!--班级文化&时事新闻--> <!--班级文化&时事新闻-->
@ -39,14 +84,14 @@
<a-carousel ref="imgs" class="classManage-pic-pic" :dot-position="dotposition" easing="linear" <a-carousel ref="imgs" class="classManage-pic-pic" :dot-position="dotposition" easing="linear"
:dots="false" v-if="classCulture.length != 0"> :dots="false" v-if="classCulture.length != 0">
<p class="classCulture" v-for="(item,i) in classCulture" :key="i"> <p class="classCulture" v-for="(item,i) in classCulture" :key="i">
<img style="width: 61%;height: 120px; margin-bottom: 10px;margin-right: 10px;left: 0;top: 0;" <img style="width: 165px;height: 120px; margin-bottom: 10px;margin-right: 10px;left: 0;top: 0;"
:src="item[0].src" alt=""> :src="item[0].src" alt="">
<img style="width: 35%;height: 55px;margin-bottom: 10px; top: 0;right: 0;" <img style="width: 95px;height: 55px;margin-bottom: 10px; top: 0;right: 0;"
:src="item[1].src" alt=""> :src="item[1].src" alt="">
<img style="width: 35%;height: 55px; right: 0;top: 64px;" :src="item[2].src" alt=""> <img style="width: 95px;height: 55px; right: 0;top: 64px;" :src="item[2].src" alt="">
<img style="width: 31%;height: 60px;left: 0;bottom: 0; " :src="item[3].src" alt=""> <img style="width: 85px;height: 60px;left: 0;bottom: 0; " :src="item[3].src" alt="">
<img style="width: 31%;height: 60px; bottom: 0;left: 34.5%;" :src="item[4].src" alt=""> <img style="width: 85px;height: 60px; bottom: 0;left: 34%;" :src="item[4].src" alt="">
<img style="width: 31%;height: 60px; bottom: 0;right: 0;" :src="item[5].src" alt=""> <img style="width: 85px;height: 60px; bottom: 0;right: 0;" :src="item[5].src" alt="">
</p> </p>
</a-carousel> </a-carousel>
<a-row @click.native="nextP" v-if="classCulture.length != 0" <a-row @click.native="nextP" v-if="classCulture.length != 0"
@ -97,44 +142,31 @@
export default { export default {
data() { data() {
return { return {
bestHeadMasterName: '',
bestHeadMasterScore: '',
bestHeadMasterClass: '',
classManageTableBody: true,
spinning: false, spinning: false,
showPage: true, showPage: true,
listScroll: this.StaticParams.scrollOption, listScroll: this.StaticParams.scrollOption,
classManageTableData: [ classManageTableData: [
{grade: '小学部分1年级', flag: '01班,05班', fraction: '103.25'}, // {grade: '1', flag: '01,05', fraction: '103.25', key: '1'},
{grade: '小学部分2年级', flag: '02班', fraction: '103.25'},
{grade: '小学部分3年级', flag: '03班,06班', fraction: '104.25'},
{grade: '小学部分4年级', flag: '01班', fraction: '103.75'},
{grade: '小学部分5年级', flag: '04班', fraction: '105'},
{grade: '小学部分6年级', flag: '02班,03班', fraction: '105.25'},
{grade: '小学部分1年级', flag: '03班,04班', fraction: '103.5'},
{grade: '小学部分2年级', flag: '06班', fraction: '106'},
{grade: '小学部分3年级', flag: '05班', fraction: '103'},
{grade: '小学部分1年级', flag: '01班,05班', fraction: '103.25'},
{grade: '小学部分2年级', flag: '02班', fraction: '103.25'},
{grade: '小学部分3年级', flag: '03班,06班', fraction: '104.25'},
{grade: '小学部分4年级', flag: '01班', fraction: '103.75'},
{grade: '小学部分5年级', flag: '04班', fraction: '105'},
{grade: '小学部分6年级', flag: '02班,03班', fraction: '105.25'},
{grade: '小学部分1年级', flag: '03班,04班', fraction: '103.5'},
{grade: '小学部分2年级', flag: '06班', fraction: '106'},
{grade: '小学部分3年级', flag: '05班', fraction: '103'},
], ],
columns: [ columns: [
{ {
title: '年级', title: '年级',
dataIndex: 'grade', dataIndex: 'grade_name',
key: 'grade', key: 'grade_name',
align: "center", align: "center",
}, { }, {
title: '流动红旗班', title: '流动红旗班',
dataIndex: 'flag', dataIndex: 'flagClass',
key: 'flag', key: 'flagClass',
align: "center", align: "center",
}, { }, {
title: '最高分', title: '最高分',
dataIndex: 'fraction', dataIndex: 'score',
key: 'fraction', key: 'score',
align: "center", align: "center",
}, { }, {
title: '详细', title: '详细',
@ -144,9 +176,30 @@
align: "center", align: "center",
}, },
], ],
detailTableData: [],
detailTableColumns: [
{
title: '班级',
dataIndex: 'class_name',
key: 'class_name',
align: "center",
}, {
title: '得分',
dataIndex: 'score',
key: 'score',
align: "center",
}, {
title: '排名',
dataIndex: 'fraction',
key: 'fraction',
align: "center",
customRender: (text, record, index) => `${index + 1}`
},
],
// //
dotposition: 'right', dotposition: 'right',
classCulture: [ classCulture:
[
// [ // [
// {src: require('../images/classCulture1.png')}, // {src: require('../images/classCulture1.png')},
// {src: require('../images/classCulture2.png')}, // {src: require('../images/classCulture2.png')},
@ -164,40 +217,37 @@
// {src: require('../images/classCulture3.png')}, // {src: require('../images/classCulture3.png')},
// ], // ],
], ],
currentP: '', currentP:
'',
// //
eventData: [ eventData:
[
// {content: '', date: '2022/01/22'}, // {content: '', date: '2022/01/22'},
// {content: '2022', date: '2022/01/22'},
// {content: '20211212503', date: '2022/01/22'},
// {content: '', date: '2022/01/22'},
// {content: '2021', date: '2022/01/22'},
// {content: '100', date: '2022/01/22'},
], ],
// //
carousel3dData: [ carousel3dData:
[
{src: require('../images/newsPic1.png')}, {src: require('../images/newsPic1.png')},
{src: require('../images/newsPic2.png')}, {src: require('../images/newsPic2.png')},
{src: require('../images/newsPic3.png')}, {src: require('../images/newsPic3.png')},
{src: require('../images/newsPic4.png')}, {src: require('../images/newsPic4.png')},
{src: require('../images/newsPic5.png')}, {src: require('../images/newsPic5.png')},
], ],
swiperOption: { swiperOption:
{
speed: 400, speed: 400,
loop: true, loop:
} true,
}
}, },
created() { }
}, },
mounted() { mounted() {
//
this.getClassManageTableData()
// //
this.getClassCulture() this.getClassCulture()
// //
this.getEventData() this.getEventData()
//
this.getClassManageTableData();
}, },
methods: { methods: {
getCustomRow() { getCustomRow() {
@ -210,6 +260,37 @@
}, },
// //
getClassManageTableData() { getClassManageTableData() {
let param = {
"access_token": "system_01##20200102030405##a6ce11eab94df48a6ce11eab",
"query": {
"query_id": "query_deyu_hongqiban2",
"query_param": [
this.BaseConfig.person_info_my.bureau_id + ""
]
},
"query_cache": 0,
"query_count": [],
"query_format": "json",
"query_group": []
}
this.spinning = true;
this.DataexReportInterface.callInterface([{
params: param,
method: "post",
}], (result) => {
let gradeName = []
this.spinning = false;
this.classManageTableData = JSON.parse(result[0].data.result)
//console.log('classManageTableData', this.classManageTableData);
//
this.getDetailTableData();
}
)
},
//
getDetailTableData() {
let param = { let param = {
"access_token": "system_01##20200102030405##a6ce11eab94df48a6ce11eab", "access_token": "system_01##20200102030405##a6ce11eab94df48a6ce11eab",
"query": { "query": {
@ -229,10 +310,58 @@
method: "post", method: "post",
}], (result) => { }], (result) => {
this.spinning = false; this.spinning = false;
//this.classManageTableData = JSON.parse(result[0].data.result) this.detailTableData = JSON.parse(result[0].data.result)
//console.log('', JSON.parse(result[0].data.result)) //console.log("", this.detailTableData)
this.buildGrageData();
}) })
}, },
//
buildGrageData() {
for (let i = 0; i < this.classManageTableData.length; i++) {
let grade_name = this.classManageTableData[i].grade_name.substring(0, 4);//2019
let class_list = [];
for (let j = 0; j < this.detailTableData.length; j++) {
let create_year = this.detailTableData[j].create_year;
if (parseInt(grade_name) === parseInt(create_year)) {
class_list.push(this.detailTableData[j])
}
}
//console.log("class_list", class_list);
this.classManageTableData[i]["class_list"] = class_list;
}
//console.log("", this.classManageTableData)
for (let i = 0; i < this.classManageTableData.length; i++) {
let itemScore = this.classManageTableData[i].score
let flagClass = []
for (let j = 0; j < this.classManageTableData[i].class_list.length; j++) {
let item1Score = this.classManageTableData[i].class_list[j].score
if (parseInt(item1Score) == parseInt(itemScore)) {
flagClass.push(this.classManageTableData[i].class_list[j].class_name.slice(5))
}
}
flagClass = flagClass.join(' ')
this.classManageTableData[i]["flagClass"] = flagClass;
}
//console.log("y", this.classManageTableData)
},
//
handleEdit(item) {
this.classManageTableBody = false
//console.log('item', item.class_list)
this.detailTableData = item.class_list
//
this.bestHeadMasterScore = item.score
this.bestHeadMasterClass = item.class_name
this.bestHeadMasterName = this.detailTableData[0].class_teacher_name
}
,
//退
exitdetail() {
this.classManageTableBody = true
this.detailTableData = []
}
,
// //
getClassCulture() { getClassCulture() {
let param = { let param = {
@ -254,11 +383,12 @@
method: "post", method: "post",
}], (result) => { }], (result) => {
this.spinning = false; this.spinning = false;
this.classCulture = JSON.parse(result[0].data.result) //this.classCulture = JSON.parse(result[0].data.result)
//console.log('', result)//result //console.log('', result)//result
//console.log('', JSON.parse(result[0].data.result)) //console.log('', JSON.parse(result[0].data.result))
}) })
}, }
,
// //
getEventData() { getEventData() {
let param = { let param = {
@ -281,19 +411,26 @@
}], (result) => { }], (result) => {
this.spinning = false; this.spinning = false;
//this.eventData = JSON.parse(result[0].data.result) //this.eventData = JSON.parse(result[0].data.result)
console.log('时事新闻', result)//result //console.log('', result)//result
//console.log('', JSON.parse(result[0].data.result)) //console.log('', JSON.parse(result[0].data.result))
}) })
}, }
,
}, },
components: { components: {
CommonBox, CommonBox,
ARow: Row, ARow:
ACol: Col, Row,
ATable: Table, ACol:
ACarousel: Carousel, Col,
AEmpty: Empty, ATable:
ASpin: Spin, Table,
ACarousel:
Carousel,
AEmpty:
Empty,
ASpin:
Spin,
// //
Carousel3d, Carousel3d,
Slide, Slide,
@ -324,10 +461,6 @@
overflow: hidden; overflow: hidden;
margin-bottom: 10px; margin-bottom: 10px;
.classManage-table-title {
}
.score-list-div { .score-list-div {
width: 100%; width: 100%;
height: 23rem; height: 23rem;
@ -336,7 +469,9 @@
margin-top: 0; margin-top: 0;
overflow: hidden; overflow: hidden;
.classManage-tableBody { }
.classManage-tableBody, .detailTable {
margin-bottom: 15px; margin-bottom: 15px;
/deep/ .ant-table-wrapper { /deep/ .ant-table-wrapper {
@ -389,8 +524,68 @@
text-decoration: underline; text-decoration: underline;
} }
} }
.detailTable {
width: 100%;
position: relative;
z-index: 9999;
display: flex;
.detailTable-title {
display: inline-block;
color: #fff;
position: absolute;
top: -20px;
left: 170px;
z-index: 99;
font-size: 14px;
}
.detailTable-back {
display: inline-block;
position: absolute;
top: 5px;
left: 2px;
color: #fff;
cursor: pointer;
width: 61px;
height: 20px;
z-index: 99;
} }
.detailTableBox {
width: 180px;
height: 175px;
background: #3B446A;
border-radius: 5px;
position: relative;
overflow: hidden;
margin-left: 20px;
margin-top: 20px;
img {
width: 100%;
height: 70px;
position: absolute;
top: 0;
left: 0;
}
.detailTableBox-text {
position: absolute;
width: 180px;
height: 100px;
bottom: 0;
left: 0;
}
}
}
.classManage-table-title {
}
} }
.classManage-bot { .classManage-bot {

Loading…
Cancel
Save