Browse Source

Merge branch 'develop5.0-tmd' of http://106.12.23.251:10000/TEAMMODEL/TEAMModelOS into develop5.0-tmd

OnePsycho 4 years ago
parent
commit
b504a3567c
29 changed files with 138 additions and 1637 deletions
  1. 2 2
      TEAMModelOS/ClientApp/src/locale/lang/en-US/classMgmt.js
  2. 10 0
      TEAMModelOS/ClientApp/src/locale/lang/en-US/cusMgt.js
  3. 1 1
      TEAMModelOS/ClientApp/src/locale/lang/en-US/learnActivity.js
  4. 1 0
      TEAMModelOS/ClientApp/src/locale/lang/en-US/schoolBaseInfo.js
  5. 4 4
      TEAMModelOS/ClientApp/src/locale/lang/en-US/serviceDriveAuth.js
  6. 1 1
      TEAMModelOS/ClientApp/src/locale/lang/en-US/stuAccount.js
  7. 2 2
      TEAMModelOS/ClientApp/src/locale/lang/zh-CN/classMgmt.js
  8. 1 1
      TEAMModelOS/ClientApp/src/locale/lang/zh-CN/courseManage.js
  9. 10 0
      TEAMModelOS/ClientApp/src/locale/lang/zh-CN/cusMgt.js
  10. 1 1
      TEAMModelOS/ClientApp/src/locale/lang/zh-CN/learnActivity.js
  11. 1 0
      TEAMModelOS/ClientApp/src/locale/lang/zh-CN/schoolBaseInfo.js
  12. 4 4
      TEAMModelOS/ClientApp/src/locale/lang/zh-CN/serviceDriveAuth.js
  13. 1 1
      TEAMModelOS/ClientApp/src/locale/lang/zh-CN/stuAccount.js
  14. 2 2
      TEAMModelOS/ClientApp/src/locale/lang/zh-TW/classMgmt.js
  15. 1 0
      TEAMModelOS/ClientApp/src/locale/lang/zh-TW/courseManage.js
  16. 11 1
      TEAMModelOS/ClientApp/src/locale/lang/zh-TW/cusMgt.js
  17. 1 1
      TEAMModelOS/ClientApp/src/locale/lang/zh-TW/learnActivity.js
  18. 8 7
      TEAMModelOS/ClientApp/src/locale/lang/zh-TW/schoolBaseInfo.js
  19. 4 4
      TEAMModelOS/ClientApp/src/locale/lang/zh-TW/serviceDriveAuth.js
  20. 1 1
      TEAMModelOS/ClientApp/src/locale/lang/zh-TW/stuAccount.js
  21. 7 7
      TEAMModelOS/ClientApp/src/view/joinclass/JoinClass.vue
  22. 1 1
      TEAMModelOS/ClientApp/src/view/learnactivity/markpaper/MarkSetting.vue
  23. 11 1
      TEAMModelOS/ClientApp/src/view/schoolmgmt/ClassroomSetting/ClassroomSetting.vue
  24. 1 1
      TEAMModelOS/ClientApp/src/view/schoolmgmt/SystemSetting/NewSystemSetting.vue
  25. 0 536
      TEAMModelOS/ClientApp/src/view/schoolmgmt/SystemSetting/SystemSetting.less
  26. 0 1031
      TEAMModelOS/ClientApp/src/view/schoolmgmt/SystemSetting/SystemSetting.vue
  27. 2 2
      TEAMModelOS/ClientApp/src/view/serviceDriveAuth/SubComponents/ServiceList.vue
  28. 46 22
      TEAMModelOS/ClientApp/src/view/student-account/ClassMgt.vue
  29. 3 3
      TEAMModelOS/ClientApp/src/view/student-account/Index.vue

+ 2 - 2
TEAMModelOS/ClientApp/src/locale/lang/en-US/classMgmt.js

@@ -111,7 +111,7 @@ export default {
   '6AIG9YGV': 'Sokrates Report',
   'IPALYEIY': '、IES Smarter Teaching Service Space',
   'ON6MBDOP': 'Smarter School Management Service',
-  'RYGVCPLY': 'AClass One',
+  'RYGVCPLY': 'AClass ONE',
   'RYG6BOPC6MDVCPLY': 'Sokrates Management Service',
-  'AEGMCPLY': 'AClass One cycle'
+  'AEGMCPLY': 'AClass ONE cycle'
   }

+ 10 - 0
TEAMModelOS/ClientApp/src/locale/lang/en-US/cusMgt.js

@@ -237,4 +237,14 @@ export default {
     scClass:'校本班级',
     customNameList:'自定义名单',
 
+    // JoinClass.vue
+    join:{
+        title:'加入课程名单',
+        errorInfo:'数据错误,请重新扫码',
+        teacherLabel:'教师:',
+        listLabel:'名单:',
+        joinBtn:'立即加入',
+        errorTile:'信息错误',
+        errorContent:'课程名单获取失败,请重新扫码加入!'
+    }
 }

+ 1 - 1
TEAMModelOS/ClientApp/src/locale/lang/en-US/learnActivity.js

@@ -213,7 +213,7 @@ export default{
     },
 
     mark:{
-        markNum:'阅卷次数',
+        markTimes:'阅卷次数',
         markNum1:'单评制',
         markNum2:'双评制',
         markNum3:'三评制',

+ 1 - 0
TEAMModelOS/ClientApp/src/locale/lang/en-US/schoolBaseInfo.js

@@ -196,6 +196,7 @@ export default {
   addOk:'添加成功',
   addErr:'添加失败',
   cusTabel:'课程表',
+  setCusTable:'设置课表',
 
   //ClassMgt.vue
   className:'名称',

+ 4 - 4
TEAMModelOS/ClientApp/src/locale/lang/en-US/serviceDriveAuth.js

@@ -1,7 +1,7 @@
 export default {
   //ServiceList.vue
-  AEGMCPLY: 'AClass One',
-  RYGVCPLY: 'AClass One',
+  AEGMCPLY: 'AClass ONE',
+  RYGVCPLY: 'AClass ONE',
   IPALYEIY: 'Smart Teaching Service Space',
   '6BOPC6MD': 'Teaching and learning big data management services',
   ON6MBDOP: 'Smart School Big Data Management Service',
@@ -28,13 +28,13 @@ export default {
   '解除授權後,可在教室中的電腦再次進行綁定授權。': 'After the authorization is cancelled, the binding authorization can be performed again on the computer in the classroom.',
   取消: 'Cancel',
   確定: 'OK',
-  Hiteach序號數: 'Hiteach serial number',
+  Hiteach序號數: 'HiTeach serial number',
   大量: 'Multi',
   單一: 'Single',
   授權: 'Authorization',
   可啟用裝置數: 'Number of devices that can be activated',
   已啟用裝置數: 'Number of activated devices',
-  管理Hiteach教室: 'Manage Hiteach classroom',
+  管理Hiteach教室: 'Manage HiTeach classroom',
   暂无数据: 'No data',
   序號到期日: 'Serial number expiration date: ',
   無到期日: 'No expiration date',

+ 1 - 1
TEAMModelOS/ClientApp/src/locale/lang/en-US/stuAccount.js

@@ -1,7 +1,7 @@
 export default {
   // table title
   seatNo: '座号',
-  account: '账号资讯',
+  account: '账号/学号',
   stuName: '姓名',
   classroomCode: '班级',
   classroomName: '班级名称',

+ 2 - 2
TEAMModelOS/ClientApp/src/locale/lang/zh-CN/classMgmt.js

@@ -111,7 +111,7 @@ export default {
     '6AIG9YGV': '苏格拉底报告',
     'IPALYEIY': '智慧教学服务空间',
     'ON6MBDOP': '智慧学校大数据管理服务',
-    'RYGVCPLY': 'AClass One',
+    'RYGVCPLY': 'AClass ONE',
     'RYG6BOPC6MDVCPLY': '教与学大数据管理服务',
-    'AEGMCPLY': 'AClass One 週期'
+    'AEGMCPLY': 'AClass ONE 週期'
 }

+ 1 - 1
TEAMModelOS/ClientApp/src/locale/lang/zh-CN/courseManage.js

@@ -73,7 +73,7 @@ export default {
         studentTableC4: '年级',
         studentTableC5: '组别',
         studentTableC6: '组名',
-        studentTableC7: '账号',
+        studentTableC7: '账号/学号',
         addClassroomProp1: '选择预设教室',
         addClassroomProp2: '新建个人教室',
         chooseClassroom: '请选择系统的教室',

+ 10 - 0
TEAMModelOS/ClientApp/src/locale/lang/zh-CN/cusMgt.js

@@ -237,4 +237,14 @@ export default {
     scClass:'学校班级',
     customNameList:'自定义名单',
 
+    // JoinClass.vue
+    join:{
+        title:'加入课程名单',
+        errorInfo:'数据错误,请重新扫码',
+        teacherLabel:'教师:',
+        listLabel:'名单:',
+        joinBtn:'立即加入',
+        errorTile:'信息错误',
+        errorContent:'课程名单获取失败,请重新扫码加入!'
+    }
 }

+ 1 - 1
TEAMModelOS/ClientApp/src/locale/lang/zh-CN/learnActivity.js

@@ -213,7 +213,7 @@ export default{
     },
 
     mark:{
-        markNum:'阅卷次数',
+        markTimes:'阅卷次数',
         markNum1:'单评制',
         markNum2:'双评制',
         markNum3:'三评制',

+ 1 - 0
TEAMModelOS/ClientApp/src/locale/lang/zh-CN/schoolBaseInfo.js

@@ -196,6 +196,7 @@ export default {
   addOk:'添加成功',
   addErr:'添加失败',
   cusTabel:'课程表',
+  setCusTable:'设置课表',
 
   //ClassMgt.vue
   className:'名称',

+ 4 - 4
TEAMModelOS/ClientApp/src/locale/lang/zh-CN/serviceDriveAuth.js

@@ -1,7 +1,7 @@
 export default {
   //ServiceList.vue
-  AEGMCPLY: 'AClass One', //AClass One 周期
-  RYGVCPLY: 'AClass One', //AClass One 无周期
+  AEGMCPLY: 'AClass ONE', //AClass One 周期
+  RYGVCPLY: 'AClass ONE', //AClass One 无周期
   IPALYEIY: '智慧教学服务空间',
   '6BOPC6MD': '教与学大数据管理服务',
   ON6MBDOP: '智慧学校大数据管理服务',
@@ -28,13 +28,13 @@ export default {
   '解除授權後,可在教室中的電腦再次進行綁定授權。': '解除授权后,可在教室中的电脑再次进行绑定授权。',
   取消: '取消',
   確定: '确定',
-  Hiteach序號數: 'Hiteach序号数',
+  Hiteach序號數: 'HiTeach序号数',
   大量: '大量',
   單一: '单一',
   授權: '授权',
   可啟用裝置數: '可启用装置数',
   已啟用裝置數: '已启用装置数',
-  管理Hiteach教室: '管理Hiteach教室',
+  管理Hiteach教室: '管理HiTeach教室',
   暂无数据: '暂无数据',
   序號到期日: '序号到期日:',
   無到期日: '无到期日',

+ 1 - 1
TEAMModelOS/ClientApp/src/locale/lang/zh-CN/stuAccount.js

@@ -1,7 +1,7 @@
 export default {
   // table title
   seatNo: '座号',
-  account: '账号资讯',
+  account: '账号/学号',
   stuName: '姓名',
   classroomCode: '班级',
   classroomName: '班级名称',

+ 2 - 2
TEAMModelOS/ClientApp/src/locale/lang/zh-TW/classMgmt.js

@@ -109,7 +109,7 @@ export default {
     '6AIG9YGV': '蘇格拉底報告',
     'IPALYEIY': '智慧教學服務空間',
     'ON6MBDOP': '智慧學校大數據管理服務',
-    'RYGVCPLY': 'AClass One',
+    'RYGVCPLY': 'AClass ONE',
     'RYG6BOPC6MDVCPLY': '教與學大數據管理服務',
-    'AEGMCPLY': 'AClass One 週期'
+    'AEGMCPLY': 'AClass ONE 週期'
 }

+ 1 - 0
TEAMModelOS/ClientApp/src/locale/lang/zh-TW/courseManage.js

@@ -72,6 +72,7 @@ export default {
         studentTableC4: '年級',
         studentTableC5: '組別',
         studentTableC6: '組名',
+        studentTableC7: '賬號/學號',
         addClassroomProp1: '選擇預設教室',
         addClassroomProp2: '新建個人教室',
         chooseClassroom: '請選擇系統的教室',

+ 11 - 1
TEAMModelOS/ClientApp/src/locale/lang/zh-TW/cusMgt.js

@@ -236,5 +236,15 @@ export default {
     nameListType:'類型',
     scClass:'學校班級',
     customNameList:'自定義名單',
-    
+
+    // JoinClass.vue
+    join:{
+        title:'加入課程名單',
+        errorInfo:'數據錯誤,請重新掃碼',
+        teacherLabel:'教師:',
+        listLabel:'名單:',
+        joinBtn:'立即加入',
+        errorTile:'信息錯誤',
+        errorContent:'課程名單獲取失敗,請重新掃碼加入! '
+    }  
 }

+ 1 - 1
TEAMModelOS/ClientApp/src/locale/lang/zh-TW/learnActivity.js

@@ -213,7 +213,7 @@ export default {
     },
 
     mark: {
-        markNum: '閱卷次數',
+        markTimes: '閱卷次數',
         markNum1:'單評制',
         markNum2:'雙評制',
         markNum3:'三評制',

+ 8 - 7
TEAMModelOS/ClientApp/src/locale/lang/zh-TW/schoolBaseInfo.js

@@ -7,10 +7,10 @@ export default {
   scType: '學校類型:',
   scType1: '國教(K-12)',
   scType2: '大專院校',
-  proSetting: '專業設置',
+  proSetting: '專業學科',
   curSemSta: '當前狀態:',
   schoolNameLabel: '學校名稱:',
-  addSubject: '添加學科',
+  addSubject: '新增學科',
   subType: '學科類型',
   subType1: '通用',
   subType2: '學科',
@@ -69,11 +69,11 @@ export default {
   examHolder: '設定考試類型…',
   noExam: '暫無考試類型',
   eugenicsLabel: '優生率:',
-  eugenicsTips: '優生率計算管道',
+  eugenicsTips: '優生率計算方式',
   incomeLable: '進線率:',
   incomeTips: '(進線人數)/(報名人數)×100%',
   touchLabel: '踩線生:',
-  touchTips: '踩線生計算管道',
+  touchTips: '踩線生計算方式',
   scoreUnit: '分',
   delExamTitle: '删除考試類型',
   delGradeTitle: '删除年級',
@@ -94,7 +94,7 @@ export default {
   subWarning: '學科名稱不能重複',
   exWarning: '考試名稱不能重複',
   majorWarning: '專業名稱不能重複',
-  addSemester: '添加學期',
+  addSemester: '新增學期',
   semesterName: '名稱',
   semStartAt: '開始於',
   admission: '入學期',
@@ -182,7 +182,7 @@ export default {
   bindingErr: 'Hiteach綁定失敗!',
   delClass: '删除班級',
   saveClassWarning: '當前教室數據尚未儲存。如果離開,修改的數據將不會儲存!',
-  addStuBtn: '添加學生',
+  addStuBtn: '新增學生',
   delStuBtn: '移除學生',
   editSeat: '修改座號',
   removeTile: '移除提醒',
@@ -196,6 +196,7 @@ export default {
   addOk: '添加成功',
   addErr: '添加失敗',
   cusTabel: '課程表',
+  setCusTable:'設置課表',
 
   //ClassMgt.vue
   className:'名稱',
@@ -203,7 +204,7 @@ export default {
   untimed:'未到入學時間',
   graduated:'已畢業',
   classLabel:'班級',
-  profession:'專業',
+  profession:'專業學科',
   noProfession:'暫未設置專業',
   all:'全部',
 }

+ 4 - 4
TEAMModelOS/ClientApp/src/locale/lang/zh-TW/serviceDriveAuth.js

@@ -1,7 +1,7 @@
 export default {
   //ServiceList.vue
-  AEGMCPLY: 'AClass One',
-  RYGVCPLY: 'AClass One',
+  AEGMCPLY: 'AClass ONE',
+  RYGVCPLY: 'AClass ONE',
   IPALYEIY: '智慧教學服務空間',
   '6BOPC6MD': '教與學大數據管理服務',
   ON6MBDOP: '智慧學校大數據管理服務',
@@ -28,13 +28,13 @@ export default {
   '解除授權後,可在教室中的電腦再次進行綁定授權。': '解除授權後,可在教室中的電腦再次進行綁定授權。',
   取消: '取消',
   確定: '確定',
-  Hiteach序號數: 'Hiteach序號數',
+  Hiteach序號數: 'HiTeach序號數',
   大量: '大量',
   單一: '單一',
   授權: '授權',
   可啟用裝置數: '可啟用裝置數',
   已啟用裝置數: '已啟用裝置數',
-  管理Hiteach教室: '管理Hiteach教室',
+  管理Hiteach教室: '管理HiTeach教室',
   暂无数据: '暫無資料',
   序號到期日: '序號到期日:',
   無到期日: '無到期日',

+ 1 - 1
TEAMModelOS/ClientApp/src/locale/lang/zh-TW/stuAccount.js

@@ -1,7 +1,7 @@
 export default {
   // table title
   seatNo: '座號',
-  account: '帳號資訊',
+  account: '帳號/學號',
   stuName: '姓名',
   classroomCode: '班級',
   classroomName: '教室名稱',

+ 7 - 7
TEAMModelOS/ClientApp/src/view/joinclass/JoinClass.vue

@@ -3,17 +3,17 @@
         <div class="join-main-box">
             <p class="join-title">
                 <span>
-                    加入课程名单
+                    {{$t('cusMgt.join.title')}}
                 </span>
                 <!-- <Divider dashed plain class="join-title">
                     加入课程名单
                 </Divider> -->
             </p>
-            <p class="course-name">{{cusName}}</p>
+            <p class="course-name">{{cusName || $t('cusMgt.join.errorInfo')}}</p>
             <div style="width:fit-content;margin: auto;">
                 <p class="info-item">
                     <span class="info-lable">
-                        教师:
+                        {{$t('cusMgt.join.teacherLabel')}}
                     </span>
                     <span class="info-value">
                         {{tName}}
@@ -21,7 +21,7 @@
                 </p>
                 <p class="info-item">
                     <span class="info-lable">
-                        名单:
+                        {{$t('cusMgt.join.listLabel')}}
                     </span>
                     <span class="info-value">
                         {{listName}}
@@ -30,7 +30,7 @@
             </div>
 
             <div class="join-btn" @click="joinList()">
-                立即加入
+                {{$t('cusMgt.join.joinBtn')}}
             </div>
         </div>
     </div>
@@ -59,8 +59,8 @@ export default {
         this.cusName = this.$route.query.cusName  //课程名称
         if (!this.listId || !this.tId) {
             this.$Modal.error({
-                title: '信息错误',
-                content: '课程名单获取失败,请重新扫码加入!'
+                title: this.$t('cusMgt.join.errorTile'),
+                content: this.$t('cusMgt.join.errorContent')
             })
         }
     }

+ 1 - 1
TEAMModelOS/ClientApp/src/view/learnactivity/markpaper/MarkSetting.vue

@@ -43,7 +43,7 @@
                             </Col>
                             <!-- 阅卷次数 -->
                             <Col :md="24" :lg="24" :xl="12" :xxl="8">
-                            <FormItem :label="$t('learnActivity.mark.markNum')" class="setting-item-wrap" prop="num">
+                            <FormItem :label="$t('learnActivity.mark.markTimes')" class="setting-item-wrap" prop="num">
                                 <!-- <InputNumber :max="2" class="attr-value-wrap" :min="1" v-model="setting.point"></InputNumber> -->
                                 <RadioGroup v-model="setting.num" style="color:white">
                                     <Radio :label="1">{{$t('learnActivity.mark.markNum1')}}</Radio>

+ 11 - 1
TEAMModelOS/ClientApp/src/view/schoolmgmt/ClassroomSetting/ClassroomSetting.vue

@@ -93,7 +93,11 @@
                     <Button v-if="$access.can('admin.*|classroom-upd')" class="save-btn" :loading="isSaveLoading" :disabled="!updated" icon="ios-albums-outline" @click="saveClassroom()" v-show="currentTabIndex == 1">
                         {{$t('schoolBaseInfo.saveInfo')}}
                     </Button>
-
+                    <!-- 编辑课表 -->
+                    <span v-show="currentTabIndex == 4" v-if="$access.can('admin.*|course-upd')" class="save-btn" style="color:white;margin-top:0px;cursor: pointer;" @click="editCusTable()">
+                        <Icon type="ios-settings" />
+                        {{$t('schoolBaseInfo.setCusTable')}}
+                    </span>
                 </div>
                 <div class="class-info-content">
                     <!-- 關聯 Hiteach -->
@@ -457,6 +461,12 @@ export default {
         }
     },
     methods: {
+        //编辑课表
+        editCusTable(){
+            this.$router.push({
+                path:'/home/CoursePlan'
+            })
+        },
         //根据班级查询课程安排
         findClassCus() {
             if (this.roomListShow.length > 0) {

+ 1 - 1
TEAMModelOS/ClientApp/src/view/schoolmgmt/SystemSetting/NewSystemSetting.vue

@@ -742,7 +742,7 @@ export default {
         showDelGrade(index) {
             this.$Modal.confirm({
                 title: this.$t('schoolBaseInfo.delGradeTitle'),
-                content: this.$t('schoolBaseInfo.delete') + this.schoolSetting.period[this.curPriodIndex].grades[index].name + this.$t('schoolBaseInfo.delContent'),
+                content: this.$t('schoolBaseInfo.delete') + this.schoolSetting.period[this.curPriodIndex].grades[index] + this.$t('schoolBaseInfo.delContent'),
                 onOk: () => {
                     this.schoolSetting.period[this.curPriodIndex].grades.splice(index, 1)
                 }

+ 0 - 536
TEAMModelOS/ClientApp/src/view/schoolmgmt/SystemSetting/SystemSetting.less

@@ -1,536 +0,0 @@
-@nothing-textColor: #5f5f5f;
-@large-fontSize: 20px;
-
-//分隔小横线
-.lineSpan(@height,@width,@color,@mr) {
-    display: inline-block;
-    height: @height;
-    width: @width;
-    background: @color;
-    margin-right: @mr;
-}
-
-.sm-system {
-    width: 100%;
-    height: 100%;
-    color: white;
-}
-.sm {
-    &-school-name {
-        height: 60px;
-        border-bottom: 1px solid #606060;
-
-        .setting-title {
-            color: var(--label-text-color);
-            font-size: var(--font-size-normal);
-            font-weight: bold;
-            line-height: 60px;
-            margin-right: 5px;
-            margin-left: 30px;
-        }
-
-        .school-name {
-            font-size: var(--font-size-normal);
-            color: var(--primary-text-color);
-        }
-
-        .school-tools {
-            font-size: var(--font-size-normal);
-            margin-right: 30px;
-            margin-top: 13px;
-            float: right;
-        }
-
-        .school-tools .ivu-icon {
-            font-size: @font-size-large;
-            margin-right: 5px;
-            vertical-align: text-top;
-        }
-    }
-}
-
-.sm-system {
-    &-body {
-        .fl-row-center;
-        height:~"calc(100% - 60px)";
-        width: 100%;
-        user-select: none !important;
-    }
-    
-
-    
-
-
-    .col-title {
-        .action-btn-icon{
-            float:right;
-            line-height:50px;
-            color:white;
-            margin-left:8px;
-            font-size:16px;
-            &:hover{
-                color:aqua;
-            }
-        }
-        height: 50px;
-        line-height:50px;
-        width: 100%;
-        padding: 0 10px 0 0px;
-        font-weight: bold;
-        font-size: var(--font-size-normal);
-        color: var(--label-text-color);
-        border-bottom: 1px solid var(--border-color);
-
-        .ivu-icon {
-            color: var(--primary-text-color);
-            cursor: pointer;
-            margin-right: 10px;
-        }
-    }
-}
-
-
-.no-data-text {
-    width: 70%;
-    height: 100%;
-    font-size: 30px;
-    font-weight: 800;
-    color: @nothing-textColor;
-    text-align: center;
-    padding-top: 30px;
-    border-right: 1px solid var(--border-color);
-    background: #252525;
-}
-
-.fl-row-center {
-    display: flex;
-    align-items: center;
-}
-
-.fl-col-center {
-    display: flex;
-    flex-direction: column;
-    align-items: center;
-}
-.editable {
-    display:inline-block;
-    &:hover {
-        .edit-btn {
-            display: inline-block;
-        }
-    }
-
-    .edit-btn {
-        display: none;
-        font-size: var(--font-size-normal);
-        margin-left: 10px;
-        margin-bottom: 5px;
-    }
-
-    .ivu-icon{
-        /*display:none;*/
-        cursor:pointer;
-        color:white;
-    }
-}
-.time-zone-label{
-    width:300px;
-}
-.time-zone-label:hover + .edit-time-btn{
-    display:inline-block;
-}
-.edit-time-btn {
-    display: none;
-}
-.campus-modal {
-    text-align: center;
-    color: #DDDDDD;
-
-    .campus-name-item {
-        margin-top: 10px;
-        position: relative;
-
-        &:hover .campus-btn-edit {
-            display: inline-block;
-        }
-
-        &:hover {
-            color: white;
-            font-weight: 500;
-        }
-
-        .campus-name {
-            font-size: 16px;
-            cursor: pointer;
-        }
-
-        .campus-btn-edit {
-            margin-left: 15px;
-            display: none;
-            cursor: pointer;
-            position: absolute;
-            right: 15px;
-        }
-    }
-}
-.semester-name-label {
-    display: inline-block;
-    vertical-align: super;
-}
-
-#get-width {
-    position: absolute;
-    left: 0px;
-    top: 0px;
-    font-size: 18px;
-    visibility: hidden;
-    border: 1px solid black;
-    width: fit-content;
-}
-.split-left, .split-right {
-    height: 100%;
-}
-
-.period-wrap {
-    height: 100%;
-    padding-left: 15px;
-}
-
-.period-wrap {
-    .col-order {
-        width: 100%;
-        height: 50px;
-        min-height: 50px;
-        padding-left: 30px;
-        color: var(--label-text-color);
-        font-size: var(--font-size-normal);
-        border-bottom: 1px solid var(--border-color);
-        cursor: pointer;
-        .fl-row-center;
-
-        span {
-            margin-left: 5px;
-        }
-    }
-
-    .period-list {
-        width: 100%;
-        overflow: auto;
-
-        &::-webkit-scrollbar { /*滚动条整体样式*/
-            width: 5px; /*高宽分别对应横竖滚动条的尺寸*/
-            height: 1px;
-        }
-
-        &::-webkit-scrollbar-thumb { /*滚动条里面小方块*/
-            -webkit-box-shadow: inset 0 0 5px rgba(0,0,0,0.2);
-            background: rgb(124,124,124);
-        }
-
-        &::-webkit-scrollbar-track { /*滚动条里面轨道*/
-            -webkit-box-shadow: inset 0 0 5px rgba(0,0,0,0.2);
-            background: rgba(68,68,68,.5);
-        }
-
-        .campus-label {
-            color: aqua;
-            border: 1px solid aqua;
-            width: fit-content;
-            padding: 0px 5px;
-            border-radius: 4px;
-            font-size: 10px;
-            float: right;
-            margin-right:5px;
-            margin-top: 5px;
-        }
-    }
-
-
-
-
-    .period-item {
-        position: relative;
-        padding: 10px 10px 10px 0px;
-        border-bottom: 1px solid var(--border-color);
-        cursor: pointer;
-
-        &:hover {
-            .period-btn-edit {
-                display: inline-block;
-            }
-
-            .period-item-tool {
-                display: unset;
-            }
-        }
-
-        &-name {
-            font-size: @large-fontSize;
-            color: var(--primary-text-color);
-            font-weight: bold;
-            margin: 2px 0px;
-            width:100%;
-            .period-btn-edit {
-                font-size: var(--font-size-normal);
-                margin-left: 10px;
-                margin-bottom: 5px;
-                display: none;
-            }
-        }
-
-        &-tool {
-            position: absolute;
-            right: 30px;
-            top: 40px;
-            font-size: 24px;
-            color: var(--primary-text-color);
-            display: none;
-
-            .ivu-icon {
-                margin-left: 5px;
-            }
-        }
-
-        &-num {
-            padding-left: 5px;
-            color: var(--label-text-color);
-            font-size: var(--font-size-normal);
-
-            span {
-                display: inline-block;
-                width: 3px;
-                height: 10px;
-                margin-right: 5px;
-                background: var(--label-text-color);
-            }
-        }
-    }
-}
-.grade-wrap{
-    width:100%;
-    height:100%;
-    padding-left:15px;
-}
-
-.semester-wrap {
-    height: 100%;
-    padding-left: 15px;
-
-    .col-body {
-        width: 100%;
-        height: 100%;
-        display: flex;
-        flex-direction: row;
-        position: relative;
-    }
-
-    .term-list {
-        width: 70%;
-        height: ~"calc(100% - 50px)";
-        border-right: 1px solid var(--border-color);
-
-        &::-webkit-scrollbar { /*滚动条整体样式*/
-            width: 5px; /*高宽分别对应横竖滚动条的尺寸*/
-            height: 1px;
-        }
-
-        &::-webkit-scrollbar-thumb { /*滚动条里面小方块*/
-            -webkit-box-shadow: inset 0 0 5px rgba(0,0,0,0.2);
-            background: rgb(124,124,124);
-        }
-
-        &::-webkit-scrollbar-track { /*滚动条里面轨道*/
-            -webkit-box-shadow: inset 0 0 5px rgba(0,0,0,0.2);
-            background: rgba(68,68,68,.5);
-        }
-
-        .term-item {
-            width: 100%;
-            border-bottom: 1px solid var(--border-color);
-            padding: 10px 20px 10px 0px;
-            cursor: pointer;
-
-            &:hover {
-                .term-item-tool {
-                    display: inline-block;
-                }
-            }
-
-            &-name {
-                font-size: 20px;
-                font-weight: bold;
-                color: var(--primary-text-color);
-            }
-
-            &-name-line {
-                display: inline-block;
-                .lineSpan(16px,3px,red,2px);
-            }
-
-            &-students-num {
-                color: var(--label-text-color);
-                font-size: var(--font-size-normal);
-                margin: 10px;
-            }
-
-            &-start {
-                color: var(--label-text-color);
-                font-size: var(--font-size-normal);
-                margin: 10px;
-            }
-
-            &-tool {
-                position: absolute;
-                right: 20px;
-                top: 60px;
-                font-size: 24px;
-                color: var(--primary-text-color);
-                display: none;
-
-                .ivu-icon {
-                    margin-left: 5px;
-                    display: inline-block;
-                }
-            }
-        }
-    }
-
-
-    .term-item-time-line {
-        position: absolute;
-        left: 70%;
-        width: 30%;
-        height: ~"calc(100% - 50px)";
-        color: var(--label-text-color);
-
-        ul {
-            list-style: none;
-            width: fit-content;
-            margin: auto;
-        }
-
-        li {
-            margin: 27px 0;
-            font-size: @font-size-large;
-            font-weight: bold;
-            justify-content: flex-start;
-            .fl-row-center;
-
-            &:last-child .time-line-tail {
-                display: none;
-            }
-        }
-
-        .time-label {
-            width: 35px;
-            text-align: center;
-            font-size: 14px;
-        }
-
-        .time-dot {
-            position: relative;
-            width: 20px;
-            height: 20px;
-            border-radius: 50%;
-            padding: 5px;
-            border: 2px solid #959595;
-            margin-left: 10px;
-            z-index: 2;
-        }
-
-        .time-inner-dot {
-            display: inline-block;
-            width: 8px;
-            height: 8px;
-            background: #959595;
-            border-radius: 50%;
-            position: absolute;
-            top: 4px;
-            left: 4px;
-        }
-
-        .time-line-tail {
-            height: 30px;
-            border-left: 2px solid #606060;
-            position: absolute;
-            top: 18px;
-            left: 7px;
-            z-index: -1;
-        }
-    }
-}
-
-.subject-wrap {
-    height: 100%;
-    height: 100%;
-    padding-left: 15px;
-
-    .subject-body {
-        width: 100%;
-        padding: 20px 20px 20px 0px;
-
-        
-    }
-}
-.tag-item {
-    display: inline-block;
-    background: #5d5d5d;
-    color: #9b9b9b;
-    padding: 0px 5px 0px 10px;
-    font-size: 16px;
-    border-radius: 5px;
-    margin-right: 10px;
-    margin-bottom:10px;
-    &-icon {
-        display: inline-block;
-        width: 10px;
-        height: 10px;
-        background: #404040;
-        border-radius: 50%;
-        margin-right: 2px;
-    }
-}
-.grade-item {
-    display: flex;
-    width: 100%;
-    border-bottom: 1px solid #282828;
-    padding: 5px 2px;
-    align-items:baseline;
-    .grade-order {
-        flex: 0.1;
-    }
-
-    .grade-name {
-        flex: 0.8;
-    }
-}
-.attr-box-item {
-    color: white;
-    margin-bottom: 20px;
-    display: flex;
-
-
-    .add-type-iocn {
-        cursor: pointer;
-        font-size: 16px;
-        margin-top: 8px;
-    }
-
-    p {
-        min-width: 80px;
-        line-height: 32px;
-    }
-}
-.setting-btn {
-    width: 100%;
-    height: 40px;
-    background: #1cc0f3;
-    line-height: 40px;
-    border-radius: 4px;
-    margin-top: 50px;
-    text-align: center;
-    color: white;
-    cursor: pointer;
-    position: absolute;
-    bottom: 40px;
-}

File diff suppressed because it is too large
+ 0 - 1031
TEAMModelOS/ClientApp/src/view/schoolmgmt/SystemSetting/SystemSetting.vue


+ 2 - 2
TEAMModelOS/ClientApp/src/view/serviceDriveAuth/SubComponents/ServiceList.vue

@@ -106,9 +106,9 @@
                             <p class="intro-text">待提供</p>
                         </i-col>
                     </Row>
-                    <div class="action-btn" @click="gotoStudentManagent()">
+                    <!-- <div class="action-btn" @click="gotoStudentManagent()">
                         {{$t("serviceDriveAuth['管理AClassOne授權']")}}:
-                    </div>
+                    </div> -->
                 </div>
 
                 <!--給其他產品-->

+ 46 - 22
TEAMModelOS/ClientApp/src/view/student-account/ClassMgt.vue

@@ -206,7 +206,8 @@ export default {
             }
         }
         return {
-            roomList: [],
+            tableHeight:400,
+            // roomList: [],
             filterYear: 'all',
             studentColumn: [
                 {
@@ -247,9 +248,9 @@ export default {
             ],
             editIndex: -1,
             resetNoBef: 0,
-            schoolBase: {
-                period: []
-            },
+            // schoolBase: {
+            //     period: []
+            // },
             delSelections: [],//需要移除的学生
             selections: [],//添加的学生
             addStuStatus: false,
@@ -265,7 +266,7 @@ export default {
             isSaveLoading: false,
             isInit: true,
             updated: false,
-            classList: [],
+            // classList: [],
             classListShow: [],
             curClassIndex: 0,
             keyword: '',
@@ -299,6 +300,9 @@ export default {
     computed: {
         ...mapGetters({
             periods: 'user/getPeriods', // 學制s
+            schoolBase: 'user/getSchoolBase',
+            classList: 'user/getClasses',
+            roomList: 'user/getRooms'
         }),
         filterYearName() {
             if (this.filterYear == 'all') {
@@ -679,7 +683,7 @@ export default {
                         )
                     }
                 })
-            }else{
+            } else {
                 this.$Message.error(this.$t('system.authErr'))
             }
         },
@@ -817,27 +821,47 @@ export default {
         }
     },
     created() {
-        this.isListLoading = true
-        this.$store.dispatch('user/getSchoolProfile').then(
-            res => {
-                this.schoolBase = res.school_base
-                this.classList = res.school_classes
-                this.roomList = res.school_rooms
+        // this.isListLoading = true
+        // this.$store.dispatch('user/getSchoolProfile').then(
+        //     res => {
+        //         // this.schoolBase = res.school_base
+        //         this.classList = res.school_classes
+        //         this.roomList = res.school_rooms
+        //         if (this.classList.length > 0) {
+        //             this.updateBefore = JSON.stringify(this.classList[0])
+        //         }
+        //         this.filterClassname()
+        //         // 預設搜尋給第一個
+        //         if (this.periods) this.filterPeriod = this.periods[0].id
+        //         this.filterByPeriod()
+        //     }
+        // ).finally(() => {
+        //     setTimeout(() => {
+        //         this.isListLoading = false
+        //     }, 500)
+        // })
+        if (this.$access.can('admin.*|classroom-upd')) this.editStatus = this.noStatus
+        this.$store.dispatch('teachers/getTeacherList').then(res => { })
+    },
+    watch: {
+        classList: {
+            handler(n, o) {
                 if (this.classList.length > 0) {
                     this.updateBefore = JSON.stringify(this.classList[0])
                 }
                 this.filterClassname()
-                // 預設搜尋給第一個
-                if (this.periods) this.filterPeriod = this.periods[0].id
+            },
+            deep: true,
+            immediate: true
+        },
+        periods: {
+            handler(n, o) {
+                if (this.periods && this.periods.length) this.filterPeriod = this.periods[0].id
                 this.filterByPeriod()
-            }
-        ).finally(() => {
-            setTimeout(() => {
-                this.isListLoading = false
-            }, 500)
-        })
-        if (this.$access.can('admin.*|classroom-upd')) this.editStatus = this.noStatus
-        this.$store.dispatch('teachers/getTeacherList').then(res => { })
+            },
+            deep: true,
+            immediate: true
+        }
     }
 }
 </script>

+ 3 - 3
TEAMModelOS/ClientApp/src/view/student-account/Index.vue

@@ -549,21 +549,21 @@ export default {
                 },
                 {
                     key: 'year',
-                    title: '学级',
+                    title: this.$t('stuAccount.academicYear'),
                     align: 'center',
                     width: 140,
                     sortable: true
                 },
                 {
                     slot: 'gradeName',
-                    title: '年级',
+                    title: this.$t('stuAccount.grade'),
                     align: 'center',
                     width: 140,
                     sortable: true
                 },
                 {
                     slot: 'classId',
-                    title: '班级',
+                    title: this.$t('stuAccount.classroomCode'),
                     align: 'center',
                     sortable: true
                 },