lansir 1 éve
szülő
commit
7124560c6f
1 módosított fájl, 88 hozzáadás és 73 törlés
  1. 88 73
      pages/studentRanked/studentRanked.vue

+ 88 - 73
pages/studentRanked/studentRanked.vue

@@ -1,40 +1,70 @@
 <template>
     <view class="page">
-        <u-popup :show="multiSelect" bgColor="#6e8fafde" mode="top" @close="multiSelect=false" :overlay="false">
+        <!-- <u-popup :show="multiSelect" bgColor="#6e8fafde" mode="top" @close="multiSelect=false" :overlay="false">
             <view class="ui-p ui-flex ui-flex-align-center" style="justify-content: end;">
                 <view class="ui-mr30">
                     <text class="f32" style="#9ccbff">请点击选则学生批量点评</text>
                 </view>
                 <view class="ui-flex" style="width: 250px;">
-                    <u-button size="small" @click="setMulti" plain text="取消选择" style="background-color: #0d4980;" class="ui-mr10"></u-button>
+                    <u-button size="small" @click="setMulti" plain text="取消选择" style="background-color: #0d4980;"
+                        class="ui-mr10"></u-button>
                     <u-button size="small" type="primary" @click="commentMulti()">
                         <text class="ui-mr10">批量点评</text>
                         <u-badge :value="activeList.length"></u-badge>
                     </u-button>
                 </view>
             </view>
-        </u-popup>
+        </u-popup> -->
         
-        <view class="ranked" v-if="chooseClassName">
-            <view v-for="(item,index) in list" :key="index" class="ranked-item">
-                <view @click="Comment(item1)" v-for="(item1,index1) in item.nodes" :key="item1.id"
-                    class="ui-flex-column ranked-item-tr ui-flex-align-center" :class="{active : activeList.includes(item1.id)}">
-                    
-                    <image style="width: 100rpx;height: 100rpx;" :src="'https://zhxy.obs.cn-hz1.ctyun.cn:443/static/student_icon/'+ (index1%7) +'.png'"
-                        mode=""></image>
-                    <view class="stu-tag ui-flex-row ui-mt10">
-                        <view class="stu-tag-add ui-flex-1">72</view>
-                        <view class="stu-tag-sub ui-flex-1">-32</view>
-                    </view>
-                    
-                    <view class="txt-white f28 ui-pt10">
-                        {{item1.title}}
+        <view class="txt-white ui-flex-row ui-flex-align-center" style="border-bottom: 4px solid #4472C4;padding-left: 40rpx;height: 54px;" :style="{'background-color': multiSelect ? '#4472c4' : ''}">
+            <view class="ui-p ui-flex-row">
+                <text class="f40">{{chooseClassName}}</text>
+                <view class="ui-flex-row">
+                    <text class="f40 ui-ml30 ui-mr10">李老师</text>
+                    <u-icon name="arrow-down-fill" color="#fff"></u-icon>
+                </view>
+            </view>
+            
+            <view class="ui-p ui-flex ui-flex-1 ui-flex-align-center" style="justify-content: end;" v-if="multiSelect">
+                <view class="ui-mr30">
+                    <text class="f32" style="#9ccbff">请点击选则学生批量点评</text>
+                </view>
+                <view class="ui-flex" style="width: 250px;">
+                    <u-button size="small" @click="setMulti" plain text="取消选择" style="background-color: #0d4980;"
+                        class="ui-mr10"></u-button>
+                    <u-button size="small" type="primary" @click="commentMulti()">
+                        <text class="ui-mr10">批量点评</text>
+                        <u-badge :value="activeList.length"></u-badge>
+                    </u-button>
+                </view>
+            </view>
+        </view>
+
+        <view class="ui-flex-row ui-mt20 ui-flex-space-around">
+            <view v-for="(column, index) in list" :key="index" v-if="index%2 == 0" class="ui-flex-row">
+                <view v-for="index2 in 2" class="ui-flex-column" :class="{
+                        'ui-mr10' : index2 == 1,
+                        'ui-ml10' : index2 == 2
+                    }">
+                    <view @click="Comment(item1)" v-for="(item1,index1) in list[index2+index-1].nodes" :key="item1.id" class="ui-flex-column ranked-item-tr ui-flex-align-center" 
+                        :class="{active : activeList.includes(item1.id)}">
+                        <image style="width: 100rpx;height: 100rpx;" :src="'https://zhxy.obs.cn-hz1.ctyun.cn:443/static/student_icon/'+ (index1%7) +'.png'" mode=""></image>
+
+                        <view class="stu-tag text-center ui-flex-row ui-mt10">
+                            <view class="stu-tag-add ui-flex-1">72</view>
+                            <view class="stu-tag-sub ui-flex-1">-32</view>
+                        </view>
+
+                        <view class="txt-white f28 ui-pt10">
+                            {{item1.title}}
+                        </view>
+
+                        <u-badge absolute style="left: 10px;top: 10px;" :value="activeList.indexOf(item1.id) + 1"></u-badge>
                     </view>
-                    
-                    <u-badge absolute style="left: 10px;top: 10px;" :value="activeList.indexOf(item1.id) + 1"></u-badge>
                 </view>
             </view>
         </view>
+
         <view class="platform" v-if="chooseClassName">
             <view class="ranked-radio"></view>
             <view class="platform-text txt-white">讲台</view>
@@ -43,10 +73,11 @@
         <!-- 切换班级 -->
         <u-picker :show="show_classes" @confirm="doChooseClass" :columns="teachList" keyName="class_name"
             @cancel="show_classes=false"></u-picker>
-            
+
         <markScore ref="markScore"></markScore>
 
-        <view class="ui-pull-bottom ui-flex-row ui-p" style="background-color: #0000006b;border-top: 1px solid #616161;">
+        <view class="ui-pull-bottom ui-flex-row ui-p"
+            style="background-color: #0000006b;border-top: 1px solid #616161;">
             <view class="ui-flex-1 ui-flex-row">
                 <view class="ui-flex-column text-center ui-p bottom-btn-item" @click="show_classes=true">
                     <image src="../../static/uni.png" style="width: 30px;height: 30px;" mode=""></image>
@@ -69,8 +100,14 @@
                     </view>
                 </view>
             </view>
-            
+
             <view class="ui-flex-row">
+                <view class="ui-flex-column text-center ui-p bottom-btn-item">
+                    <image src="../../static/uni.png" style="width: 30px;height: 30px;" mode=""></image>
+                    <view style="line-height: 1;">
+                        <text class="txt-white f24">排行榜</text>
+                    </view>
+                </view>
                 <view class="ui-flex-column text-center ui-p bottom-btn-item">
                     <image src="../../static/uni.png" style="width: 30px;height: 30px;" mode=""></image>
                     <view style="line-height: 1;">
@@ -90,7 +127,7 @@
 
 <script>
     import markScore from './components/mark-score.vue'
-    
+
     import {
         getStuSchoolIdByStuClassId
     } from "@/common/api/stu.js"
@@ -107,9 +144,9 @@
                 teachList: [],
                 chooseClassName: '',
                 chooseClassId: '',
-                
-                activeList : [],
-                multiSelect : false,
+
+                activeList: [],
+                multiSelect: false,
             }
         },
         mounted() {
@@ -128,7 +165,7 @@
             }, 400)
         },
         methods: {
-            setMulti(){
+            setMulti() {
                 this.multiSelect = !this.multiSelect;
                 this.activeList = [];
             },
@@ -161,21 +198,21 @@
 
             },
             // 多选学生点评
-            commentMulti(){
+            commentMulti() {
                 this.$refs.markScore.open(1);
             },
             Comment(item) {
-                if(this.multiSelect){
+                if (this.multiSelect) {
                     let index = this.activeList.indexOf(item.id)
-                    if(index >= 0){
+                    if (index >= 0) {
                         this.activeList.splice(index, 1);
-                    }else{
+                    } else {
                         this.activeList.push(item.id);
                     }
                     return;
                 }
                 console.log(item, "sgism");
-                
+
                 this.$refs.markScore.open(1);
                 return;
                 //item的id是studentClass的id,需要转换成stu_school_id传到
@@ -229,7 +266,7 @@
         background-image: url('https://zhxy.obs.cn-hz1.ctyun.cn:443/static/desk_bg/class_bj.jpg');
         background-size: 100% 100%;
         height: 100vh;
-        width: 750rpx;
+        // width: 750rpx;
     }
 
     .platform {
@@ -289,48 +326,24 @@
         box-sizing: border-box;
         display: flex;
         padding-top: 80rpx;
+    }
 
-        .ranked-item {
-            flex: 1;
-            box-sizing: border-box;
-
-            .ranked-item-tr {
-                position: relative;
-                margin-bottom: 26rpx;
-                padding-top: 16rpx;
-                padding-bottom: 16rpx;
-                border-radius: 5px;
-                box-sizing: border-box;
-                width: 100%;
-                cursor: pointer;
-
-                display: flex;
-                justify-content: center;
-            }
-            
-            .ranked-item-tr:last-child {
-                margin-bottom: 0;
-            }
-
-            .active {
-                background: #ffffff85;
-            }
-        }
-
-        .ranked-item:nth-child(1n) {
-            margin-right: 0;
-            margin-left: 10px;
-        }
-
-        .ranked-item:nth-child(2n) {
-            border-right: 1px solid #ccc;
-            padding-right: 10px;
-        }
+    .ranked-item-tr {
+        position: relative;
+        margin-bottom: 26rpx;
+        padding-top: 16rpx;
+        padding-bottom: 16rpx;
+        border-radius: 5px;
+        box-sizing: border-box;
+        width: 100%;
+        cursor: pointer;
 
-        .ranked-item:last-child {
-            border-right: 0;
-        }
+        display: flex;
+        justify-content: center;
+    }
 
+    .active {
+        background: #ffffff85;
     }
 
     .ranked-radio {
@@ -372,9 +385,11 @@
         border: 1px solid #fff;
         border-left: 0;
     }
-    .bottom-btn-item{
+
+    .bottom-btn-item {
         position: relative;
     }
+
     .bottom-btn-item:hover {
         cursor: pointer;
         background-color: #ffffff3b;