feat(division): change parent id to number before integrate
This commit is contained in:
@@ -6,7 +6,16 @@ import {
|
|||||||
removeDivisionPosition,
|
removeDivisionPosition,
|
||||||
} from '~/services/division-position.service'
|
} from '~/services/division-position.service'
|
||||||
|
|
||||||
|
function normalizeParentId(payload: any) {
|
||||||
|
if (payload.parent_id !== undefined && payload.parent_id !== null && payload.parent_id !== '') {
|
||||||
|
payload.parent_id = Number(payload.parent_id)
|
||||||
|
if (isNaN(payload.parent_id)) payload.parent_id = null
|
||||||
|
}
|
||||||
|
return payload
|
||||||
|
}
|
||||||
|
|
||||||
function selectPost(payload: any) {
|
function selectPost(payload: any) {
|
||||||
|
payload = normalizeParentId(payload)
|
||||||
if (payload.division_id && Number(payload.division_id) > 0) {
|
if (payload.division_id && Number(payload.division_id) > 0) {
|
||||||
return postDivisionPosition
|
return postDivisionPosition
|
||||||
}
|
}
|
||||||
@@ -15,6 +24,7 @@ function selectPost(payload: any) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function selectPatch(id: number | string, payload: any) {
|
function selectPatch(id: number | string, payload: any) {
|
||||||
|
payload = normalizeParentId(payload)
|
||||||
if (payload.division_id && Number(payload.division_id) > 0) {
|
if (payload.division_id && Number(payload.division_id) > 0) {
|
||||||
return patchDivisionPosition
|
return patchDivisionPosition
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,8 +4,8 @@ import type { Division, DivisionPosition } from '~/models/division'
|
|||||||
const DivisionSchema = z.object({
|
const DivisionSchema = z.object({
|
||||||
code: z.string({ required_error: 'Kode harus diisi' }).min(1, 'Kode minimum 1 karakter'),
|
code: z.string({ required_error: 'Kode harus diisi' }).min(1, 'Kode minimum 1 karakter'),
|
||||||
name: z.string({ required_error: 'Nama harus diisi' }).min(1, 'Nama minimum 1 karakter'),
|
name: z.string({ required_error: 'Nama harus diisi' }).min(1, 'Nama minimum 1 karakter'),
|
||||||
parent_id: z.number({ required_error: 'Divisi Induk harus diisi' }).optional().nullable(),
|
parent_id: z.string({ required_error: 'Divisi Induk harus diisi' }).optional().nullable(),
|
||||||
division_id: z.number({ required_error: 'Divisi Induk harus diisi' }).optional().nullable(),
|
division_id: z.string({ required_error: 'Divisi Induk harus diisi' }).optional().nullable(),
|
||||||
})
|
})
|
||||||
|
|
||||||
type DivisionFormData = z.infer<typeof DivisionSchema> & (Division | DivisionPosition)
|
type DivisionFormData = z.infer<typeof DivisionSchema> & (Division | DivisionPosition)
|
||||||
|
|||||||
Reference in New Issue
Block a user