feat(sep): testing create sep
This commit is contained in:
No files matched your search
@@ -893,6 +893,8 @@ onMounted(() => {
|
|||||||
</Cell>
|
</Cell>
|
||||||
</Block>
|
</Block>
|
||||||
|
|
||||||
|
<!-- {{ JSON.stringify(errors, null, 2) }} -->
|
||||||
|
|
||||||
<!-- Actions -->
|
<!-- Actions -->
|
||||||
<div class="mt-6 flex justify-end gap-2">
|
<div class="mt-6 flex justify-end gap-2">
|
||||||
<Button
|
<Button
|
||||||
|
|||||||
@@ -274,8 +274,9 @@ async function handleEvent(menu: string, value: any) {
|
|||||||
isSaveLoading.value = true
|
isSaveLoading.value = true
|
||||||
createSep(makeSepData(value))
|
createSep(makeSepData(value))
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
const code = res?.metaData?.code
|
const body = res?.body
|
||||||
const message = res?.metaData?.message
|
const code = body?.metaData?.code
|
||||||
|
const message = body?.metaData?.message
|
||||||
if (code && code !== '200') {
|
if (code && code !== '200') {
|
||||||
toast({ title: 'Gagal', description: message || 'Gagal membuat SEP', variant: 'destructive' })
|
toast({ title: 'Gagal', description: message || 'Gagal membuat SEP', variant: 'destructive' })
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -123,111 +123,111 @@ const IntegrationBpjsSchema = z
|
|||||||
classPaySource: z.string({ required_error: ERROR_MESSAGES.required.classPaySource }).optional(),
|
classPaySource: z.string({ required_error: ERROR_MESSAGES.required.classPaySource }).optional(),
|
||||||
responsiblePerson: z.string({ required_error: ERROR_MESSAGES.required.responsiblePerson }).optional(),
|
responsiblePerson: z.string({ required_error: ERROR_MESSAGES.required.responsiblePerson }).optional(),
|
||||||
})
|
})
|
||||||
.refine(
|
// .refine(
|
||||||
(data) => {
|
// (data) => {
|
||||||
return data.trafficAccident !== '' && data.accidentDate && data.accidentDate.trim() !== ''
|
// return data.trafficAccident !== '' && data.accidentDate && data.accidentDate.trim() !== ''
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
message: ERROR_MESSAGES.required.accidentDate,
|
// message: ERROR_MESSAGES.required.accidentDate,
|
||||||
path: ['accidentDate'],
|
// path: ['accidentDate'],
|
||||||
},
|
// },
|
||||||
)
|
// )
|
||||||
.refine(
|
// .refine(
|
||||||
(data) => {
|
// (data) => {
|
||||||
return data.trafficAccident !== '' && data.accidentProvince && data.accidentProvince.trim() !== ''
|
// return data.trafficAccident !== '' && data.accidentProvince && data.accidentProvince.trim() !== ''
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
message: ERROR_MESSAGES.required.accidentProvince,
|
// message: ERROR_MESSAGES.required.accidentProvince,
|
||||||
path: ['accidentProvince'],
|
// path: ['accidentProvince'],
|
||||||
},
|
// },
|
||||||
)
|
// )
|
||||||
.refine(
|
// .refine(
|
||||||
(data) => {
|
// (data) => {
|
||||||
return data.trafficAccident !== '' && data.accidentCity && data.accidentCity.trim() !== ''
|
// return data.trafficAccident !== '' && data.accidentCity && data.accidentCity.trim() !== ''
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
message: ERROR_MESSAGES.required.accidentCity,
|
// message: ERROR_MESSAGES.required.accidentCity,
|
||||||
path: ['accidentCity'],
|
// path: ['accidentCity'],
|
||||||
},
|
// },
|
||||||
)
|
// )
|
||||||
.refine(
|
// .refine(
|
||||||
(data) => {
|
// (data) => {
|
||||||
return data.trafficAccident !== '' && data.accidentDistrict && data.accidentDistrict.trim() !== ''
|
// return data.trafficAccident !== '' && data.accidentDistrict && data.accidentDistrict.trim() !== ''
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
message: ERROR_MESSAGES.required.accidentDistrict,
|
// message: ERROR_MESSAGES.required.accidentDistrict,
|
||||||
path: ['accidentDistrict'],
|
// path: ['accidentDistrict'],
|
||||||
},
|
// },
|
||||||
)
|
// )
|
||||||
.refine(
|
// .refine(
|
||||||
(data) => {
|
// (data) => {
|
||||||
return data.trafficAccident !== '' && data.suplesi && data.suplesi.trim() !== ''
|
// return data.trafficAccident !== '' && data.suplesi && data.suplesi.trim() !== ''
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
message: ERROR_MESSAGES.required.suplesi,
|
// message: ERROR_MESSAGES.required.suplesi,
|
||||||
path: ['suplesi'],
|
// path: ['suplesi'],
|
||||||
},
|
// },
|
||||||
)
|
// )
|
||||||
.refine(
|
// .refine(
|
||||||
(data) => {
|
// (data) => {
|
||||||
return (
|
// return (
|
||||||
data.trafficAccident !== '' &&
|
// data.trafficAccident !== '' &&
|
||||||
data.suplesi?.trim() === 'yes' &&
|
// data.suplesi?.trim() === 'yes' &&
|
||||||
data.suplesiNumber &&
|
// data.suplesiNumber &&
|
||||||
data.suplesiNumber.trim() !== ''
|
// data.suplesiNumber.trim() !== ''
|
||||||
)
|
// )
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
message: ERROR_MESSAGES.required.suplesiNumber,
|
// message: ERROR_MESSAGES.required.suplesiNumber,
|
||||||
path: ['suplesiNumber'],
|
// path: ['suplesiNumber'],
|
||||||
},
|
// },
|
||||||
)
|
// )
|
||||||
.refine(
|
// .refine(
|
||||||
(data) => {
|
// (data) => {
|
||||||
return data.serviceType === '1' && data.classLevel && data.classLevel.trim() !== ''
|
// return data.serviceType === '1' && data.classLevel && data.classLevel.trim() !== ''
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
message: ERROR_MESSAGES.required.classLevel,
|
// message: ERROR_MESSAGES.required.classLevel,
|
||||||
path: ['classLevel'],
|
// path: ['classLevel'],
|
||||||
},
|
// },
|
||||||
)
|
// )
|
||||||
.refine(
|
// .refine(
|
||||||
(data) => {
|
// (data) => {
|
||||||
return data.serviceType === '1' && data.classLevelUpgrade && data.classLevelUpgrade.trim() !== ''
|
// return data.serviceType === '1' && data.classLevelUpgrade && data.classLevelUpgrade.trim() !== ''
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
message: ERROR_MESSAGES.required.classLevelUpgrade,
|
// message: ERROR_MESSAGES.required.classLevelUpgrade,
|
||||||
path: ['classLevelUpgrade'],
|
// path: ['classLevelUpgrade'],
|
||||||
},
|
// },
|
||||||
)
|
// )
|
||||||
.refine(
|
// .refine(
|
||||||
(data) => {
|
// (data) => {
|
||||||
return (
|
// return (
|
||||||
data.serviceType === '1' &&
|
// data.serviceType === '1' &&
|
||||||
data.classLevelUpgrade?.trim() !== '' &&
|
// data.classLevelUpgrade?.trim() !== '' &&
|
||||||
data.classPaySource &&
|
// data.classPaySource &&
|
||||||
data.classPaySource.trim() !== ''
|
// data.classPaySource.trim() !== ''
|
||||||
)
|
// )
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
message: ERROR_MESSAGES.required.classLevelUpgrade,
|
// message: ERROR_MESSAGES.required.classLevelUpgrade,
|
||||||
path: ['classPaySource'],
|
// path: ['classPaySource'],
|
||||||
},
|
// },
|
||||||
)
|
// )
|
||||||
.refine(
|
// .refine(
|
||||||
(data) => {
|
// (data) => {
|
||||||
return (
|
// return (
|
||||||
data.serviceType === '1' &&
|
// data.serviceType === '1' &&
|
||||||
data.classPaySource?.trim() !== '' &&
|
// data.classPaySource?.trim() !== '' &&
|
||||||
data.responsiblePerson &&
|
// data.responsiblePerson &&
|
||||||
data.responsiblePerson.trim() !== ''
|
// data.responsiblePerson.trim() !== ''
|
||||||
)
|
// )
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
message: ERROR_MESSAGES.required.responsiblePerson,
|
// message: ERROR_MESSAGES.required.responsiblePerson,
|
||||||
path: ['responsiblePerson'],
|
// path: ['responsiblePerson'],
|
||||||
},
|
// },
|
||||||
)
|
// )
|
||||||
|
|
||||||
type IntegrationBpjsFormData = z.infer<typeof IntegrationBpjsSchema>
|
type IntegrationBpjsFormData = z.infer<typeof IntegrationBpjsSchema>
|
||||||
|
|
||||||
|
|||||||
@@ -20,16 +20,20 @@ export function makeSepData(
|
|||||||
},
|
},
|
||||||
) {
|
) {
|
||||||
const content = {
|
const content = {
|
||||||
noKartu: data.bpjsNumber || '',
|
noKartu: '0002084879801', // data.bpjsNumber || '',
|
||||||
tglSep: data.sepDate,
|
tglSep: data.sepDate,
|
||||||
ppkPelayanan: data.serviceType || '',
|
ppkPelayanan: '1323R001', // data.serviceType || '',
|
||||||
jnsPelayanan: data.admissionType ? String(data.admissionType) : '1',
|
jnsPelayanan: data.admissionType ? String(data.admissionType) : '1',
|
||||||
noMR: data.medicalRecordNumber || '',
|
noMR: data.medicalRecordNumber || '',
|
||||||
catatan: data.note || '',
|
catatan: data.note || '',
|
||||||
diagAwal: data.initialDiagnosis || '',
|
diagAwal: data.initialDiagnosis || '',
|
||||||
|
// poli: {
|
||||||
|
// tujuan: data.destinationClinic || '',
|
||||||
|
// eksekutif: data.clinicExcecutive === 'yes' ? '1' : '0',
|
||||||
|
// },
|
||||||
poli: {
|
poli: {
|
||||||
tujuan: data.destinationClinic || '',
|
tujuan: 'URO',
|
||||||
eksekutif: data.clinicExcecutive === 'yes' ? '1' : '0',
|
eksekutif: '0',
|
||||||
},
|
},
|
||||||
cob: {
|
cob: {
|
||||||
cob: data.cob === 'yes' ? '1' : '0',
|
cob: data.cob === 'yes' ? '1' : '0',
|
||||||
@@ -42,14 +46,20 @@ export function makeSepData(
|
|||||||
kdPenunjang: data.supportCode || '',
|
kdPenunjang: data.supportCode || '',
|
||||||
assesmentPel: data.serviceAssessment || '',
|
assesmentPel: data.serviceAssessment || '',
|
||||||
skdp: {
|
skdp: {
|
||||||
noSurat: data.admissionType === '3' ? data.referralLetterNumber : '',
|
noSurat: '', // data.admissionType === '3' ? data.referralLetterNumber : '',
|
||||||
kodeDPJP: data.admissionType === '3' ? data.attendingDoctor : '',
|
kodeDPJP: '', // data.admissionType === '3' ? data.attendingDoctor : '',
|
||||||
},
|
},
|
||||||
|
// rujukan: {
|
||||||
|
// asalRujukan: data?.referralFrom || '',
|
||||||
|
// tglRujukan: '', // data?.referralLetterDate || '',
|
||||||
|
// noRujukan: '', // data?.referralLetterNumber || '',
|
||||||
|
// ppkRujukan: data?.referralTo || '',
|
||||||
|
// },
|
||||||
rujukan: {
|
rujukan: {
|
||||||
asalRujukan: data?.referralFrom || '',
|
noRujukan: '0212R0300625B000006',
|
||||||
tglRujukan: data?.referralLetterDate || '',
|
ppkRujukan: '0212R030',
|
||||||
noRujukan: data?.referralLetterNumber || '',
|
tglRujukan: '2025-06-26',
|
||||||
ppkRujukan: data?.referralTo || '',
|
asalRujukan: '2',
|
||||||
},
|
},
|
||||||
klsRawat: {
|
klsRawat: {
|
||||||
klsRawatHak: data.classLevel || '',
|
klsRawatHak: data.classLevel || '',
|
||||||
@@ -57,7 +67,7 @@ export function makeSepData(
|
|||||||
pembiayaan: data.classPaySource || '',
|
pembiayaan: data.classPaySource || '',
|
||||||
penanggungJawab: data.responsiblePerson || '',
|
penanggungJawab: data.responsiblePerson || '',
|
||||||
},
|
},
|
||||||
dpjpLayan: data.attendingDoctor || '',
|
dpjpLayan: '28080', // data.attendingDoctor || '',
|
||||||
noTelp: data.phoneNumber || '',
|
noTelp: data.phoneNumber || '',
|
||||||
user: data.patientName || '',
|
user: data.patientName || '',
|
||||||
jaminan: {
|
jaminan: {
|
||||||
|
|||||||
Reference in New Issue
Block a user