<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # actionGetTeacherTimetable D:\wamp\www\ketang.test\weike\protected\modules\xingke\controllers\TimetableController.php 1. 查找該老師的課表記錄(根據當前教師用戶的班級和科目查找) ``` $criteria = new CDbCriteria(); $criteria->addInCondition('t.fdClassID', $classIDs); $criteria->addInCondition('t.fdSubjectID', $subjectIDs); $res2 = TimetableService::factory()->getAttributesByObject(teaTimetable::model()->findAll($criteria)); ``` ![](https://img.kancloud.cn/63/f4/63f46d5723e638df19f13046a8e2a1a1_292x631.png) 2. 組裝數組 ``` $arr = []; $week = TimeFormatUtils::get_week($start ? floor($start / 1000) : time(), 'Y-m-d'); for ($i = 1; $i <= 7; $i++) { $arr[$i]['weekID'] = $i; $arr[$i]['date'] = $week[$i - 1]['date']; $weekText = $week[$i - 1]['week']; $arr[$i]['week'] = $weekText; } ``` ![](https://img.kancloud.cn/0b/df/0bdf6a7528c157cad0eb8b842aa61984_304x782.png) 3. 遍歷課表記錄,組裝每節課的信息到組裝數組 ``` foreach ($res2 as $item) { $temp = []; $weekID = $item['fdWeekID']; $classIndex = $item['fdClassIndex']; $classID = $item['fdClassID']; $subjectID = $item['fdSubjectID']; $date = $arr[$weekID]['date']; //日期,如3-11 $dateFullName = date('Y-m-d', strtotime($date)); // 完成日期,如2019-03-11 // 檢查是否是調課 ['type' => 1 和誰調換 2 被誰調換 3 和空白課調換] $adjust = TimetableService::factory()->getIsAdjustTimetable($termID, $classID, $dateFullName, $classIndex, $subjectID); // 課表信息:節次 $temp['classIndex'] = $classIndex; if ($adjust) { ... } else { // 課表信息:科目信息 $temp['subject']['id'] = $subjectID; $temp['subject']['title'] = Yii::app()->params['SUBJECT_ARR'][$subjectID]; $temp['subject']['isAdjust'] = 0; // 不是調課 // 課表信息:資源信息 $temp['resource'] = TimetableService::factory()->getAllTypesResourcesStatus($termID, $classID, $dateFullName, $classIndex); } // 課表信息:班級信息 $temp['class']['id'] = $classID; $class = wkeClass::model()->findByPk($classID); $temp['class']['title'] = $class->fdName; $temp['class']['gradeID'] = $class->fdGradeID; // 空白課調課情況 if ($adjust['type'] == 3) { ... } // 非空白課程調換 if (in_array($adjust['type'], [1, 2]) && !$isAdjust) { if ($adjust['type'] == 2) { $weekID = TimeFormatUtils::get_week_id($adjust['data']->fdDate); $classIndex = $adjust['data']->fdClassIndex; $temp['classIndex'] = $classIndex; $temp['subject']['id'] = $adjust['data']->fdSourceSubjectID; $temp['subject']['title'] = Yii::app()->params['SUBJECT_ARR'][$adjust['data']->fdSourceSubjectID]; $temp['subject']['isAdjust'] = 1; // 是調課*/ $dateFullName = $adjust['data']->fdDate; } elseif ($adjust['type'] == 1) { $weekID = TimeFormatUtils::get_week_id($adjust['data']->fdSourceDate); $classIndex = $adjust['data']->fdSourceClassIndex; $temp['classIndex'] = $classIndex; $temp['subject']['id'] = $adjust['data']->fdSubjectID; $temp['subject']['title'] = Yii::app()->params['SUBJECT_ARR'][$adjust['data']->fdSubjectID]; $temp['subject']['isAdjust'] = 1; // 是調課*/ $dateFullName = $adjust['data']->fdSourceDate; } // 調課后,資源訪問 $temp['resource'] = TimetableService::factory()->getAllTypesResourcesStatus($termID, $classID, $dateFullName, $classIndex); } $arr[$weekID]['class'][$classIndex] = $temp; } ``` ![](https://img.kancloud.cn/2e/cc/2eccf6ddda5ee6579150582db669e5d6_304x427.png) 課表組裝到數組后: ![](https://img.kancloud.cn/bb/14/bb1456d6715e9e7d5247c86ecbe7fc5a_695x787.png) 4. 按節次排序,修改數組索引 ``` ksort($arr); // 一維數組按照主鍵排序 foreach ($arr as $k => $v) { $temp = $v['class']; $temp && ksort($temp); $arr[$k]['class'] = $temp; // 二維數組按照主鍵排序 } // 去除 index主鍵 foreach ($arr as $k => $v) { $temp = []; $temp['weekID'] = $v['weekID']; $temp['date'] = $v['date']; $temp['week'] = $v['week']; $temp['class'] = $v['class'] ? array_values($v['class']) : null; krsort($temp); $arr[$k] = $temp; } ``` ![](https://img.kancloud.cn/58/16/58161dc41bc6a8d49f9fd6a0f22aa855_463x716.png)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看