diff --git a/front-end/app/pages/gestao/contratos.vue b/front-end/app/pages/gestao/contratos.vue index 49eaf74..022ac39 100644 --- a/front-end/app/pages/gestao/contratos.vue +++ b/front-end/app/pages/gestao/contratos.vue @@ -71,6 +71,20 @@ const closeMenu = () => { openMenuId.value = null } onMounted(() => document.addEventListener('click', closeMenu)) onUnmounted(() => document.removeEventListener('click', closeMenu)) +// --- Reajuste --- +const REAJUSTES = ['IPCA', 'IGPM', 'INPC', 'INCC', 'IPC-FIPE', 'SELIC', 'IPCA-E', 'Outro'] +const createReajusteSelect = ref('') +const editReajusteSelect = ref('') + +watch(createReajusteSelect, (v) => { + if (v !== 'Outro') createForm.reajuste = v + else createForm.reajuste = '' +}) +watch(editReajusteSelect, (v) => { + if (v !== 'Outro') editForm.reajuste = v + else editForm.reajuste = '' +}) + // --- Modal Criar --- const showCreate = ref(false) const createForm = reactive({ @@ -88,6 +102,7 @@ async function criarContrato() { await apiFetch('/contracts', { method: 'POST', body: { ...createForm } }) showCreate.value = false Object.assign(createForm, { numero: '', orgao: '', objeto: '', valor: 0, data_inicio: '', data_fim: '', fiscal_contrato: '', reajuste: '', prorrogacao_maxima: '', sla: '', status: 'ativo' }) + createReajusteSelect.value = '' await refresh() } catch (err: any) { createError.value = err?.data?.error || 'Erro ao criar contrato.' @@ -117,6 +132,7 @@ function abrirEditar(c: ApiContract) { prorrogacao_maxima: c.ProrrogacaoMaxima ? c.ProrrogacaoMaxima.slice(0, 10) : '', sla: c.Sla, status: c.Status, }) + editReajusteSelect.value = REAJUSTES.includes(c.Reajuste) ? c.Reajuste : (c.Reajuste ? 'Outro' : '') editError.value = '' showEdit.value = true } @@ -321,7 +337,11 @@ async function downloadArquivo(contractId: string, fileId: string, nome: string)
- + +
@@ -386,7 +406,11 @@ async function downloadArquivo(contractId: string, fileId: string, nome: string)
- + +