education_notation.vue 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <template>
  2. <LayoutContainer>
  3. <UiLoadingPanel v-if="pending" />
  4. <UiForm
  5. v-else
  6. v-model="parameters"
  7. >
  8. <v-row>
  9. <v-col cols="12">
  10. <UiInputCheckbox
  11. v-model="parameters.periodValidation"
  12. field="periodValidation"
  13. label="define_validation_periods_for_teachers"
  14. />
  15. <UiInputCheckbox
  16. v-model="parameters.editCriteriaNotationByAdminOnly"
  17. field="editCriteriaNotationByAdminOnly"
  18. label="evaluation_criterium_edition_is_admin_only"
  19. />
  20. <UiInputCheckbox
  21. v-model="parameters.requiredValidation"
  22. field="requiredValidation"
  23. label="mandatory_validation_for_evaluations"
  24. />
  25. <UiInputAutocompleteWithEnum
  26. v-if="organizationProfile.hasModule('AdvancedEducationNotation')"
  27. v-model="parameters.advancedEducationNotationType"
  28. enum-name="advanced_education_notation"
  29. field="advancedEducationNotationType"
  30. />
  31. <UiInputAutocompleteWithEnum
  32. v-model="parameters.educationPeriodicity"
  33. enum-name="education_periodicity"
  34. field="educationPeriodicity"
  35. />
  36. <UiInputNumber
  37. v-model="parameters.average"
  38. field="average"
  39. label="max_note_for_pedagogical_followup"
  40. :default="20"
  41. :min="1"
  42. :max="100"
  43. class="mt-2"
  44. />
  45. </v-col>
  46. </v-row>
  47. </UiForm>
  48. </LayoutContainer>
  49. </template>
  50. <script setup lang="ts">
  51. import type { AsyncData } from '#app'
  52. import Parameters from '~/models/Organization/Parameters'
  53. import { useEntityFetch } from '~/composables/data/useEntityFetch'
  54. import { useOrganizationProfileStore } from '~/stores/organizationProfile'
  55. definePageMeta({
  56. name: 'parameters_education_notation_page',
  57. })
  58. const { fetch } = useEntityFetch()
  59. const organizationProfile = useOrganizationProfileStore()
  60. if (organizationProfile.parametersId === null) {
  61. throw new Error('Missing organization parameters id')
  62. }
  63. const { data: parameters, pending } = fetch(
  64. Parameters,
  65. organizationProfile.parametersId,
  66. ) as AsyncData<Parameters | null, Error | null>
  67. </script>
  68. <style scoped lang="scss"></style>