Exemplo n.º 1
0
            public TrasmissioneSingolaUOStrategy(Corrispondente uo, TrasmissioneBuilder builder)
                : base(uo, builder)
            {
                UnitaOrganizzativa             theUo = (UnitaOrganizzativa)_corrispondente;
                QueryCorrispondenteAutorizzato qca   = new QueryCorrispondenteAutorizzato();

                qca.ragione = _builder.Template.ragione;
                qca.ruolo   = _builder._ruoloMittente;
                ArrayList ruoli = addressBookManager.getRuoliRiferimentoAutorizzati(qca, theUo);

                foreach (Ruolo ruolo in ruoli)
                {
                    QueryUtenti(ruolo).ForEach(e => _utenti.Add(e));
                }
            }
Exemplo n.º 2
0
        public void addTrasmSingole(Corrispondente corr, RagioneTrasmissione ragione, string note, string tipoTrasm, int scadenza)
        {
            if (_trasmissioniSingole.ContainsKey(corr.systemId))
            {
                if (_trasmissioniSingole[corr.systemId].daEliminare)
                {
                    _trasmissioniSingole[corr.systemId].daEliminare = false;
                }
                return;
            }
            TrasmissioneSingola _trasmissioneSingola = new TrasmissioneSingola();

            buildBasicInfo(_trasmissioneSingola, corr, ragione, note, tipoTrasm, scadenza);
            if (corr is Ruolo)
            {
                _trasmissioneSingola.tipoDest = TipoDestinatario.RUOLO;
                ArrayList listaUtenti = queryUtenti(corr);
                if (listaUtenti.Count == 0)
                {
                    return;
                }
                foreach (Utente temp in listaUtenti)
                {
                    addTrasmissioneUtente(temp, _trasmissioneSingola);
                }
                _trasmissioniSingole.Add(corr.systemId, _trasmissioneSingola);
            }
            if (corr is Utente)
            {
                _trasmissioneSingola.tipoDest = TipoDestinatario.UTENTE;
                addTrasmissioneUtente((Utente)corr, _trasmissioneSingola);
                _trasmissioniSingole.Add(corr.systemId, _trasmissioneSingola);
            }
            if (corr is UnitaOrganizzativa)
            {
                UnitaOrganizzativa             theUo = (UnitaOrganizzativa)corr;
                QueryCorrispondenteAutorizzato qca   = new QueryCorrispondenteAutorizzato();
                qca.ragione = _trasmissioneSingola.ragione;
                qca.ruolo   = _ruolo;
                ArrayList ruoli = BusinessLogic.Utenti.addressBookManager.getRuoliRiferimentoAutorizzati(qca, theUo);
                foreach (Ruolo r in ruoli)
                {
                    addTrasmSingole(r, ragione, note, tipoTrasm, scadenza);
                }
            }
        }