Exemplo n.º 1
0
        public async Task <IActionResult> ConformeDirTec(int codOt, int Insp_Codigo, bool Isconforme)
        {
            using (var service = GetService <ASIK_PGWEB_Service>())
            {
                var Result = await service.ConformeDirTec(codOt, Insp_Codigo, Isconforme);

                if (Result.errorMetodo == null)
                {
                    CorreoController correoController = new CorreoController(_serviceProvider);
                    if (!Isconforme)
                    {
                        correoController.SenMailNoConforme(Result.Usuarios, Result.Ord_Trabajo.FirstOrDefault(),
                                                           Result.Calendario.FirstOrDefault());
                    }
                    else
                    {
                        bool GetLstAtestacion = await service.GetAtestacion(codOt);

                        if (GetLstAtestacion)
                        {
                            List <Usuarios> Lstusuarios = await service.GetUsuarios(8);

                            Usuarios usuarios = await service.GetTecnico(codOt);

                            var ot = await service.GetOT(codOt);

                            correoController.Conf_CampoDoc(Lstusuarios, usuarios, ot.Ord_Trabajo.FirstOrDefault());
                        }
                    }
                    return(Json(new { Status = true, Message = Result.successMetodo }));
                }
                return(Json(new { Status = false, Message = Result.errorMetodo }));
            }
        }
Exemplo n.º 2
0
        public async Task <IActionResult> Start(int codOt, bool start)
        {
            using (var service = GetService <ASIK_PGWEB_Service>())
            {
                var           identity  = HttpContext.User.Identity as ClaimsIdentity;
                AsikViewModel Visit_tec = await service.VisiTec_Start(codOt,
                                                                      Convert.ToInt32(identity.Claims.Where(x => x.Type == ClaimTypes.PrimarySid).FirstOrDefault().Value), start);

                int cant_visitRev = await service.cant_visitRev(codOt, true);

                if (!start)
                {
                    CorreoController correoController = new CorreoController(_serviceProvider);
                    correoController.Send_Email_DirTecnico(Visit_tec.Ord_Trabajo.FirstOrDefault(), Visit_tec.Calendario.FirstOrDefault(),
                                                           Visit_tec.Usuarios, Visit_tec.LstUsuarios, Visit_tec.Clientes.FirstOrDefault(), Visit_tec.Deparcol.FirstOrDefault(),
                                                           Visit_tec.Munidep.FirstOrDefault());
                    if (cant_visitRev == 1)
                    {
                        List <Usuarios> usuariosComercial = await service.GetUsuarios(8);

                        correoController.Send_Email_Cant_VisitRev(Visit_tec.Ord_Trabajo.FirstOrDefault(), "visita tecnica",
                                                                  usuariosComercial);
                    }
                }

                if (Visit_tec.errorMetodo == null)
                {
                    return(Json(new { Status = true }));
                }
                return(Json(new { Status = false }));
            }
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Save(int codOt, int rol)
        {
            using (var service = GetService <ASIK_PGWEB_Service>())
            {
                var Result = await service.Fac_Cont_Save(codOt, rol);

                if (Result.errorMetodo == null)
                {
                    var LstOT = await service.GetOT(codOt);

                    if (LstOT.Ord_Trabajo.Count() > 0)
                    {
                        CorreoController correoController = new CorreoController(_serviceProvider);
                        if (Result.IsFacturada)
                        {
                            correoController.Send_Email_Contabilidad(LstOT.Ord_Trabajo.FirstOrDefault().Ord_Nomproy,
                                                                     LstOT.Clientes.FirstOrDefault(), LstOT.Ord_Trabajo.FirstOrDefault().Ord_Codotc.ToString(),
                                                                     await service.GetUsuarios(6));
                        }
                        else
                        {
                            correoController.mailLoadDictamen(await service.GetUsuarios(10), LstOT.Ord_Trabajo.FirstOrDefault());
                        }
                    }
                    return(Json(new { Status = true, Message = Result.successMetodo }));
                }
                return(Json(new { Status = false, Message = Result.errorMetodo }));
            }
        }
Exemplo n.º 4
0
        public async Task <IActionResult> save(Prog_Ot prog_Ot)
        {
            using (var service = GetService <ASIK_PGWEB_Service>())
            {
                var Result = await service.prog_Ot_save(prog_Ot);

                if (Result.errorMetodo == null)
                {
                    CorreoController ClientCorreo = new CorreoController(_serviceProvider);
                    await ClientCorreo.Send_Email_Tecnico(
                        Result.Ord_Trabajo.FirstOrDefault(),
                        Result.Calendario.FirstOrDefault(),
                        Result.Usuarios,
                        Result.Clientes.FirstOrDefault(),
                        Result.Deparcol.FirstOrDefault(),
                        Result.Munidep.FirstOrDefault());

                    return(Json(new { Status = true, Message = Result.successMetodo }));
                }
                else
                {
                    return(Json(new { Status = false, Message = Result.errorMetodo }));
                }
            }
        }
        public async Task <IHttpActionResult> NotificarAsignacionEvalFI(MiembrosNotificar notificacion)
        {
            try
            {
                var _miembrosRepository    = new MiembrosGERepository();
                var _PersonasRepository    = new PersonasRepository();
                List <MiembrosGI> miembros = notificacion.ListaMiembros;
                int id = notificacion.Id;
                await _miembrosRepository.NotificarAsignacionEvalFI(miembros, id);

                Correo correo = new Correo();
                correo.Modulo     = "Gestión de la Innovación";
                correo.Seccion    = "Idea Innovadora";
                correo.TipoCorreo = "NotificacionEvaluadoresFI";

                var c     = miembros.Select(x => x.ClavePersona);
                var lista = await _PersonasRepository.GetAllCollectionMAX(new HashSet <string>(c));

                var corrs = new HashSet <String>(lista.Select(x => x.Correo));
                correo.Descripcion1 = string.Join(", ", corrs.ToArray());
                var correoController = new CorreoController();
                try {
                    await correoController.SendNotificacion(correo);
                }
                catch (Exception err) { }
                return(Ok(""));
            }
            catch (Exception e)
            {
                log.Error(new MDCSet(this.ControllerContext.RouteData), e);

                return(InternalServerError(e));
            }
        }
Exemplo n.º 6
0
 public SolicitudGIController()
 {
     _solicitudGIRepository = new SolicitudGIRepository();
     _PersonasRepository    = new PersonasRepository();
     _miembrosRepository    = new MiembrosGERepository();
     correoController       = new CorreoController();
     _evaluadorRepo         = new EvaluadorIdeaRepository();
 }
Exemplo n.º 7
0
        public async Task <IActionResult> Save(Ord_Trabajo OT)
        {
            using (var service = GetService <ASIK_PGWEB_Service>())
            {
                try
                {
                    var identity = HttpContext.User.Identity as ClaimsIdentity;
                    OT.Ord_Feccre = DateTime.Now;
                    OT.Ord_Fecmod = OT.Ord_Feccre;
                    OT.Ord_Codotc = await service.GetConsecutivo();

                    OT.Ord_Usucre      = Convert.ToInt32(identity.Claims.Where(x => x.Type == ClaimTypes.PrimarySid).FirstOrDefault().Value);
                    OT.Ord_Usumod      = OT.Ord_Usucre;
                    OT.Ord_Fec90       = Convert.ToDateTime(DateTime.Now.AddDays(90).ToShortDateString());
                    OT.Ord_Fecfin      = Convert.ToDateTime(DateTime.Now.AddDays(120).ToShortDateString());
                    OT.Ord_Estado      = 14;
                    OT.Ord_Canvis_Rest = OT.Ord_Canvis;
                    OT.Ord_RevDoc_Rest = OT.Ord_Revdoc;
                    OT.Ord_Codsed      = OT.Ord_Codsed;
                    if (OT.Ord_Emacad == null)
                    {
                        OT.Ord_Emacad = "*****@*****.**";
                    }

                    var Result = await service.ValidateSaveOT(OT);

                    if (Result != null)
                    {
                        if (Result.errorMetodo == null)
                        {
                            CorreoController ClientCorreo = new CorreoController(_serviceProvider);
                            await ClientCorreo.Send_Email_ProgTec(OT, Result.LstUsuarios, Result.Clientes.FirstOrDefault(),
                                                                  Result.Deparcol.FirstOrDefault(), Result.Munidep.FirstOrDefault());

                            ClientCorreo.Send_Email_Documental(OT, Result.LstUsuarios, Result.Clientes.FirstOrDefault(),
                                                               Result.Deparcol.FirstOrDefault(), Result.Munidep.FirstOrDefault(), Result.Alcance,
                                                               Result.TipAlcance);

                            ClientCorreo.Send_Rev_DocumentalToCli(Result.rev_DocItems, OT);
                        }
                        else
                        {
                            return(Json(new { Status = false, Message = Result.errorMetodo }));
                        }
                    }
                    else
                    {
                        return(Json(new { Status = false, Message = "Error al guardar, intente nuevamente." }));
                    }
                    return(Json(new { Status = true, Message = Result.successMetodo }));
                }
                catch (Exception ex)
                {
                    return(Json(new { Status = false, Message = ex.Message }));
                }
            }
        }
Exemplo n.º 8
0
        public async Task <IActionResult> SendEmailDict(int codOt, int CodProc, Env_Dictamen env_Dictamen)
        {
            try
            {
                using (var service = GetService <ASIK_PGWEB_Service>())
                {
                    var LstOT = await service.GetOT(codOt);

                    if (LstOT.Ord_Trabajo.Count() > 0)
                    {
                        CorreoController correoController = new CorreoController(_serviceProvider);
                        switch (CodProc)
                        {
                        case 1:
                            //var Env_DictSave = await service.Env_DictSave(env_Dictamen);
                            //if (Env_DictSave.errorMetodo == null)
                            //{
                            await correoController.Send_Email_Facturacion(LstOT.Ord_Trabajo.FirstOrDefault().Ord_Nomproy,
                                                                          LstOT.Clientes.FirstOrDefault(), 9, LstOT.Ord_Trabajo.FirstOrDefault().Ord_Codotc.ToString(),
                                                                          LstOT.LstUsuarios);

                            //}
                            break;

                        case 2:
                            var Env_DictSave2 = await service.Env_DictSave(env_Dictamen);

                            if (Env_DictSave2.errorMetodo == null)
                            {
                                ReporteCliente ClientReport = new ReporteCliente();
                                var            Report       = ClientReport.PdfReportClient(
                                    LstOT.Ord_Trabajo.FirstOrDefault(),
                                    LstOT.Clientes.FirstOrDefault(),
                                    LstOT.Usuarios,
                                    LstOT.Alcance.FirstOrDefault()
                                    );
                                if (Report.Status)
                                {
                                    correoController.Send_EmailDictamen(LstOT.Ord_Trabajo.FirstOrDefault(), env_Dictamen, Report.Message);
                                }
                            }
                            break;
                        }
                    }
                    return(Json(new { Status = true, Message = "Dictamen generado exitosamente" }));
                }
            }
            catch (Exception ex)
            {
                return(Json(new { Status = false, Message = ex.InnerException.Message }));
            }
        }
Exemplo n.º 9
0
        public IHttpActionResult PostCorretaje(Corretaje corretaje)
        {
            int corretaje_id;

            //Objeto para acceder a los metodos de correo
            var correo_controller = new CorreoController();

            //Obtener los correos de los usuarios de hablitacion y contaduria
            var usuarios = (from usu in db.Usuario where usu.usu_tipo == "4" || usu.usu_tipo == "5" select new { usu.usu_correo }).ToArray();

            //Habilitacion
            //var habilitacion = new Habilitacion();
            var habilitacion_controller = new HabilitacionsController();

            //Contaduria
            //var contaduria = new Contaduria();
            var contadiria_controller = new ContaduriasController();

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            //Fecha de alta del la casa al sistema
            corretaje.Crt_FechaAlta = DateTime.Now;

            db.Corretaje.Add(corretaje);
            db.SaveChanges();

            //Variables
            corretaje_id = corretaje.Id;

            //Funciones
            habilitacion_controller.CreateHabilitacions(corretaje_id);
            contadiria_controller.CreateContadurias(corretaje_id);

            //Enviar correo de alta de casa a los demás departamentos
            foreach (var item in usuarios)
            {
                if (item != null)
                {
                    correo_controller.sendMailCorretaje(item.usu_correo);
                }
            }

            return(CreatedAtRoute("DefaultApi", new { id = corretaje.Id }, corretaje));
        }
Exemplo n.º 10
0
        public async Task <IActionResult> MailNinetyDays()
        {
            using (var service = GetService <ASIK_PGWEB_Service>())
            {
                try
                {
                    CorreoController correo   = new CorreoController(_serviceProvider);
                    bool             SendMail = await correo.ninetyDaysMail();

                    return(View());
                }
                catch (Exception ex)
                {
                    return(Json(new { Error = ex.InnerException.Message }));
                }
            }
        }
Exemplo n.º 11
0
        public async Task <IActionResult> ConformeCampo(int Insp_Codigo, bool Isconforme, string observa)
        {
            using (var service = GetService <ASIK_PGWEB_Service>())
            {
                var Result = await service.ConformeCampo(Insp_Codigo, Isconforme, observa);

                if (Result.errorMetodo == null)
                {
                    if (!Isconforme)
                    {
                        CorreoController correoController = new CorreoController(_serviceProvider);
                        correoController.SenMailNoConforme(Result.Usuarios, Result.Ord_Trabajo.FirstOrDefault(),
                                                           Result.Calendario.FirstOrDefault());
                    }
                    return(Json(new { Status = true, Message = Result.successMetodo }));
                }
                return(Json(new { Status = false, Message = Result.errorMetodo }));
            }
        }
Exemplo n.º 12
0
        public IHttpActionResult PostCliente(Cliente cliente)
        {
            int    cliente_id, corretaje_id;
            string correo, telefono;

            //Objeto de Gestion
            var gestion_controller = new GestionsController();

            //Objeto Verificacion
            var verificacion_controller = new VerificacionsController();

            //Correo
            var correo_controller = new CorreoController();

            //SMS
            var sms_controller = new SmsController();

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Cliente.Add(cliente);
            db.SaveChanges();

            //Tomar valores
            cliente_id   = cliente.Id;
            corretaje_id = cliente.Id_Corretaje.Value; //Preguntar si lo dejo así o corretaje_id = cliente.Id_Corretaje.HasValue ? cliente.Id_Corretaje.Value:0
            //telefono = cliente.Gral_Celular.ToString();
            //correo = cliente.Gral_Correo;

            //Funciones
            gestion_controller.CreateGestions(cliente_id, corretaje_id);
            verificacion_controller.CreateVerificacions(cliente_id);
            //sms_controller.SendSms(telefono); Estan comentadas porque cuestan dinero xd
            //correo_controller.sendmail(correo);

            return(CreatedAtRoute("DefaultApi", new { id = cliente.Id }, cliente));
        }
Exemplo n.º 13
0
        public IHttpActionResult PostCliente(Cliente cliente)
        {
            int    cliente_id, corretaje_id;
            string correo, telefono;

            //Obtener los correos de los usuarios de hablitacion y contaduria
            var usuarios = (from usu in db.Usuario where usu.usu_tipo == "2" || usu.usu_tipo == "6" select new { usu.usu_correo }).ToArray();

            //Objeto de Gestion
            var gestion_controller = new GestionsController();

            //Objeto Verificacion
            var verificacion_controller = new VerificacionsController();

            //Correo
            var correo_controller = new CorreoController();

            //SMS
            var sms_controller = new SmsController();

            //Folio
            var foliogenerado = ValidarFolioDuplicado();

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            cliente.Gral_Fechaalta = DateTime.Now;
            cliente.Grlal_Folio    = foliogenerado;

            db.Cliente.Add(cliente);
            db.SaveChanges();

            //Tomar valores
            cliente_id   = cliente.Id;
            corretaje_id = cliente.Id_Corretaje.Value; //Preguntar si lo dejo así o corretaje_id = cliente.Id_Corretaje.HasValue ? cliente.Id_Corretaje.Value:0
                                                       //telefono = cliente.Gral_Celular.ToString();
                                                       //correo = cliente.Gral_Correo;

            correo = cliente.Gral_Correo;

            //Actualizar status de la casa
            if (cliente.Id_Corretaje != null)
            {
                Corretaje cr = db.Corretaje.Find(cliente.Id_Corretaje);
                cr.Crt_Status = "Venta";
                db.SaveChanges();
            }

            //Funciones
            gestion_controller.CreateGestions(cliente_id, corretaje_id);
            verificacion_controller.CreateVerificacions(cliente_id);
            //sms_controller.SendSms(telefono); Estan comentadas porque cuestan dinero xd

            //Llamado de función para enviar correo
            if (cliente.Gral_Correo != null || cliente.Gral_Correo != "")
            {
                correo_controller.sendmail(correo);
            }

            //Enviar correo de alta de casa a los demás departamentos
            foreach (var item in usuarios)
            {
                if (item != null)
                {
                    correo_controller.sendMailGestion(item.usu_correo);
                }
            }

            return(CreatedAtRoute("DefaultApi", new { id = cliente.Id }, cliente));
        }