feat: add encounterId handling in SEP entry and update validation logic in integration schema
This commit is contained in:
@@ -91,6 +91,7 @@ async function handleEvent(menu: string, value?: any) {
|
|||||||
}
|
}
|
||||||
toNavigateSep({
|
toNavigateSep({
|
||||||
isService: 'false',
|
isService: 'false',
|
||||||
|
encounterId: props.id || null,
|
||||||
sourcePath: route.path,
|
sourcePath: route.path,
|
||||||
resource: `${props.classCode}-${props.subClassCode}`,
|
resource: `${props.classCode}-${props.subClassCode}`,
|
||||||
...value,
|
...value,
|
||||||
|
|||||||
@@ -88,6 +88,7 @@ export function useIntegrationSepEntry() {
|
|||||||
const specialistsTree = ref<TreeItem[]>([])
|
const specialistsTree = ref<TreeItem[]>([])
|
||||||
const resourceType = ref('')
|
const resourceType = ref('')
|
||||||
const resourcePath = ref('')
|
const resourcePath = ref('')
|
||||||
|
const encounterId = ref<number | string | null>(null)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Map letter data to form fields for save-sep
|
* Map letter data to form fields for save-sep
|
||||||
@@ -486,7 +487,7 @@ export function useIntegrationSepEntry() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
mappedValues.userName = userStore.user?.user_name || ''
|
mappedValues.userName = userStore.user?.user_name || ''
|
||||||
const payload = { ...makeSepData(mappedValues), encounterId: null }
|
const payload = { ...makeSepData(mappedValues), encounterId: encounterId.value || null }
|
||||||
|
|
||||||
createSep(payload)
|
createSep(payload)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
@@ -615,6 +616,7 @@ export function useIntegrationSepEntry() {
|
|||||||
const queries = route.query as any
|
const queries = route.query as any
|
||||||
isServiceHidden.value = queries['is-service'] === 'true'
|
isServiceHidden.value = queries['is-service'] === 'true'
|
||||||
selectedObjects.value = {}
|
selectedObjects.value = {}
|
||||||
|
if (queries['encounter-id']) encounterId.value = queries['encounter-id']
|
||||||
if (queries['resource']) resourceType.value = queries['resource']
|
if (queries['resource']) resourceType.value = queries['resource']
|
||||||
if (queries['source-path']) resourcePath.value = queries['source-path']
|
if (queries['source-path']) resourcePath.value = queries['source-path']
|
||||||
if (queries['doctor-code']) selectedObjects.value['doctorCode'] = queries['doctor-code']
|
if (queries['doctor-code']) selectedObjects.value['doctorCode'] = queries['doctor-code']
|
||||||
@@ -630,7 +632,7 @@ export function useIntegrationSepEntry() {
|
|||||||
await getPatientInternalMappers(queries['patient-id'])
|
await getPatientInternalMappers(queries['patient-id'])
|
||||||
}
|
}
|
||||||
if (queries['card-number']) {
|
if (queries['card-number']) {
|
||||||
const resultMember = await getMemberList({
|
await getMemberList({
|
||||||
mode: 'by-card',
|
mode: 'by-card',
|
||||||
number: queries['card-number'],
|
number: queries['card-number'],
|
||||||
date: new Date().toISOString().substring(0, 10),
|
date: new Date().toISOString().substring(0, 10),
|
||||||
@@ -675,6 +677,7 @@ export function useIntegrationSepEntry() {
|
|||||||
specialistsTree,
|
specialistsTree,
|
||||||
resourceType,
|
resourceType,
|
||||||
resourcePath,
|
resourcePath,
|
||||||
|
encounterId,
|
||||||
patients,
|
patients,
|
||||||
selectedPatient,
|
selectedPatient,
|
||||||
paginationMeta,
|
paginationMeta,
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ const ERROR_MESSAGES = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const ACCEPTED_UPLOAD_TYPES = ['image/jpeg', 'image/png', 'application/pdf']
|
const ACCEPTED_UPLOAD_TYPES = ['image/jpeg', 'image/png', 'application/pdf']
|
||||||
|
const isRequiredSep = false;
|
||||||
|
|
||||||
const IntegrationEncounterSchema = z
|
const IntegrationEncounterSchema = z
|
||||||
.object({
|
.object({
|
||||||
@@ -115,9 +116,9 @@ const IntegrationEncounterSchema = z
|
|||||||
.refine(
|
.refine(
|
||||||
(data) => {
|
(data) => {
|
||||||
// If payment type is jkn and SEP type is selected, then SEP number is required
|
// If payment type is jkn and SEP type is selected, then SEP number is required
|
||||||
// if (data.paymentType === 'jkn' && data.sepType && data.sepType.trim() !== '') {
|
if (isRequiredSep && data.paymentType === 'jkn' && data.sepType && data.sepType.trim() !== '') {
|
||||||
// return data.sepNumber && data.sepNumber.trim() !== ''
|
return data.sepNumber && data.sepNumber.trim() !== ''
|
||||||
// }
|
}
|
||||||
return true
|
return true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user