Sei sulla pagina 1di 1

Design Model::Collaboration1::Interaction1::SequenceDiagram1

interaction SequenceDiagram1

Main : UIContribuente : GestoreDichiarazioniRedditi : DichiarazioneRedditiDAO : ContribuenteDAO : FabbricatoDAO :RapportoLavoroDAO rl: RapportoLavoro f: Fabbricato

: Contribuente
Viene richiesto
all'utente di
1 : invoke inserire i dati
2 : calcolaImpostaIRPEF necessari per
l'elaborazione.

3 : "inserisci codice fiscale"


4 : cf

5 : "inserisci anno fiscale"


6 : anno
7 : getModello(cf,anno)
8 : read(cf,anno)
Viene prelevata dal
9 : executeQuery database la
dichiarazioneRedditi
10 : resultSet corrispondente ai dati
inseriti.
«create»
11 : read(cf)
12 : c: Contribuente

13 : c

«create»
14 : readPerDichiarazione(resultSet.getInt(ID))
15 : listaFabbricati: List<Fabbricato>

16 : listaFabbricati

17 : readPerDichiarazione(resultSet.getInt(ID)) «create»
18 : listaRapporti: List<RapportoLavoro>

19 : listaRapportiLavoro

«create» NB: Quando viene creata


20 : (id,annoFiscale,c,listaFabbricati,listaRapportiLavoro, resultSet.getString("STATO")) la DichiarazioneRedditi,
d: DichiarazioneRedditi essa potrà essere un
Modello730 o
ModelloUnico a seconda
del valore contenuto in
21 : d resultSet.getString("tipo")

22 : d

23 : calcolaImpostaIRPEF(d)
24 : getSommaRedditiLavoroDipendente() Viene ottenuta la
somma dei redditi
25 : sumRDL = 0 derivanti dai rapporti di
lavoro dichiarati.

loop forEach rl: RapportoLavoro in listaRapportiLavoro


26 : getReddito()

27 : red

28 : sumRDL = sumRDL + red

29 : sumRDL

30 : getSommaRedditiFabbricati

Viene ottenuta la
31 : sumRF = 0 somma dei redditi dei
fabbricati dichiarati
dal contribuente.

loop forEach f:Fabbricato in listaFabbricati


32 : getRendita()

33 : rend
34 : getPercentualeProprietaImmobile()

35 : perc
36 : getGiorniPossesso()

37 : gp

38 : sumRF = sumRF + (rend * perc * (gp/365))

39 : sumRF
Viene calcolata la sumParz,
ovvero l'imposta ottenuta
senza considerare il calcolo
40 : sumParz = sumRDL + sumRF dell'aliquota. Per i modelli
unici, va aggiunto il totale
delle
plusvalenze/minusvalenze.

opt se la DichiarazioneRedditi è un ModelloUnico


41 : getTotalePlusvalenzeMinusvalenze

42 : tot

43 : sumParz = sumParz + tot

44 : applicaAliquota(sumParz, 21)
Viene applicata
un'aliquota del 21%
45 : sum = sumParz * 0.21 sulla somma ricavata

46 : sum

47 : sum
48 : mostraImposta Viene mostrata l'imposta IRPEF al
contribuente e gli viene chiesto se
desidera consolidare la
dichiarazione. La dichiarazione
sarà consolidata se e solo se il
49 : "desideri consolidare la dichiarazione?" contribuente risponde
positivamente, la data del sistema
50 : msg sarà compresa tra il 15 marzo e il
15 maggio, l'anno della
51 : getAnnoFiscale() dichiarazione è quello precedente
all'anno in corso e la dichiarazione
non è stata ancora consolidata.
52 : annoFiscale
53 : isConsolidata()

54 : consolidata

55 [msg == si && 15/03/xxxx <= sysDate <= 15/05/xxxx && xxxx == annoFiscale + 1 && consolidata == false] : consolidaDichiarazione(d)

56 :
57 : terminate
58 : terminate

Potrebbero piacerti anche