Algoritmo ricerca servizio

di il
2 risposte

Algoritmo ricerca servizio

Ciao a tutti e buona pasqua.

Ho un servizio rest che si occupa d'andare a prelevare dati dal DB. DI default preleva tutti gli appuntamenti con data successiva a quella odierna + 30 giorni.

L'utente visualizza un form che gli permetterà (se lo vorrà) di andare ad inizializzare dei filtri, tra cui:
- numero di giorni
- visualizza gli eventi passati

l'utente può inserire per il filtro "numero di giorni" un numero positivo (quindi da oggi a X giorni) o negativo (quindi appuntamenti fatti da oggi ad oggi - X giorni).

avevo ipotizzato:
nella query del servizio (scritta in sql nativo) non mettere indicazioni sulla condizione della data.
Fare un controllo sulla proprietà del filtro, se diverso da null :
- se maggiore di 0 prende quelle in programma da oggi a filtro.getNumeroGiorni()
- se minore o uguale a 0 prende quelli già fatti da oggi a oggi - filtro.getNumeroGiorni()
Se il filtro invece è null prende la condizione di default, ossia in programma da oggi ai prossimi 30 giorni.

Vi trovate con la mia idea?

Il problema nasce se l'utente spunta Flag “Mostra anche appuntamenti effettuati”: apponendo il flag sarà possibile visualizzare anche gli appuntamenti effettuati e non solo quelle da fare. Quindi di default, spuntando questa casella, mosterà tutti quelli già fatti + quelli da fare nei prossimi 30 giorni, ma se l'utente segna -10 e spunta anche la casella... che farà, prenderà tutte le effettuate o solo quelle degli ultimi 10 giorni? come si gestisce al meglio la situazione?

2 Risposte

  • Re: Algoritmo ricerca servizio

    Test90 ha scritto:


    Il problema nasce se l'utente spunta Flag “Mostra anche appuntamenti effettuati”: apponendo il flag sarà possibile visualizzare anche gli appuntamenti effettuati e non solo quelle da fare. Quindi di default, spuntando questa casella, mosterà tutti quelli già fatti + quelli da fare nei prossimi 30 giorni, ma se l'utente segna -10 e spunta anche la casella... che farà, prenderà tutte le effettuate o solo quelle degli ultimi 10 giorni? come si gestisce al meglio la situazione?
    Buongiorno. La regola di funzionamento del programma devi darla te. Se l'utente chiedesse i 10 giorni precedenti ad oggi (-10) con la spunta del "mostra anche appuntamenti effettuati" perchè non fargli vedere quello che ha chiesto?

    Riguardo la lettura senza filtri dal DB, non so che dimensioni abbia o possa assumere nel tempo il tuo DB ma, se dovesse raggiungere dimensioni importanti, fargli leggere sempre tutti i record della tabella potrebbe essere pesante; non sarebbe meglio leggere ogni volta dal DB in base ai filtri impostati (numero dei giorni e flag)?
  • Re: Algoritmo ricerca servizio

    PaoloDaPrato ha scritto:



    Buongiorno. La regola di funzionamento del programma devi darla te. Se l'utente chiedesse i 10 giorni precedenti ad oggi (-10) con la spunta del "mostra anche appuntamenti effettuati" perchè non fargli vedere quello che ha chiesto?

    Riguardo la lettura senza filtri dal DB, non so che dimensioni abbia o possa assumere nel tempo il tuo DB ma, se dovesse raggiungere dimensioni importanti, fargli leggere sempre tutti i record della tabella potrebbe essere pesante; non sarebbe meglio leggere ogni volta dal DB in base ai filtri impostati (numero dei giorni e flag)?
    Perché non vedo il senso.. se vuole solo quelli effettuati negli ulimi 7 gioni perché poi mostrarglieli tutti ? Pensavo di dover gestire diversamente la cosa...

    Comuque piccolo DB, farò una 40ina di insert per poter avere risposta a tutte le tipologie di chiamate,
Devi accedere o registrarti per scrivere nel forum
2 risposte