add additional text
This commit is contained in:
parent
15c54bd3e6
commit
66a298e101
|
@ -162,6 +162,7 @@ class ElementViewSet(viewsets.ModelViewSet):
|
|||
inventory=inventory_object,
|
||||
external_id=data["element"],
|
||||
element_id=data["element_id"],
|
||||
additional_text=data["element_additional_data"],
|
||||
)
|
||||
element_serializer = ElementSerializer(element_item, many=False)
|
||||
|
||||
|
|
|
@ -20,6 +20,7 @@ type StateDataType = {
|
|||
inventory?: string
|
||||
element?: string
|
||||
element_id?: string
|
||||
element_additional_data?: string
|
||||
}
|
||||
const loading = ref(false)
|
||||
const state = reactive<StateDataType>({
|
||||
|
@ -27,7 +28,8 @@ const state = reactive<StateDataType>({
|
|||
categories: [],
|
||||
inventory: route.params.inv_id as string || undefined,
|
||||
element: undefined,
|
||||
element_id: undefined
|
||||
element_id: undefined,
|
||||
element_additional_data: undefined
|
||||
})
|
||||
const external_data = reactive<ExternalDataType>({
|
||||
partner: [],
|
||||
|
@ -43,6 +45,7 @@ const validate = (state: any): FormError[] => {
|
|||
errors.push({ path: 'partner', message: txt })
|
||||
}
|
||||
if (!state.element_id) errors.push({ path: 'element_id', message: txt })
|
||||
if (!state.element_additional_data) errors.push({ path: 'element_additional_data', message: txt })
|
||||
return errors
|
||||
}
|
||||
|
||||
|
@ -131,7 +134,9 @@ onMounted(async () => {
|
|||
searchable-placeholder="Выберите организацию из списка контрагентов" :loading="loading"
|
||||
:disabled="!!props.partner" />
|
||||
</UFormGroup>
|
||||
<UFormGroup label="Добавить элемент инвентаризации" v-if="state.partner">
|
||||
<UFormGroup label="Добавить элемент инвентаризации" v-if="state.partner" :help="!external_data.element?.length ? `Последовательно
|
||||
выбирайте категорию. Если все выбрали, а элементов нет -
|
||||
значит в этой категории нет элементов`: ''">
|
||||
<template v-for="(item, i) in external_data.categories">
|
||||
<USelectMenu v-model="(state.categories as string[])[i]" :options="item"
|
||||
value-attribute="Ref_Key" option-attribute="Description" :searchable="true"
|
||||
|
@ -143,11 +148,16 @@ onMounted(async () => {
|
|||
:searchable="true" :loading="loading"
|
||||
:placeholder="`Элементы (${external_data.element.length})`" />
|
||||
</UFormGroup>
|
||||
<UFormGroup v-if="state.element"
|
||||
:label="`Данные об элементе «${external_data.element?.find(el => el['Ref_Key'] === state.element)?.Description}»`"
|
||||
name="element_id">
|
||||
<UInput placeholder="ID" v-model="state.element_id" />
|
||||
</UFormGroup>
|
||||
<div v-if="state.element">
|
||||
<h4>Данные об элементе «{{ external_data.element?.find(el => el['Ref_Key'] ===
|
||||
state.element)?.Description }}»</h4>
|
||||
<UFormGroup label="ID" name="element_id">
|
||||
<UInput placeholder="ID" v-model="state.element_id" />
|
||||
</UFormGroup>
|
||||
<UFormGroup label="Дополнительные сведения" name="element_additional_data">
|
||||
<UTextarea placeholder="ID" v-model="state.element_additional_data" />
|
||||
</UFormGroup>
|
||||
</div>
|
||||
|
||||
<UButton type="submit" :disabled="!state.element_id">
|
||||
Сохранить
|
||||
|
|
Loading…
Reference in New Issue