education_notation.vue 2.4 KB

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