fix: fix bug record_id not showing on validation table after approving validation
This commit is contained in:
parent
756bb6ee09
commit
0487f50c53
|
|
@ -51,7 +51,6 @@ export class TindakanDokterController {
|
|||
@Body() data: CreateTindakanDokterDto,
|
||||
@CurrentUser() user: ActiveUserPayload,
|
||||
) {
|
||||
// console.log('APASIH');
|
||||
return await this.tindakanDokterService.createTindakanDokter(data, user);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -115,9 +115,7 @@ export class TindakanDokterService {
|
|||
});
|
||||
|
||||
if (!visitExists) {
|
||||
throw new BadRequestException(
|
||||
`Visit dengan ID ${dto.id_visit} tidak ditemukan`,
|
||||
);
|
||||
throw new BadRequestException(`ID Visit ${dto.id_visit} tidak ditemukan`);
|
||||
}
|
||||
|
||||
const response = await this.prisma.validation_queue.create({
|
||||
|
|
@ -135,45 +133,6 @@ export class TindakanDokterService {
|
|||
},
|
||||
});
|
||||
|
||||
// const createValidate = await this.validationService.storeQueueValidation(
|
||||
// {
|
||||
// table_name: 'pemberian_tindakan',
|
||||
// record_id: null,
|
||||
// dataPayload: {
|
||||
// id_visit: dto.id_visit,
|
||||
// tindakan: dto.tindakan,
|
||||
// kategori_tindakan: dto.kategori_tindakan ?? null,
|
||||
// kelompok_tindakan: dto.kelompok_tindakan ?? null,
|
||||
// },
|
||||
// },
|
||||
// user,
|
||||
// );
|
||||
|
||||
// const createdTindakan = await this.prisma.pemberian_tindakan.create({
|
||||
// data: {
|
||||
// id_visit: dto.id_visit,
|
||||
// tindakan: dto.tindakan,
|
||||
// kategori_tindakan: dto.kategori_tindakan ?? null,
|
||||
// kelompok_tindakan: dto.kelompok_tindakan ?? null,
|
||||
// },
|
||||
// });
|
||||
|
||||
// const hashingPayload = this.createHashingPayload({
|
||||
// id_visit: createdTindakan.id_visit,
|
||||
// tindakan: createdTindakan.tindakan,
|
||||
// kategori_tindakan: createdTindakan.kategori_tindakan ?? null,
|
||||
// kelompok_tindakan: createdTindakan.kelompok_tindakan ?? null,
|
||||
// });
|
||||
|
||||
// const logPayloadHash = hashingPayload;
|
||||
|
||||
// const logResult = await this.logService.storeLog({
|
||||
// id: `TINDAKAN_${createdTindakan.id}`,
|
||||
// event: 'tindakan_dokter_created',
|
||||
// user_id: user.sub,
|
||||
// payload: logPayloadHash,
|
||||
// });
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
|
|
@ -264,30 +223,6 @@ export class TindakanDokterService {
|
|||
});
|
||||
|
||||
return validationQueue;
|
||||
|
||||
// const updatedTindakan = await this.prisma.pemberian_tindakan.update({
|
||||
// where: { id: tindakanId },
|
||||
// data: updateData,
|
||||
// });
|
||||
|
||||
// const hashingPayload = this.createHashingPayload({
|
||||
// id_visit: updatedTindakan.id_visit,
|
||||
// tindakan: updatedTindakan.tindakan,
|
||||
// kategori_tindakan: updatedTindakan.kategori_tindakan ?? null,
|
||||
// kelompok_tindakan: updatedTindakan.kelompok_tindakan ?? null,
|
||||
// });
|
||||
|
||||
// const logResult = await this.logService.storeLog({
|
||||
// id: `TINDAKAN_${tindakanId}`,
|
||||
// event: 'tindakan_dokter_updated',
|
||||
// user_id: user.sub,
|
||||
// payload: hashingPayload,
|
||||
// });
|
||||
|
||||
// return {
|
||||
// ...updatedTindakan,
|
||||
// log: logResult,
|
||||
// };
|
||||
}
|
||||
|
||||
async getTindakanLogById(id: string) {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
import { Injectable } from '@nestjs/common';
|
||||
import { BadRequestException, Injectable } from '@nestjs/common';
|
||||
import { PrismaService } from '../prisma/prisma.service';
|
||||
import { ActiveUserPayload } from '../auth/decorator/current-user.decorator';
|
||||
import { RekammedisService } from '../rekammedis/rekammedis.service';
|
||||
|
|
@ -22,10 +22,16 @@ export class ValidationService {
|
|||
rekam_medis: {
|
||||
approveCreate: async (queue: any) => {
|
||||
const payload = queue.dataPayload as Partial<CreateRekamMedisDto>;
|
||||
return this.rekamMedisService.createRekamMedisToDBAndBlockchain(
|
||||
const result =
|
||||
await this.rekamMedisService.createRekamMedisToDBAndBlockchain(
|
||||
payload as CreateRekamMedisDto,
|
||||
Number(queue.user_id_request),
|
||||
);
|
||||
|
||||
return {
|
||||
...result,
|
||||
id: result.id_visit,
|
||||
};
|
||||
},
|
||||
approveUpdate: async (queue: any) => {
|
||||
const payload = queue.dataPayload as Partial<CreateRekamMedisDto>;
|
||||
|
|
@ -41,7 +47,17 @@ export class ValidationService {
|
|||
} as ActiveUserPayload);
|
||||
},
|
||||
},
|
||||
pemberian_tindakan: {},
|
||||
pemberian_tindakan: {
|
||||
approveCreate: async (queue: any) => {
|
||||
const payload = queue.dataPayload;
|
||||
console.log('Approving create for pemberian_tindakan:', payload);
|
||||
// return this.prisma.pemberian_tindakan.create({
|
||||
// data: {
|
||||
// ...payload,
|
||||
// },
|
||||
// });
|
||||
},
|
||||
},
|
||||
pemberian_obat: {},
|
||||
};
|
||||
|
||||
|
|
@ -67,12 +83,14 @@ export class ValidationService {
|
|||
return { data: result, totalCount };
|
||||
}
|
||||
|
||||
// For service internal use
|
||||
async getValidationQueueById(id: number) {
|
||||
return await this.prisma.validation_queue.findUnique({
|
||||
where: { id },
|
||||
});
|
||||
}
|
||||
|
||||
// For front-end detail view
|
||||
async getValidationQueue(id: number) {
|
||||
const result = await this.getValidationQueueById(id);
|
||||
if (!result) return null;
|
||||
|
|
@ -128,16 +146,18 @@ export class ValidationService {
|
|||
async approveValidation(id: number, user: ActiveUserPayload) {
|
||||
const validationQueue = await this.getValidationQueueById(id);
|
||||
if (!validationQueue) {
|
||||
throw new Error('Validation queue not found');
|
||||
throw new BadRequestException('Validation queue not found');
|
||||
}
|
||||
if (!validationQueue.dataPayload) {
|
||||
throw new Error('Data payload is missing');
|
||||
}
|
||||
try {
|
||||
const approvalResult = await this.approveWithHandler(validationQueue);
|
||||
console.log('Approval result:', approvalResult);
|
||||
const updated = await this.prisma.validation_queue.update({
|
||||
where: { id: validationQueue.id },
|
||||
data: {
|
||||
record_id: approvalResult.id,
|
||||
status: 'APPROVED',
|
||||
user_id_process: Number(user.sub),
|
||||
processed_at: new Date(),
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user