add api delete dokumen
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
package com.iconplus.smartproc.service.drp;
|
||||
|
||||
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.request.DrpDokumenRequest;
|
||||
import com.iconplus.smartproc.repository.DrpDokumenRepository;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
|
||||
@Service
|
||||
@Slf4j
|
||||
public class DeleteDokumenUploadService implements BaseService<DrpDokumenRequest, EmptyResponse> {
|
||||
|
||||
@Value("${config.file-upload.rkap}")
|
||||
private String pathFileUploadRkap;
|
||||
|
||||
private final DrpDokumenRepository drpDokumenRepository;
|
||||
|
||||
public DeleteDokumenUploadService(DrpDokumenRepository drpDokumenRepository) {
|
||||
this.drpDokumenRepository = drpDokumenRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public EmptyResponse execute(DrpDokumenRequest input) {
|
||||
|
||||
var drpDokumenOptional = drpDokumenRepository.findByFilenameAndIsDeleteFalse(input.getFilename());
|
||||
if (drpDokumenOptional.isPresent()) {
|
||||
drpDokumenOptional.get().setIsDelete(true);
|
||||
drpDokumenRepository.save(drpDokumenOptional.get());
|
||||
}
|
||||
|
||||
Path path = Paths.get(pathFileUploadRkap + input.getFilename());
|
||||
|
||||
try {
|
||||
Files.delete(path);
|
||||
} catch (IOException e) {
|
||||
log.info("no file found");
|
||||
}
|
||||
|
||||
return new EmptyResponse();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user