Пример #1
0
        public ResponseCOLConfirm StateRetrive(string requestId, Guid guidUser)
        {
            var user = _context.Users.Where(a => a.guidUser == guidUser).FirstOrDefault();

            string[] IdRichieste = new string[1];
            IdRichieste[0] = requestId;

            PostaContestServiceClient service = getNewServiceCOL(guidUser);
            var request = new RecuperaServizioPerIdRichiestaRequest();

            request.CodiceContratto = user.CodiceContrattoCOL;
            request.IdRichieste     = IdRichieste;

            var r = new ResponseCOLConfirm();

            var rs = service.RecuperaServizioPerIdRichiesta(request);

            if (rs.Esito == EsitoPostaEvo.OK)
            {
                if (rs.Servizi.Count() > 0)
                {
                    var n = _context.Names.SingleOrDefault(a => a.requestId == requestId);
                    n.presaInCaricoDate = rs.Servizi[0].DataAccettazione;
                    n.codice            = rs.Servizi[0].DatiServizio.Destinatari[0].NumeroLettera.Replace(" ", "");
                    n.stato             = rs.Servizi[0].StatoServizio;
                    _context.SaveChanges();

                    r.DataAccettazione   = (DateTime)rs.Servizi[0].DataAccettazione;
                    r.NumeroRaccomandata = rs.Servizi[0].DatiServizio.Destinatari[0].NumeroLettera.Replace(" ", "");
                    r.EsitoPostaEvo      = rs.Esito;
                }
            }
            return(r);
        }
Пример #2
0
        public ResponseCOLConfirm Confirm(string requestId, Guid guidUser)
        {
            var user = _context.Users.Where(a => a.guidUser == guidUser).FirstOrDefault();

            var r = new ResponseCOLConfirm();
            PostaContestServiceClient service = getNewServiceCOL(guidUser);
            var request = new ConfermaInvioRequest();

            request.CodiceContratto = user.CodiceContrattoCOL;
            request.IdRichiesta     = requestId;

            var stato = StateRetrive(requestId, guidUser);

            if (stato.EsitoPostaEvo == EsitoPostaEvo.OK)
            {
                r.DataAccettazione   = (DateTime)stato.DataAccettazione;
                r.NumeroRaccomandata = stato.NumeroRaccomandata.Replace(" ", "");
                r.EsitoPostaEvo      = stato.EsitoPostaEvo;
            }
            else
            {
                var conferma = service.ConfermaInvio(request);
                if (conferma.Esito == EsitoPostaEvo.OK)
                {
                    r.DataAccettazione   = conferma.DataAccettazione;
                    r.NumeroRaccomandata = conferma.Destinatari[0].NumeroLettera;
                    r.EsitoPostaEvo      = conferma.Esito;

                    var n = _context.Names.SingleOrDefault(a => a.requestId == requestId);
                    n.presaInCaricoDate = r.DataAccettazione;
                    n.codice            = r.NumeroRaccomandata;
                    n.stato             = "Presa in carico Postel";
                    n.currentState      = (int)currentState.PresoInCarico;
                    _context.SaveChanges();
                }
            }

            return(r);
        }