Update service pegawai

Pembuatan call API compreface list all subjects
This commit is contained in:
Salman Manoe 2024-10-30 18:58:44 +07:00
parent c37b4f81fe
commit c1d45d3073
4 changed files with 61 additions and 6 deletions

View File

@ -182,4 +182,6 @@ public interface PegawaiService extends BaseVoService<Pegawai, PegawaiVO, Intege
void completeDataPegawai(PegawaiDto dto);
void addCompreFaceSubject();
void uploadImageExampleOfCompreFaceSubject();
}

View File

@ -6,8 +6,9 @@ import com.jasamedika.medifirst2000.constants.Master;
import com.jasamedika.medifirst2000.converter.PegawaiConverter;
import com.jasamedika.medifirst2000.dao.*;
import com.jasamedika.medifirst2000.dao.custom.PegawaiDaoCustom;
import com.jasamedika.medifirst2000.dto.FaceSubjectDto;
import com.jasamedika.medifirst2000.dto.compreface.request.FaceSubjectReq;
import com.jasamedika.medifirst2000.dto.PegawaiDto;
import com.jasamedika.medifirst2000.dto.compreface.response.FaceSubjectRes;
import com.jasamedika.medifirst2000.entities.*;
import com.jasamedika.medifirst2000.exception.ServiceVOException;
import com.jasamedika.medifirst2000.paging.Comparison;
@ -48,7 +49,10 @@ import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import static org.springframework.http.HttpMethod.GET;
import static org.springframework.http.HttpMethod.POST;
import static org.springframework.http.HttpStatus.CREATED;
import static org.springframework.http.HttpStatus.OK;
import static org.springframework.http.MediaType.APPLICATION_JSON;
/**
@ -2393,11 +2397,11 @@ public class PegawaiServiceImpl extends BaseVoServiceImpl implements PegawaiServ
List<String> listLabelDokter = pegawaiDao.findLabelFaceByJenisPegawaiDokter();
listLabelDokter.forEach(s -> {
try {
FaceSubjectDto dto = FaceSubjectDto.builder().subject(s).build();
FaceSubjectReq dto = FaceSubjectReq.builder().subject(s).build();
JSONObject jsonObject = new JSONObject(objectMapper.writeValueAsString(dto));
HttpEntity<Object> httpEntity = new HttpEntity<>(jsonObject.toString(), headers);
ResponseEntity<FaceSubjectDto> exchange = template.exchange(uri, POST, httpEntity,
FaceSubjectDto.class);
ResponseEntity<FaceSubjectReq> exchange = template.exchange(uri, POST, httpEntity,
FaceSubjectReq.class);
log.info("Try add subject ke server compreface {}", exchange.getBody().toString());
} catch (JsonProcessingException | JSONException e) {
@ -2406,4 +2410,32 @@ public class PegawaiServiceImpl extends BaseVoServiceImpl implements PegawaiServ
});
}
@Override
@Transactional
public void uploadImageExampleOfCompreFaceSubject() {
}
@Transactional
private FaceSubjectRes listSubjects() {
final String uri = "http://172.16.44.34:9999/api/v1/recognition/subjects/";
RestTemplate template = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
headers.setContentType(APPLICATION_JSON);
headers.set("x-api-key", "2759e013-2e89-4a0e-83e1-5b57bb76f06f");
HttpEntity<Object> httpEntity = new HttpEntity<>(headers);
ResponseEntity<Object> response = template.exchange(uri, GET, httpEntity, Object.class);
if (CommonUtil.isNotNullOrEmpty(response.getBody())) {
if (OK.equals(response.getStatusCode())) {
return objectMapper.convertValue(response.getBody(), FaceSubjectRes.class);
} else {
log.error(response.getBody().toString());
return null;
}
} else {
log.error(response.getStatusCode().getReasonPhrase());
return null;
}
}
}

View File

@ -1,4 +1,4 @@
package com.jasamedika.medifirst2000.dto;
package com.jasamedika.medifirst2000.dto.compreface.request;
import lombok.*;
@ -12,7 +12,7 @@ import lombok.*;
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class FaceSubjectDto {
public class FaceSubjectReq {
private String subject;

View File

@ -0,0 +1,21 @@
package com.jasamedika.medifirst2000.dto.compreface.response;
import lombok.*;
import java.util.List;
/**
* @author Salman
* @version 1.0.0
* @since 29/10/2024
*/
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class FaceSubjectRes {
List<String> subjects;
}