use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class IntygDraftsConverterTest method testConvertUtkastToListIntygEntryResolvesSignedByNameFromSenastSparadAv.
@Test
public void testConvertUtkastToListIntygEntryResolvesSignedByNameFromSenastSparadAv() {
Utkast utkast = createUtkast();
utkast.setStatus(UtkastStatus.SIGNED);
ListIntygEntry res = IntygDraftsConverter.convertUtkastToListIntygEntry(utkast);
assertNotNull(res);
assertEquals(utkast.getSenastSparadAv().getNamn(), res.getUpdatedSignedBy());
}
use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class IntygResource method updateUtkastForSend.
private void updateUtkastForSend(@PathParam("id") String id) {
Utkast utkast = utkastRepository.findOne(id);
if (utkast != null) {
utkast.setStatus(UtkastStatus.SIGNED);
Utlatande utlatande = moduleFacade.getUtlatandeFromInternalModel(utkast.getIntygsTyp(), utkast.getModel());
utlatande.getGrundData().setSigneringsdatum(LocalDateTime.now());
try {
CustomObjectMapper mapper = new CustomObjectMapper();
StringWriter writer = new StringWriter();
mapper.writeValue(writer, utlatande);
utkast.setModel(writer.toString());
} catch (IOException e) {
LOG.error("Could not update the model of the utkast. Failed with message ", e.getMessage());
}
if (utkast.getSignatur() == null) {
Signatur sig = new Signatur(LocalDateTime.now(), "", id, "", "", "");
utkast.setSignatur(sig);
}
utkast.setSkickadTillMottagare("FKASSA");
utkast.setSkickadTillMottagareDatum(LocalDateTime.now());
utkastRepository.save(utkast);
}
}
use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class IntygResource method createDraft.
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Response createDraft(CreateNewDraftRequest request) {
Utkast utkast = new Utkast();
Patient patient = request.getPatient();
utkast.setPatientPersonnummer(patient.getPersonId());
utkast.setPatientFornamn(patient.getFornamn());
utkast.setPatientMellannamn(patient.getMellannamn());
utkast.setPatientEfternamn(patient.getEfternamn());
utkast.setIntygsId(request.getIntygId());
utkast.setIntygsTyp(request.getIntygType());
utkast.setStatus(UtkastStatus.DRAFT_INCOMPLETE);
Vardenhet vardenhet = request.getHosPerson().getVardenhet();
utkast.setEnhetsId(vardenhet.getEnhetsid());
utkast.setEnhetsNamn(vardenhet.getEnhetsnamn());
Vardgivare vardgivare = vardenhet.getVardgivare();
utkast.setVardgivarId(vardgivare.getVardgivarid());
utkast.setVardgivarNamn(vardgivare.getVardgivarnamn());
VardpersonReferens vardPerson = new VardpersonReferens();
vardPerson.setNamn(request.getHosPerson().getFullstandigtNamn());
vardPerson.setHsaId(request.getHosPerson().getPersonId());
utkast.setSenastSparadAv(vardPerson);
utkast.setSkapadAv(vardPerson);
utkastRepository.save(utkast);
return Response.ok().build();
}
use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class IntygResource method deleteDraftsByEnhet.
@DELETE
@Path("/enhet/{enhetsId}")
@Produces(MediaType.APPLICATION_JSON)
public Response deleteDraftsByEnhet(@PathParam("enhetsId") String enhetsId) {
List<String> enhetsIds = new ArrayList<>();
enhetsIds.add(enhetsId);
List<UtkastStatus> statuses = new ArrayList<>();
statuses.add(UtkastStatus.DRAFT_INCOMPLETE);
statuses.add(UtkastStatus.DRAFT_COMPLETE);
List<Utkast> utkast = utkastRepository.findByEnhetsIdsAndStatuses(enhetsIds, statuses);
if (utkast != null) {
for (Utkast u : utkast) {
deleteDraftAndRelatedQAs(u);
}
}
return Response.ok().build();
}
use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class IntygResource method updateStatus.
private void updateStatus(String id, UtkastStatus status) {
Utkast utkast = utkastRepository.findOne(id);
if (utkast != null) {
utkast.setStatus(status);
utkastRepository.save(utkast);
}
}
Aggregations