ソースを参照

活動新增登入類型欄位

upon 4 ヶ月 前
コミット
79bd88a610

+ 1 - 0
TEAMModelOS.SDK/Models/Cosmos/Teacher/JointEvent.cs

@@ -50,6 +50,7 @@ namespace TEAMModelOS.SDK.Models
             public string name { get; set; } //檔案名稱
             public string blob { get; set; } //檔案Blob路徑
         }
+        public List<string> loginType { get; set; } // 登入類型
     }
 
     /// <summary>

+ 2 - 0
TEAMModelOS/ClientApp/public/lang/en-US.js

@@ -8120,6 +8120,8 @@ const LANG_EN_US = {
         classScoreOverview: 'Class overview',
         releaseCustomExam: 'Set finals to visible',
         classNumber:'Class number',
+        loginType: 'Login Type',
+        pleaseEnterloginType: 'Please select login type',
     },
     activity: {
         scoreWord: {

+ 2 - 0
TEAMModelOS/ClientApp/public/lang/zh-CN.js

@@ -8122,6 +8122,8 @@ const LANG_ZH_CN = {
         classScoreOverview: '所有班级成绩一览',
         releaseCustomExam: '设定决赛为可见',
         classNumber:'班级编号',
+        loginType: '登入类型',
+        pleaseEnterloginType: '请选择登录类型',
     },
     activity: {
         scoreWord: {

+ 2 - 0
TEAMModelOS/ClientApp/public/lang/zh-TW.js

@@ -8121,6 +8121,8 @@ const LANG_ZH_TW = {
         classScoreOverview: '所有班級成績一覽',
         releaseCustomExam: '設定決賽為可見',
         classNumber:'班級編號',
+        loginType: '登入類型',
+        pleaseEnterloginType: '請選擇登入類型',
     },
     activity: {
         scoreWord: {

+ 24 - 3
TEAMModelOS/ClientApp/src/view/htcommunity/htMgtHome.vue

@@ -54,6 +54,13 @@
                                             end-placeholder="End" style="width: 400px;">
                             </el-date-picker>
                         </el-form-item>
+                         <el-form-item :label="this.$t('htcommunity.loginType')" prop="loginType">
+                             <el-checkbox-group v-model="newActivity.loginType" >
+                              <el-checkbox v-for="item in loginTypeOptions" :label="item.value" :key="item.value">{{item.name}}</el-checkbox>
+                             <!-- <el-checkbox label="tmdId">醍摩豆帳號登入</el-checkbox>
+                             <el-checkbox label="eduId">教育雲登入</el-checkbox> -->
+                             </el-checkbox-group>
+                        </el-form-item>
                     </div>
                     <div class="form-right">
                         <!-- 組別表格 -->
@@ -228,6 +235,7 @@ export default {
         planContent: [
           {id:'', step: 1, schedule: [], name: this.$t("htcommunity.jointTime"), location: '', description: '', blobs: '', type: true, examType: false, evaluation: false }
         ],
+        loginType: [],
        
       },
       // 表單驗證
@@ -240,11 +248,20 @@ export default {
             required: true, message: this.$t("htcommunity.pleaseEnterSchedule")
           }
         ],
+        loginType: [
+          {
+            required: true, message: this.$t("htcommunity.pleaseEnterloginType")
+          }
+        ],
       },
       showJoinModal: false, //報名狀況子視窗
       teacherCourseLoading: false,
       joinTeacherCourseArr: [],
       joinModalTitle: '', //報名狀態視窗標題
+      loginTypeOptions : [
+          {name:'醍摩豆帳號登入', value: 'tmdId'},
+          {name:'教育雲登入', value: 'eduId'}
+        ],
     };
   },
   methods: {
@@ -284,7 +301,8 @@ export default {
                   name: item.name,
                   time: this.$jsFn.secondTimeFormat(item.startTime) + "~" + this.$jsFn.secondTimeFormat(item.endTime),
                   admin: item.admin[0],
-                  originalData:item,                             
+                  originalData:item,
+                  loginType: item.loginType                             
                 }
                 this.activities.push(activity);
                 index++;
@@ -395,6 +413,7 @@ export default {
         requireOrderCompletion: false,
         planContent: [
         ],
+        loginType: activity.loginType
       };      
       // #endregion
       // #region 設定活動分組      
@@ -594,7 +613,8 @@ export default {
           countryId: "TW",
           cityId: this.newActivity.region.toString()
         },
-        admin: [tmdid],      
+        admin: [tmdid],
+        loginType: this.newActivity.loginType      
       };
 
       try {
@@ -724,7 +744,8 @@ export default {
         requireOrderCompletion: false,
         planContent: [
           {id:'', step: 1, schedule: [], name: this.$t('htcommunity.jointTime'), location: '', description: '', blobs: '',  type: true, examType: false, evaluation: false }
-        ]
+        ],
+        loginType: []
       };      
     },
     //增加分組

+ 2 - 0
TEAMModelOS/Controllers/Teacher/JointEventController.cs

@@ -248,6 +248,7 @@ namespace TEAMModelOS.Controllers.Common
                 List<string> admin = (request.TryGetProperty("admin", out JsonElement _admin)) ? _admin.ToObject<List<string>>() : new List<string>();
                 long startTime = (request.TryGetProperty("startTime", out JsonElement _startTime)) ? _startTime.GetInt64() : 0;
                 long endTime = (request.TryGetProperty("endTime", out JsonElement _endTime)) ? _endTime.GetInt64() : 0;
+                List<string> loginType = (request.TryGetProperty("loginType", out JsonElement _loginType)) ? _loginType.ToObject<List<string>>() : new List<string>();
                 //新建統測活動 輸入項檢測 
                 if (string.IsNullOrWhiteSpace(creatorId) || string.IsNullOrWhiteSpace(name) || startTime.Equals(0) || endTime.Equals(0))
                 {
@@ -279,6 +280,7 @@ namespace TEAMModelOS.Controllers.Common
                 jointEvent.progress = (startTime <= now && now <= endTime) ? "going" : (now < startTime) ? "pending" : "finish";
                 if (geo != null) jointEvent.geo = geo;
                 if (admin.Count > 0) jointEvent.admin = admin;
+                if (loginType.Count > 0) jointEvent.loginType = loginType;
 
                 await client.GetContainer(Constant.TEAMModelOS, "Teacher").UpsertItemAsync<JointEvent>(jointEvent, new PartitionKey("JointEvent"));
                 return Ok(new { errCode = "", err = "", jointEvent });