فهرست منبع

AnswerBook grades

ali 2 سال پیش
والد
کامیت
bf70aff5cc
2فایلهای تغییر یافته به همراه63 افزوده شده و 4 حذف شده
  1. 30 0
      src/api/models/AnswerBook.js
  2. 33 4
      src/components/Widgets/Test/ShowTestGradeForGrader/ShowTestGradeForGrader.vue

+ 30 - 0
src/api/models/AnswerBook.js

@@ -10,6 +10,8 @@ export default class AnswerBookAPI extends APIRepository {
       getOrCreate: '/lma/answer_books/get_or_create',
       byId: (id) => '/lma/answer_books/' + id,
       confirmAnswers: (id) => '/lma/answer_books/' + id + '/confirm_answers',
+      confirmScores: (id) => '/lma/answer_books/' + id + '/confirm_scores',
+      confirmUngradable: (id) => '/lma/answer_books/' + id + '/confirm_ungradable',
       setGraderToMe: (id) => '/lma/answer_books/' + id + '/set_grader_to_me',
       submitObjectionResult: (id) => '/lma/answer_books/' + id + '/submit_objection_result',
       submitObjectionRequest: (id) => '/lma/answer_books/' + id + '/submit_objection_request',
@@ -125,6 +127,34 @@ export default class AnswerBookAPI extends APIRepository {
     })
   }
 
+  confirmScores (id) {
+    return this.sendRequest({
+      apiMethod: 'put',
+      api: this.api,
+      request: this.APIAdresses.confirmScores(id),
+      resolveCallback: (response) => {
+        return new AnswerBook(response.data)
+      },
+      rejectCallback: (error) => {
+        return error
+      }
+    })
+  }
+
+  confirmUngradable (id) {
+    return this.sendRequest({
+      apiMethod: 'put',
+      api: this.api,
+      request: this.APIAdresses.confirmUngradable(id),
+      resolveCallback: (response) => {
+        return new AnswerBook(response.data)
+      },
+      rejectCallback: (error) => {
+        return error
+      }
+    })
+  }
+
   setGraderToMe (answerBookId) {
     return this.sendRequest({
       apiMethod: 'put',

+ 33 - 4
src/components/Widgets/Test/ShowTestGradeForGrader/ShowTestGradeForGrader.vue

@@ -26,10 +26,6 @@
             {{ answerBook.test_info.test_set_info.test_set_questions.length }}
             سوال
           </div>
-          <div class="col-md-4 col-12">
-            {{ answerBook.duration }}
-            دقیقه
-          </div>
         </div>
       </q-banner>
       <q-list separator>
@@ -138,6 +134,17 @@
         </div>
         <div v-html="answerBook.objection_result" />
       </template>
+      <q-card-actions>
+        <q-btn color="primary"
+               class="q-mr-lg"
+               @click="confirmScores">
+          تایید نهایی نمرات
+        </q-btn>
+        <q-btn color="red"
+               @click="confirmUngradable">
+          قابل تصحیح نمی باشد
+        </q-btn>
+      </q-card-actions>
     </q-card>
     <div v-else>
       کمی صبر کنید...
@@ -244,6 +251,28 @@ export default {
         .catch(() => {
           this.answerBook.loading = false
         })
+    },
+    confirmScores () {
+      this.answerBook.loading = true
+      APIGateway.answerBook.confirmScores(this.$route.params.answer_book_id)
+        .then((answerBook) => {
+          this.loadAnswerBook(answerBook)
+          this.answerBook.loading = false
+        })
+        .catch(() => {
+          this.answerBook.loading = false
+        })
+    },
+    confirmUngradable () {
+      this.answerBook.loading = true
+      APIGateway.answerBook.confirmUngradable(this.$route.params.answer_book_id)
+        .then((answerBook) => {
+          this.loadAnswerBook(answerBook)
+          this.answerBook.loading = false
+        })
+        .catch(() => {
+          this.answerBook.loading = false
+        })
     }
   }
 }