Skip to content

Commit

Permalink
Custom fields minor bugs (#495)
Browse files Browse the repository at this point in the history
  • Loading branch information
ciur authored Oct 18, 2024
1 parent 118e992 commit f34f8bf
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 31 deletions.
1 change: 0 additions & 1 deletion ui2/src/features/document/apiSlice.ts
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,6 @@ export const apiSliceWithDocuments = apiSlice.injectEndpoints({
invalidatesTags: (_result, _error, arg) => {
return [
{type: "DocumentCustomField", id: arg.documentID},
{type: "Document", id: arg.documentID},
{type: "DocumentCFV", id: arg.documentTypeID}
]
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,7 @@ import {
} from "@/features/document/components/customFields"
import {skipToken} from "@reduxjs/toolkit/query"

import {
useGetDocumentTypeQuery,
useGetDocumentTypesQuery
} from "@/features/document-types/apiSlice"
import {useGetDocumentTypesQuery} from "@/features/document-types/apiSlice"
import {
useGetDocumentCustomFieldsQuery,
useUpdateDocumentCustomFieldsMutation,
Expand All @@ -35,42 +32,22 @@ export default function CustomFields() {
const {data: allDocumentTypes = [], isSuccess: isSuccessAllDocumentTypes} =
useGetDocumentTypesQuery()
const {currentData: doc, isLoading} = useGetDocumentQuery(docID ?? skipToken)
const {currentData: documentType} = useGetDocumentTypeQuery(
documentTypeID?.value ?? skipToken
)
const [updateDocumentCustomFields, {error}] =
useUpdateDocumentCustomFieldsMutation()
const [updateDocumentType] = useUpdateDocumentTypeMutation()
const {data: documentCustomFields, isSuccess: isSuccessDocumentCustomFields} =
useGetDocumentCustomFieldsQuery(docID ?? skipToken)

useEffect(() => {
if (
documentTypeID &&
documentTypeID.value == doc?.document_type_id &&
isSuccessDocumentCustomFields &&
documentCustomFields &&
documentCustomFields.length > 0
) {
if (documentCustomFields && documentCustomFields.length > 0) {
const initialCustFieldValues = documentCustomFields.map(i => {
return {...i, value: i.value}
})
setCustomFieldValues(initialCustFieldValues)
} else if (documentType?.custom_fields) {
const initialCustFieldValues = documentType?.custom_fields.map(i => {
return {
custom_field_id: i.id,
document_id: docID!,
document_type_id: documentTypeID?.value!,
type: i.type,
name: i.name,
extra_data: i.extra_data,
value: ""
}
})

console.log(initialCustFieldValues)
setCustomFieldValues(initialCustFieldValues)
}
}, [documentType?.custom_fields, isSuccessDocumentCustomFields])
}, [documentCustomFields, isSuccessDocumentCustomFields])

useEffect(() => {
/* Update (local) documentTypeID state based on the
Expand Down Expand Up @@ -224,6 +201,10 @@ function GenericCustomField({
onChange({customField, value: e.currentTarget.value})
}

useEffect(() => {
setValue(customField.value)
}, [customField.value])

if (!documentID) {
return <Skeleton height={"20"} />
}
Expand Down
2 changes: 1 addition & 1 deletion ui2/src/features/document/components/customFields/Date.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ export default function CustomFieldDate({
setValue(date)
}
}
}, [])
}, [customField.value])

const onLocalChange = (value: DateValue) => {
if (value) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import {NumberInput} from "@mantine/core"
import {useState} from "react"
import {useEffect, useState} from "react"
import {CustomFieldArgs} from "./types"

type MonetaryExtraDataType = {
Expand Down Expand Up @@ -31,6 +31,11 @@ export default function CustomFieldMonetary({
setValue(v)
onChange({customField, value: v.toString()})
}
console.log(`Monetary state=${value} CFV=${customField.value}`)

useEffect(() => {
setValue(customField.value)
}, [customField.value])

return (
<NumberInput
Expand Down

0 comments on commit f34f8bf

Please sign in to comment.