Hide select objects

This commit is contained in:
Vladimir 2026-06-19 18:15:34 +03:00
parent 09b389a784
commit ad46bc1350

View File

@ -47,10 +47,11 @@
</div> </div>
<div class="form__item flex flex-col gap-1 w-full" v-if="selectedRequisitionSideOne && selectedRequisitionSideOne.type_id === 2"> <div class="form__item flex flex-col gap-1 w-full" v-if="selectedRequisitionSideOne && selectedRequisitionSideOne.type_id === 2">
<!-- Селект объекта скрыт, объект подтягивается из заявки
<label>Выберите объект:</label> <label>Выберите объект:</label>
<Select <Select
v-model="selectedObjectSideOneId" v-model="selectedObjectSideOneId"
:options="objectsList" :options="objectsListSideOne"
optionLabel="name" optionLabel="name"
optionValue="id" optionValue="id"
placeholder="Выберите объект" placeholder="Выберите объект"
@ -60,6 +61,7 @@
<DropdownIcon /> <DropdownIcon />
</template> </template>
</Select> </Select>
-->
</div> </div>
<div class="form__item flex flex-col gap-1 w-full" v-if="selectedRequisitionSideOne && selectedRequisitionSideOne.type_id === 2"> <div class="form__item flex flex-col gap-1 w-full" v-if="selectedRequisitionSideOne && selectedRequisitionSideOne.type_id === 2">
@ -106,11 +108,12 @@
<RequisitionDetails v-if="selectedRequisitionSideTwo" :deal="deal" :requisition="selectedRequisitionSideTwo" :clientsList="clientsList" side="sideTwo" @closeDealRequisition="handleCloseDealRequisition" /> <RequisitionDetails v-if="selectedRequisitionSideTwo" :deal="deal" :requisition="selectedRequisitionSideTwo" :clientsList="clientsList" side="sideTwo" @closeDealRequisition="handleCloseDealRequisition" />
</div> </div>
<div class="form__item flex flex-col gap-1 w-full" v-if="selectedObjectSideTwo && selectedObjectSideTwo.type_id === 2"> <!-- Селект объекта скрыт, объект подтягивается из заявки
<div class="form__item flex flex-col gap-1 w-full" v-if="selectedRequisitionSideTwo && selectedRequisitionSideTwo.type_id === 2">
<label for="nameHome">Выберите объект:</label> <label for="nameHome">Выберите объект:</label>
<Select <Select
v-model="selectedObjectSideTwoId" v-model="selectedObjectSideTwoId"
:options="objectsList" :options="objectsListSideTwo"
optionLabel="name" optionLabel="name"
optionValue="id" optionValue="id"
placeholder="Выберите объект" placeholder="Выберите объект"
@ -120,8 +123,9 @@
</template> </template>
</Select> </Select>
</div> </div>
-->
<div class="form__item" v-if="selectedObjectSideTwo && selectedObjectSideTwo.type_id === 2"> <div class="form__item" v-if="selectedRequisitionSideTwo && selectedRequisitionSideTwo.type_id === 2">
<ObjectDetails v-if="selectedObjectSideTwo" :deal="deal" :object="selectedObjectSideTwo" side="sideTwo" @closeDealObject="handleCloseDealObject" /> <ObjectDetails v-if="selectedObjectSideTwo" :deal="deal" :object="selectedObjectSideTwo" side="sideTwo" @closeDealObject="handleCloseDealObject" />
</div> </div>
@ -464,7 +468,8 @@ const { data: requisitionSideTwoDetails, fetchData: fetchRequisitionSideTwoDetai
/*Объекты*/ /*Объекты*/
const { data: objectsListData, fetchData: fetchObjectsListData } = useLaravelApi(); const { data: objectsListData, fetchData: fetchObjectsListData } = useLaravelApi();
const objectsList = ref([]); const objectsListSideOne = ref([]);
const objectsListSideTwo = ref([]);
const { data: objectSideOneDetails, fetchData: fetchObjectSideOneDetails } = useLaravelApi(); const { data: objectSideOneDetails, fetchData: fetchObjectSideOneDetails } = useLaravelApi();
const { data: objectSideTwoDetails, fetchData: fetchObjectSideTwoDetails } = useLaravelApi(); const { data: objectSideTwoDetails, fetchData: fetchObjectSideTwoDetails } = useLaravelApi();
@ -867,7 +872,8 @@ onMounted(async () => {
fetchRequisitionsListData('/requisitions?no_pagination=1') fetchRequisitionsListData('/requisitions?no_pagination=1')
]); ]);
objectsList.value = objects.data?.data || []; objectsListSideOne.value = objects.data?.data || [];
objectsListSideTwo.value = objects.data?.data || [];
clientsList.value = clients.data?.data.data || []; clientsList.value = clients.data?.data.data || [];
employeesList.value = employees.data?.success ? employees.data.data : []; employeesList.value = employees.data?.success ? employees.data.data : [];
@ -945,6 +951,10 @@ watch(selectedRequisitionSideTwoId, async (newId, oldId) => {
if (requisitionSideTwoDetails.value) { if (requisitionSideTwoDetails.value) {
selectedRequisitionSideTwo.value = requisitionSideTwoDetails.value; selectedRequisitionSideTwo.value = requisitionSideTwoDetails.value;
deal.value.side_two_requisition_id = newId; deal.value.side_two_requisition_id = newId;
if (requisitionSideTwoDetails.value.object_id) {
selectedObjectSideTwoId.value = requisitionSideTwoDetails.value.object_id;
}
} }
// Установка клиента в deal для стороны 2 // Установка клиента в deal для стороны 2
@ -996,6 +1006,11 @@ watch(selectedObjectSideOneId, async (newId) => {
if (objectSideOneDetails.value && objectSideOneDetails.value.success) { if (objectSideOneDetails.value && objectSideOneDetails.value.success) {
selectedObjectSideOne.value = objectSideOneDetails.value.data; selectedObjectSideOne.value = objectSideOneDetails.value.data;
deal.value.side_one_object_id = newId; deal.value.side_one_object_id = newId;
const exists = objectsListSideOne.value.some(o => o.id === newId);
if (!exists && objectSideOneDetails.value.data) {
objectsListSideOne.value.push({ id: newId, name: objectSideOneDetails.value.data.nazv || `Объект ${newId}` });
}
} }
} else { } else {
selectedObjectSideOne.value = null; selectedObjectSideOne.value = null;
@ -1009,6 +1024,11 @@ watch(selectedObjectSideTwoId, async (newId) => {
if (objectSideTwoDetails.value && objectSideTwoDetails.value.success) { if (objectSideTwoDetails.value && objectSideTwoDetails.value.success) {
selectedObjectSideTwo.value = objectSideTwoDetails.value.data; selectedObjectSideTwo.value = objectSideTwoDetails.value.data;
deal.value.side_two_object_id = newId; deal.value.side_two_object_id = newId;
const exists = objectsListSideTwo.value.some(o => o.id === newId);
if (!exists && objectSideTwoDetails.value.data) {
objectsListSideTwo.value.push({ id: newId, name: objectSideTwoDetails.value.data.nazv || `Объект ${newId}` });
}
} }
} else { } else {
selectedObjectSideTwo.value = null; selectedObjectSideTwo.value = null;