mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-11-11 22:58:26 +00:00
Merge branch '369-duplicate-evaluation-document' into move-document-to-other-eval
This commit is contained in:
@@ -263,6 +263,7 @@
|
|||||||
v-model:selectedAcpw="selectedAcpw"
|
v-model:selectedAcpw="selectedAcpw"
|
||||||
:accompanying-period-id="accompanyingPeriodId"
|
:accompanying-period-id="accompanyingPeriodId"
|
||||||
:is-evaluation-selector="true"
|
:is-evaluation-selector="true"
|
||||||
|
:ignore-accompanying-period-work-ids="[accompanyingPeriodWorkId]"
|
||||||
@close-modal="showAccompanyingPeriodSelector = false"
|
@close-modal="showAccompanyingPeriodSelector = false"
|
||||||
@update:selectedEvaluation="selectedEvaluation = $event"
|
@update:selectedEvaluation="selectedEvaluation = $event"
|
||||||
/>
|
/>
|
||||||
@@ -288,7 +289,7 @@ import {
|
|||||||
import { ref, watch } from "vue";
|
import { ref, watch } from "vue";
|
||||||
import AccompanyingPeriodWorkSelectorModal from "ChillPersonAssets/vuejs/_components/AccompanyingPeriodWorkSelector/AccompanyingPeriodWorkSelectorModal.vue";
|
import AccompanyingPeriodWorkSelectorModal from "ChillPersonAssets/vuejs/_components/AccompanyingPeriodWorkSelector/AccompanyingPeriodWorkSelectorModal.vue";
|
||||||
|
|
||||||
defineProps(["documents", "docAnchorId", "accompanyingPeriodId"]);
|
defineProps(["documents", "docAnchorId", "accompanyingPeriodId", "accompanyingPeriodWorkId"]);
|
||||||
const emit = defineEmits([
|
const emit = defineEmits([
|
||||||
"inputDocumentTitle",
|
"inputDocumentTitle",
|
||||||
"removeDocument",
|
"removeDocument",
|
||||||
|
|||||||
@@ -25,6 +25,7 @@
|
|||||||
:documents="evaluation.documents"
|
:documents="evaluation.documents"
|
||||||
:docAnchorId="docAnchorId"
|
:docAnchorId="docAnchorId"
|
||||||
:accompanyingPeriodId="store.state.work.accompanyingPeriod.id"
|
:accompanyingPeriodId="store.state.work.accompanyingPeriod.id"
|
||||||
|
:accompanying-period-work-id="store.state.work.id"
|
||||||
@inputDocumentTitle="onInputDocumentTitle"
|
@inputDocumentTitle="onInputDocumentTitle"
|
||||||
@removeDocument="removeDocument"
|
@removeDocument="removeDocument"
|
||||||
@duplicateDocument="duplicateDocument"
|
@duplicateDocument="duplicateDocument"
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ import {
|
|||||||
ACPW_DUPLICATE_SELECT_ACCOMPANYING_PERIOD_WORK,
|
ACPW_DUPLICATE_SELECT_ACCOMPANYING_PERIOD_WORK,
|
||||||
CONFIRM,
|
CONFIRM,
|
||||||
} from "translator";
|
} from "translator";
|
||||||
import { makeFetch } from "ChillMainAssets/lib/api/apiMethods";
|
import {fetchResults, makeFetch} from "ChillMainAssets/lib/api/apiMethods";
|
||||||
import AccompanyingPeriodWorkEvaluationList from "ChillPersonAssets/vuejs/_components/AccompanyingPeriodWorkSelector/AccompanyingPeriodWorkEvaluationList.vue";
|
import AccompanyingPeriodWorkEvaluationList from "ChillPersonAssets/vuejs/_components/AccompanyingPeriodWorkSelector/AccompanyingPeriodWorkEvaluationList.vue";
|
||||||
import { AccompanyingPeriodWorkEvaluation } from "../../../types";
|
import { AccompanyingPeriodWorkEvaluation } from "../../../types";
|
||||||
|
|
||||||
@@ -85,10 +85,11 @@ const showModal = ref(false);
|
|||||||
const accompanyingPeriodWorks = ref<AccompanyingPeriodWork[]>([]);
|
const accompanyingPeriodWorks = ref<AccompanyingPeriodWork[]>([]);
|
||||||
const evaluations = ref<AccompanyingPeriodWorkEvaluation[]>([]);
|
const evaluations = ref<AccompanyingPeriodWorkEvaluation[]>([]);
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps<{
|
||||||
accompanyingPeriodId: String,
|
accompanyingPeriodId: string,
|
||||||
isEvaluationSelector: Boolean,
|
isEvaluationSelector: boolean,
|
||||||
});
|
ignoreAccompanyingPeriodWorkIds: number[],
|
||||||
|
}>();
|
||||||
|
|
||||||
const emit = defineEmits<{
|
const emit = defineEmits<{
|
||||||
pickWork: [payload: { work: AccompanyingPeriodWork | null }];
|
pickWork: [payload: { work: AccompanyingPeriodWork | null }];
|
||||||
@@ -105,22 +106,19 @@ onMounted(() => {
|
|||||||
|
|
||||||
showModal.value = true;
|
showModal.value = true;
|
||||||
});
|
});
|
||||||
const getAccompanyingPeriodWorks = (periodId: number) => {
|
const getAccompanyingPeriodWorks = async (periodId: number) => {
|
||||||
const url = `/api/1.0/person/accompanying-course/${periodId}/works.json`;
|
const url = `/api/1.0/person/accompanying-course/${periodId}/works.json`;
|
||||||
|
|
||||||
makeFetch<number, { results: AccompanyingPeriodWork[] }>("GET", url)
|
const accompanyingPeriodWorksFetched = await fetchResults<AccompanyingPeriodWork>(url);
|
||||||
.then((response) => {
|
if (props.isEvaluationSelector) {
|
||||||
if (props.isEvaluationSelector) {
|
accompanyingPeriodWorks.value = accompanyingPeriodWorksFetched.filter(
|
||||||
accompanyingPeriodWorks.value = response.results.filter(
|
(acpw: AccompanyingPeriodWork) => acpw.accompanyingPeriodWorkEvaluations.length > 0
|
||||||
(acpw) => acpw.accompanyingPeriodWorkEvaluations.length > 0,
|
&& typeof acpw.id !== "undefined"
|
||||||
);
|
&& !props.ignoreAccompanyingPeriodWorkIds.includes(acpw.id),
|
||||||
} else {
|
);
|
||||||
accompanyingPeriodWorks.value = response.results;
|
} else {
|
||||||
}
|
accompanyingPeriodWorks.value = accompanyingPeriodWorksFetched
|
||||||
})
|
}
|
||||||
.catch((error) => {
|
|
||||||
console.log(error);
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
watch(selectedAcpw, (newValue) => {
|
watch(selectedAcpw, (newValue) => {
|
||||||
|
|||||||
Reference in New Issue
Block a user