Bladeren bron

Merge branch 'develop' into PL/develop-BI

Li 3 jaren geleden
bovenliggende
commit
9dda64bb7d

+ 3 - 3
TEAMModelOS.FunctionV4/TEAMModelOS.FunctionV4.csproj

@@ -5,9 +5,9 @@
 		<OutputType>Exe</OutputType>
 		<_FunctionsSkipCleanOutput>true</_FunctionsSkipCleanOutput>
 		<SignAssembly>true</SignAssembly>
-		<AssemblyVersion>5.2205.11.1</AssemblyVersion>
-		<FileVersion>5.2205.11.1</FileVersion>
-		<Version>5.2205.11</Version>
+		<AssemblyVersion>5.2205.18.1</AssemblyVersion>
+		<FileVersion>5.2205.18.1</FileVersion>
+		<Version>5.2205.18</Version>
 		<PackageId>TEAMModelOS.FunctionV4</PackageId>
 		<Authors>teammodel</Authors>
 		<Company>醍摩豆(成都)信息技术有限公司</Company>

+ 18 - 4
TEAMModelOS/ClientApp/public/lang/en-US.js

@@ -357,9 +357,17 @@ const LANG_EN_US = {
         hasSelected: 'Selected',
         sltTips: 'Please select serial number',
         band: 'Bind',
-        attr1: 'Sokrates Lesson Observation',
-        attr2: 'Distance Classroom Service',
-        attr3: 'Recording System',
+        attr1: '蘇格拉底APP',
+        attr2: '蘇格拉底影片',
+        attr3: '蘇格拉底報告',
+        attr4: '蘇格拉底桌面',
+        attr5: 'ezStation',
+        attr6: '遠距教室服務',
+        attr7: 'IRS禁用',
+        attr8: 'AI攝影機',
+        attr9: 'AI文句分析',
+        attr10: '議課人數',
+        attr11: '分組數',
         unbandTitle: 'Unbound Serial No.',
         unbandCont: 'Are you sure to unbind the serial no. of the current classroom?',
         scaleLabel: 'School Scale Authorization',
@@ -378,12 +386,18 @@ const LANG_EN_US = {
         noDeviceName:'暫無設備名稱',
         noClassId:'未關聯教室',
         rltClass:'關聯教室',
+        unrltClass:'解绑教室',
         unbdDeviceCont:'確認解綁當前設備嗎?',
         unbdOk:'解綁成功',
         unbdErr1:'設備ID錯誤',
         unbdErr2:'序列號異常',
         unMatchRoom:'未匹配到教室',
-        deviceName:'設備名稱:',    
+        deviceName:'設備名稱:',  
+        bandOk:'綁定成功',
+        bandErr:'綁定失敗',
+        unbdRoomCt:'確定解綁當前教室嗎?',
+        unbdOk:'解綁成功',
+        unbdErr:'解綁失敗'  
     },
     // 班级管理
     classMgmt: {

+ 18 - 4
TEAMModelOS/ClientApp/public/lang/zh-CN.js

@@ -357,9 +357,17 @@ const LANG_ZH_CN = {
         hasSelected: '已选中',
         sltTips: '请选择序列号',
         band: '绑定',
-        attr1: '苏格拉底议课',
-        attr2: '远距教室服务',
-        attr3: '录播系统',
+        attr1: '苏格拉底APP',
+        attr2: '苏格拉底影片',
+        attr3: '苏格拉底报告',
+        attr4: '苏格拉底桌面',
+        attr5: 'ezStation',
+        attr6: '远距教室服务',
+        attr7: 'IRS禁用',
+        attr8: 'AI摄影机',
+        attr9: 'AI文句分析',
+        attr10: '议课人数',
+        attr11: '分组数',
         unbandTitle: '解绑序列号',
         unbandCont: '确认解绑当前教室的序列号吗?',
         scaleLabel: '学校规模授权',
@@ -378,12 +386,18 @@ const LANG_ZH_CN = {
         noDeviceName:'暂无设备名称',
         noClassId:'未关联教室',
         rltClass:'关联教室',
+        unrltClass:'解绑教室',
         unbdDeviceCont:'确认解绑当前设备吗?',
         unbdOk:'解绑成功',
         unbdErr1:'设备ID错误',
         unbdErr2:'序列号异常',
         unMatchRoom:'未匹配到教室',
-        deviceName:'设备名称:',      
+        deviceName:'设备名称:',  
+        bandOk:'绑定成功',
+        bandErr:'绑定失败',
+        unbdRoomCt:'确定解绑当前教室吗?',
+        unbdOk:'解绑成功',
+        unbdErr:'解绑失败'
     },
     // 班级管理
     classMgmt: {

+ 18 - 4
TEAMModelOS/ClientApp/public/lang/zh-TW.js

@@ -357,9 +357,17 @@ const LANG_ZH_TW = {
         hasSelected: '已選中',
         sltTips: '請選擇序號',
         band: '綁定',
-        attr1: '蘇格拉底議課',
-        attr2: '遠距教室服務',
-        attr3: '錄播系統',
+        attr1: '蘇格拉底APP',
+        attr2: '蘇格拉底影片',
+        attr3: '蘇格拉底報告',
+        attr4: '蘇格拉底桌面',
+        attr5: 'ezStation',
+        attr6: '遠距教室服務',
+        attr7: 'IRS禁用',
+        attr8: 'AI攝影機',
+        attr9: 'AI文句分析',
+        attr10: '議課人數',
+        attr11: '分組數',
         unbandTitle: '解綁序號',
         unbandCont: '確認解綁當前教室的序號嗎?',
         scaleLabel: '學校規模授權',
@@ -378,12 +386,18 @@ const LANG_ZH_TW = {
         noDeviceName:'暫無設備名稱',
         noClassId:'未關聯教室',
         rltClass:'關聯教室',
+        unrltClass:'解绑教室',
         unbdDeviceCont:'確認解綁當前設備嗎?',
         unbdOk:'解綁成功',
         unbdErr1:'設備ID錯誤',
         unbdErr2:'序列號異常',
         unMatchRoom:'未匹配到教室',
-        deviceName:'設備名稱:',    
+        deviceName:'設備名稱:',   
+        bandOk:'綁定成功',
+        bandErr:'綁定失敗',
+        unbdRoomCt:'確定解綁當前教室嗎?',
+        unbdOk:'解綁成功',
+        unbdErr:'解綁失敗' 
     },
     // 班级管理
     classMgmt: {

+ 2 - 2
TEAMModelOS/ClientApp/src/components/student-web/EventView/BillBoardandLightBox.vue

@@ -6,10 +6,10 @@
         <div class="dec">
             <p><span v-html="activityData.description"></span></p>
         </div>
-        <div class="title-rect-group" v-if="this.$store.getters.getItemTitle.eventType  === 'Vote'">
+        <div class="title-rect-group" v-if="this.$store.getters.getItemTitle.type  === 'Vote'">
             <h2 class="title-rect-name">{{$t("studentWeb.vote.voteRecord")}}</h2>
         </div>
-        <div class="dec" v-if="this.$store.getters.getItemTitle.eventType == 'Vote'">
+        <div class="dec" v-if="this.$store.getters.getItemTitle.type == 'Vote'">
             <Table v-if="showTable" border :columns="voteColums" :data="voteColumsData"></Table>
             <span v-else>{{ $t("studentWeb.public.noData") }}</span>
         </div>

+ 3 - 4
TEAMModelOS/ClientApp/src/components/student-web/EventView/EventContentTypeTemplate/ClassmateCommentPages.vue

@@ -259,7 +259,7 @@ export default {
         this.homeWork = this.$route.params.homework ? this.$route.params.homework : JSON.parse(localStorage.getItem("homework")) */
     },
     mounted () {
-        console.log(this.students);
+        // console.log(this.students);
         this.getStudentList()
     },
     methods: {
@@ -286,7 +286,7 @@ export default {
                             }
                         }) */
                         if(this.students.length) {
-                            console.log(this.students.length);
+                            // console.log(this.students.length);
                             // this.students[0]._highlight = true
                             // this.starNum = this.students[0].star
                             this.nowStudent = this.students[0]
@@ -319,7 +319,6 @@ export default {
         // 获取同学
         getAllComment() {
             this.starNum = 0
-                    console.log("默认一位学生");
             let params = {
                 opt: "ReadAllComment",
                 id: this.homeWork.id,
@@ -337,7 +336,7 @@ export default {
                     this.getBlobSas()
                 }
                 if(res.comments.length) {
-                    console.log(res.comments.find(item => {return item.userid === this.userInfo.sub}));
+                    // console.log(res.comments.find(item => {return item.userid === this.userInfo.sub}));
                     let com = res.comments.find(item => {return item.userid === this.userInfo.sub})
                     if(com) {
                         this.starNum = com.star

+ 4 - 1
TEAMModelOS/ClientApp/src/components/student-web/EventView/EventContentTypeTemplate/HomeworkFeedback.vue

@@ -28,7 +28,7 @@
                             </p>
                             <div v-if="item.mark" style="display: flex;">
                                 <p>{{ $t("studentWeb.exam.report.mark") }}:</p>
-                                <img :src="item.mark" alt="">
+                                <img :src="item.mark" alt="" @click="onPreview(item.mark)" style="cursor: pointer;">
                             </div>
                             <div class="timeRate">
                                 <div>
@@ -186,6 +186,9 @@ export default {
             var S = (date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds()) + " "
             return Y + M + D + H + Min;
         },
+        onPreview(url) {
+            this.$hevueImgPreview(url)
+        },
     },
     computed: {
         ...mapState({

+ 16 - 6
TEAMModelOS/ClientApp/src/view/auth/Serial.less

@@ -77,8 +77,9 @@
 }
 
 .serial-item {
-    padding: 20px 10px 20px 22px;
+    padding: 30px 10px 30px 22px;
     position: relative;
+    border-bottom: 1px solid #f8f8f9;
 
     &:hover {
         background: var(--hover-text-color);
@@ -128,15 +129,23 @@
     padding: 2px 15px;
     color: black;
 }
-
 .serial-auth-tag {
-    border: 1px solid var(--border-color);
     margin-right: 15px;
-    padding: 2px 8px;
     border-radius: 2px;
     white-space: nowrap;
     font-size: 12px;
     margin-bottom: 5px;
+    overflow: hidden;
+}
+
+.serial-auth-name {
+    padding: 2px 6px;
+}
+
+.serial-auth-number {
+    background: #ffffff;
+    color: #515a6e;
+    padding: 2px 4px;
 }
 
 .serial-date {
@@ -169,7 +178,7 @@
 }
 
 .room-item-bind {
-    background: #19be6b;
+    background: #2db7f5;
 
     .room-name {
         color: white;
@@ -221,7 +230,7 @@
 }
 
 .room-type-tag {
-    background: #508ac4;
+    background: #a2b1bf;
     color: white;
     font-size: 12px;
     padding: 1px 8px;
@@ -279,5 +288,6 @@
     &:first-child {
         margin-top: 0px;
     }
+
     margin-top: 20px;
 }

+ 54 - 50
TEAMModelOS/ClientApp/src/view/auth/Serial.vue

@@ -85,16 +85,16 @@
                         <!-- 序列号列表 -->
                         <div :class="['serial-item',sltSerial.includes(item.serial) ? 'serial-item-active':'']" v-for="(item) in serialListShow" :key="item.serial">
                             <p>
-                                <span class="serial-type-tag" :style="{background:item.deviceMax > 1 ? '#19be6b' : '#1cc0f3'}">
+                                <span class="serial-type-tag" :style="{background:item.deviceMax > 1 ? '#808695' : '#c5c8ce'}">
                                     {{item.deviceMax > 1 ? $t('auth.numerous') : $t('auth.single')}}
                                 </span>
-                                <span class="serial-info" :style="{borderColor:item.deviceMax > 1 ? '#19be6b' : '#1cc0f3'}">
+                                <span class="serial-info" :style="{borderColor:item.deviceMax > 1 ? '#808695' : '#c5c8ce'}">
                                     {{item.serial}}
                                 </span>
                             </p>
 
                             <!-- 序列号到期时间 -->
-                            <div style="margin-top:10px">
+                            <div style="margin-top:15px">
                                 <span>
                                     {{$t('auth.expiredData')}}
                                 </span>
@@ -114,26 +114,16 @@
                             <!-- 序列号权限 -->
                             <div style="margin-top:10px;display: flex;flex-wrap: wrap;">
                                 <template v-for="(aitem) in serialAuthList">
-                                    <span :key="aitem.code" class="serial-auth-tag" v-show="item.authKey.includes(aitem.code)">
-                                        {{aitem.name}}
-                                        <span>
+                                    <Tag :key="aitem.code" class="serial-auth-tag" v-show="item.authKey.includes(aitem.code)" :color="aitem.color">
+                                        <span class="serial-auth-name">
+                                            {{aitem.name}}
+                                        </span>
+                                        <span v-show="aitem.type == 'number'" class="serial-auth-number">
                                             {{aitem.type == 'number' && item.aprule ? item.aprule[aitem.code] : ''}}
                                         </span>
-                                    </span>
+                                    </Tag>
                                 </template>
                             </div>
-                            <!-- 序列号列表操作 -->
-                            <!-- <div class="serial-action-wrap">
-                                <span class="serial-action-btn" v-show="item.deviceBound.length">
-                                    {{$t('auth.unband')}}
-                                </span>
-                                <span class="serial-action-btn" v-if="!item.expired" v-show="item.deviceBound.length < item.deviceMax" @click="toggleSelectSerial(item)">
-                                    {{sltSerial.includes(item.serial) ? $t('auth.cancel') : $t('auth.select')}}
-                                </span>
-                                <span class="serial-slt-status" v-show="sltSerial.includes(item.serial)">
-                                    {{$t('auth.hasSelected')}}
-                                </span>
-                            </div> -->
                         </div>
                         <EmptyData :textContent="$t('auth.noSerail')" v-show="!serialListShow.length"></EmptyData>
                     </vuescroll>
@@ -147,7 +137,7 @@
                                 <p class="room-name">
                                     {{item.pcname || $t('auth.noDeviceName')}}
                                 </p>
-                                <p class="room-type-tag">
+                                <p class="room-type-tag" :style="{background:item.classId ? '#2d8cf0' : '#c5c8ce'}">
                                     {{ item.classId ? getClassName(item.classId) : $t('auth.noClassId')}}
                                 </p>
                                 <p class="room-serial-info">
@@ -161,7 +151,7 @@
                                         <!-- {{item.serial ? $t('auth.unband') : sltSerial.length ? $t('auth.band') : $t('auth.sltTips')}} -->
                                     </p>
                                     <p class="room-action-btn" @click="toggleBandRoom(item)">
-                                        {{ item.classId ? '解绑教室' : $t('auth.rltClass')}}
+                                        {{ item.classId ? $t('auth.unrltClass') : $t('auth.rltClass')}}
                                     </p>
                                 </div>
                             </div>
@@ -210,7 +200,7 @@ export default {
             rltRoomStatus: false,
             keyword: '',
             filterName: 'filterAll',
-            split1: 0.28,
+            split1: 0.382,
             isLoading: false,
             serialList: [],
             serialListShow: [],
@@ -218,58 +208,69 @@ export default {
             serialAuthList: [
                 {
                     code: 'sokapp',
-                    name: '苏格拉底APP',
-                    type: 'tag'
+                    name: this.$t('auth.attr1'),
+                    type: 'tag',
+                    color: 'geekblue'
                 },
                 {
                     code: 'sokvdo',
-                    name: '苏格拉底影片',
-                    type: 'tag'
+                    name: this.$t('auth.attr2'),
+                    type: 'tag',
+                    color: 'orange'
                 },
                 {
                     code: 'sokrpt',
-                    name: '苏格拉底报告',
-                    type: 'tag'
+                    name: this.$t('auth.attr3'),
+                    type: 'tag',
+                    color: 'yellow'
                 },
                 {
                     code: 'sokdesk',
-                    name: '苏格拉底桌面',
-                    type: 'tag'
+                    name: this.$t('auth.attr4'),
+                    type: 'tag',
+                    color: 'green'
                 },
                 {
                     code: 'ezs',
-                    name: 'ezStation',
-                    type: 'tag'
+                    name: this.$t('auth.attr5'),
+                    type: 'tag',
+                    color: 'cyan'
                 },
                 {
                     code: 'remotcls',
-                    name: '远距教室服务',
-                    type: 'tag'
+                    name: this.$t('auth.attr6'),
+                    type: 'tag',
+                    color: 'blue'
                 },
                 {
                     code: 'irs',
-                    name: 'IRS禁用',
-                    type: 'tag'
+                    name: this.$t('auth.attr7'),
+                    type: 'tag',
+                    color: 'purple'
                 },
                 {
                     code: 'hdcam',
-                    name: 'AI摄影机',
-                    type: 'tag'
+                    name: this.$t('auth.attr8'),
+                    type: 'tag',
+                    color: 'red'
                 },
                 {
                     code: 'wordanls',
-                    name: 'AI文句分析',
-                    type: 'tag'
+                    name: this.$t('auth.attr9'),
+                    type: 'tag',
+                    color: 'volcano'
                 },
                 {
                     code: 'soknumber',
-                    name: '议课人数',
-                    type: 'number'
+                    name: this.$t('auth.attr10'),
+                    type: 'number',
+                    color: 'magenta'
                 },
                 {
                     code: 'cligroup',
-                    name: '分组数',
-                    type: 'number'
+                    name: this.$t('auth.attr11'),
+                    type: 'number',
+                    color: 'red'
                 }
             ]
         }
@@ -301,12 +302,12 @@ export default {
                 }
                 this.$api.serviceDriveAuth.classroomBand(requestData).then(
                     res => {
-                        this.$Message.success('绑定成功')
+                        this.$Message.success(this.$t('auth.bandOk'))
                         this.rltRoomStatus = false
                         this.deviceInfo.classId = this.rltRoom
                     },
                     err => {
-                        this.$Message.error('绑定失败')
+                        this.$Message.error(this.$t('auth.bandErr'))
                     }
                 ).finally(() => {
                     this.btnLoading = false
@@ -320,8 +321,8 @@ export default {
         // 解绑教室
         unbandRoom(data) {
             this.$Modal.confirm({
-                title: '解绑教室',
-                content: '确定解绑当前教室吗?',
+                title: this.$t('auth.bandErr'),
+                content: this.$t('auth.unbdRoomCt'),
                 onOk: () => {
                     let serialInfo = this.serialList.find(item => item.serial == this.deviceInfo.serial)
                     if (serialInfo) {
@@ -335,12 +336,12 @@ export default {
                         }
                         this.$api.serviceDriveAuth.classroomBand(requestData).then(
                             res => {
-                                this.$Message.success('解绑成功')
+                                this.$Message.success(this.$t('auth.unbdOk'))
                                 this.deviceInfo.classId = null
                                 this.rltRoomStatus = false
                             },
                             err => {
-                                this.$Message.error('解绑失败')
+                                this.$Message.error(this.$t('auth.unbdErr'))
                             }
                         )
                     }
@@ -517,4 +518,7 @@ export default {
 .serial-filter-wrap .ivu-input {
     border-radius: 50px;
 }
+.serial-item .ivu-tag {
+    padding: 0px;
+}
 </style>

+ 3 - 3
TEAMModelOS/TEAMModelOS.csproj

@@ -33,9 +33,9 @@
     <SpaRoot>ClientApp\</SpaRoot>
     <DefaultItemExcludes>$(DefaultItemExcludes);$(SpaRoot)node_modules\**</DefaultItemExcludes>
     <UserSecretsId>078b5d89-7d90-4f6a-88fc-7d96025990a8</UserSecretsId>
-    <Version>5.2205.11</Version>
-    <AssemblyVersion>5.2205.11.1</AssemblyVersion>
-    <FileVersion>5.2205.11.1</FileVersion>
+    <Version>5.2205.18</Version>
+    <AssemblyVersion>5.2205.18.1</AssemblyVersion>
+    <FileVersion>5.2205.18.1</FileVersion>
     <Description>TEAMModelOS(IES5)</Description>
     <PackageReleaseNotes>IES版本说明</PackageReleaseNotes>
     <PackageId>TEAMModelOS</PackageId>