education_notation.vue 2.2 KB

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