Explorar o código

编辑结构目录

chenmy %!s(int64=6) %!d(string=hai) anos
pai
achega
245b775046
Modificáronse 50 ficheiros con 0 adicións e 11464 borrados
  1. 0 27
      TEAMModelOS.SmartTeach/ClientApp/components/app-root.vue
  2. 0 206
      TEAMModelOS.SmartTeach/ClientApp/components/graph/accountLine.vue
  3. 0 158
      TEAMModelOS.SmartTeach/ClientApp/components/graph/bubble.vue
  4. 0 161
      TEAMModelOS.SmartTeach/ClientApp/components/graph/classBar.vue
  5. 0 126
      TEAMModelOS.SmartTeach/ClientApp/components/graph/classResourceBar.vue
  6. 0 161
      TEAMModelOS.SmartTeach/ClientApp/components/graph/classline.vue
  7. 0 138
      TEAMModelOS.SmartTeach/ClientApp/components/graph/classtypePie.vue
  8. 0 142
      TEAMModelOS.SmartTeach/ClientApp/components/graph/courseBar.vue
  9. 0 176
      TEAMModelOS.SmartTeach/ClientApp/components/graph/finishPercentPie.vue
  10. 0 167
      TEAMModelOS.SmartTeach/ClientApp/components/graph/interactiveBarLine.vue
  11. 0 192
      TEAMModelOS.SmartTeach/ClientApp/components/graph/interactiveLine.vue
  12. 0 89
      TEAMModelOS.SmartTeach/ClientApp/components/graph/legendPie.vue
  13. 0 124
      TEAMModelOS.SmartTeach/ClientApp/components/graph/nestingPie.vue
  14. 0 173
      TEAMModelOS.SmartTeach/ClientApp/components/graph/ringPie.vue
  15. 0 137
      TEAMModelOS.SmartTeach/ClientApp/components/graph/teachScienceBar.vue
  16. 0 221
      TEAMModelOS.SmartTeach/ClientApp/components/graph/technologyBar.vue
  17. 0 242
      TEAMModelOS.SmartTeach/ClientApp/components/graph/totalLine.vue
  18. 0 26
      TEAMModelOS.SmartTeach/ClientApp/components/nav-menu.vue
  19. 0 187
      TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAannulus.vue
  20. 0 354
      TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAbargraph.vue
  21. 0 243
      TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAbarline.vue
  22. 0 57
      TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAbasics.vue
  23. 0 242
      TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAchooseattention.vue
  24. 0 129
      TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAchooseexam.vue
  25. 0 392
      TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAlinechart.vue
  26. 0 520
      TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SApercent.vue
  27. 0 144
      TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAradargraph.vue
  28. 0 592
      TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAsubjectsmanifestation.vue
  29. 0 58
      TEAMModelOS.SmartTeach/ClientApp/components/syllabus/SelectModule.vue
  30. 0 276
      TEAMModelOS.SmartTeach/ClientApp/components/syllabus/SelectSchool.vue
  31. 0 592
      TEAMModelOS.SmartTeach/ClientApp/components/syllabus/Tree.vue
  32. 0 16
      TEAMModelOS.SmartTeach/ClientApp/view/404.vue
  33. 0 33
      TEAMModelOS.SmartTeach/ClientApp/view/login.vue
  34. 0 16
      TEAMModelOS.SmartTeach/ClientApp/view/serverside/login.vue
  35. 0 364
      TEAMModelOS.SmartTeach/ClientApp/view/smart-dashboard/IOT/smart-iot-dashboard.less
  36. 0 759
      TEAMModelOS.SmartTeach/ClientApp/view/smart-dashboard/IOT/smart-iot-dashboard.vue
  37. 0 363
      TEAMModelOS.SmartTeach/ClientApp/view/smart-dashboard/TAL/smart-tal-dashboard.less
  38. 0 281
      TEAMModelOS.SmartTeach/ClientApp/view/smart-dashboard/TAL/smart-tal-dashboard.vue
  39. 0 419
      TEAMModelOS.SmartTeach/ClientApp/view/smart-dashboard/class/smart-class-dashboard.less
  40. 0 574
      TEAMModelOS.SmartTeach/ClientApp/view/smart-dashboard/class/smart-class-dashboard.vue
  41. 0 137
      TEAMModelOS.SmartTeach/ClientApp/view/student-analysis/index/SAindex.css
  42. 0 162
      TEAMModelOS.SmartTeach/ClientApp/view/student-analysis/index/SAindex.vue
  43. 0 148
      TEAMModelOS.SmartTeach/ClientApp/view/student-analysis/index/SAteach.css
  44. 0 89
      TEAMModelOS.SmartTeach/ClientApp/view/student-analysis/index/SAteach.vue
  45. 0 78
      TEAMModelOS.SmartTeach/ClientApp/view/student-analysis/total-analysis/SAtotal.vue
  46. 0 258
      TEAMModelOS.SmartTeach/ClientApp/view/syllabus/index/KnowPoint.css
  47. 0 399
      TEAMModelOS.SmartTeach/ClientApp/view/syllabus/index/KnowPoint.vue
  48. 0 289
      TEAMModelOS.SmartTeach/ClientApp/view/syllabus/index/Syllabus.css
  49. 0 524
      TEAMModelOS.SmartTeach/ClientApp/view/syllabus/index/Syllabus.vue
  50. 0 103
      TEAMModelOS.SmartTeach/ClientApp/view/syllabus/index/index.vue

+ 0 - 27
TEAMModelOS.SmartTeach/ClientApp/components/app-root.vue

@@ -1,27 +0,0 @@
-<template>
-    <div id="app" class="container-fluid">
-        <router-view/>
-    </div>
-</template>
-
-<script>
-    import NavMenu from './nav-menu'
-
-    export default {
-      components: {
-        'nav-menu': NavMenu
-      },
-
-      data () {
-        return {}
-      }
-    }
-</script>
-
-<style>
-#app, body, html{
-  width: 100%;
-  height: 100%;
-  font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI','Microsoft JhengHei';
-}
-</style>

+ 0 - 206
TEAMModelOS.SmartTeach/ClientApp/components/graph/accountLine.vue

@@ -1,206 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-        return {}
-    },
-    props:{
-        id:{
-            type: String
-        }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            // 基于准备好的dom,初始化echarts实例
-            let myChart = this.$echarts.init(document.getElementById(this.id));
-            let arrlabel = ["3/15", "3/16", "3/17", "3/18", "3/19", "3/20", "3/21", "3/22", "3/23", "3/24", "TODAY"];
-            let arrTotal1 = ["22", "17", "0", "26", "22", "24", "18", "30", "15", "10", "30"];
-            let arrTotal2 = ["26", "20", "2", "18", "27", "22", "26", "33", "9", "0", "40"];
-            myChart.setOption({
-                backgroundColor: 'rgba(17, 17, 17, 0.14)',
-                tooltip: {
-                    trigger: 'axis',
-                    borderRadius: 0,
-                    // backgroundColor:'#7AD1A8',
-                    // formatter: function(pm) {
-                    //     var param = pm[0];
-                    //     var pht = '<span style="display:inline-block;margin-right:5px;width:10px;height:10px;background-color:rgba(166,154,228);"></span>';
-                    //     console.log(param.marker);
-                    //     var prm = "星期" + "日一二三四五六 ".charAt(new Date(param.name).getDay());
-                    //     return param.name + ":&nbsp;&nbsp;" + prm + "<br>" +
-                    //         pht + param.seriesName + ":&nbsp;&nbsp;" + param.value + "&nbsp;&nbsp;|&nbsp;&nbsp;80.33ttt%";
-                    // },
-                    //   axisPointer: { // 坐标轴指示器,坐标轴触发有效
-                    //         type: 'none' // 默认为直线,可选为:'line' | 'shadow'
-                    //     },
-                },
-                grid: {
-                    left: '0',
-                    right: '0',
-                    bottom: '0',
-                    top: '0',
-                    containLabel: true,
-                },
-                xAxis: [{
-                    axisTick: {
-                        show: false,
-                    },
-                    type: 'category',
-                    axisLabel: {
-                        margin: 10,
-                        textStyle: {
-                            fontSize: 11,
-                            color: '#94998a'
-                        },
-                        interval:0,
-                        formatter:function(val){
-                            let firstOne = arrlabel[0];
-                            let labellength = arrlabel.length
-                            let lastOne = arrlabel[labellength-1];
-                            if(firstOne != val && lastOne != val){
-                                return val
-                            }
-                        }
-                    },
-                    boundaryGap: false,
-                    splitLine: {
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        },
-                        show: true
-                    },
-                    axisLine: {
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                            width: 1,
-                        }
-                    },
-                    data: arrlabel
-                }],
-                yAxis: [{
-                    position: 'right',
-                    type: 'value',
-                    // name: '单 位(%)',
-                    axisTick: {
-                        show: false
-                    },
-                    axisLine: {
-                        show: true,
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        }
-                    },
-                    axisLabel: {
-                        margin: 10,
-                        inside: true,
-                        textStyle: {
-                            fontSize: 14,
-                            color:'transparent'
-                        }
-                    },
-                    splitLine: {
-                        show: true,
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        }
-                    }
-                }],
-                series: [{
-                    // name: '实名率',
-                    type: 'line',
-                    // symbol: 'circle',
-                    //symbolSize: 5,
-                    // showSymbol: false,
-                    // markPoint: { // markLine 也是同理
-                    //   data: [{
-                    //     coord: [0,1,2,3,4], // 其中 5 表示 xAxis.data[5],即 '33' 这个元素。
-                    //     // coord: ['5', 33.4] // 其中 '5' 表示 xAxis.data中的 '5' 这个元素。
-                    //     // 注意,使用这种方式时,xAxis.data 不能写成 [number, number, ...]
-                    //     // 而只能写成 [string, string, ...]
-                    //   }]
-                    // },
-                    lineStyle: {
-                        normal: {
-                            width: 2
-                        }
-                    },
-                    areaStyle: {
-                        normal: {
-                            // 渐变色
-                            color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                                offset: 0,
-                                color: "rgba(28, 208, 161, 1)" // 0% 处的颜色
-                            },{
-                                offset: 1,
-                                color: "rgba(28, 208, 161, 0.5)" // 100% 处的颜色
-                            }], false)
-                        },
-                    },
-                    itemStyle: {
-                        normal: {
-                            areaStyle: {
-                                type: 'default'
-                            },
-                            color: '#1CD0A1',
-                        },
-                        emphasis: {
-                            // color: 'rgb(0,196,132)',
-                            borderColor: 'rgba(0,196,132,0.2)',
-                            extraCssText: 'box-shadow: 8px 8px 8px rgba(0, 0, 0, 1);',
-                            // borderWidth: 10
-                        }
-                    },
-                    data: arrTotal1
-                },
-                {
-                    type: 'line',
-                    lineStyle: {
-                        normal: {
-                            width: 2
-                        }
-                    },
-                    areaStyle: {
-                        normal: {
-                            // 渐变色
-                            color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                                offset: 0,
-                                color: "rgba(72, 219, 252, 1)" // 0% 处的颜色
-                            },{
-                                offset: 1,
-                                color: "rgba(72, 219, 252, 0.5)" // 100% 处的颜色
-                            }], false)
-                        },
-                    },
-                    itemStyle: {
-                        normal: {
-                            areaStyle: {
-                                type: 'default'
-                            },
-                            color: '#48DBFC',
-                        },
-                        emphasis: {
-                            // color: 'rgb(0,196,132)',
-                            borderColor: 'rgba(0,196,132,0.2)',
-                            extraCssText: 'box-shadow: 8px 8px 8px rgba(0, 0, 0, 1);',
-                            // borderWidth: 10
-                        }
-                    },
-                    data: arrTotal2
-                }
-                ]
-            });
-        }
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 158
TEAMModelOS.SmartTeach/ClientApp/components/graph/bubble.vue

@@ -1,158 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-        return {
-            mychat: '',
-            total: 0,
-            heightlightIndex: 0,
-        }
-    },
-    props:{
-        id:{
-            type: String
-        },
-        // pieData:{
-        //     type: Array,
-        //     default: function(){
-        //         return [
-        //             {value:335, name:'新增檔案'},
-        //             {value:310, name:'書面問答'},
-        //             {value:234, name:'匯入.pptx'},
-        //             {value:135, name:'PowerClick'},
-        //             {value:1548, name:'開啟.hte'},
-        //             {value:123, name:'其他'},
-        //         ]
-        //     },
-        // },
-        title:{
-            type: String
-        },
-        ylabel:{
-            type: Array,
-            default: function(){
-                return ['一年級', '二年級', '三年級','四年級','五年級'];
-            }
-        },
-        bubleData:{
-            type: Array,
-            default: function(){
-                // [x, y, total]
-                return [
-                [0,0,10], [1,0, 30], [4,0, 20], [5,0, 10],
-                [1,1,30], [2,1, 30],
-                [3,2,30], [4,2, 10],
-                [2,3,30]];
-            }
-        }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    created(){
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            var bubblecolor = ['#FF6B6A', '#FF9FF4', '#48DBFC', '#1CD0A1', '#FDC958', '#FFAD76'];
-            var hours = ['0-50', '51-60', '61-70', '71-80', '81-80', '90~'];
-            // data = data.map(function (item) {
-            //     return [item[1], item[0], item[2]];
-            // });
-            // console.log(data)
-            // 基于准备好的dom,初始化echarts实例
-            this.myChart = this.$echarts.init(document.getElementById(this.id));
-            this.myChart.setOption({  
-              title:{
-                show: _this.title ? true : false,
-                text: _this.title ? _this.title : '',
-                left: 'center',
-                textStyle:{
-                  color: '#fafafa',
-                  fontWeight: 100,
-                }
-              },
-                tooltip: {
-                    position: 'top',
-                    formatter: function (params) {
-                        return _this.ylabel[params.value[1]] + '裡,'+ hours[params.value[0]] + '區間的一共有'+params.value[2] + '人';
-                    }
-                },
-                grid: {
-                    left: '2%',
-                    bottom: 0,
-                    right: '16px',
-                    containLabel: true,      
-                },
-                xAxis: {
-                    type: 'category',
-                    data: hours,
-                    boundaryGap: false,
-                    splitLine: {
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        },
-                        show: true
-                    },
-                    axisLine: {
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                            width: 1,
-                        }
-                    },
-                },
-                yAxis: {
-                    type: 'category',
-                    data: _this.ylabel,
-                    boundaryGap: true,
-                    splitLine: {
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        },
-                        show: true
-                    },
-                    axisLine: {
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                            width: 1,
-                        }
-                    },
-                },
-                series: [{
-                    // name: '论文数量',
-                    type: 'scatter',
-                    symbolSize: function (val) {
-                        let tmp = val[2]*0.03;
-                        if(tmp == 0){
-                            return 0
-                        } else if(tmp<1){
-                            return 10
-                        } else {
-                            return tmp;
-                        }                        
-                    },
-                    data: _this.bubleData,
-                    animationDelay: function (idx) {
-                        return idx * 5;
-                    },
-                    itemStyle:{
-                        normal:{
-                            color: function(params) {
-                                var num=bubblecolor.length;
-                                return bubblecolor[params.dataIndex%num]
-                            },
-                        }
-                    }
-                }]
-            });
-        },
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 161
TEAMModelOS.SmartTeach/ClientApp/components/graph/classBar.vue

@@ -1,161 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-      return {
-        myChart: '',
-      }
-    },
-    props:{
-      id:{
-        type: String
-      },
-      todayData:{
-        type: Object,
-        default: function(){
-          return {'一年級': 9, '二年級': 11, '三年級': 16, '四年級':6, '五年級':13, '六年級':22}
-        }
-      },
-      lastWeekData:{
-        type: Object,
-        default: function(){
-          return {'一年級': 5, '二年級': 7, '三年級': 12, '四年級':1, '五年級':2, '六年級':24}
-        }
-      },
-      callBack: {
-        type: String
-      }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            // 取得Y軸Label
-            let yLabel = Object.keys(this.todayData);
-            let todayDataArray = [];
-            let lastWeekDataArray = [];
-
-            // 今日資料
-            yLabel.map(function(key) {
-              todayDataArray.push(_this.todayData[key]);
-            });
-            // 上週資料
-            yLabel.map(function(key) {
-              lastWeekDataArray.push(_this.lastWeekData[key]);
-            });
-
-            // 基于准备好的dom,初始化echarts实例
-            this.myChart = this.$echarts.init(document.getElementById(this.id));
-            this.myChart.setOption({
-              backgroundColor: '#343a4073',
-              tooltip: {
-                trigger: 'axis',
-                axisPointer: {
-                  type: 'shadow'
-                },
-                // formatter: function(params){
-                //   // 故意開啟 但不設定使ToolTip 沒有彈跳的作用 但有Hover 功能
-                // }
-              },
-              grid: {
-                left: '5%',
-                right: '0',
-                bottom: '0',
-                top:'0',
-                containLabel: true
-              },
-              xAxis: {
-                type: 'value',
-                boundaryGap: false,
-                axisLabel: {
-                    inside: true,
-                    textStyle: {
-                        color:'transparent'
-                    }
-                },
-                splitLine: {
-                    show: true,
-                    lineStyle: {
-                        color: 'rgba(185, 193, 173, 0.63)'
-                    }
-                }
-              },
-              yAxis: {
-                type: 'category',
-                axisLabel: {
-                  textStyle: {
-                    fontSize: 12,
-                    color: '#94998a'
-                  }
-                },
-                splitLine: {
-                  lineStyle: {
-                    color: 'rgba(185, 193, 173, 0.63)',
-                  },
-                  show: true
-                },
-                axisLine: {
-                  lineStyle: {
-                    color: 'rgba(185, 193, 173, 0.63)',
-                    width: 1,
-                  }
-                },
-                data: yLabel,
-              },
-              series: [
-                {
-                  name: 'today',
-                  type: 'bar',
-                  data: todayDataArray,
-                  barWidth: 15, //柱子宽度
-                  itemStyle: {
-                    normal: {  //渐变色
-                      color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                        offset: 0,
-                        color: "rgba(28, 208, 161, 1)" // 0% 处的颜色
-                      },{
-                        offset: 1,
-                        color: "rgba(28, 208, 161, 0.5)" // 100% 处的颜色
-                      }], false)
-                    }
-                  }
-                },
-                {
-                  name: 'lastWeek',
-                  type: 'bar',
-                  data: lastWeekDataArray,
-                  barWidth: 15, //柱子宽度
-                  itemStyle: {
-                    normal: {  //渐变色
-                      color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                        offset: 0,
-                        color: "rgba(228, 233, 220, 1)" // 0% 处的颜色
-                      },{
-                        offset: 1,
-                        color: "rgba(228, 233, 220, 0.5)" // 100% 处的颜色
-                      }], false)
-                    }
-                  }
-                }
-              ]
-            })
-            //highlight觸發項
-            this.myChart.on('highlight', function (params) {
-              _this.$emit('highLightInfo', {'id': yLabel[params.batch[0].dataIndex], 'today': todayDataArray[params.batch[0].dataIndex], 'lastWeek': lastWeekDataArray[params.batch[1].dataIndex]});            
-            });            
-            this.myChart.on('downplay', function (params) {            
-              _this.$emit('downplay', yLabel[params.batch[0].dataIndex])
-            });
-        }
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 126
TEAMModelOS.SmartTeach/ClientApp/components/graph/classResourceBar.vue

@@ -1,126 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-      return {
-        myChart: '',
-      }
-    },
-    props:{
-      id:{
-        type: String
-      },
-      todayData:{
-        type: Object,
-        default: function(){
-          return {'一年級': 9, '二年級': 11, '三年級': 16, '四年級':6, '五年級':13, '六年級':22}
-        }
-      },
-      callBack: {
-        type: String
-      }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            // 取得Y軸Label
-            let yLabel = Object.keys(this.todayData);
-            let todayDataArray = [];
-
-            // 今日資料
-            yLabel.map(function(key) {
-              todayDataArray.push(_this.todayData[key]);
-            });
-
-            // 基于准备好的dom,初始化echarts实例
-            this.myChart = this.$echarts.init(document.getElementById(this.id));
-            this.myChart.setOption({
-              backgroundColor: '#343a4073',
-              tooltip: {
-                trigger: 'axis',
-                axisPointer: {
-                  type: 'shadow'
-                },
-                // formatter: function(params){
-                //   // 故意開啟 但不設定使ToolTip 沒有彈跳的作用 但有Hover 功能
-                // }
-              },
-              grid: {
-                left: '5%',
-                right: '0',
-                bottom: '0',
-                top:'0',
-                containLabel: true
-              },
-              xAxis: {
-                type: 'value',
-                boundaryGap: false,
-                axisLabel: {
-                    inside: true,
-                    textStyle: {
-                        color:'transparent'
-                    }
-                },
-                splitLine: {
-                    show: true,
-                    lineStyle: {
-                        color: 'rgba(185, 193, 173, 0.63)'
-                    }
-                }
-              },
-              yAxis: {
-                type: 'category',
-                axisLabel: {
-                  textStyle: {
-                    fontSize: 12,
-                    color: '#94998a'
-                  }
-                },
-                splitLine: {
-                  lineStyle: {
-                    color: 'rgba(185, 193, 173, 0.63)',
-                  },
-                  show: true
-                },
-                axisLine: {
-                  lineStyle: {
-                    color: 'rgba(185, 193, 173, 0.63)',
-                    width: 1,
-                  }
-                },
-                data: yLabel,
-              },
-              series: [
-                {
-                  name: 'today',
-                  type: 'bar',
-                  data: todayDataArray,
-                  barWidth: 15, //柱子宽度
-                  itemStyle: {
-                    normal: {  //渐变色
-                      color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                        offset: 0,
-                        color: "rgba(228, 233, 220, 1)" // 0% 处的颜色
-                      },{
-                        offset: 1,
-                        color: "rgba(228, 233, 220, 0.5)" // 100% 处的颜色
-                      }], false)
-                    }
-                  }
-                },
-              ]
-            })
-        }
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 161
TEAMModelOS.SmartTeach/ClientApp/components/graph/classline.vue

@@ -1,161 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-        return {}
-    },
-    props:{
-        id:{
-            type: String
-        }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            // 基于准备好的dom,初始化echarts实例
-            let myChart = this.$echarts.init(document.getElementById(this.id));
-            let arrlabel = ["","00:00", "01:00", "02:00", "03:00", "04:00", "05:00", "06:00", "07:00", "08:00", "09:00", "10:00", "11:00", "12:00", "13:00", "14:00", "15:00", "16:00", "17:00", "18:00", "19:00", "20:00", "21:00", "22:00", "23:00", "24:00", ""];
-            let arrTotal = ["0","0", "0", "0", "0", "0", "10", "20", "30", "25", "35", "40", "60", "10", "0", "20", "30", "60", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"];
-            myChart.setOption({
-                backgroundColor: 'rgba(17, 17, 17, 0.14)',
-                tooltip: {
-                    trigger: 'axis',
-                    borderRadius: 0,
-                    // backgroundColor:'#7AD1A8',
-                    // formatter: function(pm) {
-                    //     var param = pm[0];
-                    //     var pht = '<span style="display:inline-block;margin-right:5px;width:10px;height:10px;background-color:rgba(166,154,228);"></span>';
-                    //     console.log(param.marker);
-                    //     var prm = "星期" + "日一二三四五六 ".charAt(new Date(param.name).getDay());
-                    //     return param.name + ":&nbsp;&nbsp;" + prm + "<br>" +
-                    //         pht + param.seriesName + ":&nbsp;&nbsp;" + param.value + "&nbsp;&nbsp;|&nbsp;&nbsp;80.33ttt%";
-                    // },
-                    //   axisPointer: { // 坐标轴指示器,坐标轴触发有效
-                    //         type: 'none' // 默认为直线,可选为:'line' | 'shadow'
-                    //     },
-                },
-                grid: {
-                    left: '0',
-                    right: '0',
-                    bottom: '5%',
-                    top: '0',
-                    containLabel: true,
-                },
-                xAxis: [{
-                    axisTick: {
-                        show: false,
-                    },
-                    type: 'category',
-                    axisLabel: {
-                        // show: false,
-                        margin: 10,
-                        textStyle: {
-                            fontSize: 12,
-                            color: '#94998a'
-                        }
-                    },
-                    boundaryGap: false,
-                    splitLine: {
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        },
-                        show: true
-                    },
-                    axisLine: {
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                            width: 1,
-                        }
-                    },
-                    data: arrlabel
-                }],
-                yAxis: [{
-                    position: 'right',
-                    type: 'value',
-                    // name: '单 位(%)',
-                    axisTick: {
-                        show: false
-                    },
-                    axisLine: {
-                        show: true,
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        }
-                    },
-                    axisLabel: {
-                        margin: 10,
-                        inside: true,
-                        textStyle: {
-                            fontSize: 14,
-                            color:'transparent'
-                        }
-                    },
-                    splitLine: {
-                        show: true,
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        }
-                    }
-                }],
-                series: [{
-                    // name: '实名率',
-                    type: 'line',
-                    // symbol: 'circle',
-                    //symbolSize: 5,
-                    // showSymbol: false,
-                    // markPoint: { // markLine 也是同理
-                    //   data: [{
-                    //     coord: [0,1,2,3,4], // 其中 5 表示 xAxis.data[5],即 '33' 这个元素。
-                    //     // coord: ['5', 33.4] // 其中 '5' 表示 xAxis.data中的 '5' 这个元素。
-                    //     // 注意,使用这种方式时,xAxis.data 不能写成 [number, number, ...]
-                    //     // 而只能写成 [string, string, ...]
-                    //   }]
-                    // },
-                    lineStyle: {
-                        normal: {
-                            width: 2
-                        }
-                    },
-                    areaStyle: {
-                        normal: {
-                            // 渐变色
-                            color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                                offset: 0,
-                                color: "rgba(28, 208, 161, 1)" // 0% 处的颜色
-                            },{
-                                offset: 1,
-                                color: "rgba(28, 208, 161, 0.5)" // 100% 处的颜色
-                            }], false)
-                        },
-                    },
-                    itemStyle: {
-                        normal: {
-                            areaStyle: {
-                                type: 'default'
-                            },
-                            color: '#1CD0A1',
-                        },
-                        emphasis: {
-                            // color: 'rgb(0,196,132)',
-                            borderColor: 'rgba(0,196,132,0.2)',
-                            extraCssText: 'box-shadow: 8px 8px 8px rgba(0, 0, 0, 1);',
-                            // borderWidth: 10
-                        }
-                    },
-                    data: arrTotal
-                }]
-            });
-        }
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 138
TEAMModelOS.SmartTeach/ClientApp/components/graph/classtypePie.vue

@@ -1,138 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-        return {}
-    },
-    props:{
-        id:{
-            type: String
-        }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            let rich = {
-                b: {
-                    color: "#94998a",
-                    fontSize: 10,
-                    align: 'left',
-                    padding: [3, 0],
-                },
-                c: {
-                    color: "#FAFAFA",
-                    fontSize: 10,
-                    fontWeight: 100,
-                },
-                d: {
-                    color: "#FAFAFA",
-                    fontSize: 15,
-                    fontWeight: 100,
-                }
-            }
-            let color = ['#FF6B6A', '#48DBFC', '#1CD0A1', '#FDC958'];
-            // 基于准备好的dom,初始化echarts实例
-            let myChart = this.$echarts.init(document.getElementById(this.id));
-            myChart.setOption({
-                tooltip: {
-                    formatter: function(p){
-
-                    }
-                },
-    series: [
-        {
-            // name:'访问来源',
-            type:'pie',
-            selectedMode: 'single',
-            radius: [0, '46%'],
-            center: ['50%', '50%'],
-            itemStyle:{
-                color: function(p){
-                    return color[p.data.type]
-                }
-            },
-            label: {
-                normal: {
-                    position: 'inner',
-                    formatter: function(p){
-                        let percent = Math.round(p.percent)
-                        return '{title|' + p.name + '}\n{num|' + percent +'%}';
-                    },
-                    rich: { 
-                        title:{
-                            color: "#fafafa",
-                            fontSize: 10,
-                        },
-                        num:{
-                            color: "#fafafa",
-                            fontSize: 10,
-                        }
-                    }
-                }
-            },
-            labelLine: {
-                normal: {
-                    show: false
-                }
-            },
-            data:[
-                {value:300, name:'语文类别', type: 0},
-                {value:500, name:'数理类别', type: 1},
-                {value:270, name:'文史类别', type: 2},
-                {value:250, name:'艺能类别', type: 3}
-            ]
-        },
-        {
-            color: ['#FF6B6A', '#48DBFC', '#1CD0A1', '#FDC958'],
-            name:'访问来源',
-            type:'pie',
-            radius: ['55%', '69%'],
-            center: ['50%', '50%'],
-            itemStyle : {
-                color:function(p){
-                    return color[p.data.type]
-    	        },
-            },
-            label: {
-                normal: {
-                    formatter: function(p){
-                        let percent = Math.round(p.percent).toFixed(1)
-                        return '{b|' + p.name + '}\n{d|' + percent +'% }{c|('+ p.value +')}';
-                    },
-                    rich: rich
-                },
-                emphasis: {
-                    show: true,
-                    textStyle: {
-                    }
-                }
-            },
-            data:[
-                {value:200, name:'国语文', type: 0},
-                {value:100, name:'英语文', type: 0},
-                {value:100, name:'数学', type: 1},
-                {value:140, name:'生物', type: 1},
-                {value:70, name:'化学', type: 1},
-                {value:190, name:'物理', type: 1},
-                {value:190, name:'历史', type: 2},
-                {value:80, name:'地理', type: 2},
-                {value:125, name:'体育', type: 3},
-                {value:125, name:'舞蹈', type: 3}
-            ]
-        }
-    ]
-            });
-        }
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 142
TEAMModelOS.SmartTeach/ClientApp/components/graph/courseBar.vue

@@ -1,142 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-      return {
-        myChart: '',
-      }
-    },
-    props:{
-      id:{
-        type: String
-      },
-      data:{
-        type: Object,
-        default: function(){
-          return {'模擬測驗': 0, '成績登錄': 5, '線上測驗': 16, 'HiTeach': 150, '合併活動':6, '班級競賽':23, '網路閱卷':21}
-        }
-      },
-      callBack: {
-        type: String
-      }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            // 取得x軸Label
-            let xLabel = Object.keys(this.data);
-            let courseDataArray = [];
-            let max;
-            // 資料統整
-            xLabel.map(function(key) {
-              courseDataArray.push(_this.data[key]);
-            });
-            
-            max = Math.max(...courseDataArray) + 20;
-
-            // 基于准备好的dom,初始化echarts实例
-            this.myChart = this.$echarts.init(document.getElementById(this.id));
-            this.myChart.setOption({
-              backgroundColor: '#343a4073',
-              tooltip: {
-                trigger: 'axis',
-                axisPointer: {
-                  type: 'shadow'
-                },
-                formatter: function(params){
-                  // 故意開啟 但不設定使ToolTip 沒有彈跳的作用 但有Hover 功能
-                }
-              },
-              grid: {
-                left: '0',
-                right: '2%',
-                bottom: '1px',
-                top:'0',
-                containLabel: true
-              },
-              xAxis: {
-                type: 'category',
-                boundaryGap: false,
-                data: xLabel,
-                boundaryGap: ['20%', '20%'],
-                axisLabel: {
-                    inside: true,
-                    textStyle: {
-                        color:'transparent'
-                    }
-                },
-                axisLine: {
-                  show: true,
-                    lineStyle: {
-                      width: 1,
-                      color: 'rgba(185, 193, 173, 0.63)'
-                    }                  
-                },
-                splitLine: {
-                    show: true,
-                    lineStyle: {
-                      width: 1,
-                      color: 'rgba(185, 193, 173, 0.63)'
-                    }
-                }
-              },
-              yAxis: {
-                type: 'value',
-                max: max,
-                minInterval: 1,
-                axisLabel: {
-                  inside: true,
-                  textStyle: {
-                      color:'transparent'
-                  }
-                },
-                axisLine: {
-                  show: true,
-                    lineStyle: {
-                      width: 1,
-                      color: 'rgba(185, 193, 173, 0.63)'
-                    }                  
-                },
-                splitLine: {
-                    show: true,
-                    lineStyle: {
-                      width: 1,
-                      color: 'rgba(185, 193, 173, 0.63)'
-                    }
-                },
-              },
-              series: [
-                {
-                  // name: 'today',
-                  type: 'bar',
-                  data: courseDataArray,
-                  barWidth: 10, //柱子宽度
-                  barGap: 1, //柱子之间间距
-                  itemStyle: {
-                    normal: {  //渐变色
-                      color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                        offset: 0,
-                        color: "rgba(228, 233, 220, 1)" // 0% 处的颜色
-                      },{
-                        offset: 1,
-                        color: "rgba(228, 233, 220, 0.5)" // 100% 处的颜色
-                      }], false)
-                    }
-                  }
-                }
-              ]
-            })
-        }
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 176
TEAMModelOS.SmartTeach/ClientApp/components/graph/finishPercentPie.vue

@@ -1,176 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-        return {
-            mychat: '',
-            realPercent: 100,
-            pieFinishPercent: 75,
-        }
-    },
-    props:{
-        id:{
-            type: String
-        },
-        pieData:{
-            type: Object,
-            default: function(){
-                return {total:175, value: 128}      
-            },
-        },
-    },
-    mounted(){
-        this.drawLine();
-    },
-    created(){
-        this.realPercent = Math.round((this.pieData.value / this.pieData.total)* 100);
-        this.pieFinishPercent = (this.realPercent / 100.00) * 75
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            // 基于准备好的dom,初始化echarts实例
-            this.myChart = this.$echarts.init(document.getElementById(this.id));
-            this.myChart.setOption({                
-                title: {
-                    "text": '课堂总数 : ' + _this.pieData.total + '\n' + '完成数量 : ' + _this.pieData.value,
-                    "x": '50%',
-                    "y": '75%',
-                    "textAlign": "center",
-                    "textStyle": {
-                        "fontWeight": 'lighter',
-                        "fontSize": 11,
-                        "color": "#A9B2B8",
-                    },
-                },
-                series: [{
-                  "name": ' ',
-                  "type": 'pie',
-                  "radius": ['50%', '68.1%'],
-                  "avoidLabelOverlap": false,
-                  "startAngle": 225,
-                  "color": ["#fff", "transparent"],
-                  "hoverAnimation": false,
-                  "legendHoverLink": false,
-                  "label": {
-                      "normal": {
-                          "show": false,
-                          "position": 'center'
-                      },
-                      "emphasis": {
-                          "show": true,
-                          "textStyle": {
-                              "fontSize": '30',
-                              "fontWeight": 'bold'
-                          }
-                      }
-                  },
-                  "labelLine": {
-                      "normal": {
-                          "show": false
-                      }
-                  },
-                  "data": [{
-                      "value": 75,
-                      "name": '',
-                      "itemStyle": {
-                        normal: {
-                                color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                                offset: 0,
-                                color: "rgba(228, 233, 220, 0.14)" // 0% 处的颜色
-                            },{
-                                offset: 1,
-                                color: "rgba(228, 233, 220, 0.14)" // 100% 处的颜色
-                            }], false),
-                            label: {
-                                show: false
-                            },
-                            labelLine: {
-                                show: false
-                            }
-                        },
-                      }
-                  }, {
-                      "value": 25,
-                      "name": '',
-                      "itemStyle": {
-                          "normal": {
-                              color: 'rgba(0,0,0,0)'
-                          }
-                      }
-                  }]
-              }, {
-                  "name": '',
-                  "type": 'pie',
-                  "radius": ['50%', '68.1%'],
-                  "avoidLabelOverlap": false,
-                  "startAngle": 225,
-                  "color": ["#fff", "transparent"],
-                  "hoverAnimation": false,
-                  "legendHoverLink": false,
-                  "z": 10,
-                  "label": {
-                      "normal": {
-                          "show": false,
-                          "position": 'center'
-                      },
-                  },
-                  "labelLine": {
-                      "normal": {
-                          "show": false
-                      }
-                  },
-                  "data": [{
-                      "name": _this.realPercent.toString(), //完成数实际值
-                      "value": _this.pieFinishPercent, // PIE完成数
-                      "label": {
-                          "normal": {
-                              "show": true,
-                              "formatter": '{b} %',
-                              "textStyle": {
-                                  "fontSize": 20,
-                                  "fontWeight": "100",
-                                  "color": "#ffffff",
-                              },
-                              "position": "center"
-                          }
-                      },
-                      "itemStyle": {
-                        normal: {
-                        color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                        offset: 0,
-                        color: "rgba(228, 233, 220, 1)" // 0% 处的颜色
-                      },{
-                        offset: 1,
-                        color: "rgba(228, 233, 220, 0.5)" // 100% 处的颜色
-                      }], false),
-                            label: {
-                                show: false
-                            },
-                            labelLine: {
-                                show: false
-                            }
-                        },
-                      }
-                  }, {
-                      "name": '',
-                      "value": (100 - _this.pieFinishPercent), // PIE未完成数 100% 是75
-                      "itemStyle": {
-                          "normal": {
-                              color: 'rgba(0,0,0,0)'
-                          }
-                      }
-                  }]
-              }]
-            });
-        },
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 167
TEAMModelOS.SmartTeach/ClientApp/components/graph/interactiveBarLine.vue

@@ -1,167 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-        return {}
-    },
-    props:{
-        id:{
-            type: String
-        }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            // 基于准备好的dom,初始化echarts实例
-            let myChart = this.$echarts.init(document.getElementById(this.id));
-            let arrlabel = ["0-50", "51-60", "61-70", "71-80", "81-90", "90+"];
-            let arrTotal1 = [3042,884,1060,1430,1246,70];
-            let arrTotal2 = [4175,909,1125,933,566,24];
-            let arrTotal3 = [2042,784,1260,1130,746,70];
-            myChart.setOption({
-                backgroundColor: 'rgba(17, 17, 17, 0.14)',
-                tooltip: {
-                    trigger: 'axis',
-                    borderRadius: 0,
-                },
-                grid: {
-                    left: '0',
-                    right: '0',
-                    bottom: '5%',
-                    top: '10',
-                    containLabel: true,
-                },
-                xAxis: [{
-                    type: 'category',
-                    position: "bottom",
-                    axisLabel: {
-                        margin: 10,
-                        textStyle: {
-                            fontSize: 11,
-                            color: '#fafafa'
-                        },
-                        interval:0,
-                        // formatter:function(val){
-                        //     let firstOne = arrlabel[0];
-                        //     let labellength = arrlabel.length
-                        //     let lastOne = arrlabel[labellength-1];
-                        //     if(firstOne != val && lastOne != val){
-                        //         return val
-                        //     }
-                        // }
-                    },
-                    boundaryGap: true,
-                    splitLine: {
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        },
-                        show: true
-                    },
-                    axisLine: {
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                            width: 1,
-                        }
-                    },
-                    axisTick: {
-                        show: false,
-                    },
-                    data: arrlabel
-                }],
-                yAxis: [{
-                    type: 'value',
-                    // name: '单 位(%)',
-                    axisTick: {
-                        show: false
-                    },
-                    axisLine: {
-                        show: true,
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        }
-                    },
-                    axisLabel: {
-                        margin: 10,
-                        textStyle: {
-                            fontSize: 11,
-                            color:'#fafafa'
-                        }
-                    },
-                    splitLine: {
-                        show: true,
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        }
-                    }
-                }],
-                series: [{
-                    type: 'line',
-                    zlevel: 10,
-                    lineStyle: {
-                        normal: {
-                            width: 2
-                        }
-                    },
-                    itemStyle: {
-                        normal: {
-                            color: '#48DBFC',
-                        },
-                        emphasis: {
-                            // color: 'rgb(0,196,132)',
-                            borderColor: 'rgba(0,196,132,0.2)',
-                            extraCssText: 'box-shadow: 8px 8px 8px rgba(0, 0, 0, 1);',
-                            // borderWidth: 10
-                        }
-                    },
-                    data: arrTotal3
-                },
-                {
-                  name: '科技互动',
-                  type: 'bar',
-                  barWidth: 10,
-                  data: arrTotal1,
-                  itemStyle: {
-                    normal: {  //渐变色
-                      color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                        offset: 0,
-                        color: "rgba(28, 208, 161, 1)" // 0% 处的颜色
-                      },{
-                        offset: 1,
-                        color: "rgba(28, 208, 161, 0.5)" // 100% 处的颜色
-                      }], false)
-                    }
-                  }
-                },
-                {
-                  name: '教法应用',
-                  type: 'bar',
-                  barWidth: 10,
-                  data: arrTotal2,
-                  itemStyle: {
-                    normal: {  //渐变色
-                      color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                        offset: 0,
-                        color: "rgba(28, 208, 161, 1)" // 0% 处的颜色
-                      },{
-                        offset: 1,
-                        color: "rgba(28, 208, 161, 0.5)" // 100% 处的颜色
-                      }], false)
-                    }
-                  }
-                },
-                ]
-            });
-        }
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 192
TEAMModelOS.SmartTeach/ClientApp/components/graph/interactiveLine.vue

@@ -1,192 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-        return {}
-    },
-    props:{
-        id:{
-            type: String
-        }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            // 基于准备好的dom,初始化echarts实例
-            let myChart = this.$echarts.init(document.getElementById(this.id));
-            let arrlabel = ["2017-11","2017-12","2018-01","2018-02","2018-03","2018-04","2018-05","2018-06","2018-07","2018-08","2018-09","2018-10","2018-11","2018-12","2019-01","2019-02","2019-03","2019-04"];
-            let arrTotal1 = [29,245,94,0,310,301,481,207,1,27,713,1053,1312,1064,365,441,720,369];
-            let arrTotal2 = ["26", "20", "2", "18", "27", "22", "26", "33", "9", "0", "40"];
-            myChart.setOption({
-                // backgroundColor: 'rgba(17, 17, 17, 0.14)',
-                tooltip: {
-                    trigger: 'axis',
-                    borderRadius: 0,
-                },
-                grid: {
-                    left: '0',
-                    right: '0',
-                    bottom: '5%',
-                    top: '5%',
-                    containLabel: true,
-                },
-                xAxis: [{
-                    axisTick: {
-                        show: false,
-                    },
-                    type: 'category',
-                    axisLabel: {
-                        margin: 10,
-                        textStyle: {
-                            fontSize: 11,
-                            color: '#fafafa'
-                        },
-                        // interval:0,
-                        // formatter:function(val){
-                        //     let firstOne = arrlabel[0];
-                        //     let labellength = arrlabel.length
-                        //     let lastOne = arrlabel[labellength-1];
-                        //     if(firstOne != val && lastOne != val){
-                        //         return val
-                        //     }
-                        // }
-                    },
-                    boundaryGap: false,
-                    splitLine: {
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        },
-                        show: true
-                    },
-                    axisLine: {
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                            width: 1,
-                        }
-                    },
-                    data: arrlabel
-                }],
-                yAxis: [{
-                    type: 'value',
-                    // name: '单 位(%)',
-                    axisTick: {
-                        show: false
-                    },
-                    axisLine: {
-                        show: true,
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        }
-                    },
-                    axisLabel: {
-                        margin: 10,
-                        textStyle: {
-                            fontSize: 11,
-                            color:'#fafafa'
-                        }
-                    },
-                    splitLine: {
-                        show: true,
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        }
-                    }
-                }],
-                series: [{
-                    // name: '实名率',
-                    type: 'line',
-                    // symbol: 'circle',
-                    //symbolSize: 5,
-                    // showSymbol: false,
-                    // markPoint: { // markLine 也是同理
-                    //   data: [{
-                    //     coord: [0,1,2,3,4], // 其中 5 表示 xAxis.data[5],即 '33' 这个元素。
-                    //     // coord: ['5', 33.4] // 其中 '5' 表示 xAxis.data中的 '5' 这个元素。
-                    //     // 注意,使用这种方式时,xAxis.data 不能写成 [number, number, ...]
-                    //     // 而只能写成 [string, string, ...]
-                    //   }]
-                    // },
-                    lineStyle: {
-                        normal: {
-                            width: 2
-                        }
-                    },
-                    areaStyle: {
-                        normal: {
-                            // 渐变色
-                            color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                                offset: 0,
-                                color: "rgba(28, 208, 161, 1)" // 0% 处的颜色
-                            },{
-                                offset: 1,
-                                color: "rgba(28, 208, 161, 0.5)" // 100% 处的颜色
-                            }], false)
-                        },
-                    },
-                    itemStyle: {
-                        normal: {
-                            areaStyle: {
-                                type: 'default'
-                            },
-                            color: '#1CD0A1',
-                        },
-                        emphasis: {
-                            // color: 'rgb(0,196,132)',
-                            borderColor: 'rgba(0,196,132,0.2)',
-                            extraCssText: 'box-shadow: 8px 8px 8px rgba(0, 0, 0, 1);',
-                            // borderWidth: 10
-                        }
-                    },
-                    data: arrTotal1
-                },
-                // {
-                //     type: 'line',
-                //     lineStyle: {
-                //         normal: {
-                //             width: 2
-                //         }
-                //     },
-                //     areaStyle: {
-                //         normal: {
-                //             // 渐变色
-                //             color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                //                 offset: 0,
-                //                 color: "rgba(72, 219, 252, 1)" // 0% 处的颜色
-                //             },{
-                //                 offset: 1,
-                //                 color: "rgba(72, 219, 252, 0.5)" // 100% 处的颜色
-                //             }], false)
-                //         },
-                //     },
-                //     itemStyle: {
-                //         normal: {
-                //             areaStyle: {
-                //                 type: 'default'
-                //             },
-                //             color: '#48DBFC',
-                //         },
-                //         emphasis: {
-                //             // color: 'rgb(0,196,132)',
-                //             borderColor: 'rgba(0,196,132,0.2)',
-                //             extraCssText: 'box-shadow: 8px 8px 8px rgba(0, 0, 0, 1);',
-                //             // borderWidth: 10
-                //         }
-                //     },
-                //     data: arrTotal2
-                // }
-                ]
-            });
-        }
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 89
TEAMModelOS.SmartTeach/ClientApp/components/graph/legendPie.vue

@@ -1,89 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-        return {}
-    },
-    props:{
-        id:{
-            type: String
-        }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            // 基于准备好的dom,初始化echarts实例
-            let myChart = this.$echarts.init(document.getElementById(this.id));
-            myChart.setOption({
-                tooltip: {
-                    trigger: 'item',
-                    formatter: "{a} <br/>{b}: {c} ({d}%)"
-                },
-                series: [
-                    {
-                        name:'访问来源',
-                        type:'pie',
-                        radius: ['50%', '70%'],
-                        avoidLabelOverlap: false,
-                        label: {
-                            normal: {
-                                show: false,
-                                position: 'center',
-                                formatter: '{text|{b}}\n{value|{d}%}',
-                                rich: {
-                                    text: {
-                                        color: "#fefefe",
-                                        // fontSize: 14,
-                                        align: 'center',
-                                        verticalAlign: 'middle',
-                                        padding: 5
-                                    },
-                                    value: {
-                                        color: "#fefefe",
-                                        // fontSize: 24,
-                                        align: 'center',
-                                        verticalAlign: 'middle',
-                                    },
-                                }
-                            },
-                            emphasis: {
-                                show: true,
-                                textStyle: {
-                                    fontSize: 46,
-                                }
-                            }
-                        },
-                        labelLine: {
-                            normal: {
-                                show: false
-                            }
-                        },
-                        data:[
-                            {value:335, name:'直接访问'},
-                            {value:310, name:'邮件营销'},
-                            {value:234, name:'联盟广告'},
-                            {value:135, name:'视频广告'},
-                            {value:1548, name:'搜索引擎'}
-                        ]
-                    }
-                ]
-            });
-            myChart.dispatchAction({
-                type: 'highlight',
-                // seriesIndex: 1,
-                dataIndex: 2
-            });
-        }
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 124
TEAMModelOS.SmartTeach/ClientApp/components/graph/nestingPie.vue

@@ -1,124 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;padding: 20px;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-        return {}
-    },
-    props:{
-        id:{
-            type: String
-        }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            // 基于准备好的dom,初始化echarts实例
-            let myChart = this.$echarts.init(document.getElementById(this.id));
-            myChart.setOption({
-                tooltip: {
-                    trigger: 'item',
-                    formatter: "{a} <br/>{b}: {c} ({d}%)"
-                },
-                // legend: {
-                //     orient: 'vertical',
-                //     x: 'left',
-                //     data:['直达','营销广告','搜索引擎','邮件营销','联盟广告','视频广告','百度','谷歌','必应','其他']
-                // },
-                series: [
-                    {
-                        name:'访问来源',
-                        type:'pie',
-                        selectedMode: 'single',
-                        radius: [0, '30%'],
-
-                        label: {
-                            normal: {
-                                position: 'inner'
-                            }
-                        },
-                        labelLine: {
-                            normal: {
-                                show: false
-                            }
-                        },
-                        data:[
-                            {value:335, name:'直达', selected:true},
-                            {value:679, name:'营销广告'},
-                            {value:1548, name:'搜索引擎'}
-                        ]
-                    },
-                    {
-                        name:'访问来源',
-                        type:'pie',
-                        radius: ['40%', '55%'],
-                        label: {
-                            normal: {
-                                formatter: '{a|{a}}{abg|}\n{hr|}\n  {b|{b}:}{c}  {per|{d}%}  ',
-                                backgroundColor: '#eee',
-                                borderColor: '#aaa',
-                                borderWidth: 1,
-                                borderRadius: 4,
-                                // shadowBlur:3,
-                                // shadowOffsetX: 2,
-                                // shadowOffsetY: 2,
-                                // shadowColor: '#999',
-                                // padding: [0, 7],
-                                rich: {
-                                    a: {
-                                        color: '#999',
-                                        lineHeight: 22,
-                                        align: 'center'
-                                    },
-                                    // abg: {
-                                    //     backgroundColor: '#333',
-                                    //     width: '100%',
-                                    //     align: 'right',
-                                    //     height: 22,
-                                    //     borderRadius: [4, 4, 0, 0]
-                                    // },
-                                    hr: {
-                                        borderColor: '#aaa',
-                                        width: '100%',
-                                        borderWidth: 0.5,
-                                        height: 0
-                                    },
-                                    b: {
-                                        fontSize: 16,
-                                        lineHeight: 33
-                                    },
-                                    per: {
-                                        color: '#eee',
-                                        backgroundColor: '#334455',
-                                        padding: [2, 4],
-                                        borderRadius: 2
-                                    }
-                                }
-                            }
-                        },
-                        data:[
-                            {value:335, name:'直达'},
-                            {value:310, name:'邮件营销'},
-                            {value:234, name:'联盟广告'},
-                            {value:135, name:'视频广告'},
-                            {value:1048, name:'百度'},
-                            {value:251, name:'谷歌'},
-                            {value:147, name:'必应'},
-                            {value:102, name:'其他'}
-                        ]
-                    }
-                ]         
-            });
-        }
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 173
TEAMModelOS.SmartTeach/ClientApp/components/graph/ringPie.vue

@@ -1,173 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-        return {
-            mychat: '',
-            total: 0,
-            heightlightIndex: 0,
-        }
-    },
-    props:{
-        id:{
-            type: String
-        },
-        pieData:{
-            type: Array,
-            default: function(){
-                return [
-                    {value:335, name:'新增檔案'},
-                    {value:310, name:'書面問答'},
-                    {value:234, name:'匯入.pptx'},
-                    {value:135, name:'PowerClick'},
-                    {value:1548, name:'開啟.hte'},
-                    {value:123, name:'其他'},
-                ]
-            },
-        },
-        defaultActive: {
-            type: Boolean,
-            default: function(){
-                return false;
-            }
-        },
-        singleColor:{
-            type: Boolean,
-            default: function(){
-                return false;
-            }
-        },
-        title: {
-            type: String
-        },
-        tooltip:{
-            type: Boolean,
-            default: function(){
-                return false;
-            }
-        }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    created(){
-        this.pieData.forEach(item => {
-            this.total += item.value
-        });
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            // 基于准备好的dom,初始化echarts实例
-            this.myChart = this.$echarts.init(document.getElementById(this.id));
-            this.myChart.setOption({                
-                title:{
-                    show: _this.title ? true : false,
-                    text: _this.title ? _this.title : '',
-                    left: 'center',
-                    top: 'middle',
-                    textStyle:{
-                        color: '#fafafa',
-                        fontWeight: 100
-                    }                    
-                },
-                color: _this.singleColor ? 'rgba(228, 233, 220, 0.9)' : ['#FF6B6A', '#FF9FF4', '#48DBFC', '#1CD0A1', '#FDC958', '#FFAD76'],
-                tooltip: {
-                    show: _this.tooltip,
-                    trigger: 'item',
-                    // formatter: function(p){                        
-                    //     // 故意不填可用來觸發HighLight
-                    // }
-                },
-                series: [
-                    {
-                        type:'pie',
-                        hoverOffset: 5,
-                        radius: _this.singleColor ? ['30%', '70%'] : ['50%', '70%'],
-                        avoidLabelOverlap: false,
-                        label: {
-                            normal: {
-                                show: false,
-                            },
-                            emphasis: {
-                                show: false,
-                            }
-                        },
-                        labelLine: {
-                            normal: {
-                                show: false
-                            }
-                        },
-                        data: _this.pieData,
-                        itemStyle: _this.singleColor ? {
-                            emphasis: {
-                                color: '#1CD0A1',
-                            }
-                        } : ''
-                    }
-                ]
-            });
-            // mouseover觸發項
-            this.myChart.on('mouseover', function (params) {
-                if(_this.pieData[_this.heightlightIndex].name != params.name){
-                    _this.myChart.dispatchAction({
-                        type: 'downplay',
-                        dataIndex: _this.heightlightIndex,
-                    });
-                }
-                _this.$emit('highLightInfo', params);
-            });
-            if(this.defaultActive){
-                // 預設先給第一筆初始值
-                let now = this.pieData[0].value;
-                let params = {'value': this.pieData[0].value, 'name': this.pieData[0].name,'percent': Number((now/this.total)*100).toFixed(2)}
-                this.$emit('extraInfo', params);            
-                this.$emit('highLightInfo', params);  
-                // 預設第一個
-                this.myChart.dispatchAction({
-                    type: 'highlight',
-                    dataIndex: _this.heightlightIndex,
-                });
-            }
-        },
-        // 供外部呼叫用
-        heightlight: function(dName){    
-            let _this = this;
-            if(this.pieData[this.heightlightIndex].name != dName){
-                this.myChart.dispatchAction({
-                    type: 'downplay',
-                    dataIndex: _this.heightlightIndex,
-                });
-            }
-
-            this.myChart.dispatchAction({
-                type: 'highlight',
-                name: dName
-            });
-            let now = 0;
-            this.pieData.forEach(item => {
-                if(item.name == dName){
-                    now = item.value
-                }
-            });
-            let params = {'percent': Number((now/this.total)*100).toFixed(2)}
-
-
-            this.$emit('extraInfo', params);
-        },
-        downplay: function(dname){
-            this.myChart.dispatchAction({
-                type: 'downplay',
-                name: dname
-            });
-        }
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 137
TEAMModelOS.SmartTeach/ClientApp/components/graph/teachScienceBar.vue

@@ -1,137 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-      return {
-        myChart: '',
-      }
-    },
-    props:{
-      id:{
-        type: String
-      },
-      data:{
-        type: Object,
-        default: function(){
-          return {'挑人': 9, '计时器': 11, '计分板': 16, 'I R S':14, '即问即答':9, '二次作答':5, '翻牌':3, '统计图':10, 
-                  '抢权':11, '飞讯处理':3, '推送':6, 'L I V E':13, '微影片':7, '播放影片':10, '作品观摩':7, '作品点评':6}
-        }
-      },
-      callBack: {
-        type: String
-      }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            // 取得Y軸Label
-            let yLabel = Object.keys(this.data);
-            let todayDataArray = [];
-
-            // 今日資料
-            yLabel.map(function(key) {
-              todayDataArray.push(_this.data[key]);
-            });            
-
-            // 基于准备好的dom,初始化echarts实例
-            this.myChart = this.$echarts.init(document.getElementById(this.id));
-            this.myChart.setOption({
-              backgroundColor: '#343a4073',
-              tooltip: {
-                trigger: 'axis',
-                axisPointer: {
-                  type: 'shadow'
-                },
-                formatter: function(params){
-                  // 故意開啟 但不設定使ToolTip 沒有彈跳的作用 但有Hover 功能
-                }
-              },
-              grid: {
-                left: '5%',
-                right: '0',
-                bottom: '0',
-                top:'0',
-                containLabel: true
-              },
-              xAxis: {
-                type: 'value',
-                boundaryGap: false,
-                axisLabel: {
-                    inside: true,
-                    textStyle: {
-                        color:'transparent'
-                    }
-                },
-                splitLine: {
-                    show: true,
-                    lineStyle: {
-                        color: 'rgba(185, 193, 173, 0.63)'
-                    }
-                }
-              },
-              yAxis: {
-                type: 'category',
-                axisLabel: {
-                    textStyle: {
-                      fontSize: '13px',
-                      color:'#94998a'
-                    }
-                },
-                splitLine: {
-                    show: true,
-                    lineStyle: {
-                        color: 'rgba(185, 193, 173, 0.63)'
-                    }
-                },
-                data: yLabel,
-              },
-              series: [
-                {
-                  // name: 'today',
-                  type: 'bar',
-                  data: todayDataArray,
-                  barWidth: 7, //柱子宽度
-                  barGap: 1, //柱子之间间距
-                  itemStyle: {
-                    normal: {  //渐变色
-                      color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                        offset: 0,
-                        color: "rgba(228, 233, 220, 1)" // 0% 处的颜色
-                      },{
-                        offset: 1,
-                        color: "rgba(228, 233, 220, 0)" // 100% 处的颜色
-                      }], false)
-                    }
-                  }
-                }
-              ]
-            })
-            // //highlight觸發項
-            // this.myChart.on('highlight', function (params) {
-            //   _this.$emit('highLightInfo', {'id': yLabel[params.batch[0].dataIndex], 'today': todayDataArray[params.batch[0].dataIndex], 'lastWeek': lastWeekDataArray[params.batch[1].dataIndex]});            
-            // });            
-            // this.myChart.on('downplay', function (params) {            
-            //   _this.$emit('downplay', yLabel[params.batch[0].dataIndex])
-            // });
-            // //預設顯示第一個
-            // this.myChart.dispatchAction({
-            //     type: 'showTip',
-            //     seriesIndex: 1,
-            //     dataIndex: 0,
-            // });
-            // // 預設先給值
-            // this.$emit('highLightInfo', {'id': yLabel[0], 'today': todayDataArray[0], 'lastWeek': lastWeekDataArray[0]});
-        }
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 221
TEAMModelOS.SmartTeach/ClientApp/components/graph/technologyBar.vue

@@ -1,221 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-      return {
-        myChart: '',
-      }
-    },
-    props:{
-      id:{
-        type: String
-      },
-      data:{
-        type: Object,
-        default: function(){
-          return {'计分板': 100, '挑人': 30, '计时器': 28, '抢权': 25, '统计图':24, '即问即答':23, '作品比较':21, '推送':8, '翻牌':6, '二次作答':2}
-        }
-      },
-      callBack: {
-        type: String
-      }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    methods:{
-        drawLine(){
-            let barcolor = ['#FF6B6A', '#FF9FF4', '#48DBFC', '#1CD0A1', '#FDC958', '#FFAD76'];
-            let _this = this
-            // 取得x轴Label
-            let xLabel = Object.keys(this.data);
-            let courseDataArray = [];
-            let max;
-            // 资料统整
-            xLabel.map(function(key) {
-              courseDataArray.push(_this.data[key]);
-            });
-            
-            max = Math.max(...courseDataArray) + 20;
-
-            // 基于准备好的dom,初始化echarts实例
-            this.myChart = this.$echarts.init(document.getElementById(this.id));
-            this.myChart.setOption({
-              title:{
-                text:'常用科技分布图',
-                left: 'center',
-                textStyle:{
-                  color: '#fafafa',
-                  fontWeight: 100,
-                }
-              },
-              legend: {
-                top: 20,
-                textStyle: {
-                    color: '#fff',
-                },
-                data: ['总量', '英文', '语文', '英语', '数学', '科学', '综合']
-              },
-              backgroundColor: '#343a4073',
-              tooltip: {
-                trigger: 'axis',
-                axisPointer: {
-                  type: 'shadow'
-                },              
-              },
-              grid: {
-                left: '0',
-                right: '0',
-                bottom: '1px',
-                top:'0',
-                containLabel: true
-              },
-              xAxis: {
-                type: 'category',
-                boundaryGap: true,
-                data: xLabel,
-                axisLabel: {
-                    // inside: true,
-                    textStyle: {
-                        color:'#fafafa'
-                    }
-                },
-                axisLine: {
-                  show: true,
-                    lineStyle: {
-                      width: 1,
-                      color: 'rgba(185, 193, 173, 0.63)'
-                    }                  
-                },
-                splitLine: {
-                    show: true,
-                    lineStyle: {
-                      width: 1,
-                      color: 'rgba(185, 193, 173, 0.63)'
-                    }
-                }
-              },
-              yAxis: {
-                type: 'value',
-                max: max,
-                minInterval: 1,
-                axisLabel: {
-                  inside: true,
-                  textStyle: {
-                      color:'transparent'
-                  }
-                },
-                axisLine: {
-                  show: true,
-                    lineStyle: {
-                      width: 1,
-                      color: 'rgba(185, 193, 173, 0.63)'
-                    }                  
-                },
-                splitLine: {
-                    show: true,
-                    lineStyle: {
-                      width: 1,
-                      color: 'rgba(185, 193, 173, 0.63)'
-                    }
-                },
-              },
-              series: [
-                {
-                  name:'总量',
-                  type: 'bar',
-                  data: courseDataArray,
-                  barWidth: 10, //柱子宽度
-                  // barGap: 1, //柱子之间间距
-                  itemStyle: {
-                    normal: { 
-                      color: function(params) {
-                        var num=barcolor.length;
-                        return barcolor[params.seriesIndex%num]
-                      },
-                    }
-                  }
-                },
-                {
-                  name:'语文',
-                  type:'bar',
-                  barWidth: 10, //柱子宽度
-                  data:[30, 15, 14, 13, 12, 11, 10, 9, 3, 2, 2],
-                  itemStyle: {
-                    normal: { 
-                      color: function(params) {
-                        var num=barcolor.length;
-                        return barcolor[params.seriesIndex%num]
-                      },
-                    }
-                  }
-                },
-                {
-                  name:'英语',
-                  type:'bar',
-                  barWidth: 10, //柱子宽度
-                  data:[30, 7, 14, 7, 6, 11, 10, 9, 3, 2, 2],
-                  itemStyle: {
-                    normal: { 
-                      color: function(params) {
-                        var num=barcolor.length;
-                        return barcolor[params.seriesIndex%num]
-                      },
-                    }
-                  }
-                },
-                {
-                  name:'数学',
-                  type:'bar',
-                  barWidth: 10, //柱子宽度
-                  data:[30, 7, 0, 5, 4, 2, 6, 5, 3, 2, 2],
-                  itemStyle: {
-                    normal: { 
-                      color: function(params) {
-                        var num=barcolor.length;
-                        return barcolor[params.seriesIndex%num]
-                      },
-                    }
-                  }
-                },
-               {
-                  name:'科学',
-                  type:'bar',
-                  barWidth: 10, //柱子宽度
-                  data:[10, 1, 0, 0, 2, 3, 5, 5, 3, 2, 2],
-                  itemStyle: {
-                    normal: { 
-                      color: function(params) {
-                        var num=barcolor.length;
-                        return barcolor[params.seriesIndex%num]
-                      },
-                    }
-                  }
-                },
-               {
-                  name:'综合',
-                  type:'bar',
-                  barWidth: 10, //柱子宽度
-                  data:[0, 0, 0, 0, 1, 0, 3, 1, 3, 2, 2],
-                  itemStyle: {
-                    normal: { 
-                      color: function(params) {
-                        var num=barcolor.length;
-                        return barcolor[params.seriesIndex%num]
-                      },
-                    }
-                  }
-                },
-              ]
-            })
-        }
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 242
TEAMModelOS.SmartTeach/ClientApp/components/graph/totalLine.vue

@@ -1,242 +0,0 @@
-<template>
-    <div :id="id" style="height: 100%;width:100%;"></div>
-</template>
-
-<script>
-export default {
-    data () {
-        return {}
-    },
-    props:{
-        id:{
-            type: String
-        }
-    },
-    mounted(){
-        this.drawLine();
-    },
-    methods:{
-        drawLine(){
-            let _this = this
-            // 基于准备好的dom,初始化echarts实例
-            let myChart = this.$echarts.init(document.getElementById(this.id));
-            let arrlabel = ["3/15", "3/16", "3/17", "3/18", "3/19", "3/20", "3/21", "3/22", "3/23", "3/24", "TODAY"];
-            let arrTotal1 = ["22", "17", "0", "26", "22", "24", "18", "30", "15", "10", "30"];
-            let arrTotal2 = ["26", "20", "2", "18", "27", "22", "26", "33", "9", "0", "40"];
-            let arrTotal3 = ["40", "26", "8", "1", "34", "8", "54", "16", "16", "25", "20"];
-            myChart.setOption({
-                backgroundColor: 'rgba(17, 17, 17, 0.14)',
-                tooltip: {
-                    trigger: 'axis',
-                    borderRadius: 0,
-                    // backgroundColor:'#7AD1A8',
-                    // formatter: function(pm) {
-                    //     var param = pm[0];
-                    //     var pht = '<span style="display:inline-block;margin-right:5px;width:10px;height:10px;background-color:rgba(166,154,228);"></span>';
-                    //     console.log(param.marker);
-                    //     var prm = "星期" + "日一二三四五六 ".charAt(new Date(param.name).getDay());
-                    //     return param.name + ":&nbsp;&nbsp;" + prm + "<br>" +
-                    //         pht + param.seriesName + ":&nbsp;&nbsp;" + param.value + "&nbsp;&nbsp;|&nbsp;&nbsp;80.33ttt%";
-                    // },
-                    //   axisPointer: { // 坐标轴指示器,坐标轴触发有效
-                    //         type: 'none' // 默认为直线,可选为:'line' | 'shadow'
-                    //     },
-                },
-                grid: {
-                    left: '0',
-                    right: '0',
-                    bottom: '5%',
-                    top: '0',
-                    containLabel: true,
-                },
-                xAxis: [{
-                    axisTick: {
-                        show: false,
-                    },
-                    type: 'category',
-                    axisLabel: {
-                        margin: 10,
-                        textStyle: {
-                            fontSize: 11,
-                            color: '#94998a'
-                        },
-                        interval:0,
-                        formatter:function(val){
-                            let firstOne = arrlabel[0];
-                            let labellength = arrlabel.length
-                            let lastOne = arrlabel[labellength-1];
-                            if(firstOne != val && lastOne != val){
-                                return val
-                            }
-                        }
-                    },
-                    boundaryGap: false,
-                    splitLine: {
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        },
-                        show: true
-                    },
-                    axisLine: {
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                            width: 1,
-                        }
-                    },
-                    data: arrlabel
-                }],
-                yAxis: [{
-                    position: 'right',
-                    type: 'value',
-                    // name: '单 位(%)',
-                    axisTick: {
-                        show: false
-                    },
-                    axisLine: {
-                        show: true,
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        }
-                    },
-                    axisLabel: {
-                        margin: 10,
-                        inside: true,
-                        textStyle: {
-                            fontSize: 14,
-                            color:'transparent'
-                        }
-                    },
-                    splitLine: {
-                        show: true,
-                        lineStyle: {
-                            color: 'rgba(185, 193, 173, 0.63)',
-                        }
-                    }
-                }],
-                series: [{
-                    // name: '实名率',
-                    type: 'line',
-                    // symbol: 'circle',
-                    //symbolSize: 5,
-                    // showSymbol: false,
-                    // markPoint: { // markLine 也是同理
-                    //   data: [{
-                    //     coord: [0,1,2,3,4], // 其中 5 表示 xAxis.data[5],即 '33' 这个元素。
-                    //     // coord: ['5', 33.4] // 其中 '5' 表示 xAxis.data中的 '5' 这个元素。
-                    //     // 注意,使用这种方式时,xAxis.data 不能写成 [number, number, ...]
-                    //     // 而只能写成 [string, string, ...]
-                    //   }]
-                    // },
-                    lineStyle: {
-                        normal: {
-                            width: 2
-                        }
-                    },
-                    areaStyle: {
-                        normal: {
-                            // 渐变色
-                            color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                                offset: 0,
-                                color: "rgba(28, 208, 161, 1)" // 0% 处的颜色
-                            },{
-                                offset: 1,
-                                color: "rgba(28, 208, 161, 0.5)" // 100% 处的颜色
-                            }], false)
-                        },
-                    },
-                    itemStyle: {
-                        normal: {
-                            areaStyle: {
-                                type: 'default'
-                            },
-                            color: '#1CD0A1',
-                        },
-                        emphasis: {
-                            // color: 'rgb(0,196,132)',
-                            borderColor: 'rgba(0,196,132,0.2)',
-                            extraCssText: 'box-shadow: 8px 8px 8px rgba(0, 0, 0, 1);',
-                            // borderWidth: 10
-                        }
-                    },
-                    data: arrTotal1
-                },
-                {
-                    type: 'line',
-                    lineStyle: {
-                        normal: {
-                            width: 2
-                        }
-                    },
-                    areaStyle: {
-                        normal: {
-                            // 渐变色
-                            color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                                offset: 0,
-                                color: "rgba(255, 107, 106, 1)" // 0% 处的颜色
-                            },{
-                                offset: 1,
-                                color: "rgba(255, 107, 106, 0.5)" // 100% 处的颜色
-                            }], false)
-                        },
-                    },
-                    itemStyle: {
-                        normal: {
-                            areaStyle: {
-                                type: 'default'
-                            },
-                            color: '#FF6B6A',
-                        },
-                        emphasis: {
-                            // color: 'rgb(0,196,132)',
-                            borderColor: 'rgba(0,196,132,0.2)',
-                            extraCssText: 'box-shadow: 8px 8px 8px rgba(0, 0, 0, 1);',
-                            // borderWidth: 10
-                        }
-                    },
-                    data: arrTotal2
-                },
-                {
-                    type: 'line',
-                    lineStyle: {
-                        normal: {
-                            width: 2
-                        }
-                    },
-                    areaStyle: {
-                        normal: {
-                            // 渐变色
-                            color: new this.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{
-                                offset: 0,
-                                color: "rgba(72, 219, 252, 1)" // 0% 处的颜色
-                            },{
-                                offset: 1,
-                                color: "rgba(72, 219, 252, 0.5)" // 100% 处的颜色
-                            }], false)
-                        },
-                    },
-                    itemStyle: {
-                        normal: {
-                            areaStyle: {
-                                type: 'default'
-                            },
-                            color: '#48DBFC',
-                        },
-                        emphasis: {
-                            // color: 'rgb(0,196,132)',
-                            borderColor: 'rgba(0,196,132,0.2)',
-                            extraCssText: 'box-shadow: 8px 8px 8px rgba(0, 0, 0, 1);',
-                            // borderWidth: 10
-                        }
-                    },
-                    data: arrTotal3
-                }
-                ]
-            });
-        }
-    }
-}
-
-</script>
-
-<style>
-</style>

+ 0 - 26
TEAMModelOS.SmartTeach/ClientApp/components/nav-menu.vue

@@ -1,26 +0,0 @@
-<template>
-    <div class="main-nav">
-    </div>
-</template>
-
-<script>
-    import { routes } from '../router/routes'
-
-    export default {
-      data () {
-        return {
-          routes,
-          collapsed: true
-        }
-      },
-      methods: {
-        toggleCollapsed: function (event) {
-          this.collapsed = !this.collapsed
-        }
-      }
-    }
-</script>
-
-<style scoped>
-  
-</style>

+ 0 - 187
TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAannulus.vue

@@ -1,187 +0,0 @@
-<template>
-  <div class="annulus_box">
-    <div class="annulus_title"><p>及格率比较</p></div>
-    <div id="pie_duo" style="width:99%; height:450px;"></div>
-  </div>
-</template>
-<script>
-  export default {
-    data() {
-      return {
-      
-      }
-    },
-    created() {
-      this.init();
-    },
-    computed: {
-      annulus() {
-        return this.$store.state.annulus
-      },
-    },
-    methods: {
-      drawLine(obj) {
-        let title = '';
-        let num = '';
-        console.log(title,456789)
-        var dataStyle = {
-          normal: {
-            label: { show: false },
-            labelLine: { show: false },
-            // shadowBlur: 40,
-            shadowColor: 'rgba(40, 40, 40, 0.5)',
-          }
-        };
-        let myChart_lei = this.$echarts.init(document.getElementById('pie_duo'));
-        myChart_lei.setOption({
-           title:{
-             text:title   ,
-             subtext: this.num,
-             x:'center',
-             y:'35%',
-             itemGap: 0,
-             textStyle: {
-               fontSize: 28,
-               fontWeight: 'bolder',
-               color: '#000080'
-             },
-             //subtextStyle: {
-             //  fontSize: 19,
-             //  fontWeight: 'bolder',
-             //  color: '#333'
-             //},
-          
-           },
-          backgroundColor: '#fff',
-          color: obj.primarycolor,
-          tooltip: {
-            show: true,
-            position: ['33%', '41%'],
-            fontSize:'30',
-            formatter: function (value) {
-              var res = '<div style="text-align:center;width:120px;"><p style="font-size:16px;">' + value.name + '</p></div>' + '<br/>' +
-                '<div style="text-align:center;width:120px;"><p style="color:#00FFFF;font-size:20px;">' + value.value + '%' + '</p></div>'
-              return res;
-            },
-          },
-          legend: {
-            show: false,
-            itemGap: 12,
-            top: '0%',
-            right: '4%',
-            data: obj.title
-          },
-          toolbox: {
-            show: false,
-            feature: {
-              mark: { show: true },
-              dataView: { show: true, readOnly: false },
-              restore: { show: true },
-              saveAsImage: { show: true }
-            }
-          },
-          series: [
-            {
-              name: obj.areadata.dataname,
-              type: 'pie',
-              clockWise: true,
-              radius: ['75%', '90%'],
-              itemStyle: dataStyle,
-              hoverAnimation: false,
-              data: [
-                {
-                  value: obj.areadata.occupydata,
-                  name: '本区及格率'
-                },
-                {
-                  value: obj.areadata.remaindata,
-                  name: '本区未及格率',
-                  itemStyle: {
-                    normal: {
-                      color: '#BFEFFF',
-                    }
-                  }
-                },
-              ]
-            },
-            {
-              name: obj.schooldata.dataname,
-              type: 'pie',
-              clockWise: true,
-              hoverAnimation: false,
-              radius: ['60%', '75%'],
-              itemStyle: dataStyle,
-              data: [
-                {
-                  value: obj.schooldata.occupydata,
-                  name: '本校及格率'
-                },
-                {
-                  value: obj.schooldata.remaindata,
-                  name: '本校未及格率',
-                  itemStyle: {
-                    normal: {
-                      color: '#B2DFEE',
-                    }
-                  }
-                }
-              ]
-            },
-            {
-              name: obj.teachingdata.dataname,
-              type: 'pie',
-              clockWise: true,
-              hoverAnimation: false,
-              radius: ['45%', '60%'],
-              itemStyle: dataStyle,
-              data: [
-                {
-                  value: obj.teachingdata.occupydata,
-                  name: '任教班及格率'
-                },
-                {
-                  value: obj.teachingdata.remaindata,
-                  name: '任教班未及格率',
-                  itemStyle: {
-                    normal: {
-                      color: '#F2F2F2',
-                    }
-                  }
-                }
-              ]
-            },
-          ]
-        })
-      },
-
-      init() {
-        this.$api.FindTeachAnnulus({})
-          .then((response) => {
-            //console.log(response.result.data, 777777)
-            this.$store.state.annulus = response.result.data
-          })
-      },
-    },
-    watch: {
-      // 		监听指令
-      annulus(a) {
-          this.drawLine(a)
-      },
-    }
-  }
-</script>
-<style scoped>
-  .annulus_box {
-    width:100%;
-    height:450px;
-  }
-  .annulus_title {
-    width:100%;
-    font-size:18px;
-    font-weight:bold;
-    color:#333;
-    padding-left:3%;
-    padding-top:1%;
-    
-  }
-</style>

+ 0 - 354
TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAbargraph.vue

@@ -1,354 +0,0 @@
-<template>
-  <div class="bargraph">
-    <!--<div class="bargraph_title"><p>各校成绩排名</p></div>-->
-    <div id="myChart" :style="{width: '100%', height: '460px'}"></div>
-  </div>
-</template>
-<script>
-    export default {
-        name: "bargraph",
-        data(){
-          return{
-            now_url: this.$route.path,
-          }
-    },
-    created() {
-      this.init();
-            },
-        computed:{
-
-        zhuxhuang () {
-          return this.$store.state.zhuxhuang
-          },
-        
-       },
-      methods:{
-        drawLine(obj) {
-          let _this = this;
-          this.$store.state.zhuxhuang.mode = false;
-          let myChart = this.$echarts.init(document.getElementById('myChart'));
-          myChart.setOption({
-            title: {
-              text: obj.titlename,
-              left: "left",
-              top:"0%",
-              y: "10",
-              textStyle:{
-                fontSize:16
-              }
-            },
-            tooltip : {
-              trigger: 'axis',
-              axisPointer : {            // 坐标轴指示器,坐标轴触发有效
-                type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
-              },
-              formatter: function (value) {
-                let arr = '';
-                for (var i = 0; i < value.length / 2; i++) {
-                  //console.log(value[i].seriesName,666666)
-                  var datalist = value[i].seriesName + ' : ' + value[i].data+'<br>';
-                  arr += datalist;
-                };
-                let one_average = obj.one_average.name + ' : ' + obj.one_average.data + '<br/>';
-                let two_average = obj.two_average.name + ' : ' + obj.two_average.data;
-                arr+=(one_average);
-                arr+=(two_average);
-                return arr;
-                }
-            },
-            legend: {
-              data:obj.titledata,
-              top:"5%"
-            },
-            grid: {
-              left: '2%',
-              right: '4%',
-              bottom: '3.5%',
-              containLabel: true,
-              x:100,
-              y2:100,
-            },
-            xAxis : [
-              {
-                type : 'category',
-                data : obj.object_name,
-                axisLabel: {
-                  interval: 0,    //强制文字产生间隔
-                  rotate: 45,     //文字逆时针旋转50°
-                  textStyle: {    //文字样式
-                    color: "#333",
-                    fontSize: 12,
-                    fontFamily: 'Microsoft YaHei',
-                  }
-                },
-
-              }
-            ],
-            dataZoom: {
-              show: true,
-              realtime: true,
-              backgroundColor: "rgba(0,0,0,0)",
-              handleSize: 15,
-              backgroundColor: '#fff',
-              showDataShadow: false,
-              handleIcon: 'M-292,322.2c-3.2,0-6.4-0.6-9.3-1.9c-2.9-1.2-5.4-2.9-7.6-5.1s-3.9-4.8-5.1-7.6c-1.3-3-1.9-6.1-1.9-9.3c0-3.2,0.6-6.4,1.9-9.3c1.2-2.9,2.9-5.4,5.1-7.6s4.8-3.9,7.6-5.1c3-1.3,6.1-1.9,9.3-1.9c3.2,0,6.4,0.6,9.3,1.9c2.9,1.2,5.4,2.9,7.6,5.1s3.9,4.8,5.1,7.6c1.3,3,1.9,6.1,1.9,9.3c0,3.2-0.6,6.4-1.9,9.3c-1.2,2.9-2.9,5.4-5.1,7.6s-4.8,3.9-7.6,5.1C-285.6,321.5-288.8,322.2-292,322.2z',
-              fillerColor: new this.$echarts.graphic.LinearGradient(1, 0, 0, 0, [{
-                //给颜色设置渐变色 前面4个参数,给第一个设置1,第四个设置0 ,就是水平渐变
-                //给第一个设置0,第四个设置1,就是垂直渐变
-                offset: 0,
-                color: '#1eb5e5'
-              }, {
-                  offset: 1,
-                  color: '#5ccbb1'
-                }]),
-              handleColor: '#ddd',//h滑动图标的颜色
-              handleStyle: {
-                borderColor: "#cacaca",
-                borderWidth: "1",
-                shadowBlur: 0,
-                background: "#ddd",
-                shadowColor: "#ddd",
-              },
-              backgroundColor: '#eee',//两边未选中的滑动条区域的颜色
-              y: 420,
-              height: 8,
-              start: 0,
-              end: 45,
-            },
-            yAxis : [
-              {
-                type : 'value',
-              }
-            ],
-            series : [
-              {
-                name:obj.one_data.name,
-                type:'bar',
-                stack: '本校',
-                data:obj.one_data.data,
-                barWidth : 20,
-                itemStyle:{
-                  normal:{
-                    color:'#ffb5f6'
-                  }
-                },
-              },
-              {
-                name: obj.two_data.name,
-                type:'bar',
-                stack: '本校',
-                data: obj.two_data.data,
-                barWidth : 20,
-                itemStyle:{
-                  normal:{
-                    color:'#fdd57e'
-                  }
-                },
-              },
-              {
-                name: obj.three_data.name,
-                type:'bar',
-                stack: '本校',
-                data:obj.three_data.data,
-                barWidth : 20,
-                itemStyle:{
-                  normal:{
-                    color:'#ff8d8c'
-                  }
-                },
-              },
-              {
-                name:obj.four_data.name,
-                type:'bar',
-                stack: '本校',
-                data: obj.four_data.data,
-                barWidth : 20,
-                itemStyle:{
-                  normal:{
-                    color:'#73e2fd'
-                  }
-                },
-              },
-              {
-                name: obj.five_data.name,
-                type:'bar',
-                stack: '本校',
-                data:obj.five_data.data,
-                barWidth : 20,
-                itemStyle:{
-                  normal:{
-                    color:'#50dab6'
-                  }
-                },
-              },
-              {
-                name: obj.six_data.name,
-                type:'bar',
-                stack: '本校',
-                data: obj.six_data.data,
-                barWidth : 20,
-                itemStyle:{
-                  normal:{
-                    color:'#6489da'
-                  }
-                },
-              },
-              {
-                name: obj.quyudata.anotherone_data.name,
-                type: 'bar',
-                stack: '区域',
-                data: obj.quyudata.anotherone_data.datalist,
-                barWidth : 20,
-                itemStyle:{
-                  normal:{
-                    color:'#c4cbd1'
-                  }
-                },
-              },
-              {
-                name: obj.quyudata.anothertwo_data.name,
-                type: 'bar',
-                stack: '区域',
-                data: obj.quyudata.anothertwo_data.datalist,
-                barWidth: 20,
-                itemStyle: {
-                  normal: {
-                    color: '#c4cbd1'
-                  }
-                },
-              },
-              {
-                name: obj.quyudata.anotherthree_data.name,
-                type: 'bar',
-                stack: '区域',
-                data: obj.quyudata.anotherthree_data.datalist,
-                barWidth: 20,
-                itemStyle: {
-                  normal: {
-                    color: '#c4cbd1'
-                  }
-                },
-              },
-              {
-                name: obj.quyudata.anotherfour_data.name,
-                type: 'bar',
-                stack: '区域',
-                data: obj.quyudata.anotherfour_data.datalist,
-                barWidth: 20,
-                itemStyle: {
-                  normal: {
-                    color: '#c4cbd1'
-                  }
-                },
-              },
-              {
-                name: obj.quyudata.anotherfive_data.name,
-                type: 'bar',
-                stack: '区域',
-                data: obj.quyudata.anotherfive_data.datalist,
-                barWidth: 20,
-                itemStyle: {
-                  normal: {
-                    color: '#c4cbd1'
-                  }
-                },
-              },
-              {
-                name: obj.quyudata.anothersix_data.name,
-                type: 'bar',
-                stack: '区域',
-                data: obj.quyudata.anothersix_data.datalist,
-                barWidth: 20,
-                itemStyle: {
-                  normal: {
-                    color: '#c4cbd1'
-                  }
-                },
-              },
-            ]
-          }),
-            myChart.on('click', function (param) {
-            let schoolname = param.name;
-            if (schoolname == '成都七中') {
-              _this.cdqz();
-            } else if (schoolname == '成都四中') {
-              _this.cdsz();
-            } else if (schoolname == '成都九中') {
-              _this.cdjz();
-            } else if (schoolname == '成都树德中学') {
-              _this.cdsd();
-            } else if (schoolname == '师大一中') {
-              _this.sdyz();
-            } else if (schoolname == '西川中学') {
-              _this.xczx();
-            } else if (schoolname == '成都市石室中学') {
-              _this.sszx();
-            }
-            })
-        },
-        //七中
-        cdqz() {
-          this.$api.Findcdqz({})
-            .then((response) => {
-              this.$store.state.leida= response.result.data;
-            })
-        },
-        //四中
-        cdsz() {
-          this.$api.Findcdsz({})
-            .then((response) => {
-              this.$store.state.leida = response.result.data;
-            })
-        },
-        //九中
-        cdjz() {
-          this.$api.Findcdjz({})
-            .then((response) => {
-              this.$store.state.leida = response.result.data;
-            })
-        },
-        //树德
-        cdsd() {
-          this.$api.Findcdsd({})
-            .then((response) => {
-              this.$store.state.leida = response.result.data;
-            })
-        },
-        //师大一中
-        sdyz() {
-          this.$api.Findsdyz({})
-            .then((response) => {
-              this.$store.state.leida = response.result.data;
-            })
-        },
-        //西川中学
-        xczx() {
-          this.$api.Findxczx({})
-            .then((response) => {
-              this.$store.state.leida = response.result.data;
-            })
-        },
-        //石室中学
-        sszx() {
-          this.$api.Findsszx({})
-            .then((response) => {
-              this.$store.state.leida = response.result.data;
-            })
-        },
-        init() {
-            this.$api.FindBargraph({})
-              .then((response) => {
-                this.$store.state.zhuxhuang = response.result.data;
-              })
-        },
-      },
-      watch:{
-// 		监听指令
-        zhuxhuang(a){
-          if (a) {
-            this.drawLine(a)
-          }
-        },
-      }
-    }
-</script>

+ 0 - 243
TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAbarline.vue

@@ -1,243 +0,0 @@
-<template>
-  <div class="barline_box">
-    <div id="barline" style="width:100%; height:450px;"></div>
-  </div>
-</template>
-<script>
-  export default {
-    data() {
-      return {
-        now_url: this.$route.path,
-      }
-    },
-    created() {
-      this.init();
-    },
-    computed: {
-      barline() {
-        return this.$store.state.barline
-      }
-    },
-    methods: {
-      drawLine(obj) {
-        let myChart = this.$echarts.init(document.getElementById('barline'));
-        let _this = this;
-        myChart.setOption({
-          title: {
-            text: obj.titlename,
-            top: "0%",
-          },
-          tooltip: {
-            trigger: 'axis',
-            axisPointer: {            // 坐标轴指示器,坐标轴触发有效
-              type: 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
-            }
-          },
-          legend: {
-            data: obj.titledata,
-            x: 'center',
-            top: "3%"
-          },
-          grid: {
-            left: '1.5%',
-            right: '4%',
-            bottom: '4.5%',
-            containLabel: true,
-            x: 100,
-            y2: 200,
-          },
-          toolbox: {
-            show: true,
-            orient: 'horizontal',
-            y:"2%",
-            feature: {
-              mark: { show: true },
-              dataView: { show: true, readOnly: false },
-              magicType: { show: true, type: ['bar', 'line',] },
-              restore: { show: false },
-              saveAsImage: { show: true }
-            }
-          },
-          calculable: true,
-          xAxis: [
-            {
-              type: 'category',
-              boundaryGap: true,
-              data: obj.object_name,
-              axisLabel: {
-                interval: 0,    //强制文字产生间隔
-                rotate: 50,     //文字逆时针旋转50°
-                textStyle: {    //文字样式
-                  color: "#333",
-                  fontSize: 11,
-                  fontFamily: 'Microsoft YaHei',
-                }
-              },
-            }
-          ],
-          dataZoom: {
-            show: true,
-            realtime: true,
-            backgroundColor: "rgba(0,0,0,0)",
-            handleSize: 15,
-            backgroundColor: '#fff',
-            showDataShadow: false,
-            handleIcon: 'M-292,322.2c-3.2,0-6.4-0.6-9.3-1.9c-2.9-1.2-5.4-2.9-7.6-5.1s-3.9-4.8-5.1-7.6c-1.3-3-1.9-6.1-1.9-9.3c0-3.2,0.6-6.4,1.9-9.3c1.2-2.9,2.9-5.4,5.1-7.6s4.8-3.9,7.6-5.1c3-1.3,6.1-1.9,9.3-1.9c3.2,0,6.4,0.6,9.3,1.9c2.9,1.2,5.4,2.9,7.6,5.1s3.9,4.8,5.1,7.6c1.3,3,1.9,6.1,1.9,9.3c0,3.2-0.6,6.4-1.9,9.3c-1.2,2.9-2.9,5.4-5.1,7.6s-4.8,3.9-7.6,5.1C-285.6,321.5-288.8,322.2-292,322.2z',
-            fillerColor: new this.$echarts.graphic.LinearGradient(1, 0, 0, 0, [{
-              //给颜色设置渐变色 前面4个参数,给第一个设置1,第四个设置0 ,就是水平渐变
-              //给第一个设置0,第四个设置1,就是垂直渐变
-              offset: 0,
-              color: '#1eb5e5'
-            }, {
-              offset: 1,
-              color: '#5ccbb1'
-            }]),
-            handleColor: '#ddd',//h滑动图标的颜色
-            handleStyle: {
-              borderColor: "#cacaca",
-              borderWidth: "1",
-              shadowBlur: 0,
-              background: "#ddd",
-              shadowColor: "#ddd",
-            },
-            backgroundColor: '#eee',//两边未选中的滑动条区域的颜色
-            y: 420,
-            height: 8,
-            start: 0,
-            end: 45,
-          },
-          yAxis: [
-            {
-              type: 'value'
-            }
-          ],
-          series: [
-            {
-              name: obj.one_data.name,
-              type: 'bar',
-              barWidth: 10,
-              smooth: true,
-              itemStyle: { normal: { areaStyle: { type: 'default' } } },
-              data: obj.one_data.data,
-              itemStyle: {
-                normal: {
-                  color: '#4EDAB5'
-                }
-              },
-              markPoint: {
-                data: [
-                  { type: 'max', name: '最大值' },
-                  { type: 'min', name: '最小值' }
-                ]
-              },
-              markLine: {
-                itemStyle: {
-                  normal: { lineStyle: { type: 'solid' }, label: { show: true, position: 'middle' } }
-                },
-                large: true,   
-                effect: {
-                  show: false,
-                  loop: true,
-                  period: 0,
-                  scaleSize: 2,
-                  color: null,
-                  shadowColor: null,
-                  shadowBlur: null
-                },
-                data: [
-                  {
-                    name: '区级平均分',
-                    type: 'average',
-                    // 单独配置每条线的样式
-                    yAxis: 86,
-                    lineStyle: {
-                      color: 'blue',
-                    },
-                    label: {
-                      formatter: '区级平均分'
-                    }
-                  },
-                  {
-                    name: '校级平均分',
-                    yAxis: 89,
-                    // 单独配置每条线的样式
-                    lineStyle: {
-                      color: 'red'
-                    },
-                    label: {
-                      formatter:'校级平均分'
-                    }
-                  },
-                  {
-                    name: '任教班级平均分',
-                    yAxis: 80,
-                    // 单独配置每条线的样式
-                    lineStyle: {
-                      color: 'green'
-                    },
-                    label: {
-                      formatter: '任教班级平均分'
-                    }
-                  },
-                ]
-              }
-            },
-            {
-              name: obj.last_data.name,
-              type: 'bar',
-              smooth: true,
-              barWidth: 10,
-              itemStyle: { normal: { areaStyle: { type: 'default' } } },
-              data: obj.last_data.data,
-              itemStyle: {
-                normal: {
-                  color: '#7AB6FE'
-                }
-              },
-            }
-          ]
-        })
-        myChart.on('click', function (param) {
-          console.log(param, 123456789);
-          console.log(param.seriesName);
-          console.log(param.name);
-          _this.barclick();
-        })
-      },
-
-      init() {
-        this.$api.FindTeachbargraph({})
-          .then((response) => {
-           // console.log(response.result.data, '老师测试页面');
-            this.$store.state.barline = response.result.data;
-                })
-      },
-      //点击班级 联动PR值
-      barclick() {
-        this.$api.FindClickPR({})
-          .then((response) => {
-           //console.log(response.result.data,77777)
-            this.$store.state.accuracyPR = response.result.data;
-          })
-      }
-
-    },
-    watch: {
-      // 		监听指令
-      barline(a) {
-        if (a) {
-          this.drawLine(a)
-        }
-      },
-    }
-              }
-</script>
-<style scoped>
-  .barline_box {
-    width:100%;
-    height:450px;
-  }
-  #myChart {
-    padding: 4% 2% 0% 2% !important;
-  }
-</style>

+ 0 - 57
TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAbasics.vue

@@ -1,57 +0,0 @@
-<template>
-    <div class="basics_box">
-      <div class="basics">
-        <li class="basicslist" v-for="(item,index) in basicsdata"  v-if="index ==0">
-          <p class="basicslist_title">{{item.title}}</p>
-          <p class="basicslist_num">{{item.num}}<Icon type="ios-arrow-round-up"  style="color:#1acb9f;font-weight: bold;
-    font-size: 40px;margin-top:10px;" v-if="icon_show"/></p>
-          <p class="basicslist_total">{{item.total}}</p>
-          <p class="basicslist_area">{{item.areadata}}</p>
-        </li>
-        <li v-else class="basicslist">
-          <p class="basicslist_title">{{item.title}}</p>
-          <p class="basicslist_num">{{item.num}}</p>
-          <p class="basicslist_total">{{item.total}}</p>
-          <p class="basicslist_area" >{{item.areadata}}</p>
-        </li>
-      </div>
-    </div>
-</template>
-<script>
-    export default {
-        name: "basics",
-        data(){
-          return{
-           // basicsdata:[],
-            now_url: this.$route.path,
-            icon_show: false
-          }
-    },
-    created() {
-      this.init();
-    },
-    computed: {
-      basicsdata() {
-        return this.$store.state.basicsdata
-                  }
-                },
-    methods:{
-      init() {
-        if (this.now_url == '/saindex') {
-          this.$api.FindBasics({})
-            .then((response) => {
-              //console.log(response.result.data, 11111);
-              this.icon_show = true;
-              this.$store.state.basicsdata = response.result.data;
-              //console.log(this.xueduan,333333)
-            })
-        } else if (this.now_url == '/teach') {
-          this.$api.FindTeachBasics({})
-            .then((response) => {
-              this.$store.state.basicsdata = response.result.data;
-            })
-            }
-         },
-      }
-    }
-</script>

+ 0 - 242
TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAchooseattention.vue

@@ -1,242 +0,0 @@
-<template>
-  <Row class="attention_box">
-    <Col span="24">
-      <Sider ref="side1" v-model="isCollapsed">
-        <Menu active-name="1-1" theme="dark" width="100%">
-          <MenuItem name="1-1">
-            <Icon type="ios-home-outline"/>
-            <span>{{$t('saindex.index')}}</span>
-          </MenuItem>
-          <MenuItem name="1-2">
-            <Icon type="ios-clipboard-outline"/>
-            <span>{{$t('saindex.grade')}}</span>
-          </MenuItem>
-          <MenuItem name="1-3">
-            <Icon type="md-checkmark-circle-outline"/>
-            <span>{{$t('saindex.droppoint')}}</span>
-          </MenuItem>
-          <MenuItem name="1-4">
-            <Icon type="ios-create-outline"/>
-            <span>{{$t('saindex.examination')}}</span>
-          </MenuItem>
-          <MenuItem name="1-5">
-            <Icon type="ios-medal-outline"/>
-            <span>{{$t('saindex.knowledge')}}</span>
-          </MenuItem>
-        </Menu>
-      </Sider>
-    </Col>
-    <Col span="24" class="choose">
-    <div class="select">
-      <p class="choose_box_tilte" v-if="this.now_url == '/saindex'">{{$t('sasidebar.class')}}</p>
-      <Cascader :data="selectgrade" v-model="grade"  placeholder="请选择年级" @on-change="listchange" v-if="this.now_url != '/teach'"></Cascader>
-      <p class="choose_box_tilte">{{$t('sasidebar.term')}}</p>
-      <Cascader :data="selectterm" v-model="semester" placeholder="请选择年级" @on-change="listterm"></Cascader>
-      <p class="choose_box_tilte" v-if="this.now_url == '/teach'">{{$t('sasidebar.compare')}}</p>
-      <Select v-model="model1" style="width:200px"  placeholder="请选择比较的数据"  v-if="this.now_url == '/teach'"  @on-change="datacompare">
-        <Option v-for="item in selectcontrast" :value="item.value" :key="item.value">{{ item.label }}</Option>
-      </Select>
-    </div>
-    </Col>
-  </Row>
-</template>
-<script>
-  export default {
-    name: "ChooseAttention",
-    data() {
-      return {
-        isCollapsed: false,
-        value1: [],
-        grade: [],
-        semester: [],
-        cityList: [],
-        model1:[],
-        now_url:this.$route.path,
-      }
-    },
-    created() {
-      this.init();
-      this.inits();
-      this.contrast();
-    },
-    computed: {
-      //  	命令发布监听
-      selectgrade() {
-        return this.$store.state.selectgrade
-      },
-      selectterm(){
-        return this.$store.state.selectterm
-      },
-      selectcontrast() {
-        return this.$store.state.selectcontrast
-      },
-    },
-    methods: {
-      //获取关注年级数据
-      init(){
-          this.$api.FindGrade({})
-            .then((response) => {
-              //console.log(response.result.data, 11111);
-              this.$store.state.selectgrade = response.result.data;
-              //console.log(this.$store.state.selectgrade, 888855)
-            })
-      },
-      //获取关注学年期
-      inits() {
-        if (this.now_url == '/saindex') {
-          this.$api.FindTerm({})
-            .then((response) => {
-              //console.log(response.result.data,11111);
-              this.$store.state.selectterm = response.result.data
-            })
-        } else if (this.now_url == '/teach') {
-          this.$api.FindTeachTerm({})
-            .then((response) => {
-              this.$store.state.selectterm = response.result.data;
-            })
-        } else if (this.now_url == '/total') {
-          this.$api.FindTeachTerm({})
-            .then((response) => {
-              this.$store.state.selectterm = response.result.data;
-            })
-        } 
-      },
-      //获取数据比较
-   contrast(){
-    this.$api.FindTeachContrast({})
-      .then((response) => {
-        this.$store.state.selectcontrast=response.result.data
-              })
-          },
-      //获取关注年级值
-      listchange(value, selectedData) {
-        let xueduan = value[0];
-        let nianjinum = value[1];
-        if (xueduan == 'gaozhong' && nianjinum != 1) {
-          this.$store.state.wenli_show = true;
-        } else {
-          this.$store.state.wenli_show = false;
-        }
-        //console.log(value,33333);
-        this.$api.FindSelectGrade({})
-          .then((response) => {
-            //console.log(response.result.data, 789789789);
-            //获取新的年级选择
-            this.$store.state.selectgrade = response.result.data.selectgrade
-            //获取新的学年期
-            this.$store.state.selectterm = response.result.data.term
-            //获取新的考试次数情况
-            this.$store.state.selectexam = response.result.data.exam[0].data;
-            //获取新的基础信息
-            this.$store.state.basicsdata = response.result.data.base;
-            //获取新的各校成绩排名
-            this.$store.state.zhuxhuang = response.result.data.barecharts;
-            //获取新的各项科目表现
-            this.$store.state.leida = response.result.data.leida;
-            //获取新的科目表现对比
-            this.$store.state.pie = response.result.data.pie
-            //获取新的考试类型
-            this.$store.state.examtype = response.result.data.examtype;
-            //获取新的各校历次总分统计图
-            this.$store.state.linechart = response.result.data.linechart;
-                  })
-      },
-      //获取关注学年期
-      listterm(value, selectedData) {
-        if (this.now_url == '/saindex') {
-          this.$api.FindSelectTerm({})
-            .then((response) => {
-              //console.log(response.result.data);
-              //获取新的关注年级
-              this.$store.state.selectgrade = response.result.data.selectgrade
-              //获取新的学年期
-              this.$store.state.selectterm = response.result.data.term
-              //获取新的考试次数情况
-              this.$store.state.selectexam = response.result.data.exam[0].data;
-              //获取新的基础信息
-              this.$store.state.basicsdata = response.result.data.base;
-              //获取新的各校成绩排名
-              this.$store.state.zhuxhuang = response.result.data.barecharts;
-              //获取新的各项科目表现
-              this.$store.state.leida = response.result.data.leida;
-              //获取新的科目表现对比
-              this.$store.state.pie = response.result.data.pie
-              //获取新的考试类型
-              this.$store.state.examtype = response.result.data.examtype;
-              //获取新的各校历次总分统计图
-              this.$store.state.linechart = response.result.data.linechart;
-            })
-        } else if (this.now_url =='/teach') {
-          this.$api.FindDynamicTerm({})
-            .then((response) => {
-              //console.log(response.result.data,33333)
-              //获取新的学年期
-              this.$store.state.selectterm = response.result.data.term;
-              //获取新的数据对比
-              this.$store.state.selectcontrast = response.result.data.selectcontrast;
-              //获取新的考试次数情况
-              this.$store.state.selectexam = response.result.data.exam[0].data;
-              //获取新的基础信息
-              this.$store.state.basicsdata = response.result.data.base;
-              //获取各班平均分数排名
-              this.$store.state.barline = response.result.data.barecharts;
-              //获取及格率比较
-              this.$store.state.annulus = response.result.data.annulus;
-              //获取PR百分等级
-              this.$store.state.accuracyPR = response.result.data.accuracyPR;
-              //获取历次总分统计图
-              this.$store.state.linechart = response.result.data.linechart;
-            })
-        }
-       
-      },
-      //动态数据比较
-      datacompare(value, selectedData) {
-        this.$api.FindDatacompare({})
-          .then((response) => {
-            //获取新的学年期
-            this.$store.state.selectterm = response.result.data.term;
-            //获取新的数据对比
-            this.$store.state.selectcontrast = response.result.data.selectcontrast;
-            //获取新的考试次数情况
-            this.$store.state.selectexam = response.result.data.exam[0].data;
-            //获取新的基础信息
-            this.$store.state.basicsdata = response.result.data.base;
-            //获取各班平均分数排名
-            this.$store.state.barline = response.result.data.barecharts;
-            //获取及格率比较
-            this.$store.state.annulus = response.result.data.annulus;
-            //获取PR百分等级
-            this.$store.state.accuracyPR = response.result.data.accuracyPR;
-            //获取历次总分统计图
-            this.$store.state.linechart = response.result.data.linechart;
-          })
-      }
-    },
-  }
-</script>
-<style scoped>
-  .ivu-select-selection {
-    background-color: #cfd4da !important;
-  }
-
-  .ivu-input {
-    font-size: 14px !important;
-    background-color: #cfd4da;
-    color: #4d5760 !important;
-    border: 1px solid #cfd4da;
-  }
-
-  .ivu-input-wrapper {
-    color: #000 !important;
-  }
-
-  .ivu-input:hover {
-    border: 1px solid #fff;
-  }
-  .ivu-select {
-    width: 100% !important;
-  }
-</style>
-<style scoped>
-</style>

+ 0 - 129
TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAchooseexam.vue

@@ -1,129 +0,0 @@
-<template>
-   <Row class="exam_box">
-     <Col span="24">
-       <li v-for="(item,index) in selectexam" class="list_box" @click="select_box(index)">
-         <p class="box_title">{{item.title}}-{{item.type}}</p>
-         <p class="box_time">{{item.time}}</p>
-         <p class="box_type">诊断类型:{{item.typename}}</p>
-         <p class="box_num">测试人数:{{item.num}}人</p>
-       </li>
-       <infinite-loading  @infinite="onInfinite" ref="infiniteLoading"></infinite-loading>
-     </Col>
-   </Row>
-</template>
-<script>
-  import InfiniteLoading from 'vue-infinite-loading';
-  export default {
-    components: {
-      InfiniteLoading,
-    },
-    data() {
-      return {
-        list: [],
-        now_url: this.$route.path,
-        ops: {
-          vuescroll: {},
-          scrollPanel: {},
-          rail: {
-            keepShow: true
-          },
-          bar: {
-            hoverStyle: true,
-            onlyShowBarOnScroll: false, //是否只有滚动的时候才显示滚动条
-            background: 'red',
-          }
-        },
-      };
-    },
-    created() {
-      this.init();
-    },
-    computed: {
-      selectexam() {
-        return this.$store.state.selectexam
-            },
-            },
-    methods: {
-      onInfinite() {
-        //setTimeout(() => {
-        //  const temp = [];
-        //  // let suiji=Math.ceil(Math.random()*10);
-        //  for (let i = this.list.length + 1; i <= this.list.length + 3; i++) {
-        //    temp.push(i);
-        //  }
-        //  this.list = this.list.concat(temp);
-        //  this.$refs.infiniteLoading.$emit('$InfiniteLoading:loaded');
-        //}, 300);
-      },
-
-      //点击考试获取详情
-      select_box(value) {
-        if (this.now_url == '/saindex') {
-          this.$api.FindSelectExam({})
-            .then((response) => {
-              //console.log(response.result.data);
-              this.$store.state.selectgrade = response.result.data.selectgrade
-              //获取新的学年期
-              this.$store.state.selectterm = response.result.data.term
-              //获取新的考试次数情况
-              this.$store.state.selectexam = response.result.data.exam[0].data;
-              //获取新的基础信息
-              this.$store.state.basicsdata = response.result.data.base;
-              //获取新的各校成绩排名
-              this.$store.state.zhuxhuang = response.result.data.barecharts;
-              //获取新的各项科目表现
-              this.$store.state.leida = response.result.data.leida;
-              //获取新的科目表现对比
-              this.$store.state.pie = response.result.data.pie
-              //获取新的考试类型
-              this.$store.state.examtype = response.result.data.examtype;
-              //获取新的各校历次总分统计图
-              this.$store.state.linechart = response.result.data.linechart;
-            })
-        } else if (this.now_url == '/teach') {
-          this.$api.FindClickExam({})
-            .then((response) => {
-              //获取新的学年期
-              this.$store.state.selectterm = response.result.data.term;
-              //获取新的数据对比
-              this.$store.state.selectcontrast = response.result.data.selectcontrast;
-              //获取新的考试次数情况
-              this.$store.state.selectexam = response.result.data.exam[0].data;
-              //获取新的基础信息
-              this.$store.state.basicsdata = response.result.data.base;
-              //获取各班平均分数排名
-              this.$store.state.barline = response.result.data.barecharts;
-              //获取及格率比较
-              this.$store.state.annulus = response.result.data.annulus;
-              //获取PR百分等级
-              this.$store.state.accuracyPR = response.result.data.accuracyPR;
-              //获取历次总分统计图
-              this.$store.state.linechart = response.result.data.linechart;
-            })
-        }
-      
-      },
-      init() {
-        if (this.now_url == '/saindex') {
-          this.$api.FindExam({})
-            .then((response) => {
-              //console.log(response.result.data,11111);
-              this.$store.state.selectexam = response.result.data[0].data;
-              //console.log(this.list,333333)
-            })
-        } else if (this.now_url == '/teach') {
-          this.$api.FindTeachExam({})
-            .then((response) => {
-              console.log(response.result.data, 45678999990000)
-              this.$store.state.selectexam = response.result.data[0].data;
-            })
-        } else if (this.now_url == '/total') {
-          this.$api.FindExam({})
-            .then((response) => {
-              this.$store.state.selectexam = response.result.data[0].data;
-            })
-        }
-      }
-    },
-  };
-</script>

+ 0 - 392
TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAlinechart.vue

@@ -1,392 +0,0 @@
-<template>
-  <Row class="linechart_box">
-    <Col span="24" class="select_box">
-      <div class="type_box">
-        <Select v-model="model1" style="width:180px;height:40px;" @on-change="ExamType">
-          <Option v-for="item in linechart" :value="item.value" :key="item.value" >{{ item.label }}</Option>
-        </Select>
-      </div>
-      <div class="artsscience" v-if="this.now_url =='/saindex'">
-        <li class="wenke" @click="arts_btn"   v-if="wenli_show">显示文科</li>
-        <li class="like" @click="science_btn"  v-if="wenli_show">显示理科</li>
-      </div>
-    </Col>
-    <Col span="24">
-      <div id="myChart_line" :style="{width: '100%', height: '300px'}"></div>
-    </Col>
-  </Row>
-</template>
-<script>
-  export default {
-    name: "linechart",
-    data() {
-      return {
-        cityList: [],
-        model1: 'liankao',
-        now_url: this.$route.path,
-      }
-    },
-    created() {
-      this.init();
-      this.type_init();
-          },
-    computed: {
-      //  	命令发布监听
-      //mode() {
-      //  return this.$store.state.linechart.mode
-      //},
-      linechart_standard() {
-        return this.$store.state.linechart
-          },
-      linechart() {
-        return this.$store.state.examtype
-      },
-      wenli_show() {
-        return this.$store.state.wenli_show
-      }
-    },
-    methods: {
-      drawLine(obj) {
-        //this.$store.state.linechart.mode = false;
-        let myChart = this.$echarts.init(document.getElementById('myChart_line'));
-        myChart.setOption({
-          title: {
-            text: '各校历次总分统计图',
-          },
-          legend: {
-            data: obj.obj_name,
-            top: '10%',
-          },
-          tooltip: {
-            trigger: 'axis',
-            //backgroundColor: 'rgba(0,0,0,0.7)',//背景颜色(此时为默认色)
-            borderRadius: 8,//边框圆角
-            padding: 10,    // [5, 10, 15, 20] 内边距
-            //echarts点击事件
-            // formatter: function (params,ticket,callback) {
-            //   console.log(params)
-            // },
-          },
-          grid: {
-            left: '2%',
-            right: '3%',
-            bottom: '3%',
-            containLabel: true
-          },
-          toolbox: {
-            show: true, //是否显示
-            orient: 'horizontal', //水平显示(vertical为垂直显示)
-            right: '3%', //距离右边多远
-            feature: {
-              magicType: {//动态类型切换
-                type: ['bar', 'line']
-              },
-              saveAsImage: {
-                show: true
-              }
-            },
-          },
-          xAxis: {
-            type: 'category',
-            boundaryGap: false,
-            data: obj.obj_data,
-            min: 'dataMin',
-            max: 'dataMax',
-            splitLine: {
-              show: true
-            }
-          },
-          yAxis: {
-            type: 'value',
-            min: 'dataMin',
-            max: 'dataMax',
-            splitLine: {
-              show: true
-            }
-          },
-          series: [
-            {
-              name: obj.obj_series[0].name,
-              type: 'line',
-              data: obj.obj_series[0].data,
-              itemStyle: {
-                normal: {
-                  color: '#FF3030',
-                  lineStyle: {
-                    color: '#FF3030',
-                    width: 2,
-                  }
-                }
-              },
-              areaStyle: {
-                color: {
-                  type: 'linear',
-                  x: 0,
-                  y: 0,
-                  x2: 0,
-                  y2: 1,
-                  colorStops: [{
-                    offset: 0, color:obj.start_color // 0% 处的颜色
-                  }, {
-                    offset: 1, color: obj.end_color // 100% 处的颜色
-                  }],
-                }
-              },
-            },
-            {
-              name: obj.obj_series[1].name,
-              type: 'line',
-              data: obj.obj_series[1].data,
-              itemStyle: {
-                normal: {
-                  color: "#00F5FF",
-                  lineStyle: {
-                    color: '#00F5FF',
-                    width: 2,
-                  }
-                }
-              },
-              areaStyle: {
-                color: {
-                  type: 'linear',
-                  x: 0,
-                  y: 0,
-                  x2: 0,
-                  y2: 1,
-                  colorStops: [{
-                    offset: 0, color: 'rgba(245,245,245,1)' // 0% 处的颜色
-                  }, {
-                    offset: 1, color: 'rgba(245,245,245,.5)' // 100% 处的颜色
-                  }],
-                }
-              },
-            },
-            {
-              name: obj.obj_series[2].name,
-              type: 'line',
-              data: obj.obj_series[2].data,
-              itemStyle: {
-                normal: {
-                  color: "#4169E1",
-                  lineStyle: {
-                    color: '#4169E1',
-                    width: 2,
-                  }
-                }
-              },
-              areaStyle: {
-                color: {
-                  type: 'linear',
-                  x: 0,
-                  y: 0,
-                  x2: 0,
-                  y2: 1,
-                  colorStops: [{
-                    offset: 0, color: 'rgba(245,245,245,1)' // 0% 处的颜色
-                  }, {
-                    offset: 1, color: 'rgba(245,245,245,.5)' // 100% 处的颜色
-                  }],
-                }
-              },
-            },
-            {
-              name: obj.obj_series[3].name,
-              type: 'line',
-              data: obj.obj_series[3].data,
-              itemStyle: {
-                normal: {
-                  color: "#912CEE",
-                  lineStyle: {
-                    color: '#912CEE',
-                    width: 2,
-                  }
-                }
-              },
-              areaStyle: {
-                color: {
-                  type: 'linear',
-                  x: 0,
-                  y: 0,
-                  x2: 0,
-                  y2: 1,
-                  colorStops: [{
-                    offset: 0, color: 'rgba(245,245,245,1)' // 0% 处的颜色
-                  },  {
-                    offset: 1, color: 'rgba(245,245,245,.5)' // 100% 处的颜色
-                  }],
-                }
-              },
-            },
-            {
-              name: obj.obj_series[4].name,
-              type: 'line',
-              data: obj.obj_series[4].data,
-              itemStyle: {
-                normal: {
-                  color: "#FF8247",
-                  lineStyle: {
-                    color: '#FF8247',
-                    width: 2,
-                  }
-                }
-              },
-              areaStyle: {
-                color: {
-                  type: 'linear',
-                  x: 0,
-                  y: 0,
-                  x2: 0,
-                  y2: 1,
-                  colorStops: [{
-                    offset: 0, color: 'rgba(245,245,245,1)' // 0% 处的颜色
-                  },  {
-                    offset: 1, color: 'rgba(245,245,245,.5)' // 100% 处的颜色
-                  }],
-                }
-              },
-            },
-            {
-              name: obj.obj_series[5].name,
-              type: 'line',
-              data: obj.obj_series[5].data,
-              itemStyle: {
-                normal: {
-                  color: "#6AD4B9",
-                  lineStyle: {
-                    color: '#6AD4B9',
-                    width: 2,
-                  }
-                }
-              },
-              areaStyle: {
-                color: {
-                  type: 'linear',
-                  x: 0,
-                  y: 0,
-                  x2: 0,
-                  y2: 1,
-                  colorStops: [{
-                    offset: 0, color: 'rgba(245,245,245,1)' // 0% 处的颜色
-                  },  {
-                    offset: 1, color: 'rgba(245,245,245,.5)' // 100% 处的颜色
-                  }],
-
-                }
-              },
-            }
-          ]
-        })
-        myChart.on("click", function (e) {
-          console.log(e);
-          console.log(e.seriesName)
-          console.log(e.name)
-        })
-      },
-      init() {
-        if (this.now_url == '/saindex') {
-          this.$api.FindLinechart({})
-            .then((response) => {
-              //console.log(response.result.data,11111)
-              this.$store.state.linechart = response.result.data;
-            })
-        } else if (this.now_url =='/teach') {
-          this.$api.FindTeachHistory({})
-            .then((response) => {
-              //console.log(response.result.data, 8877822228888)
-              this.$store.state.linechart = response.result.data;
-            })
-        }
-       
-      },
-      type_init() {
-        this.$api.FindExamtype({})
-          .then((response) => {
-            //console.log(response.result.data, 111)
-            //this.cityList = response.result.data;
-            this.$store.state.examtype = response.result.data;
-          })
-      },
-      //考试类型
-      ExamType(value) {
-        this.$api.FindSelectExamType({})
-          .then((response) => {
-            //console.log(response.result.data, 8889)
-            this.$store.state.selectgrade = response.result.data.selectgrade
-            //获取新的学年期
-            this.$store.state.selectterm = response.result.data.term
-            //获取新的考试次数情况
-            this.$store.state.selectexam = response.result.data.exam[0].data;
-            //获取新的基础信息
-            this.$store.state.basicsdata = response.result.data.base;
-            //获取新的各校成绩排名
-            this.$store.state.zhuxhuang = response.result.data.barecharts;
-            //获取新的各项科目表现
-            this.$store.state.leida = response.result.data.leida;
-            //获取新的科目表现对比
-            this.$store.state.pie = response.result.data.pie
-            //获取新的考试类型
-            this.$store.state.examtype = response.result.data.examtype;
-            //获取新的各校历次总分统计图
-            this.$store.state.linechart = response.result.data.linechart;
-          })
-      },
-      //显示文科 
-      arts_btn() {
-        this.$api.FindSelectArts({})
-          .then((response) => {
-           // console.log(response.result.data, 5555555);
-            this.$store.state.selectgrade = response.result.data.selectgrade
-            //获取新的学年期
-            this.$store.state.selectterm = response.result.data.term
-            //获取新的考试次数情况
-            this.$store.state.selectexam = response.result.data.exam[0].data;
-            //获取新的基础信息
-            this.$store.state.basicsdata = response.result.data.base;
-            //获取新的各校成绩排名
-            this.$store.state.zhuxhuang = response.result.data.barecharts;
-            //获取新的各项科目表现
-            this.$store.state.leida = response.result.data.leida;
-            //获取新的科目表现对比
-            this.$store.state.pie = response.result.data.pie
-            //获取新的考试类型
-            this.$store.state.examtype = response.result.data.examtype;
-            //获取新的各校历次总分统计图
-            this.$store.state.linechart = response.result.data.linechart;
-                })
-      },
-      //显示理科
-      science_btn() {
-        this.$api.FindSelectScience({})
-          .then((response) => {
-            //console.log(response.result.data,77899)
-            this.$store.state.selectgrade = response.result.data.selectgrade
-            //获取新的学年期
-            this.$store.state.selectterm = response.result.data.term
-            //获取新的考试次数情况
-            this.$store.state.selectexam = response.result.data.exam[0].data;
-            //获取新的基础信息
-            this.$store.state.basicsdata = response.result.data.base;
-            //获取新的各校成绩排名
-            this.$store.state.zhuxhuang = response.result.data.barecharts;
-            //获取新的各项科目表现
-            this.$store.state.leida = response.result.data.leida;
-            //获取新的科目表现对比
-            this.$store.state.pie = response.result.data.pie
-            //获取新的考试类型
-            this.$store.state.examtype = response.result.data.examtype;
-            //获取新的各校历次总分统计图
-            this.$store.state.linechart = response.result.data.linechart;
-          })
-
-      }
-    },
-    watch: {
-// 		监听指令
-      linechart_standard(a) {
-        if (a){
-          this.drawLine(a);
-        }
-      },
-    }
-  }
-</script>

+ 0 - 520
TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SApercent.vue

@@ -1,520 +0,0 @@
-<template>
-  <div class="percent_box">
-    <div class="title_box"><p>PR(百分等级)</p></div>
-    <!--正确率-->
-    <div class="percent_list">
-      <div class="piedata_box" v-for="(item,index) in accuracydatas">
-        <div class="pie_box">
-          <div :id="item.idname" :style="{width: '100%', height: '200px'}"></div>
-        </div>
-        <div class="pie_title">
-          <p class="title_name">高分组答对率</p>
-          <p class="title_num">{{item.high_accuracy}}%</p>
-          <p class="title_name title_two">低分组答对率</p>
-          <p class="title_num">{{item.low_accuracy}}%</p>
-        </div>
-      </div>
-    </div>
-    <!--RP百分比-->
-    <div class="percent_list">
-      <div class="piedata_box" v-for="(items,index) in prdata">
-        <div class="pie_box">
-          <div :id="items.idname" :style="{width: '100%', height: '200px'}"></div>
-        </div>
-        <div class="pie_marked">
-          <Icon :type="items.icon_type"  :class="items.icon_color"  size="48"/>
-        </div>
-      </div>
-    </div>
-  </div>
-</template>
-<script>
-  export default {
-    data() {
-      return {
-        accuracydatas: [],
-        prdata:[],
-      }
-    },
-    created() {
-      this.init();
-    },
-    mounted() {
-      this.init();
-    },
-    computed: {
-      accuracyPRdata() {
-        return this.$store.state.accuracyPR
-      },
-    },
-    methods: {
-      //本班准确率
-      //答对率
-      accuracy_one(obj) {
-        //this.$store.state.pie.mode = false;
-        let myChart = this.$echarts.init(document.getElementById('pie_one'));
-        myChart.setOption({
-          title: {
-            text: obj.titlenum + '%',
-            subtext: obj.echartstitle,
-            x: 'center',
-            y: '35%',
-            textStyle: {
-              fontWeight: 'normal',
-              color: '#0580f2',
-              fontSize: '22'
-            },
-            subtextStyle: {
-               fontSize: 11,
-               fontWeight: 'bolder',
-               color: '#333'
-             },
-          },
-          color: ['rgba(176, 212, 251, 1)'],
-          legend: {
-            show: false,
-            itemGap: 12,
-            data: ['01', '02']
-          },
-
-          series: [{
-            name: obj.data_name,
-            type: 'pie',
-            clockWise: true,
-            radius: ['70%', '100%'],
-            itemStyle: {
-              normal: {
-                label: {
-                  show: false
-                },
-                labelLine: {
-                  show: false
-                }
-              }
-            },
-            hoverAnimation: false,
-            data: [{
-              value: obj.occupy,
-              name: '01',
-              itemStyle: {
-                normal: {
-                  color: { // 完成的圆环的颜色
-                    colorStops: [{
-                      offset: 0,
-                      color: '#00cefc' // 0% 处的颜色
-                    }, {
-                      offset: 1,
-                      color: '#367bec' // 100% 处的颜色
-                    }]
-                  },
-                  label: {
-                    show: false
-                  },
-                  labelLine: {
-                    show: false
-                  }
-                }
-              }
-            }, {
-              name: '02',
-                value: obj.residue
-            }]
-          }]
-        })
-      },
-      accuracy_two(obj) {
-        //this.$store.state.pie.mode = false;
-        let myChart = this.$echarts.init(document.getElementById('pie_two'));
-        myChart.setOption({
-          title: {
-            text: obj.titlenum +'%',
-            subtext: obj.echartstitle,
-            x: 'center',
-            y: '35%',
-            textStyle: {
-              fontWeight: 'normal',
-              color: '#0580f2',
-              fontSize: '22'
-            },
-            subtextStyle: {
-              fontSize: 11,
-              fontWeight: 'bolder',
-              color: '#333'
-            },
-          },
-          color: ['rgba(176, 212, 251, 1)'],
-          legend: {
-            show: false,
-            itemGap: 12,
-            data: ['01', '02']
-          },
-
-          series: [{
-            name: obj.data_name,
-            type: 'pie',
-            clockWise: true,
-            radius: ['70%', '100%'],
-            itemStyle: {
-              normal: {
-                label: {
-                  show: false
-                },
-                labelLine: {
-                  show: false
-                }
-              }
-            },
-            hoverAnimation: false,
-            data: [{
-              value: obj.occupy,
-              name: '01',
-              itemStyle: {
-                normal: {
-                  color: { // 完成的圆环的颜色
-                    colorStops: [{
-                      offset: 0,
-                      color: '#00cefc' // 0% 处的颜色
-                    }, {
-                      offset: 1,
-                      color: '#367bec' // 100% 处的颜色
-                    }]
-                  },
-                  label: {
-                    show: false
-                  },
-                  labelLine: {
-                    show: false
-                  }
-                }
-              }
-            }, {
-              name: '02',
-              value: obj.residue
-            }]
-          }]
-        })
-      },
-      accuracy_three(obj) {
-        //this.$store.state.pie.mode = false;
-        let myChart = this.$echarts.init(document.getElementById('pie_three'));
-        myChart.setOption({
-          title: {
-            text: obj.titlenum + '%',
-            subtext: obj.echartstitle,
-            x: 'center',
-            y: '35%',
-            textStyle: {
-              fontWeight: 'normal',
-              color: '#0580f2',
-              fontSize: '22'
-            },
-            subtextStyle: {
-              fontSize: 11,
-              fontWeight: 'bolder',
-              color: '#333'
-            },
-          },
-          color: ['rgba(176, 212, 251, 1)'],
-          legend: {
-            show: false,
-            itemGap: 12,
-            data: ['01', '02']
-          },
-
-          series: [{
-            name: obj.data_name,
-            type: 'pie',
-            clockWise: true,
-            radius: ['70%', '100%'],
-            itemStyle: {
-              normal: {
-                label: {
-                  show: false
-                },
-                labelLine: {
-                  show: false
-                }
-              }
-            },
-            hoverAnimation: false,
-            data: [{
-              value: obj.occupy,
-              name: '01',
-              itemStyle: {
-                normal: {
-                  color: { // 完成的圆环的颜色
-                    colorStops: [{
-                      offset: 0,
-                      color: '#00cefc' // 0% 处的颜色
-                    }, {
-                      offset: 1,
-                      color: '#367bec' // 100% 处的颜色
-                    }]
-                  },
-                  label: {
-                    show: false
-                  },
-                  labelLine: {
-                    show: false
-                  }
-                }
-              }
-            }, {
-              name: '02',
-              value: obj.residue
-            }]
-          }]
-        })
-      },
-      //PR值
-      pr_one(obj) {
-        //this.$store.state.pie.mode = false;
-        let myChart = this.$echarts.init(document.getElementById('pr_one'));
-        myChart.setOption({
-          title: {
-            text: obj.titlenum ,
-            subtext: obj.echartstitle,
-            x: 'center',
-            y: '35%',
-            textStyle: {
-              fontWeight: 'normal',
-              color: '#0580f2',
-              fontSize: '22'
-            },
-            subtextStyle: {
-              fontSize: 11,
-              fontWeight: 'bolder',
-              color: '#333'
-            },
-          },
-          color: ['rgba(176, 212, 251, 1)'],
-          legend: {
-            show: false,
-            itemGap: 12,
-            data: ['01', '02']
-          },
-
-          series: [{
-            name: obj.data_name,
-            type: 'pie',
-            clockWise: true,
-            radius: ['70%', '100%'],
-            itemStyle: {
-              normal: {
-                label: {
-                  show: false
-                },
-                labelLine: {
-                  show: false
-                }
-              }
-            },
-            hoverAnimation: false,
-            data: [{
-              value: obj.occupy,
-              name: '01',
-              itemStyle: {
-                normal: {
-                  color: { // 完成的圆环的颜色
-                    colorStops: [{
-                      offset: 0,
-                      color: '#66CCCC' // 0% 处的颜色
-                    }, {
-                      offset: 1,
-                        color: '#00FFFF' // 100% 处的颜色
-                    }]
-                  },
-                  label: {
-                    show: false
-                  },
-                  labelLine: {
-                    show: false
-                  }
-                }
-              }
-            }, {
-              name: '02',
-              value: obj.residue
-            }]
-          }]
-        })
-      },
-      pr_two(obj) {
-        //this.$store.state.pie.mode = false;
-        let myChart = this.$echarts.init(document.getElementById('pr_two'));
-        myChart.setOption({
-          title: {
-            text: obj.titlenum ,
-            subtext: obj.echartstitle,
-            x: 'center',
-            y: '35%',
-            textStyle: {
-              fontWeight: 'normal',
-              color: '#0580f2',
-              fontSize: '22'
-            },
-            subtextStyle: {
-              fontSize: 11,
-              fontWeight: 'bolder',
-              color: '#333'
-            },
-          },
-          color: ['rgba(176, 212, 251, 1)'],
-          legend: {
-            show: false,
-            itemGap: 12,
-            data: ['01', '02']
-          },
-
-          series: [{
-            name: obj.data_name,
-            type: 'pie',
-            clockWise: true,
-            radius: ['70%', '100%'],
-            itemStyle: {
-              normal: {
-                label: {
-                  show: false
-                },
-                labelLine: {
-                  show: false
-                }
-              }
-            },
-            hoverAnimation: false,
-            data: [{
-              value: obj.occupy,
-              name: '01',
-              itemStyle: {
-                normal: {
-                  color: { // 完成的圆环的颜色
-                    colorStops: [{
-                      offset: 0,
-                      color: '#66CCCC' // 0% 处的颜色
-                    }, {
-                      offset: 1,
-                      color: '#00FFFF' // 100% 处的颜色
-                    }]
-                  },
-                  label: {
-                    show: false
-                  },
-                  labelLine: {
-                    show: false
-                  }
-                }
-              }
-            }, {
-              name: '02',
-              value: obj.residue
-            }]
-          }]
-        })
-      },
-      pr_three(obj) {
-        //this.$store.state.pie.mode = false;
-        let myChart = this.$echarts.init(document.getElementById('pr_three'));
-        myChart.setOption({
-          title: {
-            text: obj.titlenum,
-            subtext: obj.echartstitle,
-            x: 'center',
-            y: '35%',
-            textStyle: {
-              fontWeight: 'normal',
-              color: '#0580f2',
-              fontSize: '22'
-            },
-            subtextStyle: {
-              fontSize: 11,
-              fontWeight: 'bolder',
-              color: '#333'
-            },
-          },
-          color: ['rgba(176, 212, 251, 1)'],
-          legend: {
-            show: false,
-            itemGap: 12,
-            data: ['01', '02']
-          },
-
-          series: [{
-            name: obj.data_name,
-            type: 'pie',
-            clockWise: true,
-            radius: ['70%', '100%'],
-            itemStyle: {
-              normal: {
-                label: {
-                  show: false
-                },
-                labelLine: {
-                  show: false
-                }
-              }
-            },
-            hoverAnimation: false,
-            data: [{
-              value: obj.occupy,
-              name: '01',
-              itemStyle: {
-                normal: {
-                  color: { // 完成的圆环的颜色
-                    colorStops: [{
-                      offset: 0,
-                      color: '#66CCCC' // 0% 处的颜色
-                    }, {
-                      offset: 1,
-                      color: '#00FFFF' // 100% 处的颜色
-                    }]
-                  },
-                  label: {
-                    show: false
-                  },
-                  labelLine: {
-                    show: false
-                  }
-                }
-              }
-            }, {
-              name: '02',
-              value: obj.residue
-            }]
-          }]
-        })
-      },
-      init() {
-        let _this = this;
-        this.$api.FindTeachPR({})
-          .then((response) => {
-            //console.log(response.result.data,88899999)
-            _this.$store.state.accuracyPR = response.result.data;
-          })
-      }
-    },
-    watch: {
-      // 		监听指令
-      accuracyPRdata(value) {
-        if (value) {
-          console.log(value, 6666);
-          this.accuracydatas = value.accuracydata;
-          this.prdata = value.percentdata;
-          let pie_one = value.accuracydata[0];
-          let pie_two = value.accuracydata[1];
-          let pie_three = value.accuracydata[2];
-          let pr_one = value.percentdata[0];
-          let pr_two = value.percentdata[1];
-          let pr_three = value.percentdata[2];
-          this.accuracy_one(pie_one);
-          this.accuracy_two(pie_two);
-          this.accuracy_three(pie_three);
-          this.pr_one(pr_one);
-          this.pr_two(pr_two);
-          this.pr_three(pr_three);
-        }
-      },
-    }
-
-  }
-</script>
-

+ 0 - 144
TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAradargraph.vue

@@ -1,144 +0,0 @@
-<template>
-  <div class="radargraph_box">
-    <!--<div class="bargraph_title"><p>各项科目表现</p></div>-->
-    <div id="myChart_lei" :style="{width: '100%', height: '450px'}"></div>
-  </div>
-</template>
-
-<script>
-    export default {
-        name: "radargraph",
-        data(){
-          return{
-
-          }
-    },
-    created() {
-      this.init();
-        },
-      computed:{
-        //  	命令发布监听
-        //mode () {
-        //  return this.$store.state.leida.mode
-        //},
-        leida () {
-          return this.$store.state.leida
-        },
-      },
-      methods:{
-        drawLine(obj) {
-          this.$store.state.leida.mode = false;
-          let myChart_lei = this.$echarts.init(document.getElementById('myChart_lei'));
-          myChart_lei.setOption({
-            title: {
-              text: '各项科目表现'
-            },
-            tooltip: {},
-            legend: {
-              top: 25,
-              itemWidth: 16,
-              itemHeight: 16,
-              data: obj.titledata,
-              textStyle: {
-                color: '#000'
-              }
-            },
-            radar: {
-              radius: '60%',
-              splitNumber: 8,
-              axisLine: {
-                lineStyle: {
-                  color: '#000',
-                  opacity: .2
-                }
-              },
-              splitLine: {
-                lineStyle: {
-                  color: '#fff',
-                  opacity: .2
-                }
-              },
-              splitArea: {
-                areaStyle: {
-                  color: 'rgba(127,95,132,.2)',
-                  opacity: 1,
-                  shadowBlur: 45,
-                  shadowColor: 'rgba(0,0,0,.5)',
-                  shadowOffsetX: 0,
-                  shadowOffsetY: 15,
-                }
-              },
-              indicator: obj.indicator
-            },
-            series: [{
-              name: obj.dataname,
-              type: 'radar',
-              symbolSize: 0,
-              areaStyle: {
-                normal: {
-                  shadowBlur: 13,
-                  shadowColor: 'rgba(0,0,0,.2)',
-                  shadowOffsetX: 0,
-                  shadowOffsetY: 10,
-                  opacity: 1
-                }
-              },
-              data: [{
-                value: obj.data1,
-                name: obj.title_one,
-                itemStyle: {
-                  color: 'rgba(239,75,76,.5)',
-                  lineStyle: {
-                    color: 'rgba(239,75,76,.5)',
-                  },
-                      }
-              }, {
-                value:obj.data2,
-                name: obj.title_two,
-                itemStyle: {
-                  color: 'rgba(177,234,219,.8)',
-                  lineStyle: {
-                    color: 'rgba(177,234,219,.8)',
-                  },
-                }
-              }]
-            }],
-            color: ['#ef4b4c', '#b1eadb'],
-            backgroundColor: {
-              type: 'radial',
-              x: 0.4,
-              y: 0.4,
-              r: 0.35,
-              colorStops: [{
-                offset: 0,
-                color: '#D4CED5' // 0% 处的颜色
-              }, {
-                offset: .4,
-                color: '#f5f5f5' // 100% 处的颜色
-              }, {
-                offset: 1,
-                color: '#fff' // 100% 处的颜色
-              }],
-            }
-          });
-        },
-        init() {
-          this.$api.FindRadargraph({})
-              .then((response) => {
-                //console.log(response.result,456);
-               this.$store.state.leida=response.result.data
-                //this.drawLine(response.result.data)
-                //console.log(this.$store.state.zhuzhuang,33333344)
-              })
-          }
-      },
-      watch:{
-// 		监听指令
-        leida(a){
-          if(a){
-            this.drawLine(a)
-          }
-        },
-      }
-    }
-</script>

+ 0 - 592
TEAMModelOS.SmartTeach/ClientApp/components/student-analysis/SAsubjectsmanifestation.vue

@@ -1,592 +0,0 @@
-<template>
-  <div class="subjects_box">
-    <div class="subjects_title"><p>科目表现对比</p></div>
-      <li class="subjects_listbox">
-        <div class="top">
-          <p class="num">{{list_data[0].score}}</p>
-          <p class="datatitle">{{list_data[0].title}}</p>
-        </div>
-        <div class="center">
-          <div id="myChart_one" :style="{width: '100%', height: '150px'}"></div>
-        </div>
-        <div class="bottom">
-          <p class="num">{{list_data[0].belowscore}}<Icon :type="list_data[0].icon_type" :class="list_data[0].icon_color" /></p>
-          <p class="datatitle">{{list_data[0].below_title}}</p>
-        </div>
-      </li>
-    <li class="subjects_listbox">
-      <div class="top">
-        <p class="num">{{list_data[1].score}}</p>
-        <p class="datatitle">{{list_data[1].title}}</p>
-      </div>
-      <div class="center">
-        <div id="myChart_two" :style="{width: '100%', height: '150px'}"></div>
-      </div>
-      <div class="bottom">
-        <p class="num">{{list_data[1].belowscore}}<Icon :type="list_data[1].icon_type"  :class="list_data[1].icon_color" /></p>
-        <p class="datatitle">{{list_data[1].below_title}}</p>
-      </div>
-    </li>
-    <li class="subjects_listbox">
-      <div class="top">
-        <p class="num">{{list_data[2].score}}</p>
-        <p class="datatitle">{{list_data[2].title}}</p>
-      </div>
-      <div class="center">
-        <div id="myChart_three" :style="{width: '100%', height: '150px'}"></div>
-      </div>
-      <div class="bottom">
-        <p class="num">{{list_data[2].belowscore}}<Icon :type="list_data[2].icon_type" :class="list_data[2].icon_color" /></p>
-        <p class="datatitle">{{list_data[2].below_title}}</p>
-      </div>
-    </li>
-    <li class="subjects_listbox">
-      <div class="top">
-        <p class="num">{{list_data[3].score}}</p>
-        <p class="datatitle">{{list_data[3].title}}</p>
-      </div>
-      <div class="center">
-        <div id="myChart_four" :style="{width: '100%', height: '150px'}"></div>
-      </div>
-      <div class="bottom">
-        <p class="num">{{list_data[3].belowscore}}<Icon :type="list_data[3].icon_type" :class="list_data[3].icon_color" /></p>
-        <p class="datatitle">{{list_data[3].below_title}}</p>
-      </div>
-    </li>
-    <li class="subjects_listbox">
-      <div class="top">
-        <p class="num">{{list_data[4].score}}</p>
-        <p class="datatitle">{{list_data[4].title}}</p>
-      </div>
-      <div class="center">
-        <div id="myChart_five" :style="{width: '100%', height: '150px'}"></div>
-      </div>
-      <div class="bottom">
-        <p class="num">{{list_data[4].belowscore}}<Icon :type="list_data[4].icon_type" :class="list_data[4].icon_color" /></p>
-        <p class="datatitle">{{list_data[4].below_title}}</p>
-      </div>
-    </li>
-    <li class="subjects_listbox">
-      <div class="top">
-        <p class="num">{{list_data[5].score}}</p>
-        <p class="datatitle">{{list_data[5].title}}</p>
-      </div>
-      <div class="center">
-        <div id="myChart_six" :style="{width: '100%', height: '150px'}"></div>
-      </div>
-      <div class="bottom">
-        <p class="num">{{list_data[5].belowscore}}<Icon :type="list_data[5].icon_type" :class="list_data[5].icon_color" /></p>
-        <p class="datatitle">{{list_data[5].below_title}}</p>
-      </div>
-    </li>
-  </div>
-</template>
-
-<script>
-    export default {
-        name: "SubjectsManifestation",
-        data(){
-          return{
-            list_data: [],
-          }
-    },
-    created() {
-      this.init();
-
-    },
-    mounted() {
-      this.init();
-    },
-      computed:{
-        //  	命令发布监听
-        inquiredata() {
-          return this.$store.state.pie
-        },
-    },
-
-      methods:{
-          //图形一
-
-        One(obj) {
-          //this.$store.state.pie.mode = false;
-          let myChart = this.$echarts.init(document.getElementById('myChart_one'));
-          myChart.setOption({
-            grid: {
-              left: 0,
-              top: 0,
-              right: 0,
-              bottom: 0
-            },
-            color: obj.color,
-            series: [{
-              type: 'pie',
-              radius: ['80%', '97%'],
-              hoverAnimation: false,
-              label: {
-                normal: {
-                  position: 'center'
-                }
-              },
-              data: [{
-                value: obj.occupy,
-                name: '占有率',
-                label: {
-                  normal: {
-                    rich: {
-                      a: {
-                        lineHeight: 10
-                      }
-                    },
-                    formatter: '{d}%',
-                    textStyle: {
-                      fontSize: 18,
-                      fontWeight: 'bold',
-                      color: '#555',
-                      height: 25,
-                      top: 1,
-                    }
-                  }
-                }
-              }, {
-                  value: obj.surplus,
-                name: '不足',
-                label: {
-                  normal: {
-                    rich: {
-                      a: {
-                        lineHeight: 5
-                      }
-                    },
-                    formatter: '\n' + obj.subject,
-                    textStyle: {
-                      color: '#555',
-                      fontSize: 15,
-                      height: 15,
-                    }
-                  }
-                },
-                tooltip: {
-                  show: false
-                },
-                itemStyle: {
-                  normal: {
-                    color: '#ddd'
-                  },
-                  emphasis: {
-                    color: '#ddd'
-                  }
-                },
-                hoverAnimation: false
-              }]
-            }]
-          })
-        },
-          Two(obj){
-          //this.$store.state.pie.mode = false;
-          let myChart = this.$echarts.init(document.getElementById('myChart_two'));
-          myChart.setOption({
-            grid:{
-              left:0,
-              top:0,
-              right:0,
-              bottom:0
-            },
-            color: obj.color,
-            series: [{
-              type: 'pie',
-              radius: ['80%', '97%'],
-              hoverAnimation:false,
-              label: {
-                normal: {
-                  position: 'center'
-                }
-              },
-              data: [{
-                value: obj.occupy,
-                name: '占有率',
-                label: {
-                  normal: {
-                    rich:{
-                      a:{
-                        lineHeight: 10
-                      }
-                    },
-                    formatter: '{d}%',
-                    textStyle: {
-                      fontSize: 18,
-                      fontWeight:'bold',
-                      color:'#555',
-                      height:25,
-                      top:1,
-                    }
-                  }
-                }
-              }, {
-                  value: obj.surplus,
-                name: '不足',
-                label: {
-                  normal: {
-                    rich:{
-                      a:{
-                        lineHeight: 5
-                      }
-                    },
-                    formatter: '\n' + obj.subject,
-                    textStyle: {
-                      color: '#555',
-                      fontSize: 15,
-                      height:15,
-                    }
-                  }
-                },
-                tooltip: {
-                  show: false
-                },
-                itemStyle: {
-                  normal: {
-                    color: '#ddd'
-                  },
-                  emphasis: {
-                    color: '#ddd'
-                  }
-                },
-                hoverAnimation: false
-              }]
-            }]
-          })
-        },
-          Three(obj){
-          //this.$store.state.pie.mode = false;
-          let myChart = this.$echarts.init(document.getElementById('myChart_three'));
-          myChart.setOption({
-            grid:{
-              left:0,
-              top:0,
-              right:0,
-              bottom:0
-            },
-            color: obj.color,
-            series: [{
-              type: 'pie',
-              radius: ['80%', '97%'],
-              hoverAnimation:false,
-              label: {
-                normal: {
-                  position: 'center'
-                }
-              },
-              data: [{
-                value: obj.occupy,
-                name: '占有率',
-                label: {
-                  normal: {
-                    rich:{
-                      a:{
-                        lineHeight: 10
-                      }
-                    },
-                    formatter: '{d}%',
-                    textStyle: {
-                      fontSize: 18,
-                      fontWeight:'bold',
-                      color:'#555',
-                      height:25,
-                      top:1,
-                    }
-                  }
-                }
-              }, {
-                  value: obj.surplus,
-                name: '不足',
-                label: {
-                  normal: {
-                    rich:{
-                      a:{
-                        lineHeight:5
-                      }
-                    },
-                    formatter: '\n' + obj.subject,
-                    textStyle: {
-                      color: '#555',
-                      fontSize: 15,
-                      height:15,
-                    }
-                  }
-                },
-                tooltip: {
-                  show: false
-                },
-                itemStyle: {
-                  normal: {
-                    color: '#ddd'
-                  },
-                  emphasis: {
-                    color: '#ddd'
-                  }
-                },
-                hoverAnimation: false
-              }]
-            }]
-          })
-        },
-          Four(obj){
-          //this.$store.state.pie.mode = false;
-          let myChart = this.$echarts.init(document.getElementById('myChart_four'));
-          myChart.setOption({
-            grid:{
-              left:0,
-              top:0,
-              right:0,
-              bottom:0
-            },
-            color: obj.color,
-            series: [{
-              type: 'pie',
-              radius: ['80%', '97%'],
-              hoverAnimation:false,
-              label: {
-                normal: {
-                  position: 'center'
-                }
-              },
-              data: [{
-                value: obj.occupy,
-                name: '占有率',
-                label: {
-                  normal: {
-                    rich:{
-                      a:{
-                        lineHeight: 10
-                      }
-                    },
-                    formatter: '{d}%',
-                    textStyle: {
-                      fontSize: 18,
-                      fontWeight:'bold',
-                      color:'#555',
-                      height:25,
-                      top:1,
-                    }
-                  }
-                }
-              }, {
-                  value: obj.surplus,
-                name: '不足',
-                label: {
-                  normal: {
-                    rich:{
-                      a:{
-                        lineHeight:5
-                      }
-                    },
-                    formatter: '\n' + obj.subject,
-                    textStyle: {
-                      color: '#555',
-                      fontSize: 15,
-                      height:15,
-                    }
-                  }
-                },
-                tooltip: {
-                  show: false
-                },
-                itemStyle: {
-                  normal: {
-                    color: '#ddd'
-                  },
-                  emphasis: {
-                    color: '#ddd'
-                  }
-                },
-                hoverAnimation: false
-              }]
-            }]
-          })
-        },
-          Five(obj){
-          //this.$store.state.pie.mode = false;
-          let myChart = this.$echarts.init(document.getElementById('myChart_five'));
-          myChart.setOption({
-            grid:{
-              left:0,
-              top:0,
-              right:0,
-              bottom:0
-            },
-            color:obj.color,
-            series: [{
-              type: 'pie',
-              radius: ['80%', '97%'],
-              hoverAnimation:false,
-              label: {
-                normal: {
-                  position: 'center'
-                }
-              },
-              data: [{
-                value: obj.occupy,
-                name: '占有率',
-                label: {
-                  normal: {
-                    rich:{
-                      a:{
-                        lineHeight: 10
-                      }
-                    },
-                    formatter: '{d}%',
-                    textStyle: {
-                      fontSize: 18,
-                      fontWeight:'bold',
-                      color:'#555',
-                      height:25,
-                      top:1,
-                    }
-                  }
-                }
-              }, {
-                  value: obj.surplus,
-                name: '不足',
-                label: {
-                  normal: {
-                    rich:{
-                      a:{
-                        lineHeight: 5
-                      }
-                    },
-                    formatter: '\n'+obj.subject ,
-                    textStyle: {
-                      color: '#555',
-                      fontSize: 15,
-                      height:15
-                    }
-                  }
-                },
-                tooltip: {
-                  show: false
-                },
-                itemStyle: {
-                  normal: {
-                    color: '#ddd'
-                  },
-                  emphasis: {
-                    color: '#ddd'
-                  }
-                },
-                hoverAnimation: false
-              }]
-            }]
-          })
-        },
-          Six(obj){
-          //this.$store.state.pie.mode = false;
-          let myChart = this.$echarts.init(document.getElementById('myChart_six'));
-          myChart.setOption({
-            grid:{
-              left:0,
-              top:0,
-              right:0,
-              bottom:0
-            },
-            color: obj.color,
-            series: [{
-              type: 'pie',
-              radius: ['80%', '97%'],
-              hoverAnimation:false,
-              label: {
-                normal: {
-                  position: 'center'
-                }
-              },
-              data: [{
-                value: obj.occupy,
-                name: '占有率',
-                label: {
-                  normal: {
-                    rich:{
-                      a:{
-                        lineHeight: 10
-                      }
-                    },
-                    formatter: '{d}%',
-                    textStyle: {
-                      fontSize: 18,
-                      fontWeight:'bold',
-                      color:'#555',
-                      height:25,
-                      top:1,
-                    }
-                  }
-                }
-              }, {
-                  value: obj.surplus,
-                name: '不足',
-                label: {
-                  normal: {
-                    rich:{
-                      a:{
-                        lineHeight: 5
-                      }
-                    },
-                    formatter: '\n' + obj.subject,
-                    textStyle: {
-                      color: '#555',
-                      fontSize: 15,
-                      height:15,
-                    }
-                  }
-                },
-                tooltip: {
-                  show: false
-                },
-                itemStyle: {
-                  normal: {
-                    color: '#ddd'
-                  },
-                  emphasis: {
-                    color: '#ddd'
-                  }
-                },
-                hoverAnimation: false
-              }]
-            }]
-          })
-        },
-        init() {
-          let _this = this;
-          this.$api.FindSubjectsManifestation({})
-            .then((response) => {
-              //console.log(response.result.data, 8888888);
-              //this.One(response.result.data);
-              _this.$store.state.pie = response.result.data;
-              //_this.Two(response.result.data[1]);
-              //_this.Three(response.result.data[2]);
-              //_this.Four(response.result.data[3]);
-              //_this.Five(response.result.data[4]);
-              //_this.Six(response.result.data[5]);
-
-            })
-        }
-          },
-      watch:{
-// 		监听指令
-        inquiredata(value){
-          if(value){
-            this.list_data = value;
-            let dataone= value[0];
-            let datatwo = value[1];
-            let datathree = value[2];
-            let datafour = value[3];
-            let datafive = value[4];
-            let datasix = value[5];
-            this.One(dataone);
-            this.Two(datatwo);
-            this.Three(datathree);
-            this.Four(datafour);
-            this.Five(datafive);
-            this.Six(datasix);
-          }
-        },
-      }
-    }
-</script>
-

+ 0 - 58
TEAMModelOS.SmartTeach/ClientApp/components/syllabus/SelectModule.vue

@@ -1,58 +0,0 @@
-<template>
-  <div class="center">
-    <div class="main-btn centerCol" v-for="item in moduleList" @click="handleRouter(item.link)">
-      <Icon type="ios-podium" size="80" />
-      <h4 class="color1">{{item.name}}</h4>
-    </div>
-  </div>
-</template>
-
-<script>
-  export default {
-    name: "selectModule",
-    props:["moduleList"],
-    methods: {
-      handleRouter(path) {
-        this.$router.replace(path)
-      },
-    }
-  }
-</script>
-
-<style scoped>
-  .main-btn {
-    height: 210px;
-    width: 210px;
-    cursor: pointer;
-    font-size: 16px;
-    font-weight: 200;
-    background-color: rgba(179,179,179,.15);
-    border: 0;
-    margin: 0 10px;
-    color: #ccc;
-  }
-
-  .main-btn:hover {
-    background: rgba(179,179,179,.42);
-    color: #fff !important;
-  }
-
-  .center {
-    display: flex;
-    flex-direction: row;
-    justify-content: center;
-    align-items: center;
-  }
-
-  .centerCol {
-    display: flex;
-    flex-direction: column;
-    justify-content: center;
-    align-items: center;
-  }
-
-  .color1 {
-    margin-top: 20px;
-    font-weight: 200;
-  }
-</style>

+ 0 - 276
TEAMModelOS.SmartTeach/ClientApp/components/syllabus/SelectSchool.vue

@@ -1,276 +0,0 @@
-<template>
-  <div style="width:50%">
-    <div class="selection-component row">
-      <label class="selection-label">{{$t('formConfigP.school')+':'}}</label>
-      <Row style="width:90%;">
-
-        <Col :xs="18" :sm="6" :md="5" :lg="4">
-        <Select v-model="schoolInfo.country.countryId" class="my-select" :placeholder="$t('formConfigP.country')" @on-change="getSelctValue('country',$event)" :disabled="$i18n.locale.indexOf('en') != -1">
-          <Option v-for="item in countryData" :value="item.countryId" :key="item.sysAddID">{{ item.countryName }}</Option>
-        </Select>
-        </Col>
-        <Col :xs="18" :sm="6" :md="5" :lg="4">
-        <Select v-model="schoolInfo.province.provinceId" v-show="schoolInfo.country.countryId != 'TW'" class="my-select" :placeholder="$t('formConfigP.province')" :disabled="checkCountry == 2 || $i18n.locale.indexOf('en') != -1" clearable ref="province" @on-change="getSelctValue('province',$event)">
-          <Option v-for="item in provinceData" :value="item.provinceId" :key="item.sysAddID">{{ item.provinceName }}</Option>
-        </Select>
-        </Col>
-        <Col :xs="18" :sm="6" :md="5" :lg="4">
-        <Select v-model="schoolInfo.city.cityId" class="my-select" :placeholder="$t('formConfigP.city')" :disabled="checkCountry == 2 || $i18n.locale.indexOf('en') != -1" clearable ref="city" @on-change="getSelctValue('city',$event)">
-          <Option v-for="item in cityData" :value="item.cityId" :key="item.sysAddID">{{ item.cityName }}</Option>
-        </Select>
-        </Col>
-        <Col :xs="18" :sm="6" :md="5" :lg="12">
-        <Select v-model="schoolInfo.school.name" class="my-select" :placeholder="$t('formConfigP.school')" :disabled="checkCountry == 2 || $i18n.locale.indexOf('en') != -1" clearable ref="school" @on-change="getSelctValue('school',$event)" filterable :loading="loading" not-found-text="">
-          <Option v-for="item in schoolData" :value="item.name" :key="item.sysAddID">{{ item.name }}</Option>
-        </Select>
-        </Col>
-      </Row>
-    </div>
-    <div class="selection-component ">
-      <label class="selection-label"></label>
-      <Row style="width:90%; margin-top:20px;" v-if="checkCountry == 2 || $i18n.locale.indexOf('en') != -1">
-        <Col :xs="24" :sm="6" :md="5" :lg="6">
-        <Input v-model="schoolInfoInput.country" class="my-select" placeholder="country" style="width: 95%;" />
-        </Col>
-        <Col :xs="24" :sm="6" :md="5" :lg="6">
-
-        <Input v-model="schoolInfoInput.city" class="my-select" placeholder="city" style="width: 95%" />
-        </Col>
-        <Col :xs="24" :sm="6" :md="5" :lg="12">
-        <Input v-model="schoolInfoInput.school" class="my-select" placeholder="school" style="width: 90%;" @on-change="getInputValue" />
-        </Col>
-      </Row>
-    </div>
-
-
-  </div>
-</template>
-
-<script>
-  export default {
-    props: {
-
-    },
-    data() {
-      return {
-        model: "",
-        zhCnData: [],
-        zhTwData: [],
-        enUsData: [],
-        schoolData: [],
-        schoolInfoInput: {
-          country: '',
-          province: '',
-          city: '',
-          school: '',
-        },
-        schoolInfo: {
-          country: {},
-          province: {},
-          city: {},
-          school: {},
-        },
-        loading: false
-      };
-    },
-    methods: {
-      getValue() {
-        this.$emit("get-value", [
-          this.model,
-          this.selections.field
-        ]);
-      },
-      getCountryInfo(data) {
-        let result = [];
-        let currentCountry = '';
-        for (let i = 0; i < data.length; i++) {
-          if (currentCountry != data[i].countryName && data[i].countryName != null && data[i].provinceName == null && data[i].cityName == null) {
-            currentCountry = data[i].countryName;
-            result.push(data[i]);
-          }
-
-        }
-        return result;
-      },
-      getProvinceInfo(data, country) {
-        let result = [];
-        let currentProvince = '';
-        for (let i = 0; i < data.length; i++) {
-          if (currentProvince != data[i].provinceName && data[i].provinceName != null && data[i].countryId == country.countryId) {
-            currentProvince = data[i].provinceName;
-            result.push(data[i]);
-          } 
-        }
-        return result;
-      },
-      getCityInfo(data, province) {
-        let result = [];
-        let currentCity = '';
-        if (province != undefined) {
-          for (let i = 0; i < data.length; i++) {
-            if (currentCity != data[i].cityName && data[i].cityName != null && data[i].provinceId == province.provinceId) {
-              currentCity = data[i].cityName;
-              result.push(data[i]);
-            }
-          }
-        }
-
-        return result;
-      },
-      getSchoolInfo(CountryId, ProvinceId, CityId) {
-        let params = {
-          CountryId: CountryId,
-          ProvinceId: ProvinceId,
-          CityId: CityId
-        }
-        this.loading = true;
-
-        //发送请求获取学校列表
-        this.$api.getSchoolList(params).then(
-          (res) => {
-            if (res.error == null) {
-              if (res.result.data.length == 0 || !res.result.data) {
-                alert("暂未收录此地区学校,请手动输入!");
-              } else {
-                this.schoolData = res.result.data;
-                //this.schoolInfo.school = res.result.data[0];
-              }
-
-            } else {
-              alert("服务器错误!");
-            }
-            this.loading = false;
-          },
-          (err) => {
-            this.loading = false;
-          }
-        )
-      },
-      getSelctValue(flag, value) {
-        if (flag == 'country') {
-          this.$refs.school.clearSingleSelect();
-          this.$refs.city.clearSingleSelect();
-          this.$refs.province.clearSingleSelect();
-          this.schoolInfo.province = {};
-          this.schoolInfo.city = {};
-          this.schoolInfo.school = {};
-        } else if (flag == 'province') {
-          this.$refs.school.clearSingleSelect();
-          this.$refs.city.clearSingleSelect();
-          this.schoolInfo.city = {};
-          this.schoolInfo.school = {};
-        } else if (flag == 'city') {
-          this.$refs.school.clearSingleSelect();
-          this.schoolInfo.school = {};
-          this.getSchoolInfo(this.schoolInfo.country.countryId, this.schoolInfo.province.provinceId, this.schoolInfo.city.cityId);
-        } else if (flag == 'school') {
-          this.schoolInfo['checkCountry'] = this.checkCountry;
-          this.$emit("school-info", this.schoolInfo);
-          console.log(this.schoolInfo);
-        }
-      },
-      getInputValue() {
-        this.schoolInfoInput['checkCountry'] = this.checkCountry;
-        this.$emit("school-info", this.schoolInfoInput);
-        console.log(this.schoolInfo);
-      }
-    },
-    computed: {
-      countryData() {
-        let countryInfo = [];
-        if (this.$i18n.locale == 'zh-CN') {
-          countryInfo = this.getCountryInfo(this.zhCnData);
-        } else if (this.$i18n.locale == 'zh-TW') {
-          countryInfo = this.getCountryInfo(this.zhTwData);
-        } else if (this.$i18n.locale.indexOf('en') != -1) {
-          countryInfo = this.getCountryInfo(this.enUsData);
-        }
-        return countryInfo;
-
-      },
-      provinceData() {
-        let provinceInfo = [];
-        if (this.$i18n.locale == 'zh-CN') {
-          provinceInfo = this.getProvinceInfo(this.zhCnData, this.schoolInfo.country);
-        } else if (this.$i18n.locale == 'zh-TW') {
-          provinceInfo = this.getProvinceInfo(this.zhTwData, this.schoolInfo.country);
-        } else if (this.$i18n.locale.indexOf('en') != -1) {
-          provinceInfo = this.getProvinceInfo(this.enUsData, this.schoolInfo.country);
-        }
-        return provinceInfo;
-      },
-      cityData() {
-        let cityInfo = [];
-        if (this.$i18n.locale == 'zh-CN') {
-          cityInfo = this.getCityInfo(this.zhCnData, this.schoolInfo.province);
-        } else if (this.$i18n.locale == 'zh-TW') {
-          cityInfo = this.getCityInfo(this.zhTwData, this.schoolInfo.province);
-        } else if (this.$i18n.locale.indexOf('en') != -1) {
-          cityInfo = this.getCityInfo(this.enUsData, this.schoolInfo.province);
-        }
-        return cityInfo;
-      },
-      checkCountry() {
-        if (this.schoolInfo.country.countryId == undefined) {
-          return 0;
-        }
-        if (this.schoolInfo.country.countryId == 'CN' || this.schoolInfo.country.countryId == 'TW') {
-          return 1;
-        } else {
-          return 2;
-        }
-      }
-    },
-    mounted() {
-      let area = require("@/static/area.json");
-      for (let i = 0; i < area.length; i++) {
-        if (area[i].lang == 'en-us') {
-          this.enUsData.push(area[i]);
-        } else if (area[i].lang == 'zh-tw') {
-          this.zhTwData.push(area[i]);
-        } else if (area[i].lang == 'zh-cn') {
-          this.zhCnData.push(area[i]);
-        }
-      };
-
-    }
-  };
-</script>
-
-<style scoped>
-  .selection-component {
-    width: 100%;
-    position: relative;
-    display: flex;
-    flex-direction: row;
-    align-items: center;
-  }
-
-  .ivu-select-selection {
-    width: 150px !important;
-  }
-
-  .selection-label {
-    width: 120px;
-    font-size: 15px;
-    color: #67B6E5;
-  }
-
-  .my-select {
-    width: 90%;
-  }
-
-    .my-select > > > .ivu-select-selection {
-      border: 1px solid #67B6E5;
-    }
-
-    .my-select > > > .ivu-select-selected-value {
-      color: #67B6E5;
-      font-size: 15px;
-    }
-
-    .my-select > > > .ivu-select-input {
-      color: #67B6E5;
-      font-size: 13px;
-    }
-</style>

+ 0 - 592
TEAMModelOS.SmartTeach/ClientApp/components/syllabus/Tree.vue

@@ -1,592 +0,0 @@
-<template>
-  <div class="tree-main">
-
-    <Tree :data="treeData" :render="renderContent" ref="tree"></Tree>
-    <Modal v-model="modalFlag" title="添加新节点" ok-text="确认" cancel-text="取消" @on-ok="handleAddNode">
-      <Row class="modelRow">
-        <span>
-          当前章节:
-          <span style="margin-left:10px;">{{currentNode.title}}</span>
-        </span>
-      </Row>
-      <Row class="modelRow">
-        <span>章节类型:</span>
-        <RadioGroup v-model="nodeType" type="button">
-          <Radio label="章节"></Radio>
-          <Radio label="课件"></Radio>
-        </RadioGroup>
-      </Row>
-      <Row class="modelRow">
-        <span>章节名称:</span>
-        <Input v-model="inputValue" placeholder="输入新节点名称" style="width: 100%" />
-      </Row>
-    </Modal>
-    <Modal v-model="editFlag" title="修改节点" ok-text="确认" cancel-text="取消" @on-ok="handleUpdateNode">
-      <Row class="modelRow">
-        <span>
-          当前名称:
-          <span style="margin-left:10px;">{{currentNode.title}}</span>
-        </span>
-      </Row>
-      <Row class="modelRow">
-        <span>章节类型:</span>
-        <RadioGroup v-model="nodeType" type="button">
-          <Radio label="章节"></Radio>
-          <Radio label="课件"></Radio>
-        </RadioGroup>
-      </Row>
-      <Row class="modelRow">
-        <span>章节名称:</span>
-        <Input v-model="editValue" placeholder="输入节点新名称" style="width: 100%" />
-      </Row>
-    </Modal>
-  </div>
-</template>
-<script>
-  export default {
-    props:["treeDatas","volumeCode"],
-    data() {
-      return {
-        bookSelect: "语文人教课标版四年级上册",
-        periodList: [],
-        subjectList: [],
-        versionList: [],
-        gradeList: [],
-        slideGradeList: [],
-        treeData: [],
-        inputValue: "",
-        editValue: "",
-        modalFlag: false,
-        editFlag: false,
-        addBookFlag: false,
-        nodeType: "章节",
-        currentNode: "",
-        currentLiNode: "",
-        buttonProps: {
-          type: "default",
-          size: "small"
-        },
-        periodSelect: "",
-        subjectSelect: "",
-        versionSelect: "",
-        gradeSelect: "",
-        periodName: "",
-        subjectName: "",
-        versionName: "",
-        gradeName: "",
-      };
-    },
-    created() {
-      this.treeData = this.treeDatas;
-    },
-    methods: {
-      renderContent(h, { root, node, data }) {
-        let that = this;
-        return h(
-          "span",
-          {
-            style: {
-              display: "inline-block",
-              width: "95%",
-              textAlign: "left",
-              paddingLeft: "2%",
-              cursor: "pointer",
-              position: "relative",
-              boxSizing: "border-box"
-            },
-            domProps: {
-              className: "singleClass"
-            },
-            on: {
-              click: () => {
-                this.titleClick(root, node, data, event);
-              },
-              mouseover: e => {
-                e.stopPropagation();
-                this.handleLiOver(event);
-              },
-              mouseleave: e => {
-                e.stopPropagation();
-                this.handleLiLeave(node, event);
-              }
-            }
-          },
-          [
-            h("span", [
-              h("Icon", {
-                props: {
-                  type:
-                    data.children && data.children.length > 0
-                      ? "md-albums"
-                      : "ios-paper-outline"
-                },
-                style: {
-                  marginRight: "5px",
-                  display: "none"
-                }
-              }),
-              h("span", data.title)
-            ]),
-            h(
-              "span",
-              {
-                style: {
-                  float: "right",
-                  top: "6px",
-                  display: "none"
-                },
-                on: {
-                  mouseleave: e => {
-                    e.stopPropagation();
-                    //this.hideTools(event);
-                  },
-                },
-                domProps: {
-                  className: "tools"
-                }
-              },
-              [
-                h(
-                  "Icon",
-                  {
-                    props: {
-                      type: "md-add",
-                      title: "添加"
-                    },
-                    on: {
-                      click: e => {
-                        e.stopPropagation();
-                        this.appendClick(data);
-                      }
-                    }
-                  },
-                ),
-                h(
-                  "Icon",
-                  {
-                    props: {
-                      type: "md-remove"
-                    },
-                    on: {
-                      click: e => {
-                        e.stopPropagation();
-                        this.remove(root, node, data);
-                      }
-                    }
-                  },
-                ),
-                h(
-                  "Icon",
-                  {
-                    props: {
-                      type: "md-arrow-round-up"
-                    },
-                    on: {
-                      click: e => {
-                        e.stopPropagation();
-                        this.moveUp(root, node, data);
-                      }
-                    }
-                  },
-                ),
-                h(
-                  "Icon",
-                  {
-                    props: {
-                      type: "md-arrow-round-down"
-                    },
-                    on: {
-                      click: e => {
-                        e.stopPropagation();
-                        this.moveDown(root, node, data);
-                      }
-                    }
-                  },
-                ),
-                h(
-                  "Icon",
-                  {
-                    props: {
-                      type: "md-create"
-                    },
-                    on: {
-                      click: e => {
-                        e.stopPropagation();
-                        this.editClick(node, data);
-                      }
-                    }
-                  },
-                )
-              ]
-            )
-          ]
-        );
-      },
-      // 添加节点
-      append(data, value) {
-        const children = data.children || [];
-        let newChild = {
-          title: value,
-          order: children.length,
-          pid: data.rowKey,
-          children: [],
-          expand: true,
-          type: data.type,
-          volumeCode: this.volumeCode,
-          remark: "备注",
-        }
-        children.push(newChild);
-        this.$set(data, "children", children);
-        this.$api.SaveOrUpdateSingleNode(newChild).then(res => {
-          this.$Message.success("添加成功");
-          this.$api.FindSyllabusByVolumeCode({ VolumeCode: this.volumeCode, Status: 1 }).then(res => {
-              this.treeData = res.result.data;
-            })
-          })
-      },
-      // 删除节点
-      remove(root, node, data) {
-        const parentKey = root.find(el => el === node).parent;
-        const parent = root.find(el => el.nodeKey === parentKey).node;
-        const index = parent.children.indexOf(data);
-        parent.children.splice(index, 1);
-        data.status = 0;
-        this.$api.SaveOrUpdateSingleNode(data).then(res => {
-          this.$Message.success("删除成功");
-        })
-      },
-      // 点击编辑
-      editClick(node, data) {
-        this.currentNode = data;
-        this.editFlag = true;
-        this.editValue = "";
-      },
-      //添加节点 弹出输入框
-      appendClick(data) {
-        this.currentNode = data;
-        this.modalFlag = true;
-        this.inputValue = "";
-      },
-      // 确认添加节点
-      handleAddNode() {
-        if (this.inputValue != "") {
-          this.append(this.currentNode, this.inputValue);
-        } else {
-          this.modalFlag = false;
-        }
-      },
-      // 修改节点
-      handleUpdateNode() {
-        if (this.editValue != "") {
-          this.$api.SaveOrUpdateSingleNode(this.currentNode).then(res => {
-              this.$Message.success("修改成功");
-              this.currentNode.title = this.editValue;
-            })
-        } else {
-          this.editFlag = false;
-        }
-      },
-      // 标题点击收缩展开
-      titleClick(root, node, data, event) {
-        data.expand = !data.expand;
-      },
-
-      // 根目录点击事件
-      rootClick(data) {
-        data.expand = !data.expand;
-      },
-      // 上移章节操作
-      moveUp(root, node, data) {
-        const parentKey = root.find(el => el === node).parent;
-        const parent = root.find(el => el.nodeKey === parentKey).node;
-        const index = parent.children.indexOf(data);
-        const nodeIndex = root.indexOf(node);
-        let currentTitle = data.title;
-        let currentExpand = data.expand;
-        let currentChildren = data.children || [];
-        let preChildren = (parent.children[index - 1]) ? (parent.children[index - 1]).children : [];
-        if (index != 0) {
-          data.title = parent.children[index - 1].title;
-          parent.children[index - 1].title = currentTitle;
-          parent.children[index - 1].expand = currentExpand;
-          data.children = preChildren;
-          data.expand = parent.children[index - 1].expand;
-          parent.children[index - 1].children = currentChildren;
-        }
-      },
-      // 下移章节操作
-      moveDown(root, node, data) {
-        const parentKey = root.find(el => el === node).parent;
-        const parent = root.find(el => el.nodeKey === parentKey).node;
-        const index = parent.children.indexOf(data);
-        let currentTitle = data.title;
-        let currentChildren = data.children || [];
-        let nextChildren = (parent.children[index + 1]) ? (parent.children[index + 1]).children : [];
-        if (index != parent.children.length - 1) {
-          data.title = parent.children[index + 1].title;
-          data.children = nextChildren;
-          parent.children[index + 1].title = currentTitle;
-          parent.children[index + 1].children = currentChildren;
-        }
-      },
-      // 更多操作
-      handleTools(root, node, data, event) {
-        let toolsDom = event.currentTarget.nextElementSibling;
-        const parentKey = root.find(el => el === node).parent;
-        const parent = root.find(el => el.nodeKey === parentKey).node;
-        const index = parent.children.indexOf(data);
-        let list = document.getElementsByClassName("tools");
-        let cFlag = toolsDom.style.display;
-        for (let i = 0; i < list.length; i++) {
-          list[i].style.display = "none";
-        }
-        // 判断TOOL显示与隐藏
-        if (cFlag == "none") {
-          toolsDom.style.display = "inline-flex";
-          toolsDom.classList.add("animated");
-          toolsDom.classList.add("slideInDown");
-        } else {
-          toolsDom.style.display = "none";
-        }
-      },
-      // 鼠标从工具条移开的时候隐藏
-      hideTools(event) {
-        event.currentTarget.style.display = "none";
-      },
-      handleLiOver(event) {
-        event.currentTarget.lastElementChild.style.display = "block";
-        event.currentTarget.style.backgroundColor = "rgba(255, 255, 255, 0.68)";
-        event.currentTarget.style.border = "1px solid #000";
-      },
-      handleLiLeave(node, event) {
-        event.currentTarget.lastElementChild.style.display = "none";
-        if (this.currentLiNode.nodeKey != node.nodeKey) {
-          event.currentTarget.style.backgroundColor = "transparent";
-          event.currentTarget.style.border = "0";
-        }
-      },
-      // 添加教材
-      handleAddBook() {
-        this.$api.FindPeriods({}).then(res => {
-          this.periodList = res.result.data;
-          this.periodSelect = this.periodList[0].rowKey;
-          this.periodName = this.periodList[0].name;
-          let Pcode = {
-            value: this.periodList[0].rowKey,
-            label: this.periodList[0].name
-          }
-          this.periodChange(Pcode);
-        })
-        this.addBookFlag = true;
-      },
-
-      // 学段选择变化
-      periodChange(val) {
-        this.$api.FindSubjects({ Pcode: val.value }).then(res => {
-          if (res.result.data.length > 0) {
-            this.subjectList = res.result.data;
-            this.subjectSelect = this.subjectList[0].rowKey;
-            this.periodName = val.label;
-            let Pcode = {
-              value: this.subjectList[0].rowKey,
-              label: this.subjectList[0].name
-            }
-            this.subjectChange(Pcode);
-          }
-        })
-      },
-      // 学科选择变化
-      subjectChange(val) {
-        this.$api.FindEditions({ Pscode: val.value }).then(res => {
-          if (res.result.data.length > 0) {
-            this.versionList = res.result.data;
-            this.versionSelect = this.versionList[0].rowKey;
-            this.subjectName = val.label;
-            let Pcode = {
-              value: this.versionList[0].rowKey,
-              label: this.versionList[0].name
-            }
-            this.versionChange(Pcode);
-          }
-        })
-      },
-      // 版本选择变化
-      versionChange(val) {
-        this.$api.FindTerms({ Psecode: val.value }).then(res => {
-          this.gradeList = res.result.data;
-          this.gradeSelect = this.gradeList.length > 0 ? this.gradeList[0].rowKey : "无";
-          this.versionName = val.label;
-          let Pcode = {
-            value: this.gradeList.length > 0 ? this.gradeList[0].rowKey : "",
-            label: this.gradeList.length > 0 ? this.gradeList[0].name : ""
-          }
-          if (this.gradeList.length > 0) {
-            this.gradeChange(Pcode);
-          }
-        })
-      },
-      //册别选择变化
-      gradeChange(val) {
-        this.gradeName = val.label ? val.label : "";
-      },
-      // 确认添加教材返回教材名称
-      handleAddConfirm() {
-        let periodRowKeys = [];
-        let perioArr = this.periodList;
-        for (let item of perioArr) {
-          periodRowKeys.push(item.rowKey);
-        }
-        let bookName = this.periodName + this.subjectName + this.versionName + this.gradeName;
-        this.treeData[0].title = bookName;
-      }
-    },
-  };
-</script>
-<style scoped>
-  .tree-main {
-    margin-left: 5%;
-    width: 90%;
-  }
-
-    .tree-main /deep/ .ivu-icon-ios-paper-outline {
-    font-size: 16px;
-  }
-
-    .tree-main /deep/ .ivu-select {
-    width: 80% !important;
-  }
-
-  .slideSelect .ivu-select-selection {
-    height: 40px;
-    background: #d8d8d870;
-    border: 1px solid #808080;
-  }
-
-  .slideSelect, .slideSelect .ivu-icon {
-    color: rgba(255,255,255,.8);
-  }
-
-    .tree-main /deep/ .ivu-select-single .ivu-select-selection .ivu-select-selected-value {
-    height: 40px;
-    line-height: 40px;
-    font-size: 14px;
-  }
-  /* .ivu-tree ul li {
-    margin: 18px 0;
-  } */
-  .tree-main /deep/ .ivu-tree ul {
-    font-size: 14px;
-  }
-
-  .tree-main /deep/ .ivu-tree ul li {
-    margin:8px 0;
-  }
-
-  .ivu-tree .ivu-tree-arrow {
-    width: 2%;
-  }
-
-  .ivu-input-wrapper {
-    width: 80% !important;
-  }
-
-  .modelRow {
-    margin: 20px;
-    font-size: 14px;
-  }
-
-  .tree-main /deep/ .tools {
-    position: absolute;
-    right: 60px;
-    bottom:5px;
-    display: inline-flex;
-    z-index: 999;
-  }
-
-  .tree-main /deep/ .tools .ivu-icon {
-    margin-right: 15px;
-    font-size: 16px;
-    font-weight: 200;
-    color: #808080;
-  }
-
-  .btn_more {
-    background: #fff;
-    border: 1px solid rgb(248,248,248);
-  }
-
-  .animated {
-    animation-duration: 0.5s;
-  }
-
-  @-webkit-keyframes slideInDown {
-    from {
-      -webkit-transform: translate3d(0,-10%, 0);
-      transform: translate3d(0, -10%, 0) !important;
-      visibility: visible;
-    }
-
-    to {
-      -webkit-transform: translate3d(0, 0%, 0);
-      transform: translate3d(0, 0%, 0);
-    }
-  }
-
-  @keyframes slideInDown {
-    from {
-      -webkit-transform: translate3d(0, -10%, 0);
-      transform: translate3d(0, -10%, 0) !important;
-      visibility: visible;
-    }
-
-    to {
-      -webkit-transform: translate3d(0, 0%, 0);
-      transform: translate3d(0, 0%, 0);
-    }
-  }
-
-  .slideInDown {
-    -webkit-animation-name: slideInDown;
-    animation-name: slideInDown;
-  }
-
-  .tree-main /deep/ .singleClass {
-    display: inline-flex !important;
-    flex-direction: row;
-    align-items: center;
-    height: 40px;
-  }
-
-  .btn-addClass {
-    width: 16%;
-    padding: 10px 6px !important;
-  }
-
-  .ivu-tabs-nav-scroll {
-    display: flex;
-    justify-content: center;
-  }
-
-  .addBookArea .ivu-select {
-    width: 80% !important;
-    margin-left: 30px;
-  }
-
-  .addBookArea .ivu-select-single .ivu-select-selection {
-    height: 32px;
-  }
-
-  .addBookArea .ivu-row {
-    margin: 30px 20px;
-  }
-
-  .addBookArea .ivu-select-selected-value {
-    height: 32px !important;
-    line-height: 32px !important;
-    font-size: 12px !important;
-  }
-
-  .ivu-tabs {
-    overflow: unset;
-  }
-</style>

+ 0 - 16
TEAMModelOS.SmartTeach/ClientApp/view/404.vue

@@ -1,16 +0,0 @@
-<template>
-    <div>
-       <h1>404</h1>
-    </div>
-</template>
-
-<script>
-export default {
-  data () {
-    return {}
-  }
-}
-</script>
-
-<style>
-</style>

+ 0 - 33
TEAMModelOS.SmartTeach/ClientApp/view/login.vue

@@ -1,33 +0,0 @@
-<template>
-    <div>
-       <h1>LOGIN</h1>
-       <h2>{{ $t('test')}}</h2>
-        <Card>
-          <p slot="title">RESTful測試</p>
-          <Button @click="ajax_TEST">測試按鈕8</Button>
-          <pre>{{ testStr }}</pre>
-        </Card>
-    </div>
-</template>
-
-<script>
-export default {
-  data () {
-    return {
-      testStr: 'RESTful',
-      testStr2: 'Json RPC',
-    }
-  },
-  methods:{
-    ajax_TEST: function(){
-      this.$http.get('/api/values')
-      .then(response => {
-        this.testStr = response.data
-      }).catch((error) => console.log(error))
-    }
-  }
-}
-</script>
-
-<style>
-</style>

+ 0 - 16
TEAMModelOS.SmartTeach/ClientApp/view/serverside/login.vue

@@ -1,16 +0,0 @@
-<template>
-    <div>
-       <h1>SERVER SIDE LOGIN</h1>
-    </div>
-</template>
-
-<script>
-export default {
-  data () {
-    return {}
-  }
-}
-</script>
-
-<style>
-</style>

+ 0 - 364
TEAMModelOS.SmartTeach/ClientApp/view/smart-dashboard/IOT/smart-iot-dashboard.less

@@ -1,364 +0,0 @@
-#smart-dashboard{
-  width: 100%;
-  height: 100%;
-  // background-color: #5981ad;
-  background-image: url('../../../assets/bak_cloud.jpg');
-  background-repeat: no-repeat;
-  background-attachment: fixed;
-  background-position: center;
-  background-size: cover;
-  .Header{
-      width: 100%;
-      position: fixed;
-      padding: 10px 20px;
-      z-index: 1;
-      // background-color: #fff;
-      .smart-mark{
-          letter-spacing: 3px;
-          color: #94998a;
-      }
-      .smart-markD{
-          letter-spacing: 3px;
-          color: #94998a;
-          font-size: 15px;
-          vertical-align: middle;
-      }
-      .menu{
-          float: right;
-          height: initial;
-          background-color: transparent;
-          li{
-              color: #94998a;
-              line-height: initial;
-          }
-      }
-  }
-  .content{
-    padding-top: 40px;
-    height: 100%;
-    overflow: auto;
-    .dashBoardBtn{
-      background-color: transparent;
-      border-color: #94998a;
-      color: #94998a;
-      &:hover, &.select{
-        background-color: #94998a;
-        color: #333;
-      }
-    }
-    .box{
-      padding: 10px 0px 0px 0;
-      height: 94%;
-      margin: 0;
-      .block-1{
-        margin: 0 10px;
-        background-color: rgba(217, 217, 217, 0.14);
-        .classInfo{
-          padding: 15px 0 0 25px;
-          background-color: rgba(17, 17, 17, 0.14);
-          h5{
-            color: #A9B2B8;
-            font-size: 1.4em;
-            font-weight: 300;
-          }
-          .subtitle{
-            display: block;
-            margin-top: 5px;
-            padding-right: 20px;
-            color: #90A3AC;
-          }
-          .teacherName{
-            color: #90A3AC;
-            max-width: 200px;
-            display: inline-block;
-            vertical-align: middle;
-          }
-          .teachIcon{
-            color: #90A3AC;
-            display: inline-block;
-            vertical-align: middle;
-          }
-          .processing{
-            color: #1CD0A1
-          }
-          .unopen{
-            color: #90A3AC
-          }
-          .maintain{
-            color: #FF6B6A
-          }
-          cursor: pointer;
-          &:hover{
-            .teacherName, .teachIcon{
-              color: #ffffff;
-            }
-            h5{
-              color: #FFFFFF;
-            }
-            .subtitle{
-              color: #DCDCDC;
-            }
-            .processing{
-              color: #6DE4C6
-            }
-            .unopen{
-              color: #DCDCDC
-            }
-            .maintain{
-              color: #FF6B6A
-            }
-            background: -webkit-linear-gradient(right, rgba(147, 166, 150, 0), rgba(147, 166, 150, 0.42));
-            background: -o-linear-gradient(right,rgba(147, 166, 150, 0), rgba(147, 166, 150, 0.42));
-            background: -moz-linear-gradient(right,rgba(147, 166, 150, 0), rgba(147, 166, 150, 0.42));
-            background: linear-gradient(to right,rgba(147, 166, 150, 0), rgba(147, 166, 150, 0.42));
-          }
-        }
-      }
-      .block-2{
-        margin: 0 10px;
-        height: 100%;
-        .info-row{
-          background-color: rgba(217, 217, 217, 0.14);
-          height: 100%;
-          .info-col-main{
-            border-right: solid 1px #94998a;
-            position: relative;
-            // background-color: rgba(217, 217, 217, 0.14);
-            .info-col-content{
-              h5{
-                font-size: 2.5em;
-                font-weight: 100;
-                color: #fafafa;
-              }
-              color: #94998a;
-              padding: 0 0 17px 25px;
-              font-size: 0.82em;
-              position: absolute;
-              bottom:0;
-            }
-          }
-          .info-col-secondary{
-            background-color: rgba(17, 17, 17, 0.14);
-            position: relative;
-            .info-col-content{
-              padding: 0 0 17px 10px;
-              font-size: 0.82em;
-              color: #94998a;
-              position: absolute;
-              bottom:0;
-              width: 100%;
-              h5{
-                font-size: 2em;
-                font-weight: 100;
-                color: #fafafa;
-              }
-              &.border-right{
-                border-right: solid 1px #94998a;
-              }
-            }
-          }
-        }
-        .classPercent{
-          height: 80%;
-          &-row{
-            height: 100%;
-            .left{
-              height: 100%;
-            }
-            .right{
-              &-title{
-                font-size: 1.45em;
-                color: #DCDCDC;
-                margin-bottom: 5px;
-                span{
-                  color: #ffffff;
-                }
-              }
-              &-detail{
-                &-title{
-                  display: block;
-                  color: #94998a;
-                  padding-left: 5px;
-                  border-left: 2px solid #333;
-                }
-                &-num{
-                  font-size: 1.4em;
-                  font-weight: 100;
-                  padding-left: 5px;
-                  color: #fafafa;
-                }
-              }
-
-            }
-          }
-
-        }
-      }
-      .block-3{
-        margin: 0 10px;
-        height: 100%;
-        .today-class-content{
-          height: 100%;
-          background-color: rgba(217, 217, 217, 0.14);
-          &-title{
-            height: 20%;
-            font-size: 1.25em;
-            color:#E4E9DC;
-            padding: 15px 0 15px 15px;
-            font-weight: 100;
-          }
-          &-contents{
-            height: 80%;
-            .chart{
-              height: 100%;
-            }
-            .detail{
-              height: 100%;
-              .detail-row{
-                height: 100%;
-                padding: 5px 0;
-                .detail-col{
-                  cursor: pointer;
-                  height:32.3333%;
-                  color: #fafafa;
-                  .detail-title{
-                    display: block;
-                    color: #94998a;
-                    padding-left: 5px;
-                    border-left: 2px solid #333;
-                    &-border-red{
-                      border-left-color: #FF6B6A;
-                    }
-                    &-border-green{
-                      border-left-color: #1CD0A1;
-                    }
-                    &-border-pink{
-                      border-left-color: #FF9FF4;
-                    }
-                    &-border-yellow{
-                      border-left-color: #FDC958;
-                    }
-                    &-border-blue{
-                      border-left-color: #48DBFC;
-                    }
-                    &-border-orange{
-                      border-left-color: #FFAD76;
-                    }
-                  }
-                  .detail-amount{
-                    font-size: 1.4em;
-                    font-weight: 100;
-                    padding-left: 5px;
-                  }
-                }
-              }
-
-            }
-          }
-        }
-      }
-      .block-4{
-        margin: 0 10px;
-        height: 100%;
-        .hours{
-          padding: 15px 0 0 25px;
-          .hours-title{
-            color: #94998a;
-            font-size: 1.1em;
-          }
-          h5{
-            color: #dcdcdc;
-            font-size: 1em;
-            span{
-              padding:0 5px;
-              color: #ffffff;
-              font-size: 2em;
-              font-weight: 300;
-            }
-          }
-        }
-        .rank{
-          height: 100%;
-          &-block{
-            height: 33.333333%;
-            &-row{
-              height: 100%;
-              border-bottom: 1px solid #94998a;
-              margin-left: 20px;
-              .sticker{
-                img{
-                  display: block;
-                  margin: auto; 
-                }
-              }
-              .conect{
-                height: 100%;
-                padding: 10px;
-                &-title{
-                  color: #00B96A;
-                  display: block;
-                }
-                &-name{
-                  max-width: 180px;
-                  font-size: 1.25em;
-                  color: #fafafa;
-                  display: inline-block;
-                  vertical-align: middle;
-                }
-                &-icon{
-                  vertical-align: middle;
-                  color: #fafafa;
-                }
-                &-val{
-                  .number{
-                    color: #fafafa;
-                  }
-                  color: #dcdcdc;
-                  display: block;
-                }
-              }
-            }
-          }
-        }
-      }
-    }
-  }
-}
-.border-red{
-  border-left-color: #FF6B6A!important;
-}
-.border-green{
-  border-left-color: #1CD0A1!important;
-}
-.border-pink{
-  border-left-color: #FF9FF4!important;
-}
-.border-yellow{
-  border-left-color: #FDC958!important;
-}
-.border-blue{
-  border-left-color: #48DBFC!important;
-}
-.border-orange{
-  border-left-color: #FFAD76!important;
-}
-.block-border{
-  border: 0.11px solid rgba(148, 153, 138, 0.63);
-}
-.scrollstyle::-webkit-scrollbar {
-    width: 5px;
-}
-.scrollstyle::-webkit-scrollbar-track {
-  margin: 6px;
-  background: transparent;
-}
-.scrollstyle::-webkit-scrollbar-thumb {
-  border-radius: 10px;
-  background: #94998a;
-}
-.scrollstyle::-webkit-scrollbar-thumb:hover {
-  // background: #555;
-}
-.scrollstyle::-webkit-scrollbar-button {
-  display: none;
-}

+ 0 - 759
TEAMModelOS.SmartTeach/ClientApp/view/smart-dashboard/IOT/smart-iot-dashboard.vue

@@ -1,759 +0,0 @@
-<style lang="less" scoped>
-  @import './smart-iot-dashboard.less';
-</style>
-
-<template>
-    <div id="smart-dashboard">
-      <div class="Header">
-        <Row type="flex" justify="center" align="middle">
-          <Col :span="3">
-            <img style="height: 20px;" src="../../../assets/mark.svg"/>
-          </Col>
-          <Col :span="8">
-            <Icon size="20" type="md-pin" style="vertical-align: middle;color: #94998a" /><span class="smart-markD">{{ $t('breadcrumbs')}}</span>
-          </Col>
-          <Col :span="11">
-            <Menu class="menu" mode="horizontal" theme="dark">
-              <MenuItem name="1">
-                  <Icon type="ios-paper" />
-                  {{ $t('menu1')}}
-              </MenuItem>
-              <MenuItem name="2">
-                  <Icon type="ios-people" />
-                  {{ $t('menu2')}}
-              </MenuItem>
-              <MenuItem name="3">
-                  <Icon type="ios-people" />
-                  {{ $t('menu3')}}
-              </MenuItem>
-              <MenuItem name="4">
-                  <Icon type="ios-construct" />
-                  {{ $t('menu4')}}
-              </MenuItem>
-          </Menu>
-          </Col>
-          <Col :span="2" style="text-align: center;">
-            <img style="width: 35px;" src="@/assets/image/touxiang.png">
-          </Col>
-        </Row>
-      </div>
-      <div class="content">
-        <div style="text-align: center;padding-top: 5px;height: 5%;">
-          <Button class="dashBoardBtn select">{{ $t('smartIOTDB.pageButton1') }}</Button>
-          <Button to="/smartclassdashboard" class="dashBoardBtn">{{ $t('smartIOTDB.pageButton2') }}</Button>
-        </div>
-        <Row class="box" type="flex" justify="center">
-          <Col  :span="8"  class="block-1 block-border">
-            <!-- block-1 -->
-            <!-- 边角设计 start-->
-            <div class="image-border image-border-left-top" ></div>
-            <div class="image-border image-border-right-top" ></div>
-            <div class="image-border image-border-left-bottom" ></div>
-            <div class="image-border image-border-lright-bottom" ></div>
-            <!-- 边角设计 end-->
-            <div style="height: 100%;">
-              <div style="height: 60%;width:100%;">
-                <div style="height: 100%;">
-                  <div style="height: 80%;text-align: center;">
-                    <img id="planImg" style="width: 100%;height: 100%;display: none;" src="@/assets/image/floorplan.png" />
-                    <img id="pin" style="display: none;" src="@/assets/pin.svg" />
-                    <img id="greenpin" style="display: none;" src="@/assets/greenpin.svg" />
-                    <img id="redpin" style="display: none;" src="@/assets/redpin.svg" />
-                    <canvas id="floorplan" style="width: 100%;height: 100%;">
-                      当前浏览器不支持canvas
-                      <!-- 如果浏览器支持canvas,则canvas标签里的内容不会显示出来 -->
-                    </canvas>
-                  </div>
-                  <div style="height: 20%;padding: 0 5%;border-bottom: 1px solid #94998a;">
-                    <Row>
-                      <Col :span="5" style="text-align: center;">
-                        <span style="color: #94998a;">{{$t('smartIOTDB.block1Title1')}}</span>
-                        <h5 style="font-size: 2em;color: #FAFAFA;font-weight: 100;">4 <small>(36%)</small></h5>
-                      </Col>
-                      <Col :span="5" style="text-align: center;">
-                      <span style="color: #94998a;">{{$t('smartIOTDB.block1Title2')}}</span>
-                        <h5 style="font-size: 2em;color: #FAFAFA;font-weight: 100;">1 <small>(9%)</small></h5>
-                      </Col>
-                      <Col :span="5" style="text-align: center;">
-                      <span style="color: #94998a;">{{$t('smartIOTDB.block1Title3')}}</span>
-                        <h5 style="font-size: 2em;color: #FAFAFA;font-weight: 100;">3 <small>(27%)</small></h5>
-                      </Col>
-                      <Col :span="5" style="text-align: center;">
-                      <span style="color: #94998a;">{{$t('smartIOTDB.block1Title4')}}</span>
-                        <h5 style="font-size: 2em;color: #FAFAFA;font-weight: 100;">18 <small>(77%)</small></h5>
-                      </Col>
-                      <Col :span="4"  style="text-align: center;">
-                        <span style="color: #94998a;">{{$t('smartIOTDB.block1Title5')}}</span>
-                        <h5 style="font-size: 2em;color: #FAFAFA;font-weight: 100;">11</h5>
-                      </Col>
-                    </Row>
-                  </div>
-                </div>
-              </div>
-              <div style="height: 40%;width:100%;position: relative;overflow: auto;">
-                <div class="scrollstyle" style="position: absolute;right: 0px;left: 0;top: 0;bottom: 0;overflow-x: hidden;overflow-y: auto;">
-                  <div class="classInfo" v-for="(item, index) in classInfoData" :key="index">
-                    <Row type="flex" justify="center" align="bottom" style="border-bottom: solid 1px #94998a;padding-bottom: 7px;">
-                      <Col :span="15">
-                        <h5>{{ item.className }}</h5>
-                        <span class="ellipsis subtitle">{{ item.classProduct }}&nbsp;&nbsp;|&nbsp;&nbsp;{{ item.classDetail }}</span>
-                      </Col>
-                      <Col :span="9">
-                        <span class="ellipsis teacherName">{{ item.teacherName}}</span>&nbsp;<Icon class="teachIcon" :size="15" type="ios-information-circle" />
-                        <Row  style="display: block;">
-                          <Col :span="12" style="color: #48DBFC;">
-                            {{$t('smartIOTDB.hotclass')}}&nbsp;&nbsp;|&nbsp;&nbsp;{{item.classHot + $t('unit1')}}
-                          </Col>
-                          <Col :span="12" :class="classModeClass(item.classMode)">
-                            {{ classModeStr(item.classMode) }}&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;{{item.classTime}}
-                          </Col>
-                        </Row>
-                      </Col>
-                    </Row>
-                  </div>
-                </div>
-              </div>
-            </div>
-          </Col>
-          <Col  :span="5" class="block-2">
-            <!-- block-2 -->
-            <div class="block-border" style="height: 12%;position: relative;">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <Row type="flex" justify="center" class="info-row">
-                <Col :span="9" class="info-col-main">
-                  <div class="info-col-content">
-                    <span>{{ $t('smartIOTDB.block2Title1')}}</span><br/><small>{{ $t('smartIOTDB.block2SubTitle1')}}</small>
-                    <h5>8<small>/9</small></h5>
-                  </div>            
-                </Col>
-                <Col :span="5"  class="info-col-secondary">
-                  <div class="info-col-content border-right">
-                    <br/><small>{{ $t('smartIOTDB.block2SubTitle2')}}</small>
-                    <h5>8</h5>
-                  </div> 
-                </Col>
-                <Col :span="5"  class="info-col-secondary">
-                  <div class="info-col-content border-right">
-                    <br/><small>{{ $t('smartIOTDB.block2SubTitle3')}}</small>
-                    <h5>8</h5>
-                  </div> 
-                </Col>
-                <Col :span="5"  class="info-col-secondary">
-                  <div class="info-col-content">
-                    <br/><small>{{ $t('smartIOTDB.block2SubTitle4')}}</small>
-                    <h5>8</h5>
-                  </div> 
-                </Col>
-              </Row>
-            </div>
-            <div style="height: 1.5%"></div>
-            <div class="block-border" style="height: 12%;position: relative;">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <Row type="flex" justify="center" class="info-row">
-                <Col :span="9" class="info-col-main">
-                  <div class="info-col-content">
-                    <span>{{ $t('smartIOTDB.block2Title2')}}</span><br/><small>{{ $t('smartIOTDB.block2SubTitle1')}}</small>
-                    <h5>54<small>/65</small></h5>
-                  </div>            
-                </Col>
-                <Col :span="5"  class="info-col-secondary">
-                  <div class="info-col-content border-right">
-                    <br/><small>{{ $t('smartIOTDB.block2SubTitle2')}}</small>
-                    <h5>61.2</h5>
-                  </div> 
-                </Col>
-                <Col :span="5"  class="info-col-secondary">
-                  <div class="info-col-content border-right">
-                    <br/><small>{{ $t('smartIOTDB.block2SubTitle3')}}</small>
-                    <h5>58.9</h5>
-                  </div> 
-                </Col>
-                <Col :span="5"  class="info-col-secondary">
-                  <div class="info-col-content">
-                    <br/><small>{{ $t('smartIOTDB.block2SubTitle4')}}</small>
-                    <h5>53.1</h5>
-                  </div> 
-                </Col>
-              </Row>
-            </div>
-            <div style="height: 1.5%"></div>
-            <div class="block-border" style="height: 12%;position: relative;">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <Row type="flex" justify="center" class="info-row">
-                <Col :span="9" class="info-col-main">
-                  <div class="info-col-content">
-                    <span>{{ $t('smartIOTDB.block2Title3')}}</span><br/><small>{{ $t('smartIOTDB.block2SubTitle1')}}</small>
-                    <h5>1,892<small>/2,863</small></h5>
-                  </div>            
-                </Col>
-                <Col :span="5"  class="info-col-secondary">
-                  <div class="info-col-content border-right">
-                    <br/><small>{{ $t('smartIOTDB.block2SubTitle2')}}</small>
-                    <h5>2,542</h5>
-                  </div> 
-                </Col>
-                <Col :span="5"  class="info-col-secondary">
-                  <div class="info-col-content border-right">
-                    <br/><small>{{ $t('smartIOTDB.block2SubTitle3')}}</small>
-                    <h5>2,301</h5>
-                  </div> 
-                </Col>
-                <Col :span="5"  class="info-col-secondary">
-                  <div class="info-col-content">
-                    <br/><small>{{ $t('smartIOTDB.block2SubTitle4')}}</small>
-                    <h5>2,436</h5>
-                  </div> 
-                </Col>
-              </Row>
-            </div>
-            <div style="height: 1.5%"></div>
-            <div class="block-border" style="height: 29%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <div style="height:20%;">
-                <h5 style="font-size: 1.25em;color:#E4E9DC;padding: 15px 0 15px 15px;font-weight: 100;">{{$t('smartIOTDB.block2Title4')}}</h5>
-              </div>
-              <div style="height: 80%;">
-                <ClassLine :id="'classline1'"></ClassLine>
-              </div>
-            </div>
-            <div style="height: 1.5%"></div>
-            <div class="block-border" style="height: 29%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <div style="height: 20%;padding: 15px 0 15px 15px;">
-                <h5 style="font-size: 1.25em;color:#E4E9DC;font-weight: 100;">{{$t('smartIOTDB.block2Title5')}}</h5>
-              </div>
-              <div class="classPercent"> 
-                <Row type="flex" justify="center" align="middle" class="classPercent-row">
-                  <Col class="left" :span="12" style="">
-                    <div style="height: 100%;">
-                      <RingPie id="ringpie5'"></RingPie>
-                    </div>
-                  </Col>
-                  <Col class="right" :span="12">
-                    <Row>
-                      <Col>
-                        <div class="right-title">今日總課堂數 : <span>54</span> 堂</div>
-                      </Col>
-                    </Row>
-                    <Row >
-                      <Col :span="12">
-                        <div class="right-detail">
-                          <span class="right-detail-title border-red">一年級開課數</span>
-                          <h5 class="right-detail-num">3 <small>(5.5%)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12">
-                        <div>
-                          <span class="right-detail-title border-green">二年級開課數</span>
-                          <h5  class="right-detail-num">13 <small>(24.1%)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12">
-                        <div>
-                          <span class="right-detail-title border-pink">三年級開課數</span>
-                          <h5  class="right-detail-num">4 <small>(7.4%)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12">
-                        <div>
-                          <span class="right-detail-title border-yellow">四年級開課數</span>
-                          <h5  class="right-detail-num">12 <small>(22.2%)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12">
-                        <div>
-                          <span class="right-detail-title border-blue">五年級開課數</span>
-                          <h5  class="right-detail-num">13 <small>(24.1%)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12">
-                        <div>
-                          <span class="right-detail-title border-orange">六年級開課數</span>
-                          <h5  class="right-detail-num">9 <small>(16.7%)</small></h5>
-                        </div>
-                      </Col>
-                    </Row>
-                  </Col>
-                </Row>                
-              </div>
-            </div>
-          </Col>
-          <Col  :span="5" class="block-3">
-            <div class="block-border" style="height: 23.91%;position: relative;">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <div class="today-class-content">
-                <h5 class="today-class-content-title">{{$t('smartIOTDB.block3Title1')}}</h5>
-                <Row class="today-class-content-contents">
-                  <Col :span="12" class="chart"><RingPie :pieData="todayClassData" ref="ringpie1" :id="'ringPie1'"></RingPie></Col>
-                  <Col :span="12" class="detail">
-                    <Row class="detail-row">
-                      <Col :span="12" class="detail-col">
-                        <div @mouseleave="pieDownPlay('class','新增档案')" @mouseenter="pieHeightLight('class','新增档案')">
-                          <span class="detail-title detail-title-border-red">新增档案</span>
-                          <h5 class="detail-amount">33% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="detail-col">
-                        <div @mouseleave="pieDownPlay('class','书面问答')" @mouseenter="pieHeightLight('class','书面问答')">
-                          <span  class="detail-title detail-title-border-green">书面问答</span>
-                          <h5 class="detail-amount" >33% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="detail-col">
-                        <div @mouseleave="pieDownPlay('class','汇入.pptx')" @mouseenter="pieHeightLight('class','汇入.pptx')">
-                          <span  class="detail-title detail-title-border-pink" >汇入.pptx</span>
-                          <h5 class="detail-amount" >33% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="detail-col">
-                        <div @mouseleave="pieDownPlay('class','PowerClick')" @mouseenter="pieHeightLight('class','PowerClick')">
-                          <span  class="detail-title detail-title-border-yellow" >PowerClick</span>
-                          <h5 class="detail-amount" >33% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="detail-col">
-                        <div @mouseleave="pieDownPlay('class','开启.hte')" @mouseenter="pieHeightLight('class','开启.hte')">
-                          <span  class="detail-title detail-title-border-blue" >开启.hte</span>
-                          <h5 class="detail-amount" >33% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="detail-col">
-                        <div @mouseleave="pieDownPlay('class','其他')" @mouseenter="pieHeightLight('class','其他')">
-                          <span  class="detail-title detail-title-border-orange" >其他</span>
-                          <h5 class="detail-amount" >33% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                    </Row>
-                  </Col>
-                </Row>
-              </div>
-            </div>
-            <div style="height: 2.17%;"></div>
-            <div class="block-border" style="height: 23.91%;position: relative;">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <div class="today-class-content">
-                <h5 class="today-class-content-title">{{$t('smartIOTDB.block3Title2')}}</h5>
-                <Row class="today-class-content-contents">
-                  <Col :span="12" class="chart"><RingPie :pieData="todayClassVerData" ref="ringpie2" :id="'ringPie2'"></RingPie></Col>
-                  <Col :span="12" class="detail">
-                    <Row class="detail-row">
-                      <Col :span="12" class="detail-col">
-                        <div @mouseleave="pieDownPlay('system','HiTeach STD')" @mouseenter="pieHeightLight('system','HiTeach STD')">
-                          <span class="detail-title detail-title-border-red">HiTeach STD</span>
-                          <h5 class="detail-amount">26% <small>(8)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="detail-col">
-                        <div @mouseleave="pieDownPlay('system','HiTeach PRE')" @mouseenter="pieHeightLight('system','HiTeach PRE')">
-                          <span  class="detail-title detail-title-border-green">HiTeach PRE</span>
-                          <h5 class="detail-amount" >25% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="detail-col">
-                        <div @mouseleave="pieDownPlay('system','HiTeach PRO')" @mouseenter="pieHeightLight('system','HiTeach PRO')">
-                          <span  class="detail-title detail-title-border-pink" >HiTeach PRO</span>
-                          <h5 class="detail-amount" >18% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="detail-col">
-                        <div @mouseleave="pieDownPlay('system','HiTeach Mobile')" @mouseenter="pieHeightLight('system','HiTeach Mobile')">
-                          <span  class="detail-title detail-title-border-yellow" >HiTeach Mobile</span>
-                          <h5 class="detail-amount" >10% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="detail-col">
-                        <div @mouseleave="pieDownPlay('system','HiTeach TBL')" @mouseenter="pieHeightLight('system','HiTeach TBL')">
-                          <span  class="detail-title detail-title-border-blue" >HiTeach TBL</span>
-                          <h5 class="detail-amount" >21% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="detail-col">
-                        <div @mouseleave="pieDownPlay('system','其他')" @mouseenter="pieHeightLight('system','其他')">
-                          <span  class="detail-title detail-title-border-orange" >其他</span>
-                          <h5 class="detail-amount" >0% <small>(0)</small></h5>
-                        </div>
-                      </Col>
-                    </Row>
-                  </Col>
-                </Row>
-              </div>
-            </div>
-            <div style="height: 2.17%;"></div>
-            <div class="block-border" style="height: 47.84%;position: relative;">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <div style="height: 100%;background-color: rgba(217, 217, 217, 0.14);">
-                <div style="height: 13%;border-bottom: 1px solid #94998a;padding: 15px 0 0 15px;">
-                  <h5 style="font-size: 1.25em;color:#E4E9DC;font-weight: 100;">{{ $t('smartIOTDB.block3Title3')}}</h5>
-                </div>
-                <div style="height: 87%;border-bottom: 1px solid #94998a;">
-                  <ClassBar :id="'classbar1'"></ClassBar>
-                </div>
-              </div>
-            </div>
-          </Col>
-          <Col  :span="4" class="block-4">
-            <div class="block-border" style="height: 10.43%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <div class="hours">
-                <span class="hours-title">{{$t('smartIOTDB.block4Title1')}}</span>
-                <h5><span>4,234</span>h<span>43</span>m</h5>
-              </div>
-            </div>
-            <div style="height: 2.17%"></div>
-            <div class="block-border" style="height: 23.48%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <div style="height: 100%;">
-                <h5 style="height: 20%;font-size: 1.25em;color: #E4E9DC;padding: 10px 0 0 10px;font-weight: 100;">{{$t('smartIOTDB.block4Title2')}}</h5>
-                <Row type="flex" justify="center" align="middle" style="height: 80%;">
-                  <Col style="height: 100%;" :span="12"><RingPie :pieData="smartClassVersion" @highLightInfo="classVersionByPie" :defaultActive="true" :id="'ringPie3'"></RingPie></Col>
-                  <Col :span="12" style="padding-left: 7px;color: #94998a;">
-                    <span>{{ classVersion.name }}</span>
-                    <h5 style="font-weight: 100;font-size: 2.2em;color: #fafafa;">{{ classVersion.percent +$t('unit2')}}</h5>
-                    <span>{{$t('smartIOTDB.block4SubTitle1') + ' ' + classVersion.val + ' ' +$t('unit3')}}</span>
-                  </Col>
-                </Row>
-              </div>
-            </div>
-            <div style="height: 2.17%"></div>
-            <div class="block-border" style="height: 23.48%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <div style="height: 100%;">
-                <h5 style="height: 20%;font-size: 1.25em;color: #E4E9DC;padding: 10px 0 0 10px;font-weight: 100;">{{$t('smartIOTDB.block4Title3')}}</h5>
-                <Row type="flex" justify="center" align="middle" style="height: 80%;">
-                  <Col style="height: 100%;" :span="12"><RingPie :pieData="operatingSystems" @highLightInfo="homeworkByPie" :defaultActive="true" :id="'ringPie4'"></RingPie></Col>
-                  <Col :span="12" style="padding-left: 7px;color: #94998a;">
-                    <span>{{ homework.name }}</span>
-                    <h5 style="font-weight: 100;font-size: 2.2em;color: #fafafa;">{{ homework.percent +$t('unit2')}}</h5>
-                    <span>{{$t('smartIOTDB.block4SubTitle2') + ' ' + homework.val + ' ' +$t('unit4')}}</span>
-                  </Col>
-                </Row>
-              </div>
-            </div>
-            <div style="height: 2.17%"></div>
-            <div class="block-border" style="height: 36.1%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <div class="rank">
-                <div class="rank-block">
-                  <Row type="flex" justify="center" align="middle" class="rank-block-row">
-                    <Col class="sticker" :span="6">
-                      <img src="@/assets/image/touxiang.png">
-                    </Col>
-                    <Col class="conect" :span="18">
-                      <span class="conect-title">{{$t('smartIOTDB.block4SubTitle3')}}</span>
-                      <h5 class="conect-name ellipsis">Bruse</h5><Icon class="conect-icon" :size="15" type="ios-information-circle" />
-                      <span class="conect-val">{{$t('smartIOTDB.block4SubTitle6')}}: <span class="number">6</span> {{$t('unit1')}}</span>
-                      <span class="conect-val">{{$t('smartIOTDB.block4SubTitle7')}}: <span class="number">139</span> {{$t('unit1')}}</span>
-                    </Col>
-                  </Row>
-                </div>
-                <div class="rank-block">
-                  <Row type="flex" justify="center" align="middle" class="rank-block-row">
-                    <Col class="sticker" :span="6">
-                      <img src="@/assets/image/touxiang.png">
-                    </Col>
-                    <Col class="conect" :span="18">
-                      <span class="conect-title">{{$t('smartIOTDB.block4SubTitle4')}}</span>
-                      <h5 class="conect-name ellipsis">梁老师</h5><Icon class="conect-icon" :size="15" type="ios-information-circle" />
-                      <span class="conect-val">{{$t('smartIOTDB.block4SubTitle8')}}: <span class="number">256.83</span> {{$t('unit5')}}</span>
-                      <span class="conect-val">{{$t('smartIOTDB.block4SubTitle9')}}: <span class="number">135,873.65</span> {{$t('unit5')}}</span>
-                    </Col>
-                  </Row>
-                </div>
-                <div class="rank-block">
-                  <Row type="flex" justify="center" align="middle" class="rank-block-row">
-                    <Col class="sticker" :span="6">
-                      <img src="@/assets/image/touxiang.png">
-                    </Col>
-                    <Col class="conect" :span="18">
-                      <span class="conect-title">{{$t('smartIOTDB.block4SubTitle5')}}</span>
-                      <h5 class="conect-name ellipsis">Picc</h5><Icon class="conect-icon" :size="15" type="ios-information-circle" />
-                      <span class="conect-val">{{$t('smartIOTDB.block4SubTitle10')}}: <span class="number">77.8</span> {{$t('unit2')}}</span>
-                      <span class="conect-val">{{$t('smartIOTDB.block4SubTitle11')}}: <span class="number">71.1</span> {{$t('unit2')}}</span>
-                    </Col>
-                  </Row>
-                </div>
-              </div>
-            </div>            
-          </Col>
-        </Row>
-      </div>
-    </div>
-</template>
-
-<script>
-import LegendPie from '@/components/graph/legendPie'
-import RingPie from '@/components/graph/ringPie'
-import ClassLine from '@/components/graph/classLine'
-import ClassBar from '@/components/graph/classBar'
-
-export default {
-  name:'smart-dashboard',
-  data () {
-    return {
-      classInfoData:[
-        { 
-          'className': 'GE305, 通识教室3',
-          'classProduct': 'Hiteach 3 TBL',
-          'classDetail': '序号使用至2021-09-30, 50人, HBI082, RF05H',
-          'teacherName': 'Picc',
-          'classHot': '7',
-          'classTime': '00:45:03',
-          'classMode': 0
-        },
-        { 
-          'className': 'GE305, 通识教室5',
-          'classProduct': 'Hiteach 3 TBL',
-          'classDetail': '序号使用至2021-09-30, 50人, HBI082, RF05H',
-          'teacherName': '梁老师',
-          'classHot': '7',
-          'classTime': '--:--:--',
-          'classMode': 1
-        },
-        { 
-          'className': 'GE305, 通识教室7',
-          'classProduct': 'Hiteach 3 TBL',
-          'classDetail': '序号使用至2021-09-30, 50人, HBI082, RF05H',
-          'teacherName': '布鲁斯',
-          'classHot': '7',
-          'classTime': '--:--:--',
-          'classMode': 2
-        },
-        { 
-          'className': 'GE305, 通识教室3',
-          'classProduct': 'Hiteach 3 TBL',
-          'classDetail': '序号使用至2021-09-30, 50人, HBI082, RF05H',
-          'teacherName': 'Picc',
-          'classHot': '7',
-          'classTime': '00:45:03',
-          'classMode': 0
-        },
-        { 
-          'className': 'GE305, 通识教室5',
-          'classProduct': 'Hiteach 3 TBL',
-          'classDetail': '序号使用至2021-09-30, 50人, HBI082, RF05H',
-          'teacherName': '梁老师',
-          'classHot': '7',
-          'classTime': '--:--:--',
-          'classMode': 1
-        },
-        { 
-          'className': 'GE305, 通识教室7',
-          'classProduct': 'Hiteach 3 TBL',
-          'classDetail': '序号使用至2021-09-30, 50人, HBI082, RF05H',
-          'teacherName': '布鲁斯',
-          'classHot': '7',
-          'classTime': '--:--:--',
-          'classMode': 2
-        },
-      ],
-      scolBeg:{
-        percent: '',
-        today: '',
-        lastWeek: '',
-        todayData: [
-          {value:9, name:'一年级'},
-          {value:11, name:'二年级'},
-          {value:16, name:'三年级'},
-          {value:6, name:'四年级'},
-          {value:13, name:'五年级'},
-          {value:22, name:'六年级'},
-        ]
-      },
-      classVersion:{
-        percent: '',
-        name: '',
-        val: 0
-      },
-      homework:{
-        percent: '',
-        name: '',
-        val: 0
-      },
-      todayClassData:[
-        {value:335, name:'新增档案'},
-        {value:234, name:'汇入.pptx'},
-        {value:1548, name:'开启.hte'},        
-        {value:310, name:'书面问答'},
-        {value:135, name:'PowerClick'},
-        {value:123, name:'其他'},
-      ],
-      todayClassVerData:[
-        {value:335, name:'HiTeach STD'},
-        {value:234, name:'HiTeach PRO'},
-        {value:1548, name:'HiTeach TBL'},        
-        {value:310, name:'HiTeach PRE'},
-        {value:135, name:'HiTeach Mobile'},
-        {value:123, name:'其他'},
-      ],
-      smartClassVersion:[
-        {value:11, name:'HiTeach STD'},
-        {value:3, name:'HiTeach PRO'},
-        {value:16, name:'HiTeach TBL'},        
-        {value:6, name:'HiTeach PRE'},
-        {value:2, name:'HiTeach Mobile'}
-      ],
-      operatingSystems:[
-        {value:1183, name:'Windows 7'},
-        {value:245, name:'Windows XP'},
-        {value:473, name:'Windows 10'},
-      ]
-    }
-  },
-  components:{
-    LegendPie,
-    RingPie,
-    ClassBar,
-    ClassLine
-  },
-  methods:{
-    pieHeightLight: function(type, value) {
-      switch (type) {
-        case 'class':
-          this.$refs.ringpie1.heightlight(value);
-          break;
-        case 'system':
-          this.$refs.ringpie2.heightlight(value);
-          break;
-      }
-    },
-    pieDownPlay: function(type, value) {
-      switch (type) {
-        case 'class':
-          this.$refs.ringpie1.downplay(value);
-          break;
-        case 'system':
-          this.$refs.ringpie2.downplay(value);
-          break;
-      }      
-    },
-    scolBegInfoByPie: function(val){
-      this.scolBeg.percent = val.percent
-    },
-    scolBegInfoByBar: function(val){
-      this.scolBeg.today = val.today
-      this.scolBeg.lastWeek = val.lastWeek
-      this.$refs.ringpie5.heightlight(val.id);
-    },
-    classVersionByPie: function(val){
-      this.classVersion.percent = val.percent
-      this.classVersion.name = val.name
-      this.classVersion.val = val.value
-    },
-    homeworkByPie: function(val){
-      this.homework.percent = val.percent
-      this.homework.name = val.name
-      this.homework.val = val.value
-    },
-    classModeStr: function(val){
-      switch (val) {
-        case 0:
-          return this.$t('smartIOTDB.runing')
-          break;
-        case 1:
-          return this.$t('smartIOTDB.notInitiated')
-          break;
-        case 2:
-          return this.$t('smartIOTDB.repair')
-          break;
-      }
-    },
-    classModeClass: function(val){
-      switch (val) {
-        case 0:
-          return 'processing'
-          break;
-        case 1:
-          return 'unopen'
-          break;
-        case 2:
-          return 'maintain'
-          break;
-      }
-    }
-  },
-  mounted(){
-    var c=document.getElementById("floorplan");
-    var ctx=c.getContext("2d");
-    var img=document.getElementById("planImg");
-    var pin=document.getElementById("pin");
-    var greenpin=document.getElementById("greenpin");
-    var redpin=document.getElementById("redpin");    
-    c.width = img.width;
-    c.height = img.height
-    var pinW = 35;
-    var pinH = 35;
-    ctx.drawImage(img,0,0);
-    ctx.drawImage(redpin, (c.width*0.595) ,(c.height * 0.67) , pinW, pinH);
-    ctx.drawImage(greenpin, (c.width*0.45) ,(c.height * 0.23) , pinW, pinH);
-    ctx.drawImage(greenpin, (c.width*0.455) ,(c.height * 0.79) , pinW, pinH);
-    ctx.drawImage(greenpin, (c.width*0.595) ,(c.height * 0.79) , pinW, pinH);
-    ctx.drawImage(greenpin, (c.width*0.245) ,(c.height * 0.79) , pinW, pinH);
-    ctx.drawImage(pin, (c.width*0.52) ,(c.height * 0.23) , pinW, pinH);
-    ctx.drawImage(pin, (c.width*0.59) ,(c.height * 0.23) , pinW, pinH);
-    ctx.drawImage(pin, (c.width*0.595) ,(c.height * 0.73) , pinW, pinH);
-    ctx.drawImage(pin, (c.width*0.525) ,(c.height * 0.73) , pinW, pinH);
-    ctx.drawImage(pin, (c.width*0.525) ,(c.height * 0.79) , pinW, pinH);
-    ctx.drawImage(pin, (c.width*0.455) ,(c.height * 0.73) , pinW, pinH);
-  }
-}
-</script>

+ 0 - 363
TEAMModelOS.SmartTeach/ClientApp/view/smart-dashboard/TAL/smart-tal-dashboard.less

@@ -1,363 +0,0 @@
-#smart-dashboard{
-  width: 100%;
-  height: 100%;
-  // background-color: #5981ad;
-  background-image: url('../../../assets/bak_cloud.jpg');
-  background-repeat: no-repeat;
-  background-attachment: fixed;
-  background-position: center;
-  background-size: cover;
-  .Header{
-      width: 100%;
-      position: fixed;
-      padding: 10px 20px;
-      z-index: 1;
-      // background-color: #fff;
-      .smart-mark{
-          letter-spacing: 3px;
-          color: #94998a;
-      }
-      .smart-markD{
-          letter-spacing: 3px;
-          color: #94998a;
-          font-size: 15px;
-          vertical-align: middle;
-      }
-      .menu{
-          float: right;
-          height: initial;
-          background-color: transparent;
-          li{
-              color: #94998a;
-              line-height: initial;
-          }
-      }
-  }
-  .content{
-    padding-top: 40px;
-    height: 100%;
-    overflow: auto;
-    .dashBoardBtn{
-      background-color: transparent;
-      border-color: #94998a;
-      color: #94998a;
-      &:hover, &.select{
-        background-color: #94998a;
-        color: #333;
-      }
-    }
-    .box{
-      padding: 10px 0px 0px 0;
-      height: 94%;
-      margin: 0;
-      .block-1{
-        margin: 0 10px;
-        height: 100%;
-        .total{
-          height: 100%;
-          padding: 3.5% 0;
-          &-box{
-            height: 100%;
-            text-align: center;
-            border-top:1px solid #94998a;
-            border-bottom:1px solid #94998a;
-            padding: 11% 0;
-            position: relative;
-            border-radius: 5px;
-            &-border {
-              position: absolute;
-              width: 30px;
-              height: 30px;
-            }        
-            &-left-top {
-              top: -1px;
-              left: -1px;
-              border-left: 1px solid #94998a;
-              border-top: 1px solid #94998a;
-              border-top-left-radius: 5px;
-            }
-            &-right-top {
-              top: -1px;
-              right: -1px;
-              border-right: 1px solid #94998a;
-              border-top: 1px solid #94998a;
-              border-top-right-radius: 5px;
-            }
-            &-left-bottom {
-              bottom: -1px;
-              left: -1px;
-              border-left: 1px solid #94998a;
-              border-bottom: 1px solid #94998a;
-              border-bottom-left-radius: 5px;
-            }
-            &-right-bottom {
-              bottom: -1px;
-              right: -1px;
-              border-right: 1px solid #94998a;
-              border-bottom: 1px solid #94998a;
-              border-bottom-right-radius: 5px;
-            }
-            &-title{
-              color: #94998a;
-              font-size: 1.1em;
-            }
-            &-number{
-              font-size: 2em;
-              color: #FAFAFA;
-              font-weight: 100;
-            }
-            &-subtitle{
-              color: #e3e3e3;
-            }
-          }
-        }
-        .course{
-          padding: 15px 7px 0 0;
-          margin-left: 25px;
-          border-bottom: solid 1px #94998a;
-          &-Row{
-            padding-bottom: 7px;
-          }
-          &-className{
-            font-size: 1.3em;
-            font-weight: 100;
-            color: #fafafa
-          }
-          &-user{
-            max-width: 220px;
-            color: #A9B2B8;
-            display: inline-block;
-            vertical-align: middle;
-            font-size: 1em;
-          }
-          &-icon{
-            color: #A9B2B8;
-            display: inline-block;
-            vertical-align: middle;
-          }
-          &-text{
-            color: rgba(228, 233, 220, 0.63);
-          }
-        }
-      }
-      .block-2{
-        margin: 0 10px;
-        height: 100%;
-        .classroom{
-          padding-bottom:7px;
-          text-align: center;
-          &-title{
-            display: block;
-            color:#94998a;
-            font-size: 1em;
-          }
-          &-number{
-            color: #fafafa;
-            font-size: 2em;
-            font-weight: 100;
-          }
-          &:hover{
-            background: -webkit-linear-gradient(bottom, rgba(147, 166, 150, 0), rgba(147, 166, 150, 0.42));
-            background: -o-linear-gradient(bottom,rgba(147, 166, 150, 0), rgba(147, 166, 150, 0.42));
-            background: -moz-linear-gradient(bottom,rgba(147, 166, 150, 0), rgba(147, 166, 150, 0.42));
-            background: linear-gradient(to bottom,rgba(147, 166, 150, 0), rgba(147, 166, 150, 0.42));
-          }
-        }
-      }
-      .block-3{
-        margin: 0 10px;
-        height: 100%;
-        .today-class-content{
-          height: 100%;
-          &-title{
-            height: 12%;
-            font-size: 1.25em;
-            color:#E4E9DC;
-            padding: 15px 0 15px 15px;
-            font-weight: 100;
-          }
-          &-contents{
-            height: 88%;
-            .chart{
-              height: 100%;
-            }
-            .detail{
-              height: 100%;
-              .detail-row{
-                height: 100%;
-                padding: 5px 0;
-                .detail-col{
-                  cursor: pointer;
-                  height:33.33333%;
-                  color: #fafafa;
-                  .detail-title{
-                    display: block;
-                    color: #94998a;
-                    padding-left: 5px;
-                    border-left: 2px solid #333;
-                    font-size: 1.1em;
-                    &-border-red{
-                      border-left-color: #FF6B6A;
-                    }
-                    &-border-green{
-                      border-left-color: #1CD0A1;
-                    }
-                    &-border-pink{
-                      border-left-color: #FF9FF4;
-                    }
-                    &-border-yellow{
-                      border-left-color: #FDC958;
-                    }
-                    &-border-blue{
-                      border-left-color: #48DBFC;
-                    }
-                    &-border-orange{
-                      border-left-color: #FFAD76;
-                    }
-                  }
-                  .detail-amount{
-                    font-size: 1.4em;
-                    font-weight: 100;
-                    padding-left: 5px;
-                  }
-                }
-              }
-
-            }
-          }
-        }
-        .course-content{
-          height: 100%;
-          &-title{
-            height: 14%;
-            h5{
-              border-bottom: 1px solid #94998a;
-              font-size: 1.25em;
-              color: #E4E9DC;
-              font-weight: 100;
-              height: 100%;
-              padding: 1.5%;
-            }
-          }
-          &-contents{
-            height: 86%;
-            &-left{
-              border-right: 1px solid #94998a;
-              height: 100%;
-              &-row{
-                height: 100%;
-                padding: 5px 0;
-                &-col{
-                  height: 24%;
-                  .contents-box{
-                    width: 77px;
-                    margin: auto;
-                    &-title{
-                      display: block;
-                      color: #94998a;
-                      padding-left: 5px;
-                      border-left: 2px solid #333;
-                      font-size: 1.1em;
-                    }
-                    &-num{
-                      font-size: 1.4em;
-                      color: #fafafa;
-                      font-weight: 100;
-                      padding-left: 5px;
-                    }
-                    &-subtitle{
-                      display: block;
-                      color: #A9B2B8;
-                      padding-left: 5px;
-                      font-size: 0.9em;
-                    }
-                    &-border-red{
-                      border-left-color: #FF6B6A;
-                    }
-                    &-border-green{
-                      border-left-color: #1CD0A1;
-                    }
-                    &-border-pink{
-                      border-left-color: #FF9FF4;
-                    }
-                    &-border-yellow{
-                      border-left-color: #FDC958;
-                    }
-                    &-border-blue{
-                      border-left-color: #48DBFC;
-                    }
-                    &-border-orange{
-                      border-left-color: #FFAD76;
-                    }
-                    &-border-purple{
-                      border-left-color: rgb(182,130,248);
-                    }
-                  }
-                }
-              }
-            }
-            &-right{
-              height: 100%;
-            }
-          }
-        }
-      }
-      .block-4{
-        margin: 0 10px;
-        height: 100%;
-        .teachingEvent{
-          height: 80%;
-          &-row{
-            height: 100%;
-            &-col{
-              height:100%;
-              .teachContent{
-                height: 100%;
-                &-box{
-                  text-align: center;
-                  &-title{
-                    font-size: 1.2em;
-                    display: block;
-                    color: #94998a;
-                  }
-                  &-num{
-                    display: block;
-                    color: #fafafa;
-                    font-weight: 100;
-                    font-size: 2.5em;
-                  }
-                  &-subnum{
-                    font-size: 1em;
-                    display: block;
-                    color: #fafafa;
-                  }
-                }
-              }
-            }
-          }
-
-        }
-      }
-    }
-  }
-}
-.block-border{
-  border: 0.1px solid rgba(148, 153, 138, 0.63);
-}
-.scrollstyle::-webkit-scrollbar {
-    width: 5px;
-}
-.scrollstyle::-webkit-scrollbar-track {
-  margin: 6px;
-  background: transparent;
-}
-.scrollstyle::-webkit-scrollbar-thumb {
-  border-radius: 10px;
-  background: #94998a;
-}
-.scrollstyle::-webkit-scrollbar-thumb:hover {
-  // background: #555;
-}
-.scrollstyle::-webkit-scrollbar-button {
-  display: none;
-}

+ 0 - 281
TEAMModelOS.SmartTeach/ClientApp/view/smart-dashboard/TAL/smart-tal-dashboard.vue

@@ -1,281 +0,0 @@
-<style lang="less" scoped>
-  @import './smart-tal-dashboard.less';
-</style>
-
-<template>
-    <div id="smart-dashboard">
-      <div class="Header">
-        <Row type="flex" justify="center" align="middle">
-          <Col :span="3">
-            <img style="height: 20px;" src="../../../assets/mark.svg"/>
-          </Col>
-          <Col :span="8">
-            <Icon size="20" type="md-pin" style="vertical-align: middle;color: #94998a" /><span class="smart-markD">{{ $t('breadcrumbs')}}</span>
-          </Col>
-          <Col :span="11">
-            <Menu class="menu" mode="horizontal" theme="dark">
-              <MenuItem name="1">
-                  <Icon type="ios-paper" />
-                  {{ $t('menu1')}}
-              </MenuItem>
-              <MenuItem name="2">
-                  <Icon type="ios-people" />
-                  {{ $t('menu2')}}
-              </MenuItem>
-              <MenuItem name="3">
-                  <Icon type="ios-people" />
-                  {{ $t('menu3')}}
-              </MenuItem>
-              <MenuItem name="4">
-                  <Icon type="ios-construct" />
-                  {{ $t('menu4')}}
-              </MenuItem>
-          </Menu>
-          </Col>
-          <Col :span="2" style="text-align: center;">
-            <!-- <Icon style="font-size: 24px; color: #FAFAFA;" type="md-person" /> -->
-            <img style="width: 35px;" src="@/assets/image/touxiang.png">
-          </Col>
-        </Row>
-      </div>
-      <div class="content">
-        <div style="text-align: center;padding-top: 5px;height: 5%;">
-
-        </div>
-        <Row class="box" type="flex" justify="center">
-          <Col  :span="11"  class="block-1">
-            <div style="height: 100%;">
-              <div class="block-border" style="height: 66%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-                <!-- 边角设计 start-->
-                <div class="image-border image-border-left-top" ></div>
-                <div class="image-border image-border-right-top" ></div>
-                <div class="image-border image-border-left-bottom" ></div>
-                <div class="image-border image-border-lright-bottom" ></div>
-                <!-- 边角设计 end-->
-                <div style="height: 100%;">
-                  <Row type="flex" justify="center" align="middle" style="height: 25%;">
-                    <Col :span="4" style="text-align: center;">
-                      <span style="font-size: 1.25em;color: rgb(148, 153, 138)">收课总数</span>
-                      <h5 style="font-size: 2.5em;color: rgb(250, 250, 250);font-weight: 100;">7,732</h5>
-                    </Col>
-                    <Col :span="4" style="text-align: center;">
-                      <span style="font-size: 1.25em;color: rgb(148, 153, 138)">教师数</span>
-                      <h5 style="font-size: 2.5em;color: rgb(250, 250, 250);font-weight: 100;">108</h5>
-                    </Col>
-                    <Col :span="4" style="text-align: center;">
-                      <span style="font-size: 1.25em;color: rgb(148, 153, 138)">特级典藏数</span>
-                      <h5 style="font-size: 2.5em;color: rgb(250, 250, 250);font-weight: 100;">1,381</h5>
-                    </Col>
-                    <Col :span="4" style="text-align: center;">
-                      <span style="font-size: 1.25em;color: rgb(148, 153, 138)">高级典藏数</span>
-                      <h5 style="font-size: 2.5em;color: rgb(250, 250, 250);font-weight: 100;">2,569</h5>
-                    </Col>
-                    <Col :span="4" style="text-align: center;">
-                      <span style="font-size: 1.25em;color: rgb(148, 153, 138)">一级典藏数</span>
-                      <h5 style="font-size: 2.5em;color: rgb(250, 250, 250);font-weight: 100;">3,782</h5>
-                    </Col>
-                  </Row>
-                  <Row type="flex" justify="center" align="middle" style="height: 25%;">
-                    <Col :span="4" style="text-align: center;">
-                      <span style="font-size: 1.25em;color: rgb(148, 153, 138)">本日</span>
-                      <h5 style="font-size: 2.5em;color: rgb(250, 250, 250);font-weight: 100;">10</h5>
-                    </Col>
-                    <Col :span="4" style="text-align: center;">
-                      <span style="font-size: 1.25em;color: rgb(148, 153, 138)">近七日</span>
-                      <h5 style="font-size: 2.5em;color: rgb(250, 250, 250);font-weight: 100;">88</h5>
-                    </Col>
-                    <Col :span="4" style="text-align: center;">
-                      <span style="font-size: 1.25em;color: rgb(148, 153, 138)">近30日</span>
-                      <h5 style="font-size: 2.5em;color: rgb(250, 250, 250);font-weight: 100;">474</h5>
-                    </Col>
-                    <Col :span="4" style="text-align: center;">
-                      <span style="font-size: 1.25em;color: rgb(148, 153, 138)">本学期</span>
-                      <h5 style="font-size: 2.5em;color: rgb(250, 250, 250);font-weight: 100;">1,530</h5>
-                    </Col>
-                  </Row>
-                  <Row style="height: 50%">
-                    <Col :span="12" style="height: 100%;">
-                      <RingPie :tooltip="true" :title="'年级'" :pieData="[ {value:3482, name:'一年级'},{value:2137, name:'二年级'},{value:1302, name:'三年级'},{value:805, name:'四年级'},{value:6, name:'五年级'}]" :id="'ringpie1'"></RingPie>
-                    </Col>
-                    <Col :span="12" style="height: 100%;">
-                      <RingPie :tooltip="true" :title="'科目'" :pieData="[ {value:1958, name:'语文'},{value: 1396, name:'数学'},{value: 469, name:'英文'},{value: 206, name:'科学'},{value: 332, name:'艺术'},{value: 2087, name:'其他'}]" :id="'ringpie2'"></RingPie>
-                    </Col>
-                  </Row>
-                </div>
-              </div>  
-              <div style="height: 1.5%"></div>
-              <div style="height: 30.5%;">
-                <Row :gutter="16" type="flex" justify="space-between" align="middle" style="height: 100%;">
-                  <Col :span="12" style="height: 100%;">
-                    <div class="block-border" style="position: relative;background-color: rgba(217, 217, 217, 0.14);height: 100%;">
-                      <!-- 边角设计 start-->
-                      <div class="image-border image-border-left-top" ></div>
-                      <div class="image-border image-border-right-top" ></div>
-                      <div class="image-border image-border-left-bottom" ></div>
-                      <div class="image-border image-border-lright-bottom" ></div>
-                      <!-- 边角设计 end-->
-                      <Bubble style="padding-right: 16px;" 
-                        :bubleData="[ [0,0,1564], [1,0, 404], [2,0, 436], [3,0, 579], [4,0, 467],[5,0, 32],
-                                      [0,1,638], [1,1, 224], [2,1, 328], [3,1, 515], [4,1, 408],[5,1, 24],
-                                      [0,2,394], [1,2, 169], [2,2, 199], [3,2, 241], [4,2, 286],[5,2, 13],
-                                      [0,3,445], [1,3, 87], [2,3, 97], [3,3, 95], [4,3, 81],[5,3, 1],
-                                      [0,4,1], [1,4, 0], [2,4, 0], [3,4, 0], [4,4, 4],[5,4, 0],]"
-                        :title="'科技互动指数关系图(年级)'"
-                        :id="'bubble1'"></Bubble>
-                    </div>
-                  </Col>
-                  <Col :span="12" style="height: 100%;">
-                    <div class="block-border" style="position: relative;background-color: rgba(217, 217, 217, 0.14);height: 100%;">
-                      <!-- 边角设计 start-->
-                      <div class="image-border image-border-left-top" ></div>
-                      <div class="image-border image-border-right-top" ></div>
-                      <div class="image-border image-border-left-bottom" ></div>
-                      <div class="image-border image-border-lright-bottom" ></div>
-                      <!-- 边角设计 end-->
-                      <Bubble style="padding-right: 16px;"
-                         :bubleData="[  [0,0,78], [1,0, 20], [2,0, 41], [3,0, 46], [4,0, 19],[5,0, 0],
-                                        [0,1,190], [1,1, 0], [2,1, 0], [3,1, 0], [4,1, 0],[5,1, 0],
-                                        [0,2,776], [1,2, 241], [2,2, 294], [3,2, 361], [4,2, 275],[5,2, 0],
-                                        [0,3,249], [1,3, 53], [2,3, 38], [3,3, 57], [4,3, 66],[5,3, 0],
-                                        [0,4,144], [1,4, 27], [2,4, 32], [3,4, 52], [4,4, 73],[5,4, 0],
-                                        [0,5,57], [1,5, 20], [2,5, 44], [3,5, 54], [4,5, 30],[5,5, 0],
-                                        [0,6,154], [1,6, 49], [2,6, 87], [3,6, 177], [4,6, 280],[5,6, 21],
-                                        [0,7,586], [1,7, 160], [2,7, 195], [3,7, 224], [4,7, 218],[5,7, 13],
-                                        [0,8,56], [1,8, 0], [2,8, 15], [3,8, 28], [4,8, 13],[5,8, 0],
-                                        [0,9,592], [1,9, 271], [2,9, 279], [3,9, 369], [4,9, 202],[5,9, 11],
-                                      ]"
-                      :title="'科技互动指数关系图(科目)'" 
-                      :ylabel="['音乐', '软件测试', '语文', '英语', '美术', '科学', '班会', '数学', '开学课程', '其他']" :id="'bubble2'"></Bubble>
-                    </div>  
-                  </Col> 
-                </Row>
-              </div>  
-            </div>
-          </Col>
-          <Col  :span="11" class="block-2">
-            <!-- block-2 -->
-            <div class="block-border" style="height: 38%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <div style="height: 100%;">
-                <Row type="flex" justify="center" align="middle" style="height: 25%;">
-                  <Col :span="4" style="text-align: center;">
-                    <span style="font-size: 1.25em;color: rgb(148, 153, 138)">本日互动/教法</span>
-                    <h5 style="font-size: 2.3em;color: rgb(250, 250, 250);font-weight: 100;">33/50</h5>
-                  </Col>
-                  <Col :span="4" style="text-align: center;">
-                    <span style="font-size: 1.25em;color: rgb(148, 153, 138)">30日互动/教法</span>
-                    <h5 style="font-size: 2.3em;color: rgb(250, 250, 250);font-weight: 100;">46/47</h5>
-                  </Col>
-                  <Col :span="4" style="text-align: center;">
-                    <span style="font-size: 1.25em;color: rgb(148, 153, 138)">本学期互动/教法</span>
-                    <h5 style="font-size: 2.3em;color: rgb(250, 250, 250);font-weight: 100;">46/45</h5>
-                  </Col>
-                  <Col :span="4" style="text-align: center;">
-                    <span style="font-size: 1.25em;color: rgb(148, 153, 138)">所有互动/教法</span>
-                    <h5 style="font-size: 2.3em;color: rgb(250, 250, 250);font-weight: 100;">62/57</h5>
-                  </Col>
-                </Row>
-                <div style="height: 5%;"></div>
-                <Row  type="flex" justify="space-around" align="middle" style="height: 70%">
-                  <Col :span="11" style="height: 100%;">
-                    <InteractiveLine :id="'interactiveline1'"></InteractiveLine>
-                  </Col>
-                  <Col :span="11" style="height: 100%;">
-                    <BnteractiveBarLine :id="'BnteractiveBarLine1'"></BnteractiveBarLine>
-                  </Col>
-                </Row>
-              </div>
-            </div>
-            <div style="height: 1.5%"></div>
-            <div class="block-border" style="height: 26.5%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <TechnologyBar :id="'234'"></TechnologyBar>
-            </div>
-            <div style="height: 1.5%"></div>
-            <div style="height: 30.5%;">
-              <Row :gutter="16" type="flex" justify="space-between" align="middle" style="height: 100%;">
-                <Col :span="12" style="height: 100%;">
-                  <div class="block-border" style="position: relative;background-color: rgba(217, 217, 217, 0.14);height: 100%;">
-                    <!-- 边角设计 start-->
-                    <div class="image-border image-border-left-top" ></div>
-                    <div class="image-border image-border-right-top" ></div>
-                    <div class="image-border image-border-left-bottom" ></div>
-                    <div class="image-border image-border-lright-bottom" ></div>
-                    <!-- 边角设计 end-->
-                    <Bubble style="padding-right: 16px;" 
-                      :bubleData="[ [0,0,2039], [1,0, 380], [2,0, 479], [3,0, 365], [4,0, 212],[5,0,7],
-                                    [0,1,965], [1,1, 298], [2,1, 357], [3,1, 328], [4,1, 181],[5,1, 8],
-                                    [0,2,581], [1,2, 158], [2,2, 219], [3,2, 197], [4,2, 138],[5,2, 9],
-                                    [0,3,589], [1,3, 73], [2,3, 70], [3,3, 42], [4,3, 31],[5,3, 0],
-                                    [0,4,1], [1,4, 0], [2,4, 0], [3,4, 1], [4,4, 4],[5,4, 4],]"
-                      :title="'教法应用指数关系图(年级)'" 
-                      :id="'bubble3'"></Bubble>                  
-                  </div>
-                </Col>
-                <Col :span="12" style="height: 100%;">
-                  <div class="block-border" style="position: relative;background-color: rgba(217, 217, 217, 0.14);height: 100%;">
-                    <!-- 边角设计 start-->
-                    <div class="image-border image-border-left-top" ></div>
-                    <div class="image-border image-border-right-top" ></div>
-                    <div class="image-border image-border-left-bottom" ></div>
-                    <div class="image-border image-border-lright-bottom" ></div>
-                    <!-- 边角设计 end-->
-                    <Bubble style="padding-right: 16px;" 
-                     :bubleData="[  [0,0,121], [1,0, 36], [2,0, 29], [3,0, 13], [4,0, 5],[5,0, 0],
-                                    [0,1,189], [1,1, 2], [2,1, 0], [3,1, 1], [4,1, 0],[5,1, 0],
-                                    [0,2,1160], [1,2, 258], [2,2, 277], [3,2, 194], [4,2, 65],[5,2, 4],
-                                    [0,3,345], [1,3, 36], [2,3, 50], [3,3, 29], [4,3, 9],[5,3, 0],
-                                    [0,4,195], [1,4, 44], [2,4, 49], [3,4, 38], [4,4, 6],[5,4, 0],
-                                    [0,5,96], [1,5, 26], [2,5, 35], [3,5, 38], [4,5, 11],[5,5, 0],
-                                    [0,6,302], [1,6, 127], [2,6, 145], [3,6, 138], [4,6, 55],[5,6, 1],
-                                    [0,7,837], [1,7, 173], [2,7, 174], [3,7, 156], [4,7, 56],[5,7, 0],
-                                    [0,8,82], [1,8, 13], [2,8, 11], [3,8, 9], [4,8, 5],[5,8, 0],
-                                    [0,9,638], [1,9, 156], [2,9, 307], [3,9, 275], [4,9, 330],[5,9, 18],
-                                  ]"
-                      :title="'教法应用指数关系图(科目)'" 
-                      :ylabel="['音乐', '软件测试', '语文', '英语', '美术', '科学', '班会', '数学', '开学课程', '其他']" :id="'bubble4'"></Bubble>
-                  </div>
-                </Col> 
-              </Row>
-            </div>
-          </Col>
-        </Row>
-      </div>
-    </div>
-</template>
-
-<script>
-import InteractiveLine from '@/components/graph/interactiveLine'
-import BnteractiveBarLine from '@/components/graph/interactiveBarLine'
-import TechnologyBar from '@/components/graph/technologyBar'
-import RingPie from '@/components/graph/ringPie'
-import Bubble from '@/components/graph/bubble'
-
-export default {
-  name:'smart-dashboard',
-  data () {
-    return {
-    
-    }
-  },
-  components:{
-    InteractiveLine,
-    TechnologyBar,
-    Bubble,
-    RingPie,
-    BnteractiveBarLine,
-  },
-  methods:{   
-  }
-}
-</script>

+ 0 - 419
TEAMModelOS.SmartTeach/ClientApp/view/smart-dashboard/class/smart-class-dashboard.less

@@ -1,419 +0,0 @@
-#smart-dashboard{
-  width: 100%;
-  height: 100%;
-  // background-color: #5981ad;
-  background-image: url('../../../assets/bak_cloud.jpg');
-  background-repeat: no-repeat;
-  background-attachment: fixed;
-  background-position: center;
-  background-size: cover;
-  .Header{
-      width: 100%;
-      position: fixed;
-      padding: 10px 20px;
-      z-index: 1;
-      // background-color: #fff;
-      .smart-mark{
-          letter-spacing: 3px;
-          color: #94998a;
-      }
-      .smart-markD{
-          letter-spacing: 3px;
-          color: #94998a;
-          font-size: 15px;
-          vertical-align: middle;
-      }
-      .menu{
-          float: right;
-          height: initial;
-          background-color: transparent;
-          li{
-              color: #94998a;
-              line-height: initial;
-          }
-      }
-  }
-  .content{
-    padding-top: 40px;
-    height: 100%;
-    overflow: auto;
-    .dashBoardBtn{
-      background-color: transparent;
-      border-color: #94998a;
-      color: #94998a;
-      &:hover, &.select{
-        background-color: #94998a;
-        color: #333;
-      }
-    }
-    .box{
-      padding: 10px 0px 0px 0;
-      height: 94%;
-      margin: 0;
-      .block-1{
-        height: 100%;
-        .total{
-          height: 100%;
-          padding: 3.5% 0;
-          &-box{
-            height: 100%;
-            text-align: center;
-            border-top:1px solid #94998a;
-            border-bottom:1px solid #94998a;
-            padding: 11% 0;
-            position: relative;
-            border-radius: 5px;
-            &-border {
-              position: absolute;
-              width: 30px;
-              height: 30px;
-            }        
-            &-left-top {
-              top: -1px;
-              left: -1px;
-              border-left: 1px solid #94998a;
-              border-top: 1px solid #94998a;
-              border-top-left-radius: 5px;
-            }
-            &-right-top {
-              top: -1px;
-              right: -1px;
-              border-right: 1px solid #94998a;
-              border-top: 1px solid #94998a;
-              border-top-right-radius: 5px;
-            }
-            &-left-bottom {
-              bottom: -1px;
-              left: -1px;
-              border-left: 1px solid #94998a;
-              border-bottom: 1px solid #94998a;
-              border-bottom-left-radius: 5px;
-            }
-            &-right-bottom {
-              bottom: -1px;
-              right: -1px;
-              border-right: 1px solid #94998a;
-              border-bottom: 1px solid #94998a;
-              border-bottom-right-radius: 5px;
-            }
-            &-title{
-              color: #94998a;
-              font-size: 1.1em;
-            }
-            &-number{
-              font-size: 2em;
-              color: #FAFAFA;
-              font-weight: 100;
-            }
-            &-subtitle{
-              color: #e3e3e3;
-            }
-          }
-        }
-        .course{
-          padding: 15px 7px 0 0;
-          margin-left: 25px;
-          border-bottom: solid 1px #94998a;
-          &-Row{
-            padding-bottom: 7px;
-          }
-          &-className{
-            font-size: 1.3em;
-            font-weight: 100;
-            color: #fafafa
-          }
-          &-user{
-            max-width: 220px;
-            color: #A9B2B8;
-            display: inline-block;
-            vertical-align: middle;
-            font-size: 1em;
-          }
-          &-icon{
-            color: #A9B2B8;
-            display: inline-block;
-            vertical-align: middle;
-          }
-          &-text{
-            color: rgba(228, 233, 220, 0.63);
-          }
-        }
-      }
-      .block-2{
-        height: 100%;
-        .classroom{
-          padding-bottom:7px;
-          text-align: center;
-          &-title{
-            display: block;
-            color:#94998a;
-            font-size: 1em;
-          }
-          &-number{
-            color: #fafafa;
-            font-size: 2em;
-            font-weight: 100;
-          }
-          &:hover{
-            background: -webkit-linear-gradient(bottom, rgba(147, 166, 150, 0), rgba(147, 166, 150, 0.42));
-            background: -o-linear-gradient(bottom,rgba(147, 166, 150, 0), rgba(147, 166, 150, 0.42));
-            background: -moz-linear-gradient(bottom,rgba(147, 166, 150, 0), rgba(147, 166, 150, 0.42));
-            background: linear-gradient(to bottom,rgba(147, 166, 150, 0), rgba(147, 166, 150, 0.42));
-          }
-        }
-        .today-class-content{
-          height: 100%;
-          &-title{
-            height: 12%;
-            font-size: 1.25em;
-            color:#E4E9DC;
-            padding: 15px 0 15px 15px;
-            font-weight: 100;
-          }
-          &-contents{
-            height: 88%;
-            .chart{
-              height: 100%;
-            }
-            .detail{
-              height: 100%;
-              .detail-row{
-                height: 100%;
-                padding: 5px 0;
-                .detail-col{
-                  cursor: pointer;
-                  height:33.33333%;
-                  color: #fafafa;
-                  .detail-title{
-                    display: block;
-                    color: #94998a;
-                    padding-left: 5px;
-                    border-left: 2px solid #333;
-                    font-size: 1.1em;
-                    &-border-red{
-                      border-left-color: #FF6B6A;
-                    }
-                    &-border-green{
-                      border-left-color: #1CD0A1;
-                    }
-                    &-border-pink{
-                      border-left-color: #FF9FF4;
-                    }
-                    &-border-yellow{
-                      border-left-color: #FDC958;
-                    }
-                    &-border-blue{
-                      border-left-color: #48DBFC;
-                    }
-                    &-border-orange{
-                      border-left-color: #FFAD76;
-                    }
-                  }
-                  .detail-amount{
-                    font-size: 1.4em;
-                    font-weight: 100;
-                    padding-left: 5px;
-                  }
-                }
-              }
-
-            }
-          }
-        }
-        .course-content{
-          height: 100%;
-          &-title{
-            height: 14%;
-            h5{
-              border-bottom: 1px solid #94998a;
-              font-size: 1.25em;
-              color: #E4E9DC;
-              font-weight: 100;
-              height: 100%;
-              padding: 1.5%;
-            }
-          }
-          &-contents{
-            height: 86%;
-            &-left{
-              border-right: 1px solid #94998a;
-              height: 100%;
-              &-row{
-                height: 100%;
-                padding: 5px 0;
-                &-col{
-                  height: 24%;
-                  .contents-box{
-                    width: 77px;
-                    margin: auto;
-                    &-title{
-                      display: block;
-                      color: #94998a;
-                      padding-left: 5px;
-                      border-left: 2px solid #333;
-                      font-size: 1.1em;
-                    }
-                    &-num{
-                      font-size: 1.4em;
-                      color: #fafafa;
-                      font-weight: 100;
-                      padding-left: 5px;
-                    }
-                    &-subtitle{
-                      display: block;
-                      color: #A9B2B8;
-                      padding-left: 5px;
-                      font-size: 0.9em;
-                    }
-                    &-border-red{
-                      border-left-color: #FF6B6A;
-                    }
-                    &-border-green{
-                      border-left-color: #1CD0A1;
-                    }
-                    &-border-pink{
-                      border-left-color: #FF9FF4;
-                    }
-                    &-border-yellow{
-                      border-left-color: #FDC958;
-                    }
-                    &-border-blue{
-                      border-left-color: #48DBFC;
-                    }
-                    &-border-orange{
-                      border-left-color: #FFAD76;
-                    }
-                    &-border-purple{
-                      border-left-color: rgb(182,130,248);
-                    }
-                  }
-                }
-              }
-            }
-            &-right{
-              height: 100%;
-            }
-          }
-        }
-      }
-      .block-3{
-        height: 100%;
-        .today-class-content{
-          height: 100%;
-          &-title{
-            height: 10%;
-            font-size: 1.25em;
-            color:#E4E9DC;
-            padding: 10px 0 15px 15px;
-            font-weight: 100;
-          }
-          &-contents{
-            height: 90%;
-            .chart{
-              height: 100%;
-            }
-            .detail{
-              .detail-row{
-                height: 100%;
-                padding: 5px 0;
-                .detail-col{
-                  cursor: pointer;
-                  color: #fafafa;
-                  width: 100px;
-                  margin: auto;
-                  padding-bottom: 10px;
-                  .detail-title{
-                    display: block;
-                    color: #94998a;
-                    padding-left: 5px;
-                    border-left: 2px solid #333;
-                    font-size: 1.1em;
-                    &-border-red{
-                      border-left-color: #FF6B6A;
-                    }
-                    &-border-green{
-                      border-left-color: #1CD0A1;
-                    }
-                    &-border-pink{
-                      border-left-color: #FF9FF4;
-                    }
-                    &-border-yellow{
-                      border-left-color: #FDC958;
-                    }
-                    &-border-blue{
-                      border-left-color: #48DBFC;
-                    }
-                    &-border-orange{
-                      border-left-color: #FFAD76;
-                    }
-                  }
-                  .detail-amount{
-                    font-size: 1.3em;
-                    font-weight: 100;
-                    padding-left: 5px;
-                  }
-                }
-              }
-
-            }
-          }
-        }
-      }
-      .block-4{
-        height: 100%;
-        .teachingEvent{
-          height: 80%;
-          &-row{
-            height: 100%;
-            &-col{
-              height:100%;
-              .teachContent{
-                height: 100%;
-                &-box{
-                  text-align: center;
-                  &-title{
-                    font-size: 1.2em;
-                    display: block;
-                    color: #94998a;
-                  }
-                  &-num{
-                    display: block;
-                    color: #fafafa;
-                    font-weight: 100;
-                    font-size: 2.5em;
-                  }
-                  &-subnum{
-                    font-size: 1em;
-                    display: block;
-                    color: #fafafa;
-                  }
-                }
-              }
-            }
-          }
-
-        }
-      }
-    }
-  }
-}
-.block-border{
-  border: 0.11px solid rgba(148, 153, 138, 0.63);
-}
-.scrollstyle::-webkit-scrollbar {
-    width: 5px;
-}
-.scrollstyle::-webkit-scrollbar-track {
-  margin: 6px;
-  background: transparent;
-}
-.scrollstyle::-webkit-scrollbar-thumb {
-  border-radius: 10px;
-  background: #94998a;
-}
-.scrollstyle::-webkit-scrollbar-thumb:hover {
-  // background: #555;
-}
-.scrollstyle::-webkit-scrollbar-button {
-  display: none;
-}

+ 0 - 574
TEAMModelOS.SmartTeach/ClientApp/view/smart-dashboard/class/smart-class-dashboard.vue

@@ -1,574 +0,0 @@
-<style lang="less" scoped>
-  @import './smart-class-dashboard.less';
-</style>
-
-<template>
-    <div id="smart-dashboard">
-      <div class="Header">
-        <Row type="flex" justify="center" align="middle">
-          <Col :span="3">
-            <img style="height: 20px;" src="../../../assets/mark.svg"/>
-          </Col>
-          <Col :span="8">
-            <Icon size="20" type="md-pin" style="vertical-align: middle;color: #94998a" /><span class="smart-markD">{{ $t('breadcrumbs')}}</span>
-          </Col>
-          <Col :span="11">
-            <Menu class="menu" mode="horizontal" theme="dark">
-              <MenuItem name="1">
-                  <Icon type="ios-paper" />
-                  {{ $t('menu1')}}
-              </MenuItem>
-              <MenuItem name="2">
-                  <Icon type="ios-people" />
-                  {{ $t('menu2')}}
-              </MenuItem>
-              <MenuItem name="3">
-                  <Icon type="ios-people" />
-                  {{ $t('menu3')}}
-              </MenuItem>
-              <MenuItem name="4">
-                  <Icon type="ios-construct" />
-                  {{ $t('menu4')}}
-              </MenuItem>
-          </Menu>
-          </Col>
-          <Col :span="2" style="text-align: center;">
-            <!-- <Icon style="font-size: 24px; color: #FAFAFA;" type="md-person" /> -->
-            <img style="width: 35px;" src="@/assets/image/touxiang.png">
-          </Col>
-        </Row>
-      </div>
-      <div class="content">
-        <div style="text-align: center;padding-top: 5px;height: 5%;">
-          <Button to="/smartiotdashboard" class="dashBoardBtn">{{$t('smartClassDB.pageButton2')}}</Button>
-          <Button class="dashBoardBtn select">{{$t('smartClassDB.pageButton1')}}</Button>
-        </div>
-        <Row class="box" type="flex" justify="center">
-          <Col style="padding: 0 7px"  :span="4"  class="block-1">
-            <div style="height: 100%;">
-              <div class="block-border" style="height: 19%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-                <!-- 边角设计 start-->
-                <div class="image-border image-border-left-top" ></div>
-                <div class="image-border image-border-right-top" ></div>
-                <div class="image-border image-border-left-bottom" ></div>
-                <div class="image-border image-border-lright-bottom" ></div>
-                <!-- 边角设计 end-->
-                <Row class="total" type="flex" align="middle" justify="space-around">
-                  <Col :span="10">
-                    <div class="total-box">
-                      <div class="total-box-border total-box-left-top" ></div>
-                      <div class="total-box-border total-box-right-top" ></div>
-                      <div class="total-box-border total-box-left-bottom" ></div>
-                      <div class="total-box-border total-box-right-bottom" ></div>
-                      <span class="total-box-title">{{$t('smartClassDB.block1SubTitle1')}}</span>
-                      <h5 class="total-box-number">2,056</h5>
-                      <span class="total-box-subtitle">{{$t('smartClassDB.block1SubTitle3')}}: <span class="total-box-subtitle-num">38</span></span>
-                    </div>
-                  </Col>
-                  <Col :span="10">
-                    <div class="total-box" style="height: 100%;text-align: center;">
-                      <div class="total-box-border total-box-left-top" ></div>
-                      <div class="total-box-border total-box-right-top" ></div>
-                      <div class="total-box-border total-box-left-bottom" ></div>
-                      <div class="total-box-border total-box-right-bottom" ></div>
-                      <span class="total-box-title">{{$t('smartClassDB.block1SubTitle2')}}</span>
-                      <h5 class="total-box-number">81,762</h5>
-                      <span class="total-box-subtitle">{{$t('smartClassDB.block1SubTitle3')}}: <span class="total-box-subtitle-num">183</span></span>
-                    </div>
-                  </Col>
-                </Row>
-              </div>  
-              <div style="height: 1.5%"></div>
-              <div class="block-border" style="height: 30%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-                <!-- 边角设计 start-->
-                <div class="image-border image-border-left-top" ></div>
-                <div class="image-border image-border-right-top" ></div>
-                <div class="image-border image-border-left-bottom" ></div>
-                <div class="image-border image-border-lright-bottom" ></div>
-                <!-- 边角设计 end-->
-                <div style="height: 20%;">
-                  <h5 style="height: 100%;padding: 3% 4%;font-size: 1.25em;color: rgb(228, 233, 220);border-bottom: solid 1px #94998a;font-weight: 100;">{{$t('smartClassDB.block1Title1')}}</h5>
-                </div>
-                <div style="height: 70%;">
-                  <AccountLine :id="'accountline1'"></AccountLine>
-                </div>
-              </div>  
-              <div style="height: 1.5%"></div>
-              <div class="block-border" style="height: 48%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-                <!-- 边角设计 start-->
-                <div class="image-border image-border-left-top" ></div>
-                <div class="image-border image-border-right-top" ></div>
-                <div class="image-border image-border-left-bottom" ></div>
-                <div class="image-border image-border-lright-bottom" ></div>
-                <!-- 边角设计 end-->
-                <div style="height: 13%;">
-                  <h5 style="height: 100%;padding: 3% 4%;font-size: 1.25em;color: #E4E9DC;border-bottom: solid 1px #94998a;font-weight: 100;">{{$t('smartClassDB.block1Title2')}}</h5>
-                </div>
-                <div style="height: 87%;width:100%;position: relative;overflow: auto;">
-                  <div class="scrollstyle" style="position: absolute;right: 0px;left: 0;top: 0;bottom: 0;overflow-x: hidden;overflow-y: auto;;background-color: rgba(17, 17, 17, 0.14);">
-                      <div class="course" v-for="(item, index) in courseList" :key="index">
-                          <Row type="flex" justify="center" align="middle" class="course-Row">
-                            <Col :span="16">
-                              <h5 class="ellipsis course-className">{{ item.className }}</h5>
-                              <span class="ellipsis course-user">{{item.user }}</span><Icon class="course-icon" :size="15" type="ios-information-circle" />
-                            </Col>
-                            <Col :span="8">
-                              <div class="course-text" style="margin-bottom: 3px;">{{$t('smartClassDB.block1SubTitle4')}} | {{ item.courses }} {{$t('unit6')}}</div>
-                              <div class="course-text">{{$t('smartClassDB.block1SubTitle5')}} | {{ item.students }} {{$t('unit7')}}</div>
-                            </Col>
-                          </Row>
-                      </div>
-                  </div>
-                </div>
-              </div>  
-            </div>
-          </Col>
-          <Col  style="padding: 0 7px" :span="6" class="block-2">
-            <!-- block-2 -->
-            <div class="block-border" style="height: 38%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <div style="height: 77%">
-                <ClassTypePie :id="'classtypepie'"></ClassTypePie>
-              </div>
-              <div style="height: 23%;padding-top: 10px;">
-                 <Row type="flex" justify="space-around" align="middle">
-                  <Col :span="6" style="padding: 0 10px;">
-                    <div class="classroom">
-                      <span class="classroom-title">{{$t('smartClassDB.block2SubTitle1')}}</span>
-                      <h5 class="classroom-number">521</h5>
-                    </div>
-                  </Col>
-                  <Col :span="6" style="padding: 0 10px;">
-                    <div class="classroom">
-                      <span class="classroom-title">{{$t('smartClassDB.block2SubTitle2')}}</span>
-                      <h5 class="classroom-number">857</h5>
-                    </div>  
-                  </Col>
-                  <Col :span="6" style="padding: 0 10px;">
-                    <div class="classroom">
-                      <span class="classroom-title">{{$t('smartClassDB.block2SubTitle3')}}</span>
-                      <h5 class="classroom-number">410</h5>
-                    </div>  
-                  </Col>
-                  <Col :span="6" style="padding: 0 10px;">
-                    <div class="classroom">
-                      <span class="classroom-title">{{$t('smartClassDB.block2SubTitle4')}}</span>
-                      <h5 class="classroom-number">242</h5>
-                    </div>  
-                  </Col>
-                </Row>
-              </div>
-            </div>
-            <div style="height: 1.5%"></div>
-            <div class="block-border" style="height: 25%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <div class="today-class-content">
-                <h5 class="today-class-content-title">{{$t('smartClassDB.block3Title1')}}</h5>
-                <Row class="today-class-content-contents" type="flex" justify="center" align="middle">
-                  <Col :span="10" class="chart">
-                    <RingPie :id="'ringPie1'"></RingPie>
-                  </Col>
-                  <Col :span="14" class="detail">
-                    <Row class="detail-row" type="flex" justify="center" align="middle">
-                      <Col :span="8" class="detail-col">
-                        <div @mouseleave="pieDownPlay('class','苏格拉底')" @mouseenter="pieHeightLight('class','苏格拉底')">
-                          <span class="detail-title detail-title-border-red">苏格拉底</span>
-                          <h5 class="detail-amount">33% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="8" class="detail-col">
-                        <div @mouseleave="pieDownPlay('class','电子笔记')" @mouseenter="pieHeightLight('class','电子笔记')">
-                          <span  class="detail-title detail-title-border-pink" >电子笔记</span>
-                          <h5 class="detail-amount" >33% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="8" class="detail-col">
-                        <div @mouseleave="pieDownPlay('class','上传影片')" @mouseenter="pieHeightLight('class','上传影片')">
-                          <span  class="detail-title detail-title-border-blue" >上传影片</span>
-                          <h5 class="detail-amount" >33% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="8" class="detail-col">
-                        <div @mouseleave="pieDownPlay('class','作业作品')" @mouseenter="pieHeightLight('class','作业作品')">
-                          <span  class="detail-title detail-title-border-green">作业作品</span>
-                          <h5 class="detail-amount" >33% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="8" class="detail-col">
-                        <div @mouseleave="pieDownPlay('class','翻转课堂')" @mouseenter="pieHeightLight('class','翻转课堂')">
-                          <span  class="detail-title detail-title-border-yellow" >翻转课堂</span>
-                          <h5 class="detail-amount" >33% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                      <Col :span="8" class="detail-col">
-                        <div @mouseleave="pieDownPlay('class','线上测验')" @mouseenter="pieHeightLight('class','线上测验')">
-                          <span  class="detail-title detail-title-border-orange" >线上测验</span>
-                          <h5 class="detail-amount" >33% <small>(168)</small></h5>
-                        </div>
-                      </Col>
-                    </Row>
-                  </Col>
-                </Row>
-              </div>
-            </div>
-            <div style="height: 1.5%"></div>
-            <div class="block-border" style="height: 34%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-              <!-- 边角设计 start-->
-              <div class="image-border image-border-left-top" ></div>
-              <div class="image-border image-border-right-top" ></div>
-              <div class="image-border image-border-left-bottom" ></div>
-              <div class="image-border image-border-lright-bottom" ></div>
-              <!-- 边角设计 end-->
-              <div class="course-content">
-                <div class="course-content-title">
-                  <h5>{{$t('smartClassDB.block3Title2')}}</h5>
-                </div>
-                <Row class="course-content-contents" type="flex" justify="center" align="middle">
-                  <Col class="course-content-contents-left" :span="10">
-                    <Row class="course-content-contents-left-row" type="flex"  justify="center" align="middle">
-                      <Col class="course-content-contents-left-row-col" :span="12">
-                        <div class="contents-box">
-                          <span class="contents-box-title contents-box-border-red">模拟测验</span>
-                          <h5 class="contents-box-num">0.0%</h5>
-                          <span class="contents-box-subtitle">总数量: 0</span>
-                        </div>
-                      </Col>
-                      <Col class="course-content-contents-left-row-col" :span="12">
-                        <div class="contents-box">
-                          <span class="contents-box-title contents-box-border-green">成绩登录</span>
-                          <h5 class="contents-box-num">0.5%</h5>
-                          <span class="contents-box-subtitle">总数量: 28</span>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="course-content-contents-left-row-col">
-                        <div class="contents-box">
-                          <span class="contents-box-title contents-box-border-pink">线上测验</span>
-                          <h5 class="contents-box-num">1.5%</h5>
-                          <span class="contents-box-subtitle">总数量:77</span>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="course-content-contents-left-row-col" >
-                        <div class="contents-box">
-                          <span class="contents-box-title contents-box-border-yellow">合併活动</span>
-                          <h5 class="contents-box-num">0.4%</h5>
-                          <span class="contents-box-subtitle">总数量: 20</span>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="course-content-contents-left-row-col">
-                        <div class="contents-box">
-                          <span class="contents-box-title contents-box-border-purple">班级竞赛</span>
-                          <h5 class="contents-box-num">4.6%</h5>
-                          <span class="contents-box-subtitle">总数量: 227</span>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="course-content-contents-left-row-col" >
-                        <div class="contents-box">
-                          <span class="contents-box-title contents-box-border-orange">网路阅卷</span>
-                          <h5 class="contents-box-num">4.1%</h5>
-                          <span class="contents-box-subtitle">总数量: 214</span>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="course-content-contents-left-row-col" >
-                        <div class="contents-box">
-                          <span class="contents-box-title contents-box-border-blue">HiTeach</span>
-                          <h5 class="contents-box-num">88.9%</h5>
-                          <span class="contents-box-subtitle">总数量: 4531</span>
-                        </div>
-                      </Col>
-                      <Col :span="12" class="course-content-contents-left-row-col" >
-                      
-                      </Col>
-                    </Row>
-                  </Col>
-                  <Col :span="14" style="height: 100%;">
-                    <div style="height:65%">
-                      <CourseBar :id="'coursebar1'"></CourseBar>
-                    </div>
-                    <div style="height:35%">
-                      <Row type="flex" justify="center" align="middle" >
-                        <Col :span="11">
-                          <RingPie :singleColor="true" :id="'ringPie3'"></RingPie>
-                        </Col>
-                        <Col :span="13">
-                            <div style="color: #A9B2B8">{{$t('smartClassDB.block3SubTitle1')}} : <span style="color: #fafafa;">54</span></div>
-                            <div style="color: #A9B2B8">{{$t('smartClassDB.block3SubTitle2')}} : <span style="color: #fafafa;">48</span></div>
-                            <div style="color: #A9B2B8">{{$t('smartClassDB.block3SubTitle3')}} : <span style="color: #fafafa;">49</span></div>
-                        </Col>
-                      </Row>
-                    </div>
-                  </Col>
-                </Row>
-              </div>
-            </div>
-          </Col>
-          <Col style="padding: 0 7px" :span="12">
-            <Row style="height: 64.5%">
-              <Col :span="8" class="block-3">
-                <div class="block-border" style="height: 47.5%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-                  <!-- 边角设计 start-->
-                  <div class="image-border image-border-left-top" ></div>
-                  <div class="image-border image-border-right-top" ></div>
-                  <div class="image-border image-border-left-bottom" ></div>
-                  <div class="image-border image-border-lright-bottom" ></div>
-                  <!-- 边角设计 end-->
-                  <div class="today-class-content">
-                    <h5 class="today-class-content-title">{{$t('smartClassDB.block3Title3')}}</h5>
-                    <Row type="flex" justify="center" align="middle" class="today-class-content-contents">
-                      <Col :span="13" class="chart">
-                        <RingPie  style="height: 60%" :tooltip="true" :pieData="[{value:3719, name:'题目数'}, {value:0, name:'分享课例数'},{value:251, name:'教材数'}, {value:0, name:'校本课纲数'}]" :id="'ringPie2'"></RingPie>
-                        <div style="height: 30%;text-align: center;" >
-                          <span style="color: #94998a;">{{$t('smartClassDB.block3SubTitle4')}}</span>
-                          <h5 style="font-size: 2em;color: #fafafa;font-weight: 100;">7,689</h5>
-                        </div>
-                      </Col>
-                      <Col :span="11" class="detail">
-                        <Row class="detail-row" >
-                          <Col  class="detail-col">
-                            <div @mouseleave="pieDownPlay('class','题目数')" @mouseenter="pieHeightLight('class','题目数')">
-                              <span class="detail-title detail-title-border-red">题目数</span>
-                              <h5 class="detail-amount">3,719 <small>(48.36%)</small></small></h5>
-                            </div>
-                          </Col>
-                          <Col  class="detail-col">
-                            <div @mouseleave="pieDownPlay('class','教材数')" @mouseenter="pieHeightLight('class','教材数')">
-                              <span  class="detail-title detail-title-border-blue" >教材数</span>
-                              <h5 class="detail-amount" >251 <small>(3.26%)</small></h5>
-                            </div>
-                          </Col>
-                          <Col  class="detail-col">
-                            <div @mouseleave="pieDownPlay('class','分享课例数')" @mouseenter="pieHeightLight('class','分享课例数')">
-                              <span  class="detail-title detail-title-border-pink" >分享课例数</span>
-                              <h5 class="detail-amount" >3,104 <small>(0%)</small></h5>
-                            </div>
-                          </Col>
-                          <Col  class="detail-col">
-                            <div @mouseleave="pieDownPlay('class','校本课纲数')" @mouseenter="pieHeightLight('class','校本课纲数')">
-                              <span  class="detail-title detail-title-border-yellow" >校本课纲数</span>
-                              <h5 class="detail-amount" >615 <small>(0%)</small></h5>
-                            </div>
-                          </Col>
-                        </Row>
-                      </Col>
-                    </Row>
-                  </div>             
-                </div>
-                <div style="height: 1.5%"></div>
-                <div class="block-border" style="height: 51%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-                  <!-- 边角设计 start-->
-                  <div class="image-border image-border-left-top" ></div>
-                  <div class="image-border image-border-right-top" ></div>
-                  <div class="image-border image-border-left-bottom" ></div>
-                  <div class="image-border image-border-lright-bottom" ></div>
-                  <!-- 边角设计 end-->   
-                  <h5 style="border-bottom: 1px solid #94998a;font-size: 1.25em;color: #E4E9DC;font-weight: 100;height: 15%;padding: 10px;">各年級資源產出分佈</h5>
-                  <div style="height: 85%;">
-                    <ClassResourceBar :id="'classresourcebar1'"></ClassResourceBar>
-                  </div>
-                </div>
-              </Col>
-              <Col style="padding-left: 14px;" :span="16" class="block-4">
-                <div class="block-border" style="height: 31.5%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-                  <!-- 边角设计 start-->
-                  <div class="image-border image-border-left-top" ></div>
-                  <div class="image-border image-border-right-top" ></div>
-                  <div class="image-border image-border-left-bottom" ></div>
-                  <div class="image-border image-border-lright-bottom" ></div>
-                  <!-- 边角设计 end-->
-                  <div style="height: 100%">
-                    <div style="height: 20%;">
-                      <h5 style="font-size: 1.25em;color: #E4E9DC;padding: 10px 0 15px 15px;font-weight: 100;">{{$t('smartClassDB.block4Title1')}}</h5>
-                    </div>
-                    <div class="teachingEvent">
-                      <Row type="flex" justify="center" align="middle" class="teachingEvent-row">
-                        <Col class="teachingEvent-row-col" :span="17">
-                          <Row type="flex" justify="space-around" align="middle" class="teachContent">
-                            <Col class="teachContent-box" :span="6">
-                              <span class="teachContent-box-title">{{$t('smartClassDB.block4SubTitle1')}}</span>
-                              <span class="teachContent-box-num">175</span>
-                              <span class="teachContent-box-subnum">{{$t('smartClassDB.block4SubTitle4')}} : 11</span>
-                            </Col>
-                            <Col class="teachContent-box" :span="6">
-                              <span class="teachContent-box-title">{{$t('smartClassDB.block4SubTitle2')}}</span>
-                              <span class="teachContent-box-num">537</span>
-                              <span class="teachContent-box-subnum">{{$t('smartClassDB.block4SubTitle4')}} : 11</span>
-                            </Col>
-                            <Col class="teachContent-box" :span="6">
-                              <span class="teachContent-box-title">{{$t('smartClassDB.block4SubTitle3')}}</span>
-                              <span class="teachContent-box-num">643</span>
-                              <span class="teachContent-box-subnum">{{$t('smartClassDB.block4SubTitle4')}} : 11</span>
-                            </Col>                
-                          </Row>
-                        </Col>
-                        <Col :span="7" style="height:100%">
-                          <RingPie :id="'ringPie4'"></RingPie>
-                        </Col>
-                      </Row>
-                    </div>
-                  </div>
-                </div>
-                <div style="height: 2.3%"></div>
-                <div class="block-border" style="height: 31.5%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-                  <!-- 边角设计 start-->
-                  <div class="image-border image-border-left-top" ></div>
-                  <div class="image-border image-border-right-top" ></div>
-                  <div class="image-border image-border-left-bottom" ></div>
-                  <div class="image-border image-border-lright-bottom" ></div>
-                  <!-- 边角设计 end-->
-                  <div style="height: 100%">
-                    <div style="height: 20%;">
-                      <h5 style="font-size: 1.25em;color: #E4E9DC;padding: 10px 0 15px 15px;font-weight: 100;">{{$t('smartClassDB.block4Title2')}}</h5>
-                    </div>
-                    <div class="teachingEvent">
-                      <Row type="flex" justify="center" align="middle" class="teachingEvent-row">
-                        <Col class="teachingEvent-row-col" :span="17">
-                          <Row type="flex" justify="space-around" align="middle" class="teachContent">
-                            <Col class="teachContent-box" :span="6">
-                              <span class="teachContent-box-title">{{$t('smartClassDB.block4SubTitle5')}}</span>
-                              <span class="teachContent-box-num">519</span>
-                              <span class="teachContent-box-subnum">{{$t('smartClassDB.block4SubTitle4')}} : 11</span>
-                            </Col>
-                            <Col class="teachContent-box" :span="6">
-                              <span class="teachContent-box-title">{{$t('smartClassDB.block4SubTitle6')}}</span>
-                              <span class="teachContent-box-num">410</span>
-                              <span class="teachContent-box-subnum">{{$t('smartClassDB.block4SubTitle4')}} : 11</span>
-                            </Col>
-                            <Col class="teachContent-box" :span="6">
-                              <span class="teachContent-box-title">{{$t('smartClassDB.block4SubTitle7')}}</span>
-                              <span class="teachContent-box-num">426</span>
-                              <span class="teachContent-box-subnum">{{$t('smartClassDB.block4SubTitle4')}} : 11</span>
-                            </Col>                
-                          </Row>
-                        </Col>
-                        <Col :span="7" style="height:100%">
-                          <RingPie :id="'ringPie5'"></RingPie>
-                        </Col>
-                      </Row>
-                    </div>
-                  </div>
-                </div>
-                <div style="height: 2.3%"></div>
-                <div style="height: 32.5%;">
-                  <Row style="height: 100%;">
-                    <Col :span="8" style="height: 100%;padding-right:1.5%;">
-                      <div class="block-border" style="height: 100%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-                        <!-- 边角设计 start-->
-                        <div class="image-border image-border-left-top" ></div>
-                        <div class="image-border image-border-right-top" ></div>
-                        <div class="image-border image-border-left-bottom" ></div>
-                        <div class="image-border image-border-lright-bottom" ></div>
-                        <!-- 边角设计 end-->
-                        <h5 style="height: 15%;font-size: 1.25em;color: #E4E9DC;padding-top: 10px;font-weight: 100;text-align: center;">{{$t('smartClassDB.block4Title3')}}</h5>
-                        <div style="height: 85%">
-                          <FinishPercentPie :id="'finishpercentpie1'"></FinishPercentPie>
-                        </div>
-                      </div>
-                    </Col>
-                    <Col :span="8" style="height: 100%;padding:0 1%;">
-                      <div class="block-border" style="height: 100%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-                        <!-- 边角设计 start-->
-                        <div class="image-border image-border-left-top" ></div>
-                        <div class="image-border image-border-right-top" ></div>
-                        <div class="image-border image-border-left-bottom" ></div>
-                        <div class="image-border image-border-lright-bottom" ></div>
-                        <!-- 边角设计 end-->
-                        <h5 style="height: 15%;font-size: 1.25em;color: #E4E9DC;padding-top: 10px;font-weight: 100;text-align: center;">{{$t('smartClassDB.block4Title4')}}</h5>
-                        <div style="height: 85%">
-                          <FinishPercentPie :pieData="{total: 537, value: 354}" :id="'finishpercentpie2'"></FinishPercentPie>
-                        </div>                        
-                      </div>
-                    </Col>
-                    <Col  :span="8" style="height: 100%;padding-left: 1.5%;">
-                      <div class="block-border"  style="height: 100%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-                        <!-- 边角设计 start-->
-                        <div class="image-border image-border-left-top" ></div>
-                        <div class="image-border image-border-right-top" ></div>
-                        <div class="image-border image-border-left-bottom" ></div>
-                        <div class="image-border image-border-lright-bottom" ></div>
-                        <!-- 边角设计 end-->
-                        <h5 style="height: 15%;font-size: 1.25em;color: #E4E9DC;padding-top: 10px;font-weight: 100;text-align: center;">{{$t('smartClassDB.block4Title5')}}</h5>
-                        <div style="height: 85%">
-                          <FinishPercentPie :pieData="{total: 643, value:379}" :id="'finishpercentpie3'"></FinishPercentPie>
-                        </div>
-                      </div>
-                    </Col>
-                  </Row>
-                </div>
-              </Col>
-            </Row>
-            <div style="height: 1.5%"></div>
-            <Row style="height: 34%;">
-              <Col style="height: 100%;"> 
-                <div class="block-border" style="height: 100%;position: relative;background-color: rgba(217, 217, 217, 0.14);">
-                  <!-- 边角设计 start-->
-                  <div class="image-border image-border-left-top" ></div>
-                  <div class="image-border image-border-right-top" ></div>
-                  <div class="image-border image-border-left-bottom" ></div>
-                  <div class="image-border image-border-lright-bottom" ></div>
-                  <!-- 边角设计 end-->
-                  <div style="height: 20%">
-                    <h5 style="font-size: 1.25em;color: #E4E9DC;padding: 15px 0 0 15px;font-weight: 100;">{{$t('smartClassDB.block4Title6')}}</h5>                
-                  </div>
-                  <div style="height: 80%">
-                    <TotalLine :id="'totalLine1'"></TotalLine>
-                  </div>
-                </div>  
-              </Col>
-            </Row>
-          </Col>
-        </Row>
-      </div>
-    </div>
-</template>
-
-<script>
-import AccountLine from '@/components/graph/accountLine'
-import TeachScienceBar from '@/components/graph/teachScienceBar'
-import ClassTypePie from '@/components/graph/classtypePie'
-import RingPie from '@/components/graph/ringPie'
-import CourseBar from '@/components/graph/courseBar'
-import FinishPercentPie from '@/components/graph/finishPercentPie'
-import TotalLine from '@/components/graph/totalLine'
-import ClassResourceBar from '@/components/graph/classResourceBar'
-
-export default {
-  name:'smart-dashboard',
-  data () {
-    return {
-      courseList:[
-        {className: '六年级数学', user: '布鲁斯', students: 42, courses: 62},
-        {className: '一年级物理', user: 'Picc', students: 30, courses: 51},
-        {className: '三年级英文', user: '薇拉', students: 25, courses: 45},
-        {className: '三年级语文', user: '梁老师', students: 42, courses: 27},
-        {className: '六年级化学', user: '贾斯汀', students: 32, courses: 14},
-        {className: '七年级理化', user: '陈老师', students: 33, courses: 34},
-        {className: '八年级地球科学', user: '彭老师', students: 25, courses: 52},
-        {className: '六年级历史', user: '王老师', students: 37, courses: 32},
-        {className: '九年级健康教育', user: '里欧', students: 42, courses: 52},
-        {className: '二年级童军', user: 'Daphne', students: 30, courses: 30},
-      ]     
-    }
-  },
-  components:{
-    AccountLine,
-    TeachScienceBar,
-    ClassTypePie,
-    RingPie,
-    CourseBar,
-    FinishPercentPie,
-    TotalLine,
-    ClassResourceBar
-  },
-  methods:{   
-  }
-}
-</script>

+ 0 - 137
TEAMModelOS.SmartTeach/ClientApp/view/student-analysis/index/SAindex.css

@@ -1,137 +0,0 @@
-/*柱状堆叠图样式 start*/
-.bargraph_box {
-    width: 100%;
-    font-size: 1.1rem;
-    font-weight: bold;
-}
-
-.bargraph {
-    width: 100%;
-    height: auto;
-}
-
-.bargraph_title {
-    width: 100%;
-    font-size: 1.0rem;
-    font-weight: bold;
-    padding-left: 3%;
-    padding-bottom: 3%;
-}
-
-.bargraph_box {
-    width: 100%;
-    font-size: 0.9rem;
-    font-weight: bold;
-}
-
-#myChart {
-    padding: 4% 0% 0% 0% !important;
-}
-
-.ivu-dropdown {
-    width: 100%;
-}
-/*柱状堆叠图样式 end*/
-
-/*雷达图样式 start*/
-.radargraph_box {
-    width: 100%;
-}
-
-#myChart_lei {
-    padding: 4% 1%;
-}
-/*雷达图样式 end*/
-
-/*饼图样式 start*/
-.ivu-icon {
-    font-weight: bold;
-}
-.subjects_box {
-    width: 100%;
-    padding: 2.5% 1% 5% 1%;
-    list-style: none;
-}
-.subjects_title {
-    font-size: 1.1rem;
-    font-weight: bold;
-    color: #333;
-}
-.subjects_listbox {
-    width: 13.7%;
-    height: 100%;
-    /*border:1px solid red;*/
-    text-align: center;
-    float: left;
-    margin: 10% 1% 15%;
-}
-.top {
-    width: 100%;
-    padding-bottom: 5%;
-}
-
-.bottom {
-    width: 100%;
-    padding-top: 8%;
-}
-
-.num {
-    font-size: 1.4rem;
-}
-
-.datatitle {
-    font-size: 0.9rem;
-    color: #333;
-}
-
-.icon_top {
-    color: #1acb9f;
-}
-
-.icon_down {
-    color: #f1494a;
-}
-/*饼图样式 end*/
-
-/*底部折线图样式 start*/
-.linechart_box {
-    width: 100%;
-    height: auto;
-}
-
-.type_box {
-    width: 15%;
-    height: 40px;
-    float: left;
-    margin-left: 13%;
-}
-.wenke {
-    width: 20%;
-    padding: 1%;
-    display: block;
-    float: left;
-    border: 1px solid #384a56;
-    text-align: center;
-    font-size: 0.85rem;
-    background-color: #384a56;
-    color: #fff;
-}
-.like {
-    width: 20%;
-    padding: 1%;
-    display: block;
-    float: left;
-    border: 1px solid #384a56;
-    text-align: center;
-    font-size: 0.85rem;
-    background-color: #384a56;
-    color: #fff;
-    margin-left: 2%;
-}
-    .artsscience {
-    float:left;
-    width:50%;
-    margin-left:3%;
-    }
-/*底部折线图样式 end*/
-

+ 0 - 162
TEAMModelOS.SmartTeach/ClientApp/view/student-analysis/index/SAindex.vue

@@ -1,162 +0,0 @@
-<style lang="less" scoped>
- @import '../../../assets/CSS/student-analysis/common.css';
- @import './SAindex.css';
-</style>
-<template>
-    <Row  class="index">
-     <Headers :parentToChild="satitle" :identityselect="identitydata" ></Headers>
-    <Row class="index_box">
-     <Col span="24" class="content_box">
-      <div class="index_box_title"><p>学情分析服务</p></div>
-      <Row class="content">
-        <Col class="left_box" style="width:14%;float:left">
-            <ChooseAttention></ChooseAttention>
-            <ChooseExam></ChooseExam>
-        </Col>
-        <Col  class="right_box" style="width:86%;float:left">
-          <Basics></Basics>
-          <Col class="left_echarts">
-            <Bargraph></Bargraph>
-          </Col>
-          <Col class="center_echarts">
-            <Radargraph></Radargraph>
-          </Col>
-          <Col class="right_echarts">
-            <Subjectsmanifestation></Subjectsmanifestation>
-          </Col>
-        </Col>
-        <Col  span="20" class="bottom_linechart">
-          <LineChart></LineChart>
-        </Col>
-      </Row>
-      </Col>
-    </Row>
-    </Row>
-</template>
-
-<script>
-  import Headers from '@/common/headers.vue'
-  import ChooseAttention from '@/components/student-analysis/SAchooseattention.vue'
-  import ChooseExam from '@/components/student-analysis/SAchooseexam.vue'
-  import Basics from '@/components/student-analysis/SAbasics.vue'
-  import Bargraph from '@/components/student-analysis/SAbargraph.vue'
-  import Radargraph from '@/components/student-analysis/SAradargraph.vue'
-  import Subjectsmanifestation from '@/components/student-analysis/SAsubjectsmanifestation.vue'
-  import LineChart from '@/components/student-analysis/SAlinechart.vue'
-    export default {
-      components:{
-        Headers,
-        ChooseAttention,
-        ChooseExam,
-        Basics,
-        Bargraph,
-        Radargraph,
-        Subjectsmanifestation,
-        LineChart
-    },
-      data(){
-          return{
-            satitle: '学情分数分析服务/学情仪表板',
-            identitydata: [
-              { "id": 1, "name": '成都紫藤小学', "rolename": '管理员', status: '1' },
-              { "id": 2, "name": '成都七中小学', "rolename": '班主任', status: '2' }
-            ],
-                }
-      },
-      mounted(){
-        this.init();
-        this.ceshiApi();
-      },
-      methods: {
-        init(){
-          //柱状图
-          //let yuwen = ["103","110","108","99","103","110","120"];
-          //let shuxue = ["98","100","105","109","85","90","103"];
-          //let yingyu = ["110","102","103","100","99","93","83"];
-          //let wuli = ["77","80","75","69","80","77","82"];
-          //let huaxue = ["63","75","78","81","90","72","75"];
-          //let shengwu = ["68","70","72","78","74","76","79"];
-          //let quyu = ["526","526","526","526","526","526","526"];
-          //let object= ["成都七中","成都四中","成都九中","成都树德中学","师大一中","西川中学","成都市石室中学"];
-          //let name=["语文","数学","英语","物理","化学","生物"];
-          //this.$store.state.zhuxhuang.titledata = name;
-          //this.$store.state.zhuxhuang.object_name = object;
-          //this.$store.state.zhuxhuang.languagedata = yuwen;
-          //this.$store.state.zhuxhuang.mathdata = shuxue;
-          //this.$store.state.zhuxhuang.englishdata = yingyu;
-          //this.$store.state.zhuxhuang.physicsdata = wuli;
-          //this.$store.state.zhuxhuang.chemistrydata = huaxue;
-          //this.$store.state.zhuxhuang.biologydata = shengwu;
-          //this.$store.state.zhuxhuang.area_score = quyu;
-          //this.$store.state.zhuxhuang.mode = true;
-
-          //雷达图
-          //let mingcheng=["校级数据","区级数据"];
-          //let dataname=["校级 VS 区域"];
-          //let data1=["103","110","101","82","78","66"];
-          //let data2=["99","103","108","88","69","79"];
-          //this.$store.state.leida.titledata = mingcheng;
-          //this.$store.state.leida.dataname = dataname;
-          //this.$store.state.leida.data1 = data1;
-          //this.$store.state.leida.data2 = data2;
-          //this.$store.state.leida.mode = true;
-
-
-          //饼图
-          //let one=["80"];
-          //let one_num=["20"];
-          //let two=["54"];
-          //let two_num=["46"];
-          //let three=["72"];
-          //let three_num=["28"];
-          //let four=["66"];
-          //let four_num=["34"];
-          //let five=["60"];
-          //let five_num=["40"];
-          //let six=["82"];
-          //let six_num=["18"];
-          //this.$store.state.pie.one=one;
-          //this.$store.state.pie.one_num=one_num;
-          //this.$store.state.pie.two=two;
-          //this.$store.state.pie.two_num=two_num;
-          //this.$store.state.pie.three=three;
-          //this.$store.state.pie.three_num=three_num;
-          //this.$store.state.pie.four=four;
-          //this.$store.state.pie.four_num=four_num;
-          //this.$store.state.pie.five=five;
-          //this.$store.state.pie.five_num=five_num;
-          //this.$store.state.pie.six=six;
-          //this.$store.state.pie.six_num=six_num;
-          //this.$store.state.pie.mode = true;
-
-          //折线图
-          //this.$store.state.linechart.mode = true;
-          //let line_name=["成都七中","成都九中","成都树德","川师附中","成都四中"];
-          //let line_data=["2019第一次区级联考","2019第二次区级联考","2019第三次区级联考","2019第四次区级联考","2019第五次区级联考"];
-          //let line_series=[
-          //                  {"name":'成都七中',"data":["580","610","530","490","550"]},
-          //                  {"name":'成都九中',"data":["530","620","550","500","520"]},
-          //                  {"name":'成都树德',"data":["560","600","540","530","510"]},
-          //                  {"name":'川师附中',"data":["520","580","530","510","520"]},
-          //                  {"name":'成都四中',"data":["540","605","548","515","540"]},
-          //                ];
-          //this.$store.state.linechart.obj_name=line_name;
-          //this.$store.state.linechart.obj_data=line_data;
-          //this.$store.state.linechart.obj_series=line_series;
-
-        },
-        ceshiApi(){
-          //this.$get('/api/v2/movie/top250')
-          //  .then((response) => {
-          //    console.log(response,1111111)
-          //  })
-        }
-      },
-    }
-</script>
-<style>
-  body{
-    margin: 0px !important;
-    font-family: "微软雅黑";
-  }
-</style>

+ 0 - 148
TEAMModelOS.SmartTeach/ClientApp/view/student-analysis/index/SAteach.css

@@ -1,148 +0,0 @@
-/*柱状图 带横线 start*/
-.barline_box {
-    width: 100%;
-    height: 450px;
-}
-#myChart {
-    padding: 4% 2% 0% 2% !important;
-}
-/*柱状图 带横线 end*/
-
-/*多环饼图样式 start*/
-.annulus_box {
-    width: 100%;
-    height: 450px;
-}
-.annulus_title {
-    width: 100%;
-    font-size: 18px;
-    font-weight: bold;
-    color: #333;
-    padding-left: 3%;
-    padding-top: 1%;
-}
-/*多环饼图样式 end*/
-
-/*多饼图展现样式 start*/
-.percent_box {
-    width: 100%;
-    height: 490px;
-}
-
-.title_box {
-    width: 100%;
-    padding: 0.5% 1% 0.5% 1%;
-    font-size: 18px;
-    font-weight: bold;
-    color: #000;
-    font-family: "微软雅黑";
-}
-
-.percent_list {
-    width: 100%;
-    height: 200px;
-    padding-left: 2%;
-}
-
-.piedata_box {
-    width: 32%;
-    height: 200px;
-    float: left;
-}
-
-.pie_box {
-    width: 55%;
-    height: 200px;
-    display: block;
-    float: left;
-    padding-left: 2%;
-}
-
-.pie_title {
-    width: 40%;
-    float: left;
-    text-align: center;
-    margin-top: 18%;
-    margin-left: 2%;
-}
-
-.title_name {
-    font-size: 13px;
-    color: #333;
-    font-weight: bold;
-    padding-bottom: 10%;
-}
-
-.title_num {
-    font-size: 16px;
-    padding-bottom: 10%;
-}
-
-.title_two {
-    margin-top: 10%;
-}
-
-.pie_marked {
-    width: 40%;
-    float: left;
-    text-align: center;
-    padding-top: 35%;
-}
-
-.icon_top {
-    color: #009933;
-    opacity: 0.8;
-    filter: alpha(opacity=80); /* 针对 IE8 以及更早的版本 */
-}
-
-.icon_down {
-    color: #FF6666;
-    opacity: 0.8;
-    filter: alpha(opacity=80); /* 针对 IE8 以及更早的版本 */
-}
-/*多饼图展现样式 end*/
-
-/*底部折线图样式 start*/
-.linechart_box {
-    width: 100%;
-    height: auto;
-}
-
-.type_box {
-    width: 15%;
-    height: 40px;
-    float: left;
-    margin-left: 13%;
-}
-
-.wenke {
-    width: 20%;
-    padding: 1%;
-    display: block;
-    float: left;
-    border: 1px solid #384a56;
-    text-align: center;
-    font-size: 0.85rem;
-    background-color: #384a56;
-    color: #fff;
-}
-
-.like {
-    width: 20%;
-    padding: 1%;
-    display: block;
-    float: left;
-    border: 1px solid #384a56;
-    text-align: center;
-    font-size: 0.85rem;
-    background-color: #384a56;
-    color: #fff;
-    margin-left: 2%;
-}
-
-.artsscience {
-    float: left;
-    width: 50%;
-    margin-left: 3%;
-}
-/*底部折线图样式 end*/

+ 0 - 89
TEAMModelOS.SmartTeach/ClientApp/view/student-analysis/index/SAteach.vue

@@ -1,89 +0,0 @@
-<style lang="less" scoped>
-  @import '../../../assets/CSS/student-analysis/common.css';
-  @import './SAteach.css';
-</style>
-<template>
-    <Row  class="index">
-     <Headers :parentToChild="satitle" :identityselect="identitydata"></Headers>
-    <Row class="index_box">
-     <Col span="24" class="content_box">
-      <div class="index_box_title"><p>学情分析服务</p></div>
-      <Row class="content">
-        <Col class="left_box" style="width:14%;float:left">
-            <ChooseAttention></ChooseAttention>
-            <ChooseExam></ChooseExam>
-        </Col>
-        <Col  span="20" class="right_box" style="width:86%;float:left">
-          <Basics></Basics>
-          <Col class="left_echarts">
-            <Barline></Barline>
-          </Col>
-          <Col class="center_echarts">
-          <Annulus></Annulus>
-          </Col>
-          <Col class="right_echarts">
-            <Percent></Percent>
-          </Col>
-        </Col>
-        <Col  span="20" class="bottom_linechart">
-          <LineChart></LineChart>
-        </Col>
-      </Row>
-      </Col>
-    </Row>
-    </Row>
-</template>
-
-<script>
-  import Headers from '@/common/headers.vue'
-  import ChooseAttention from '@/components/student-analysis/SAchooseattention.vue'
-  import ChooseExam from '@/components/student-analysis/SAchooseexam.vue'
-  import Basics from '@/components/student-analysis/SAbasics.vue'
-  import Barline from '@/components/student-analysis/SAbarline.vue'
-  import Annulus from '@/components/student-analysis/SAannulus.vue'
-  import Percent from '@/components/student-analysis/SApercent.vue'
-  import LineChart from '@/components/student-analysis/SAlinechart.vue'
-    export default {
-      components:{
-        Headers,
-        ChooseAttention,
-        ChooseExam,
-        Basics,
-        Barline,
-        Annulus,
-        Percent,
-        LineChart
-      },
-      data(){
-          return{
-            satitle: '学情分数分析服务/学情仪表板',
-            identitydata: [
-              { "id": 1, "name": '成都紫藤小学', "rolename": '管理员', status: '1' },
-              { "id": 2, "name": '成都七中小学', "rolename": '班主任', status: '2' }
-            ],
-                }
-      },
-      mounted(){
-        this.init();
-        this.ceshiApi();
-      },
-      methods: {
-        init(){
-        },
-        ceshiApi(){
-          //this.$get('/api/v2/movie/top250')
-          //  .then((response) => {
-          //    console.log(response,1111111)
-          //  })
-        }
-      },
-    }
-</script>
-<style>
-  body{
-    margin: 0px !important;
-    font-family: "微软雅黑";
-  }
-</style>
-
-

+ 0 - 78
TEAMModelOS.SmartTeach/ClientApp/view/student-analysis/total-analysis/SAtotal.vue

@@ -1,78 +0,0 @@
-<style lang="less" scoped>
-  @import '../../../assets/CSS/student-analysis/common.css';
-</style>
-<template>
-  <Row class="index">
-    <Headers :parentToChild="satitle" :identityselect="identitydata"></Headers>
-    <Row class="index_box">
-      <Col span="24" class="content_box">
-      <div class="index_box_title"><p>学情分析服务</p></div>
-      <Row class="content">
-        <Col class="left_box" style="width:14%;float:left">
-        <ChooseAttention></ChooseAttention>
-        <ChooseExam></ChooseExam>
-        </Col>
-        <Col span="20" class="right_box" style="width:86%;float:left">
-      
-        <Col class="left_echarts">
-        
-        </Col>
-        <Col class="center_echarts">
-      
-        </Col>
-        <Col class="right_echarts">
-       
-        </Col>
-        </Col>
-        <Col span="20" class="bottom_linechart">
-      
-        </Col>
-      </Row>
-      </Col>
-    </Row>
-  </Row>
-</template>
-
-<script>
-  import Headers from '@/common/headers.vue'
-  import ChooseAttention from '@/components/student-analysis/SAchooseattention.vue'
-  import ChooseExam from '@/components/student-analysis/SAchooseexam.vue'
-    export default {
-      components:{
-        Headers,
-        ChooseAttention,
-        ChooseExam,
-      },
-      data(){
-          return{
-            satitle: '学情分数分析服务/学情仪表板',
-            identitydata: [
-              { "id": 1, "name": '成都紫藤小学', "rolename": '管理员', status: '1' },
-              { "id": 2, "name": '成都七中小学', "rolename": '班主任', status: '2' }
-            ],
-                }
-      },
-      mounted(){
-        this.init();
-        this.ceshiApi();
-      },
-      methods: {
-        init(){
-        },
-        ceshiApi(){
-          //this.$get('/api/v2/movie/top250')
-          //  .then((response) => {
-          //    console.log(response,1111111)
-          //  })
-        }
-      },
-    }
-</script>
-<style>
-  body {
-    margin: 0px !important;
-    font-family: "微软雅黑";
-  }
-</style>
-
-

+ 0 - 258
TEAMModelOS.SmartTeach/ClientApp/view/syllabus/index/KnowPoint.css

@@ -1,258 +0,0 @@
-.know-main {
-    width: 100%;
-    height: 100%;
-    background: #fff;
-    padding: 20px 20px 20px 0;
-    box-sizing: border-box;
-}
-
-
-.content-wrap {
-    width: 100%;
-    height: 100%;
-    border: 2px solid #464646;
-}
-
-.header-wrap {
-    position: relative;
-    width: 100%;
-    height: 50px;
-    display: flex;
-    flex-direction: row;
-    justify-content: space-between;
-    border-bottom: 2px solid #464646;
-}
-
-    .header-wrap /deep/ .ivu-input {
-        height: 48px;
-        border: 0;
-        padding-left: 15px;
-        border-radius: 0 !important;
-        border-right: 2px solid #464646;
-        font-size: 14px;
-        font-weight: bold;
-        color: #464646;
-    }
-
-        .header-wrap /deep/ .ivu-input::-webkit-input-placeholder {
-            color: #464646;
-        }
-
-    .header-wrap /deep/ .ivu-input-suffix i {
-        line-height: 50px;
-    }
-
-.header-right {
-    height: 100%;
-    display: flex;
-    flex-direction: row;
-    justify-content: center;
-    align-items: center;
-}
-
-.header-right-item {
-    margin-right: 25px;
-    font-weight: 500;
-    font-size: 12px;
-    cursor: pointer;
-}
-
-.list-type .ivu-icon {
-    margin-left: 10px;
-    color: rgb(154,154,154);
-    cursor: pointer;
-}
-
-.list-type-active {
-    color: #fff !important;
-    background-color: rgb(154,154,154);
-    border-radius: 50%;
-    padding: 3px;
-}
-
-.sy-list-wrap {
-    width: 100%;
-    height: 100%;
-    display: flex;
-    flex-direction: column;
-    padding-bottom: 50px;
-}
-
-    .sy-list-wrap .knowpoints-filter {
-        width: 100%;
-        height: 50px;
-        border-bottom: 2px solid #464646;
-        margin-bottom: 10px;
-        display: flex;
-        flex-direction: row;
-        align-items: center;
-    }
-
-        .sy-list-wrap .knowpoints-filter span {
-            margin-left: 20px;
-            font-size: 14px;
-            color: rgb(78,78,78);
-            cursor: pointer;
-        }
-
-        .sy-list-wrap .knowpoints-filter .sort-active {
-            color: #000;
-            font-size: 18px;
-            font-weight: bold;
-        }
-
-.list-col {
-    overflow-y: auto;
-    height: 100%;
-}
-
-    .list-col /deep/ .ivu-input-wrapper {
-        width: 60%;
-    }
-
-.list-knowpoints {
-    /*padding-top:30px;*/
-}
-
-.sy-list-wrap /deep/ .ivu-collapse > .ivu-collapse-item > .ivu-collapse-header {
-    height: 100px;
-    line-height: 100px;
-}
-
-.collapse-header {
-    display: flex;
-    flex-direction: column;
-    justify-content: center;
-}
-
-.know-block-item {
-    width: 100%;
-    display: flex;
-    flex-direction: column;
-    justify-content: center;
-    padding-left: 15px;
-    border-bottom: 1px solid #464646;
-    cursor: pointer;
-}
-
-    .know-block-item:hover {
-        background: #fff;
-    }
-
-.know-block-name {
-    font-size: 18px;
-    font-weight: 600;
-}
-
-.know-block-builder {
-    margin-left: 15px;
-}
-
-.compose-block-tab /deep/ .ivu-input {
-    width: 90%;
-}
-
-.compose-block-tab /deep/ .ivu-tabs-bar {
-    display: flex;
-    flex-direction: row;
-    justify-content: center;
-}
-
-.compose-block-tab /deep/ .ivu-radio-group {
-    display: flex;
-    flex-direction: column;
-    padding-left: 15px;
-}
-
-.compose-block-tab /deep/ .ivu-radio {
-    margin: 10px;
-}
-
-.compose-block-tab /deep/ .ivu-tabs-tabpane {
-    padding-left: 10px;
-}
-
-.compose-block-tab .checked-points {
-    display: flex;
-    flex-direction: row;
-    flex-wrap: wrap;
-}
-
-    .compose-block-tab .checked-points .knowpoint-item {
-        padding: 5px 10px;
-    }
-
-.modal-title {
-    margin: 10px;
-}
-
-.list-col::-webkit-scrollbar { /*滚动条整体样式*/
-    width: 0px; /*高宽分别对应横竖滚动条的尺寸*/
-    height: 1px;
-}
-
-.list-col:hover .ztree_box::-webkit-scrollbar {
-    width: 5px;
-}
-
-.list-col::-webkit-scrollbar-thumb { /*滚动条里面小方块*/
-    border-radius: 10px;
-    -webkit-box-shadow: inset 0 0 5px rgba(0,0,0,0.2);
-    background: rgba(255,255,38,1.000);
-}
-
-.list-col::-webkit-scrollbar-track { /*滚动条里面轨道*/
-    background-color: rgba(244,244,0,0.957);
-}
-
-.knowpoints {
-    width: 100%;
-    display: flex;
-    flex-direction: row;
-    flex-wrap: wrap;
-    padding: 0 10px;
-}
-
-.knowpoint-item {
-    position: relative;
-    display: flex;
-    padding: 10px 20px;
-    margin: 5px;
-    background: rgb(255,255,255);
-    color: #464646;
-    border: 1px solid rgb(216, 216, 216);
-    border-radius: 100px;
-    font-size: 12px;
-    cursor: pointer;
-}
-
-    .knowpoint-item:hover, .knowpoint-item-active {
-        background: rgb(45, 140, 240);
-        color: #fff !important;
-    }
-
-    .knowpoint-item .ivu-icon {
-        margin-left: 5px;
-    }
-
-.k-tools {
-    visibility: hidden;
-}
-
-.k-block-tools {
-    margin-left: 20px;
-    visibility: hidden;
-}
-
-    .k-block-tools .ivu-icon {
-        margin-left: 15px;
-        font-size: 16px;
-    }
-
-.overflow-text {
-    display: inline-block;
-    width: 60%;
-    overflow: hidden;
-    white-space: nowrap;
-    text-overflow: ellipsis;
-}

+ 0 - 399
TEAMModelOS.SmartTeach/ClientApp/view/syllabus/index/KnowPoint.vue

@@ -1,399 +0,0 @@
-
-<template>
-  <div class="know-main center">
-    <div class="content-wrap">
-      <div class="header-wrap">
-        <Input placeholder="关键词搜索知识点" style="width:25% !important;" />
-        <div class="list-type center">
-          <Icon type="md-menu" size="20" :class="listType==0?'list-type-active':''" @click="changeListType(0)"/>
-          <Icon type="ios-keypad" size="20" :class="listType==1?'list-type-active':''" @click="changeListType(1)"/>
-        </div>
-        <div class="header-right">
-          <div class="header-right-item" @click="addPoint" v-show="listType==1">
-            <Icon type="logo-buffer" size="18" />
-            <span>新增知识点</span>
-          </div>
-          <div class="header-right-item" @click="composeBlock" v-show="listType==1 && pointCheckedList.length > 0">
-            <Icon type="logo-buffer" size="18" />
-            <span>组成知识块</span>
-          </div>
-          <div class="header-right-item" @click="addBlock" v-show="listType==0">
-            <Icon type="ios-browsers" size="18" />
-            <span>新增知识块</span>
-          </div>
-          <div class="header-right-item">
-            <Icon type="ios-cloud-download" size="18" />
-            <span>导入知识点</span>
-          </div>
-        </div>
-      </div>
-      <div class="sy-list-wrap">
-        <!-- 知识块 -->
-        <div class="list-col" v-if="isShowBlock">
-          <Collapse simple accordion @on-change="collapseChange">
-            <Panel v-for="(item,index) in knowBlockList" class="know-block-item" :key="index" :name="item.period">
-              <Input v-if="item.id==block_edit_id" :ref="'block'+item.id" clearable type="text" v-model="item.name"
-                     @on-blur="editKnowBlock(item)"
-                     @on-enter="editKnowBlock(item)"
-                     @click.stop.native="inputFocus($event)" />
-              <span class="know-block-name" v-else>{{item.name}} | {{item.id}}</span>
-
-              <span class="know-block-builder">建立者 | {{item.builder}}</span>
-              <span class="k-block-tools">
-                <Icon type="md-create" @click="handleEditBlock(item,$event)" title="编辑名称" />
-                <Icon type="md-add-circle" title="编辑知识点" @click.stop.native="editBlockPoint(item)"/>
-                <Icon type="md-trash" @click="handleDeleteBlock" title="删除"/>
-              </span>
-              <div slot="content" class="knowpoints">
-                <div class="knowpoint-item" v-for="(item,index) in knowPointList" @mouseover="knowMouseover" @mouseout="knowMouseout">
-                  <Input v-if="item.id==point_edit_id" :ref="'point'+item.blockId+item.id" clearable type="text" v-model="item.name"
-                         @on-blur="editKnowPoint(item)"
-                         @on-enter="editKnowPoint(item)"
-                         @click.stop.native="inputFocus($event)" />
-                  <span v-else>{{item.name}} </span>
-                  <span class="k-tools">
-                    <Icon type="md-create" @click="handleEditPoint(item,$event)" />
-                    <Icon type="md-trash" @click.stop.native="handleDeleteBlock" />
-                  </span>
-                </div>
-              </div>
-            </Panel>
-          </Collapse>
-        </div>
-
-        <!-- 知识点仓库 -->
-        <div class="list-col list-knowpoints" v-else>
-          <div class="knowpoints-filter">
-            <span :class="filter_index == 0 ? 'sort-active':''" @click="filterSort(0)">综合排序</span>
-            <span :class="filter_index == 1 ? 'sort-active':''" @click="filterSort(1)">名称排序</span>
-            <span :class="filter_index == 2 ? 'sort-active':''" @click="filterSort(2)">创建时间排序</span>
-          </div>
-          <div class="knowpoints">
-            <div v-for="(item,index) in knowPointList" :class="['knowpoint-item',pointCheckedList.indexOf(item) != -1?'knowpoint-item-active':'']" :title="item.description" @mouseover="knowMouseover" @mouseout="knowMouseout" @click="pointClick(item)">
-              <Input v-if="item.id==point_edit_id" :ref="'point'+item.blockId+item.id" clearable type="text" v-model="item.name"
-                     @on-blur="editKnowPoint(item)"
-                     @on-enter="editKnowPoint(item)"
-                     @click.stop.native="inputFocus($event)" />
-              <span v-else class="overflow-text">{{item.name}} </span>
-              <!--<Icon type="ios-checkmark-circle" color="#00fa00" class="icon-checked"/>-->
-              <span class="k-tools">
-                <Icon type="md-create" @click="handleEditPoint(item,$event)" />
-                <Icon type="md-trash" @click.stop.native="handleDeleteBlock" />
-              </span>
-            </div>
-          </div>
-          <Page :current="2" :total="50" simple class="center" style="margin:20px 0"/>
-        </div>
-
-        <Modal v-model="addBlockModal"
-               title="新增知识块"
-               width="520"
-               ok-text="确认"
-               cancel-text="取消"
-               @on-ok="handleAddBlock"
-               @on-cancel="">
-          <p class="modal-title">请输入知识块名称</p>
-          <Input v-model="newBlockName" placeholder="输入名称" style="margin:5px" />
-        </Modal>
-
-        <Modal v-model="addPointModal"
-               title="新增知识点"
-               width="520"
-               ok-text="确认"
-               cancel-text="取消"
-               @on-ok="handleAddPoint"
-               @on-cancel="">
-          <p class="modal-title">请输入知识点名称</p>
-          <Input v-model="newPointName" placeholder="输入名称" style="margin:5px" />
-          <p class="modal-title">请输入知识点描述</p>
-          <Input v-model="newPointName" placeholder="输入描述" style="margin:5px" />
-        </Modal>
-
-        <Modal v-model="editBlockPointModal"
-               title="编辑知识块"
-               width="600"
-               ok-text="确认"
-               cancel-text="取消"
-               @on-ok="handleAddBlock"
-               @on-cancel="">
-              <Transfer :data="data3"
-                        :target-keys="targetKeys3"
-                        :list-style="listStyle"
-                        :render-format="render3"
-                        :operations="['撤回知识库','加入知识块']"
-                        filter-placeholder="请输入搜索内容"
-                        :titles="['知识点仓库', '当前知识块']"
-                        not-found-text="列表为空"
-                        filterable
-                        :filter-method="filterMethod"
-                        @on-change="handleChange3">
-                <div :style="{float: 'right', margin: '5px'}">
-                  <Button size="small" @click="reloadMockData">刷新</Button>
-                </div>
-              </Transfer>
-        </Modal>
-        <!-- 组成知识块弹窗 -->
-        <Modal v-model="composeBlockModal"
-               title="组成知识块"
-               width="400"
-               ok-text="确认"
-               cancel-text="取消"
-               @on-ok="handleComposeBlock"
-               @on-cancel="">
-          <Tabs value="newBlock" class="compose-block-tab">
-            <TabPane label="建立新的知识块" name="newBlock">
-              <p class="modal-title">请输入知识块名称</p>
-              <Input v-model="newComposeName" placeholder="请输入" style="margin:5px" />
-              <p class="modal-title">当前选中知识点</p>
-              <div class="checked-points">
-                <div v-for="item in pointCheckedList" class="knowpoint-item knowpoint-item-active">{{item.name}}</div>
-              </div>
-            </TabPane>
-            <TabPane label="移动到现有知识块" name="moveToBlock">
-              <RadioGroup v-model="checkedBlock">
-                <Radio v-for="(item,index) in knowBlockList" :key="index" :label="item.name+item.id" :value="item.period" :name="item.period"></Radio>
-              </RadioGroup>
-            </TabPane>
-          </Tabs>
-        </Modal>
-
-      </div>
-    </div>
-  </div>
-</template>
-
-<script scoped>
-  export default {
-    name: "KnowPoint",
-    data() {
-      return {
-        knowPointList: [],
-        knowBlockList: [],
-        pointCheckedList: [],
-        checkedBlock:"知识块名称0",
-        isShowBlock: false,
-        listType: 1,
-        filter_index:0,
-        newBlockName:"",
-        newPointName:"",
-        newComposeName:"",
-        block_edit_id: null,  //当前知识块编辑索引
-        point_edit_id: null,  //当前知识点编辑索引
-        point_click_id:null,
-        addBlockModal: false, //新增知识块开关
-        addPointModal: false, //新增知识点开关
-        editBlockPointModal: false, //编辑知识块开关
-        composeBlockModal: false, //编辑知识块开关
-        data3: this.getMockData(),
-        targetKeys3: this.getTargetKeys(),
-        listStyle: {
-          width: '220px',
-          height: '420px'
-        },
-      }
-    },
-    created() {
-      for (let i = 0; i < 11; i++) {
-        this.knowPointList.push({
-          id: i,
-          key: i.toString(),
-          label: i.toString(),
-          name: "知识点名称1111_" + this.changeNumFormat(i),
-          blockId: i + 1,
-          description: "知识点名称1111_" + this.changeNumFormat(i)
-        })
-
-        this.knowBlockList.push({
-          id: i,
-          name: "知识块名称",
-          period: i.toString(),
-          builder: "郭金凤",
-          userNum: i + 5
-        })
-      }
-    },
-    methods: {
-
-      //知识点与知识块切换
-      changeListType(status) {
-        this.listType = status; 
-        this.isShowBlock = status == 0;
-      },
-      //数字格式转换
-      changeNumFormat(num) {
-        let nums = num.toString();
-        if (nums.length == 1) {
-          nums = '00' + nums;
-        } else if (nums.length == 2) {
-          nums = '0' + nums;
-        }
-        return nums;
-      },
-      //鼠标滑入事件显示操作选项
-      knowMouseover(e) {
-        e.stopPropagation();
-        e.currentTarget.lastElementChild.style.visibility = 'visible';
-      },
-      //鼠标滑出事件隐藏操作选项
-      knowMouseout(e) {
-        e.stopPropagation();
-        e.currentTarget.lastElementChild.style.visibility = 'hidden';
-      },
-      //折叠版切换回调
-      collapseChange(arr) {
-        this.block_edit_id = null;
-          let list = document.getElementsByClassName('k-block-tools');
-          for (let i = 0 ; i < list.length ;i++) {
-            if (arr.indexOf(i.toString()) != -1) {
-              list[i].style.visibility = "visible";
-            } else {
-              list[i].style.visibility = "hidden";
-            }
-        }
-      },
-
-      filterSort(index) {
-        this.filter_index = index;
-      },
-
-      //点击编辑知识块
-      handleEditBlock(data, e) {
-        e.stopPropagation();
-        this.block_edit_id = data.id;
-        this.$nextTick(() => {
-          this.$refs['block' + data.id][0].focus();
-        })
-      },
-      //编辑知识块input失焦
-      editKnowBlock(data) {
-        this.block_edit_id = null;
-      },
-
-      //点击编辑知识点
-      handleEditPoint(data, e) {
-        e.stopPropagation();
-        this.point_edit_id = data.id;
-        this.$nextTick(() => {
-          this.$refs['point'+data.blockId+data.id][0].focus();
-        })
-      },
-      //编辑知识点input失焦
-      editKnowPoint(data) {
-        this.point_edit_id = null;
-      },
-
-      //input聚焦
-      inputFocus(e) {
-        e.cancelBubble = true;
-      },
-
-      //request删除知识块
-      handleDeleteBlock() {
-        this.$Modal.confirm({
-          title: '删除知识块',
-          content: '<p>确认删除该知识块?</p>',
-          okText:"确认",
-          cancelText:"取消",
-          onOk: () => {
-            this.$Message.info('Clicked ok');
-          },
-          onCancel: () => {
-            this.$Message.info('Clicked cancel');
-          }
-        });
-      },
-      //点击新增知识块弹窗
-      addBlock() {
-        this.addBlockModal = true;
-      },
-      //点击新增知识块弹窗
-      addPoint() {
-        this.addPointModal = true;
-      },
-      //点击组成知识块弹窗
-      composeBlock() {
-        if (this.pointCheckedList.length < 1) {
-          this.$Message.info('请先勾选需要操作的知识点!');
-        } else {
-          this.composeBlockModal = true;
-        }
-      },
-      //点击编辑知识块弹窗
-      editBlockPoint(data) {
-        let block = data;
-        this.editBlockPointModal = true;
-        this.reloadMockData();
-      },
-      //request新增知识块
-      handleAddBlock() {
-        console.log(this.newBlockName);
-        this.newBlockName = "";
-      },
-
-      //request新增知识点
-      handleAddPoint() {
-        console.log(this.newPointName);
-        this.newPointName = "";
-      },
-      //request编辑知识块
-      handleEditBlockPoint() {
-        console.log(this.targetKeys3);
-        
-      },
-
-      //request编辑知识块
-      handleComposeBlock() {
-        console.log(this.pointCheckedList);
-        console.log(this.newComposeName);
-        this.newComposeName = ""
-      },
-
-      pointClick(data) {
-        //this.point_click_id = data.id;
-        let list = this.pointCheckedList;
-        if (list.indexOf(data) == -1) {
-          list.push(data);
-        } else {
-          list.splice(list.indexOf(data), 1);
-        }
-      },
-
-      getMockData() {
-        let mockData = [];
-        for (let i = 1; i <= 20; i++) {
-          mockData.push({
-            id: i,
-            key: i.toString(),
-            label: i.toString(),
-            name: "知识点名称_" + this.changeNumFormat(i),
-            termNum: i + 5,
-            blockId: i + 1,
-            description: "知识点名称_" + this.changeNumFormat(i)
-          });
-
-        }
-        return mockData;
-      },
-      getTargetKeys() {
-        let targetArr = [];
-        return targetArr;
-      },
-      handleChange3(newTargetKeys) {
-        this.targetKeys3 = newTargetKeys;
-      },
-      render3(item) {
-        return item.label + ' - ' + item.description;
-      },
-      //重置数据
-      reloadMockData() {
-        this.data3 = this.getMockData();
-        this.targetKeys3 = this.getTargetKeys();
-      },
-      //transfer Input 筛选数据
-      filterMethod(data, query) {
-        let val = data.label + ' - ' + data.description;
-        return val.toUpperCase().indexOf(query.toUpperCase()) > -1;
-      }
-    }
-  }
-</script>

+ 0 - 289
TEAMModelOS.SmartTeach/ClientApp/view/syllabus/index/Syllabus.css

@@ -1,289 +0,0 @@
-.syllabus-main {
-    width: 100%;
-    height: 100%;
-    background: #fff;
-    padding: 20px;
-    box-sizing: border-box;
-}
-
-.content-wrap {
-    width: 100%;
-    height: 100%;
-    border: 2px solid #464646;
-}
-
-.header-wrap {
-    position: relative;
-    width: 100%;
-    height: 50px;
-    display: flex;
-    flex-direction: row;
-    justify-content: space-between;
-    border-bottom: 2px solid #464646;
-}
-
-    .header-wrap /deep/ .ivu-input {
-        height: 48px;
-        border: 0;
-        padding-left: 15px;
-        border-radius: 0 !important;
-        border-right: 2px solid #464646;
-        font-size: 14px;
-        font-weight: bold;
-        color: #464646;
-    }
-
-        .header-wrap /deep/ .ivu-input::-webkit-input-placeholder {
-            color: #464646;
-        }
-
-    .header-wrap /deep/ .ivu-input-suffix i {
-        line-height: 50px;
-    }
-
-.header-right {
-    height: 100%;
-    display: flex;
-    flex-direction: row;
-    justify-content: center;
-    align-items: center;
-}
-
-.header-right-item {
-    margin-right: 25px;
-    font-weight: 500;
-    font-size: 12px;
-    cursor: pointer;
-}
-
-.subject-modal /deep/ .ivu-checkbox {
-    margin: 10px;
-}
-
-.subject-modal /deep/ .ivu-select {
-    margin: 0 10px;
-}
-
-.subject-modal /deep/ .ivu-input {
-    margin: 0 10px;
-}
-
-.list-wrap {
-    width: 100%;
-    height: 100%;
-    display: flex;
-    flex-direction: row;
-    padding-bottom: 50px;
-}
-
-.list-col {
-    position:relative;
-    height: 100%;
-    overflow-y: auto;
-}
-
-    .list-col /deep/ .ivu-input-wrapper {
-        width: 60%;
-    }
-
-.term-userNum /deep/ .ivu-input-wrapper {
-    width: 100%;
-}
-
-.pop-content .ivu-checkbox-group {
-    display: flex;
-    flex-direction: column;
-    margin-top: 20px;
-}
-
-.pop-content .ivu-checkbox-group-item {
-    margin: 5px 10px;
-}
-
-.pop-content /deep/ .ivu-checkbox {
-    margin-right: 10px;
-}
-
-.pop-content .ivu-tabs-tabpane {
-    max-height: 300px;
-    overflow: auto;
-}
-
-.list-left {
-    width: 20%;
-    background-color: rgb(204,204,204);
-    margin-right: 0px;
-}
-
-.list-middle {
-    width: 35%;
-    background-color: rgb(230,230,230);
-    border-left: 2px solid #464646;
-    border-right: 1px solid #464646;
-}
-
-.list-right {
-    width: 45%;
-    background-color: rgb(242,242,242);
-}
-
-.subject-item {
-    width: 100%;
-    height: 80px;
-    display: flex;
-    flex-direction: column;
-    justify-content: center;
-    padding-left: 15px;
-    border-bottom: 1px solid #464646;
-    cursor: pointer;
-}
-
-    .subject-item:hover {
-        background: #fff;
-    }
-
-.subject-name {
-    font-size: 18px;
-    font-weight: 600;
-}
-
-.term-item {
-    height: auto;
-    padding: 10px;
-}
-
-.term-item-active {
-    background: #fff;
-}
-
-.term-period {
-    margin: 5px 0;
-    font-size: 14px;
-}
-
-.term-name-title {
-    font-size: 18px;
-    font-weight: 600;
-}
-
-.term-add-user {
-    text-decoration: underline;
-    cursor: pointer;
-}
-
-.term-users {
-    width: 100%;
-    background: #fff;
-    display: flex;
-    flex-direction: row;
-    flex-wrap: wrap;
-    margin-top: 10px;
-}
-
-.term-user-item {
-    padding: 5px;
-    margin: 5px;
-}
-
-.term-user-img {
-    width: 20px;
-    height: 20px;
-    border-radius: 50%;
-}
-
-.term-user-name {
-    margin-left: 5px;
-    color: rgb(139, 139, 139);
-}
-
-.centerCol {
-    display: flex;
-    flex-direction: column;
-    justify-content: center;
-    align-items: center;
-}
-
-.center {
-    display: flex;
-    flex-direction: row;
-    justify-content: center;
-    align-items: center;
-}
-
-.list-col::-webkit-scrollbar { /*滚动条整体样式*/
-    width: 0px; /*高宽分别对应横竖滚动条的尺寸*/
-    height: 1px;
-}
-
-.list-col:hover .ztree_box::-webkit-scrollbar {
-    width: 5px;
-}
-
-.list-col::-webkit-scrollbar-thumb { /*滚动条里面小方块*/
-    border-radius: 10px;
-    -webkit-box-shadow: inset 0 0 5px rgba(0,0,0,0.2);
-    background: #ffffff26;
-}
-
-.list-col::-webkit-scrollbar-track { /*滚动条里面轨道*/
-    background: #f4f4f400;
-}
-
-.s-block-tools {
-    margin-left: 10px;
-}
-
-    .s-block-tools .ivu-icon {
-        margin-left: 5px;
-        margin-bottom: 2px;
-        font-size: 16px;
-        color: rgb(185, 185, 185);
-    }
-
-.modal-title {
-    margin: 10px 5px;
-}
-
-.animated {
-    animation-duration: 0.2s;
-}
-
-@-webkit-keyframes slideInDown {
-    from {
-        -webkit-transform: translate3d(0,-40%, 0);
-        transform: translate3d(0, -40%, 0) !important;
-        visibility: visible;
-    }
-
-    to {
-        -webkit-transform: translate3d(0, 0%, 0);
-        transform: translate3d(0, 0%, 0);
-    }
-}
-
-@keyframes slideInDown {
-    from {
-        -webkit-transform: translate3d(0, -20%, 0);
-        transform: translate3d(0, -20%, 0) !important;
-        visibility: visible;
-    }
-
-    to {
-        -webkit-transform: translate3d(0, 0%, 0);
-        transform: translate3d(0, 0%, 0);
-    }
-}
-
-.slideInDown {
-    -webkit-animation-name: slideInDown;
-    animation-name: slideInDown;
-}
-
-.d-none {
-    display: none;
-}
-
-.no-data-text {
-    margin:20px;
-    font-size:16px;
-}

+ 0 - 524
TEAMModelOS.SmartTeach/ClientApp/view/syllabus/index/Syllabus.vue

@@ -1,524 +0,0 @@
-
-<template>
-  <div class="syllabus-main center">
-    <div class="content-wrap">
-      <div class="header-wrap">
-        <Input placeholder="关键词搜索课纲" style="width:20.2% !important;" />
-        <div class="header-right">
-          <div class="header-right-item" @click="addSubject">
-            <Icon type="logo-buffer" size="18" />
-            <span>新增科目</span>
-          </div>
-          <div class="header-right-item" @click="addTerm" v-if="currentSubjectList.length > 0">
-            <Icon type="ios-browsers" size="18" />
-            <span>新增册别/课纲</span>
-          </div>
-          <div class="header-right-item">
-            <Icon type="ios-cloud-download" size="18" />
-            <span>导入课纲</span>
-          </div>
-        </div>
-      </div>
-      <div class="list-wrap">
-        <!-- 左边科目列表 -->
-        <div class="list-col list-left">
-          <Spin fix v-show="subjectLoading"></Spin>
-          <template v-if="currentSubjectList.length > 0">
-            <div v-for="item in currentSubjectList" :class='["subject-item", item.rowKey==s_click_id ? "term-item-active" : ""]' @click="subjectClick(item)">
-              <span class="subject-name">
-                <Input v-if="item.rowKey==c_edit_id" clearable type="text" v-model="item.name"
-                       @on-blur="editSubject(item)"
-                       @keyup.enter.native="$event.target.blur"
-                       @click.stop.native="inputFocus($event)" />
-                <span v-else>{{item.name}}</span>
-
-                <span class="s-block-tools" v-show="item.rowKey==c_subject_id">
-                  <Icon type="md-create" @click="handleEditSubject(item,$event)" />
-                  <Icon type="md-trash" @click="handleDeleteSubject(item)" />
-                </span>
-              </span>
-              <span class="subject-term-num">册数 | {{item.termNum?item.termNum:0}}</span>
-            </div>
-          </template>
-          <div v-else class="no-data-text">暂无数据</div>
-        </div>
-        <!-- 中间册别列表 -->
-        <div class="list-col list-middle">
-          <Spin fix v-show="volumesLoading"></Spin>
-          <template v-if="volumesList.length > 0">
-            <div v-for="item in volumesList" :class='["subject-item", "term-item", item.rowKey==c_click_id ? "term-item-active" : ""]' @click="volumesClick(item)">
-              <span class="subject-name term-name">
-                <Input v-if="item.rowKey==t_edit_id" clearable type="text" v-model="item.name"
-                       @on-blur="editTerm(item)"
-                       @keyup.enter.native="$event.target.blur"
-                       @click.stop.native="inputFocus($event)" />
-                <span v-else class="term-name-title">{{item.name}} | {{item.termCode}}</span>
-                <span class="s-block-tools" v-show="item.rowKey==c_term_id">
-                  <Icon type="md-create" @click="handleEditTerm(item,$event)" />
-                  <Icon type="md-trash" @click="handleDeleteVolumes(item)" />
-                </span>
-              </span>
-              <span class="term-period">{{item.periodName}} | {{item.gradeName + item.termName}}  <Icon type="md-arrow-dropdown" v-show="item.rowKey==c_click_id" size="18" style="margin-bottom:3px" /></span>
-              <div class="term-userNum">
-                <span>共编使用者数 | {{item.termCode}} 名</span>
-                <Poptip content="content" placement="bottom-end" theme="dark">
-                  <span class="term-add-user" v-show="item.id==c_click_id">添加共编使用者</span>
-                  <div class="pop-content" slot="content" style="padding-bottom:10px;">
-                    <Tabs value="filter" :animated="false">
-                      <TabPane label="选择老师" name="filter">
-                        <template>
-                          <Select v-model="selectGrade" style="width:100%" @on-change="handleGradeChange">
-                            <Option v-for="item in gradeList" :value="item.name" :key="item.name">{{ item.name }}</Option>
-                          </Select>
-                        </template>
-                        <CheckboxGroup v-model="tearchList" @on-change="handleTeacherCheck">
-                          <Checkbox v-for="(item,index) in userList" :key="index" :label="item.index">{{item.name}}{{item.role}}</Checkbox>
-                        </CheckboxGroup>
-                      </TabPane>
-                      <TabPane label="选择群组" name="orderBy">
-
-                      </TabPane>
-                    </Tabs>
-                  </div>
-                </Poptip>
-              </div>
-              <!-- 使用者列表 -->
-              <transition enter-active-class="animated slideInDown" leave-active-class="d-none">
-                <div class="term-users" v-show="item.id==c_click_id">
-                  <div class="term-user-item center" v-for="user in userList">
-                    <img class="term-user-img" :src="user.headImg" />
-                    <span class="term-user-name">{{user.name}} {{user.role}}</span>
-                  </div>
-                </div>
-              </transition>
-            </div>
-          </template>
-          <div v-else class="no-data-text">暂无数据</div>
-        </div>
-        <!-- 右侧树形列表 -->
-        <div class="list-col list-right">
-          <Spin fix v-show="syllabusLoading"></Spin>
-          <Tree :treeDatas="treeDatas" :volumeCode="volumeCode" v-if="volumesList.length > 0 && treeDatas.length > 0"></Tree>
-          <div v-else class="no-data-text">暂无数据</div>
-        </div>
-      </div>
-
-      <!-- 新增科目弹窗  -->
-      <Modal v-model="addSubjectModal"
-             title="新增科目"
-             class-name="subject-modal"
-             ok-text="确认"
-             cancel-text="取消"
-             @on-ok="handleAddSubject"
-             @on-cancel="">
-        <p class="modal-title" v-show="currentSubjectList.length > 0">当前已选科目</p>
-        <CheckboxGroup v-model="currentSubjectList"  v-show="currentSubjectList.length > 0">
-          <Checkbox v-for="(item,index) in currentSubjectList" :label="index" :key="index" disabled>{{item.name}}</Checkbox>
-        </CheckboxGroup>
-
-        <p class="modal-title">请选择需要添加的新科目</p>
-        <CheckboxGroup v-model="newSubjectList">
-          <Checkbox v-for="(item,index) in subjectList" :label="index" :key="index">{{item.name}}</Checkbox>
-        </CheckboxGroup>
-      </Modal>
-
-      <!-- 新增册别弹窗 -->
-      <Modal v-model="addTermModal"
-             title="新增册别"
-             class-name="subject-modal"
-             ok-text="确认"
-             cancel-text="取消"
-             @on-ok="handleAddTerm"
-             @on-cancel="">
-        <p class="modal-title">当前科目:{{subjectInfo.name}}</p>
-        <p class="modal-title">请选择学段:</p>
-        <Select v-model="periodSelect" style="width:200px" @on-change="periodChange" label-in-value>
-          <Option v-for="item in findPeriodsList" :value="item.code" :key="item.code">{{ item.name }}</Option>
-        </Select>
-        <p class="modal-title">请选择年级:</p>
-        <Select v-model="gradeSelect" style="width:200px" @on-change="gradeChange" label-in-value>
-          <Option v-for="item in findGradesList" :value="item.code" :key="item.code">{{ item.name }}</Option>
-        </Select>
-        <p class="modal-title">请选择学期:</p>
-        <Select v-model="termSelect" style="width:200px" @on-change="termChange" label-in-value>
-          <Option v-for="item in findTermsList" :value="item.code" :key="item.code">{{ item.name }}</Option>
-        </Select>
-        <p class="modal-title">请输入册别名称:</p>
-        <Input v-model="addVolumesData.name" placeholder="输入新册别名称" style="width: 300px" />
-      </Modal>
-    </div>
-  </div>
-</template>
-
-<script>
-  import Tree from '@/components/syllabus/Tree.vue'
-import { all } from 'q';
-import { setTimeout } from 'core-js';
-  export default {
-    name: "Syllabus",
-    components: {
-      Tree: Tree
-    },
-    data() {
-      return {
-        schoolInfos: {}, //身份全部信息
-        schoolInfo: {},//学校信息
-        subjectInfo: {},//当前选中科目信息
-        subjectList: [],//全部科目列表
-        currentSubjectList: [],//学校科目列表
-        volumesList: [],//册别列表
-        treeData: [],//课纲数据
-        userList: [],//共编使用者列表
-        treeDatas: [],
-        volumeCode: "",
-        subjectLoading: true,
-        volumesLoading: true,
-        syllabusLoading:true,
-
-        findPeriodsList:[],
-        findGradesList:[],
-        findTermsList: [],
-        newVolumesName:"",
-        periodSelect:"",
-        gradeSelect:"",
-        termSelect: "",
-        addVolumesData: {},
-
-        gradeList: [],
-        tearchList: [],
-        c_subject_id:0,
-        c_term_id: 0,
-        c_click_id: 0,
-        s_click_id: 0,
-        c_edit_id: null,
-        t_edit_id:null,
-        addSubjectModal: false,
-        addTermModal: false,
-        newSubjectList: [],
-        termName: "",
-        selectGrade: "1年级",
-
-      }
-    },
-    created() {
-      this.schoolInfo = JSON.parse(localStorage.getItem('c_role_info')).roleClaim[0]; //默认选中第一个学校
-      let schoolClaims = this.schoolInfo.claim;
-      for (let i in schoolClaims) {
-        if (schoolClaims[i].claimType == "SchoolCode") {
-          this.schoolInfo = schoolClaims[i]
-        }
-      }
-
-      this.findAllSubjects();
-      this.findSchoolSubjectsByDict();
-
-    },
-    methods: {
-      //查找全部科目
-      findAllSubjects() {
-        this.$api.FindSubjectsByDict({}).then(res => {
-          this.subjectList = res.result.data;
-        })
-      },
-      //查找当前学校已有科目
-      findSchoolSubjectsByDict() {
-        this.$api.FindSchoolSubjectsByDict({ SchoolCode: this.schoolInfo.claimCode,Status:1 }).then(res => {
-          this.currentSubjectList = res.result.data;
-          if (res.result.data.length > 0) {
-             this.subjectInfo = res.result.data[0];
-             this.subjectClick(res.result.data[0]);
-          }
-          this.subjectLoading = false;
-          this.volumesLoading = false;
-          this.syllabusLoading = false;
-        })
-      },
-       //点击科目
-      subjectClick(data) {
-        this.volumesLoading = true;
-        this.subjectInfo = data;
-        this.s_click_id = data.rowKey;
-        this.c_subject_id = data.rowKey;
-        this.c_edit_id = null;
-        let defaultData = {
-          SchoolCode: this.schoolInfo.claimCode,
-          PartitionKey: data.partitionKey,
-          SubjectCode: data.code,
-          Status:1
-        }
-        this.$api.FindSchoolVolumesByDict(defaultData).then(res => {
-          this.volumesList = res.result.data;
-          if (res.result.data.length > 0) {
-            this.volumesClick(res.result.data[0]);
-          }
-          this.volumesLoading = false;
-         })
-      },
-
-      //点击编辑科目
-      handleEditSubject(data, e) {
-        e.stopPropagation();
-        this.c_edit_id = data.rowKey;
-      },
-
-      //点击册别
-      volumesClick(data) {
-        this.syllabusLoading = true;
-        this.$api.FindSyllabusByVolumeCode({ VolumeCode: data.rowKey, Status:1 }).then(res => {
-          this.treeDatas = res.result.data;
-          this.volumeCode = data.rowKey;
-          this.syllabusLoading = false;
-        })
-        this.c_click_id = data.rowKey;
-        this.c_term_id = data.rowKey;
-        this.t_edit_id = null;
-      },
-
-      //点击编辑册别
-      handleEditTerm(data, e) {
-        e.stopPropagation();
-        this.t_edit_id = data.rowKey;
-      },
-      //编辑科目input失焦
-      editSubject(data) {
-        this.$api.SaveOrUpdateSchoolSubject(data).then(res => {
-            if (res.result.message == "Success") {
-              this.$Message.success("修改成功");
-            }
-          })
-        this.c_edit_id = null;
-      },
-      //编辑册别input失焦
-      editTerm(data) {
-          this.$api.SaveOrUpdateSchoolVolume(data).then(res => {
-            if (res.result.message == "Success") {
-              this.$Message.success("修改成功");
-            }
-          })
-        this.t_edit_id = null;
-      },
-      //input聚焦
-      inputFocus(e) {
-        //e.cancelBubble = true;
-      },
-      //点击添加科目
-      addSubject() {
-        let currentList = this.currentSubjectList;
-        this.$api.FindSubjectsByDict({}).then(res => {
-          this.subjectList = res.result.data;
-          let tempList = this.subjectList.slice(0);
-          if (currentList.length > 0) {
-            for (let i in tempList) {
-              for (let j in currentList) {
-                if (tempList[i].rowKey == currentList[j].code) {
-                  this.subjectList.splice(this.subjectList.indexOf(tempList[i]), 1);
-                }
-              }
-            }
-          }
-        })
-
-
-        this.addSubjectModal = true;
-        this.newSubjectList = [];
-
-      },
-
-      //确认添加科目
-      handleAddSubject() {
-        let newList = this.newSubjectList;
-        for (let i of newList) {
-          let defaultSubject = {
-            schoolCode: this.schoolInfo.claimCode,
-            partitionKey: this.subjectList[i].partitionKey,
-            name: this.subjectList[i].name,
-            code: this.subjectList[i].rowKey,
-            status:1,
-            schoolName:this.schoolInfo.claimName
-          };
-           this.$api.SaveOrUpdateSchoolSubject(defaultSubject).then(res => {
-             this.currentSubjectList.push(res.result.data);
-             this.subjectClick(this.currentSubjectList[0]); //默认展开第一个
-           })
-        }
-      },
-
-      //点击添加册别
-      addTerm() {
-        this.addTermModal = true;
-        this.findSchoolPeriodsByDict();
-        this.findSchoolTermsByDict();
-        this.addVolumesData =  {
-            schoolCode: this.schoolInfo.claimCode,
-            partitionKey: this.schoolInfo.partitionKey,
-            schoolName: this.schoolInfo.claimName,
-            subjectName: this.subjectInfo.name,
-            subjectCode: this.subjectInfo.code,
-            status: 1,
-            periodName: 0,
-            gradeName: 0,
-            termName: 0,
-            periodCode: 0,
-            gradeCode: 0,
-            termCode: 0,
-            name:this.newVolumesName
-          }
-      },
-
-      //发送请求添加册别
-      handleAddTerm() {
-        //查询是否已存在此类册别
-        this.$api.FindSchoolVolumesByDict({
-          SchoolCode: this.addVolumesData.schoolCode,
-          PartitionKey: this.addVolumesData.partitionKey,
-          SubjectCode: this.addVolumesData.subjectCode,
-          Status: this.addVolumesData.status,
-          PeriodCode: this.addVolumesData.periodCode,
-          GradeCode: this.addVolumesData.gradeCode,
-          TermCode: this.addVolumesData.termCode,
-        }).then(res => {
-          if (res.result.data.length > 0) {
-            this.$Modal.confirm({
-              title: '温馨提示',
-              content: '<p>已存在该学期下的册别,是否覆盖?</p>',
-              okText: "确认",
-              cancelText:"取消",
-              onOk: () => {
-                //存在即更新册别名字
-                this.$api.SaveOrUpdateSchoolVolume(this.addVolumesData).then(res => {
-                  this.c_term_id = res.result.data.rowKey;
-                  this.c_click_id = res.result.data.rowKey;
-                  for (let i in this.volumesList) {
-                    if (this.volumesList[i].rowKey == res.result.data.rowKey) {
-                      this.volumesList[i].name =  res.result.data.name
-                    }
-                  }
-                })
-              }
-            });
-          } else {
-            //不存在则直接加入列表
-            this.$api.SaveOrUpdateSchoolVolume(this.addVolumesData).then(res => {
-              this.volumesList.push(res.result.data);
-              this.c_term_id = res.result.data.rowKey;
-              this.c_click_id = res.result.data.rowKey;
-            })
-          }
-        })
-      },
-
-      //删除科目,修改科目状态
-      handleDeleteSubject(data) {
-        data.status = 0;
-        this.$Modal.confirm({
-          title: '删除科目',
-          content: '<p>确认删除该科目?</p>',
-          okText: "确认",
-          cancelText:"取消",
-          onOk: () => {
-            this.$api.SaveOrUpdateSchoolSubject(data).then(res => {
-              data.status = 1;
-              this.$Message.success("删除成功");
-              this.currentSubjectList.splice(data, 1);
-              this.subjectList.push(data);
-              this.findSchoolSubjectsByDict();
-              if (this.currentSubjectList.length == 0) {
-                this.volumesList = [];
-                this.treeData = [];
-              }
-           })
-          },
-          onCancel: () => {
-            this.$Message.info('Clicked cancel');
-          }
-        });
-      },
-
-      //删除册别,修改册别状态
-      handleDeleteVolumes(data) {
-        data.status = 0;
-        this.$Modal.confirm({
-          title: '删除科目',
-          content: '<p>确认删除该册别?</p>',
-          okText: "确认",
-          cancelText:"取消",
-          onOk: () => {
-            this.$api.SaveOrUpdateSchoolVolume(data).then(res => {
-              this.$Message.success("删除成功");
-              this.subjectClick(this.subjectInfo);
-           })
-          },
-          onCancel: () => {
-            this.$Message.info('Clicked cancel');
-          }
-        });
-      },
-      //获取当前学校全部学段
-      findSchoolPeriodsByDict() {
-        this.$api.FindSchoolPeriodsByDict({SchoolCode: this.schoolInfo.claimCode}).then(res => {
-          this.findPeriodsList = res.result.data;
-          this.periodSelect = res.result.data[0].code;
-          this.addVolumesData.periodCode = res.result.data[0].code;
-          this.addVolumesData.periodName = res.result.data[0].name;
-          this.findSchoolGradesByDict(res.result.data[0].code);
-        })
-      },
-       //获取当前学校全部年级
-      findSchoolGradesByDict(periodCode) {
-        let data = {
-          SchoolCode: this.schoolInfo.claimCode,
-          PeriodCode: periodCode
-        }
-        this.$api.FindSchoolGradesByDict(data).then(res => {
-          this.findGradesList = res.result.data;
-          this.gradeSelect = res.result.data[0].code;
-          this.addVolumesData.gradeCode = res.result.data[0].code;
-          this.addVolumesData.gradeName = res.result.data[0].name;
-        })
-      },
-      //获取当前学校全部学期
-      findSchoolTermsByDict() {
-        this.$api.FindSchoolTermsByDict({SchoolCode: this.schoolInfo.claimCode}).then(res => {
-          this.findTermsList = res.result.data;
-          this.termSelect = res.result.data[0].code;
-          this.addVolumesData.termCode = res.result.data[0].code;
-          this.addVolumesData.termName = res.result.data[0].name;
-        })
-      },
-
-      periodChange(val) {
-        console.log(val);
-        this.addVolumesData.periodName = val.label;
-        this.addVolumesData.periodCode = val.value;
-      },
-      gradeChange(val) {
-        console.log(val);
-        this.addVolumesData.gradeName = val.label;
-        this.addVolumesData.gradeCode = val.value;
-      },
-      termChange(val) {
-        console.log(val);
-        this.addVolumesData.termName = val.label;
-        this.addVolumesData.termCode = val.value;
-      },
-
-      //选择年级的自动完成
-      filterGrade(value, option) {
-        return option.toUpperCase().indexOf(value.toUpperCase()) !== -1;
-      },
-
-      //选择老师的回调事件
-      handleTeacherCheck() {
-        console.log(this.tearchList);
-      },
-
-      //选择老师的回调事件
-      handleGradeChange(val) {
-        console.log(val);
-      }
-    }
-  }
-</script>
-
-
-

+ 0 - 103
TEAMModelOS.SmartTeach/ClientApp/view/syllabus/index/index.vue

@@ -1,103 +0,0 @@
-<style>
-  @import 'Syllabus.css';
-  @import 'KnowPoint.css';
-  @import '../../../assets/CSS/syllabus/common.css';
-
-</style>
-
-<template>
-  <div class="index">
-     <div class="sak-header">
-       <Headers :parentToChild="syllabusTitle" :identityselect="identitydata"></Headers>
-     </div>
-     <div class="sak-main center">
-       <div class="sak-left">
-         <Syllabus></Syllabus>
-       </div>
-       <div class="sak-right">
-         <KnowPoint></KnowPoint>
-       </div>
-     </div>
-  </div>
-</template>
-<script>
-  import Headers from '@/common/headers.vue'
-  import Syllabus from './Syllabus.vue'
-  import KnowPoint from './KnowPoint.vue'
-  export default {
-    name: "app",
-    components: {
-      Headers: Headers,
-      Syllabus: Syllabus,
-      KnowPoint: KnowPoint
-    },
-    data() {
-      return {
-        syllabusTitle:"课纲管理/知识点管理",
-        schoolName: "",
-        username: "",
-        activeIndex: sessionStorage.getItem('kIndex') || 0,
-        identitydata: [
-              { "id": 1, "name": '成都紫藤小学', "rolename": '管理员', status: '1' },
-              { "id": 2, "name": '成都七中小学', "rolename": '班主任', status: '2' }
-            ],
-      }
-    },
-    created() {
-    
-    },
-    methods: {
-
-    },
-    mounted() {
-      
-    }
-  }
-</script>
-<style scoped>
-  .index {
-    position: relative;
-    width: 100%;
-    height:100%;
-    overflow-y:hidden;
-    min-width: 1366px;
-    background: #fff;
-    -moz-user-select: none; /*火狐 firefox*/
-    -webkit-user-select: none; /*webkit浏览器*/
-    -ms-user-select: none; /*IE10+*/
-    user-select: none;
-    display: flex;
-    flex-direction: column;
-    align-items: center;
-  }
-  .sak-header{
-     width:100%;
-     height:60px;
-  }
-  .sak-main {
-    width: 100%;
-    height: 100%;
-  }
-
-  .sak-left {
-    width: 60%;
-    height: 100%;
-  }
-  .sak-right {
-    width: 40%; 
-    height: 100%;
-  }
-  .center {
-    display: flex;
-    flex-direction: row;
-    justify-content: center;
-    align-items: center;
-  }
-
-  .centerCol {
-    display: flex;
-    flex-direction: column;
-    justify-content: center;
-    align-items: center;
-  }
-</style>