use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class IntygServiceTest method buildDraftList.
private List<Utkast> buildDraftList(boolean unique, VardpersonReferens skapadAv, VardpersonReferens senastSparadAv) throws IOException {
List<Utkast> draftList = new ArrayList<>();
Utkast draft = getIntyg(unique ? "LONG-UNIQUE-ID" : "1", LocalDateTime.now(), null);
draft.setSkapadAv(skapadAv);
draft.setSenastSparadAv(senastSparadAv);
draftList.add(draft);
return draftList;
}
use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class IntygServiceTest method getIntyg.
private Utkast getIntyg(String intygsId, LocalDateTime sendDate, LocalDateTime revokeDate) throws IOException {
String json = IOUtils.toString(new ClassPathResource("FragaSvarServiceImplTest/utlatande.json").getInputStream(), "UTF-8");
Utkast utkast = new Utkast();
utkast.setModel(json);
utkast.setIntygsId(intygsId);
utkast.setIntygsTyp(CERTIFICATE_TYPE);
utkast.setSkickadTillMottagareDatum(sendDate);
utkast.setAterkalladDatum(revokeDate);
utkast.setStatus(UtkastStatus.SIGNED);
utkast.setPatientPersonnummer(PERSNR);
Signatur signatur = new Signatur(LocalDateTime.now(), HSA_ID, CERTIFICATE_ID, "", "", "");
utkast.setSignatur(signatur);
return utkast;
}
use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class IntygServiceTest method testHandleSignedWithSigneraSkickaDirekt.
@Test
public void testHandleSignedWithSigneraSkickaDirekt() throws Exception {
final String intygId = "intygId";
final String intygTyp = "intygTyp";
final String relationIntygId = "relationIntygId";
final String recipient = new Fk7263EntryPoint().getDefaultRecipient();
final Personnummer personnummer = PERSNR;
Fk7263Utlatande utlatande = objectMapper.readValue(json, Fk7263Utlatande.class);
utlatande.setId(intygId);
utlatande.setTyp(intygTyp);
utlatande.getGrundData().getPatient().setPersonId(personnummer);
Utkast utkast = new Utkast();
utkast.setIntygsId(intygId);
utkast.setIntygsTyp(intygTyp);
utkast.setModel(json);
when(utkastRepository.findOne(intygId)).thenReturn(utkast);
when(moduleFacade.getUtlatandeFromInternalModel(eq(intygTyp), anyString())).thenReturn(utlatande);
when(certificateRelationService.getNewestRelationOfType(eq(intygId), eq(RelationKod.ERSATT), eq(Arrays.asList(UtkastStatus.SIGNED)))).thenReturn(Optional.empty());
when(moduleRegistry.getModuleEntryPoint(intygTyp)).thenReturn(new Fk7263EntryPoint());
when(authoritiesHelper.isFeatureActive(AuthoritiesConstants.FEATURE_SIGNERA_SKICKA_DIREKT, intygTyp)).thenReturn(true);
intygService.handleAfterSigned(utkast);
verify(certificateSenderService).sendCertificate(eq(intygId), eq(personnummer), anyString(), eq(recipient), eq(true));
verify(mockMonitoringService).logIntygSent(intygId, recipient);
verify(logservice).logSendIntygToRecipient(any(LogRequest.class));
verify(arendeService, never()).closeCompletionsAsHandled(relationIntygId, intygTyp);
verify(notificationService).sendNotificationForIntygSent(intygId);
ArgumentCaptor<Utkast> utkastCaptor = ArgumentCaptor.forClass(Utkast.class);
verify(utkastRepository).save(utkastCaptor.capture());
assertNotNull(utkastCaptor.getValue().getSkickadTillMottagareDatum());
assertEquals(recipient, utkastCaptor.getValue().getSkickadTillMottagare());
}
use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class IntygServiceTest method testLoggingFetchIntygAsPdfWithDraft.
@SuppressWarnings("unchecked")
@Test
public void testLoggingFetchIntygAsPdfWithDraft() throws IOException, IntygModuleFacadeException {
final Utkast draft = getDraft(CERTIFICATE_ID);
when(utkastRepository.findOne(CERTIFICATE_ID)).thenReturn(draft);
Fk7263Utlatande utlatande = objectMapper.readValue(draft.getModel(), Fk7263Utlatande.class);
when(moduleFacade.getUtlatandeFromInternalModel(anyString(), anyString())).thenReturn(utlatande);
when(moduleFacade.convertFromInternalToPdfDocument(anyString(), anyString(), anyList(), anyBoolean())).thenReturn(buildPdfDocument());
IntygPdf intygPdf = intygService.fetchIntygAsPdf(CERTIFICATE_ID, CERTIFICATE_TYPE, false);
assertNotNull(intygPdf);
verify(utkastRepository).findOne(anyString());
verify(logservice).logPrintIntygAsDraft(any(LogRequest.class));
verifyNoMoreInteractions(logservice);
verify(moduleFacade, times(0)).getCertificate(CERTIFICATE_ID, CERTIFICATE_TYPE);
}
use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class CopyCompletionUtkastBuilderTest method createOriginalUtkast.
private Utkast createOriginalUtkast() {
Utkast orgUtkast = new Utkast();
orgUtkast.setIntygsId(INTYG_COPY_ID);
orgUtkast.setIntygsTyp(INTYG_TYPE);
orgUtkast.setPatientPersonnummer(PATIENT_SSN);
orgUtkast.setPatientFornamn(PATIENT_FNAME);
orgUtkast.setPatientMellannamn(PATIENT_MNAME);
orgUtkast.setPatientEfternamn(PATIENT_LNAME);
orgUtkast.setEnhetsId(VARDENHET_ID);
orgUtkast.setEnhetsNamn(VARDENHET_NAME);
orgUtkast.setVardgivarId(VARDGIVARE_ID);
orgUtkast.setVardgivarNamn(VARDGIVARE_NAME);
orgUtkast.setModel(INTYG_JSON);
VardpersonReferens vpRef = new VardpersonReferens();
vpRef.setHsaId(HOSPERSON_ID);
vpRef.setNamn(HOSPERSON_NAME);
orgUtkast.setSenastSparadAv(vpRef);
orgUtkast.setSkapadAv(vpRef);
return orgUtkast;
}
Aggregations