コード例 #1
0
        public ActionResult Async_SaveFiles(IEnumerable <HttpPostedFileBase> evidencias, int?folioSolicitud) //
        {
            try
            {
                using (ASNContext context = new ASNContext())
                {
                    string fullPath = Request.MapPath("~/Evidencias/");

                    //int folioSolicitud = -1;

                    //var obj = new CatSolicitudesSel_Result();
                    //folioSolicitud = obj.FolioSolicitud;

                    if (!System.IO.File.Exists(fullPath))
                    {
                        Directory.CreateDirectory(fullPath);
                    }

                    foreach (var item in evidencias)
                    {
                        if (item != null)
                        {   // s
                            var nombreArchivo = folioSolicitud.ToString() + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + "_" + item.FileName;
                            item.SaveAs(fullPath + Path.GetFileName(nombreArchivo));
                        }
                    }

                    return(Json(new { res = 1 }, JsonRequestBehavior.AllowGet));
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("error", "Ocurrió un error al procesar la solicitud.");
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(new { res = -1 }, JsonRequestBehavior.AllowGet));
            }
        }
コード例 #2
0
        public ActionResult GetUserInfo(int ccms)
        {
            var emp = new CatEmployeeInfoSel_Result();

            try
            {
                using (ASNContext context = new ASNContext())
                {
                    context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    emp = context.CatEmployeeInfoSel(ccms).ToList().SingleOrDefault();
                }

                return(Json(emp, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #3
0
        public JsonResult ConsultarPeriodoNominaSolicitud(int folioSolicitud)
        {
            try
            {
                var lstPeriodoNominaSolicitud = new List <CatPeriodoNominaSolicitudSel_Result>();

                using (ASNContext context = new ASNContext())
                {
                    lstPeriodoNominaSolicitud = context.CatPeriodoNominaSolicitudSel(folioSolicitud).ToList();
                }

                return(Json(lstPeriodoNominaSolicitud, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("error", "Ocurrió un error al consultar Perído de Nómina.");
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #4
0
        /// <summary>
        /// Método que devuelve todos los periodos de nomina para un ComboBox
        /// </summary>
        /// <returns></returns>
        public JsonResult GetPeriodoNominaCMB(int filtra = 0)
        {
            MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;

            try
            {
                var listPeriodoNomina = new List <CatPeriodosNominaCMB_Result>();
                using (ASNContext context = new ASNContext())
                {
                    context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    listPeriodoNomina = context.CatPeriodosNominaCMB(filtra, usuario.UserInfo.Ident.Value, 0).ToList();
                }

                return(Json(listPeriodoNomina, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                LogError log = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #5
0
        public ActionResult GetSolicitudes([DataSourceRequest] DataSourceRequest request)
        {
            try
            {
                using (ASNContext context = new ASNContext())
                {
                    int.TryParse(User.Identity.Name, out int userCCMSID);

                    context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    var lstSolicitudes  = context.ReporteIndividualSel(userCCMSID).ToList();
                    DataSourceResult ok = lstSolicitudes.ToDataSourceResult(request);
                    return(Json(ok));
                }
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #6
0
        public JsonResult GetPerfil(string perfilId)
        {
            try
            {
                var perfil = new CatPerfilEmpleadosSel_Result();
                using (ASNContext context = new ASNContext())
                {
                    context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    var lstPerfil = context.CatPerfilEmpleadosSel(int.Parse(perfilId)).ToList();
                    perfil = lstPerfil.FirstOrDefault();
                }

                return(Json(perfil, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #7
0
        public ActionResult GetSolicitudes([DataSourceRequest] DataSourceRequest request, int?periodoNomina, string estatusConcepto, string estatusSolicitud)//, string estatus, int? site, int? solicitanteCCMSID, int? city)
        {
            try
            {
                using (ASNContext context = new ASNContext())
                {
                    int.TryParse(User.Identity.Name, out int idAdmin);

                    context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    var lstSolicitudes  = context.ReporteSolicitudXEstatusSel(idAdmin, periodoNomina, estatusSolicitud, estatusConcepto).ToList();//, city,site,solicitanteCCMSID,estatus).ToList();
                    DataSourceResult ok = lstSolicitudes.ToDataSourceResult(request);
                    return(Json(ok, JsonRequestBehavior.AllowGet));
                }
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #8
0
        public ActionResult GetMesesNomina([DataSourceRequest] DataSourceRequest request)
        {
            try
            {
                using (ASNContext context = new ASNContext())
                {
                    context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    var list2 = context.CatMesesNominaSel().ToList();

                    DataSourceResult ok = list2.ToDataSourceResult(request);

                    return(Json(ok));
                }
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #9
0
        public JsonResult GetEmpresaCMB()
        {
            try
            {
                var listEmpresa = new List <CatEmpresaByResponsableCMB_Result>();
                using (ASNContext context = new ASNContext())
                {
                    MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;

                    context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    listEmpresa = context.CatEmpresaByResponsableCMB(usuario.UserInfo.Ident.Value).ToList();
                }
                return(Json(listEmpresa, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #10
0
        public JsonResult GetFechasAnio(int anioId)
        {
            try
            {
                var lstCMB = new List <CatAnioFechasCMB_Result>();

                using (ASNContext context = new ASNContext())
                {
                    lstCMB = context.CatAnioFechasCMB(anioId).ToList();
                }

                return(Json(lstCMB, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("error", "Ocurrió un error al procesar la solicitud.");
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #11
0
        public JsonResult GetEmpleadoPuestoSupervisor(int Ident)
        {
            try
            {
                var lstEmpleadoPuestoSupervisor = new List <CatEmpleadoPuestoSupervisorSel_Result>();

                using (ASNContext context = new ASNContext())
                {
                    lstEmpleadoPuestoSupervisor = context.CatEmpleadoPuestoSupervisorSel(Ident).ToList();
                }

                return(Json(lstEmpleadoPuestoSupervisor, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("error", "Ocurrió un error al procesar la solicitud.");
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #12
0
        public ActionResult GetPerfilTipoAcceso(int Perfil_Ident)
        {
            try
            {
                var lstPerfilTipoAcceso = new List <CatPerfilTipoAccesoSel_Result>();

                using (ASNContext context = new ASNContext())
                {
                    lstPerfilTipoAcceso = context.CatPerfilTipoAccesoSel(Perfil_Ident).ToList();
                }

                return(Json(lstPerfilTipoAcceso.SingleOrDefault(), JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("error", "Ocurrió un error al procesar la solicitud.");
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #13
0
ファイル: ComentariosController.cs プロジェクト: jas12345/ASN
        public ActionResult GetComments(int folioId, int eid, int conceptoId)
        {
            try
            {
                using (ASNContext context = new ASNContext())
                {
                    int ccmsUser = 0;

                    int.TryParse(User.Identity.Name, out ccmsUser);

                    var list2 = context.TraCommentSel(folioId, eid, conceptoId).ToList();

                    TraComment obj = new TraComment();

                    obj.TraCommentId = -1;
                    obj.FolioId      = folioId;
                    obj.EmployeeId   = eid;
                    obj.ConceptoId   = conceptoId;

                    list2.Add(obj);

                    //foreach (var obj in list2)
                    //{
                    //    obj.FolioId = folioId;
                    //    obj.EmployeeId = eid;
                    //    obj.ConceptoId = conceptoId;
                    //}

                    return(PartialView("Comments", list2));
                }
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #14
0
 // GET: ReporteSolicitud
 public ActionResult Index()
 {
     if (User.Identity.IsAuthenticated)
     {
         ViewBag.MostrarPais = 0;
         MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
         using (ASNContext ctx = new ASNContext())
         {
             ctx.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
             var lista = ctx.CatCountryByPerfilCMB(usuario.UserInfo.Ident.Value).ToList();
             if (lista.Count > 1)
             {
                 ViewBag.MostrarPais = 1;
             }
         }
         return(View());
     }
     else
     {
         return(RedirectToAction("Login", "Home"));
     }
 }
コード例 #15
0
        public JsonResult GetEmpleadoPerfilEmpleadosAccesosCMB()
        {
            try
            {
                var lstCMB = new List <catEmpleadosPerfilEmpleadosAccesosCMB_Result>();

                using (ASNContext ctx = new ASNContext())
                {
                    ctx.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    lstCMB = ctx.catEmpleadosPerfilEmpleadosAccesosCMB().ToList();
                }

                return(Json(lstCMB, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #16
0
        public JsonResult GetVigenciaCMB(string periodicidad)
        {
            try
            {
                var lstCMB = new List <RelPeriodicidadPaisCMB_Result>();


                lstCMB.Add(new RelPeriodicidadPaisCMB_Result()
                {
                    Valor = "Inicio", Ident = "Inicio"
                });
                lstCMB.Add(new RelPeriodicidadPaisCMB_Result()
                {
                    Valor = "Fin", Ident = "Fin"
                });
                if (string.IsNullOrEmpty(periodicidad) || periodicidad != "Q")
                {
                    lstCMB.Add(new RelPeriodicidadPaisCMB_Result()
                    {
                        Valor = "Periodo de nomina", Ident = "Periodo nomina"
                    });
                    lstCMB.Add(new RelPeriodicidadPaisCMB_Result()
                    {
                        Valor = "Todos", Ident = "Todos"
                    });
                }

                return(Json(lstCMB, JsonRequestBehavior.AllowGet));
            }
            catch (Exception excepcion)
            {
                ModelState.AddModelError("error", "Ocurrió un error al procesar la solicitud.");
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(excepcion, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #17
0
        public string GuardaArchivos(string solicitudId, IEnumerable <HttpPostedFileBase> files, int useremployeeid)
        {
            try
            {
                using (ASNContext context = new ASNContext())
                {
                    string fullPath = Request.MapPath("~/Evidencias/");
                    if (!System.IO.File.Exists(fullPath))
                    {
                        ObjectParameter resultado = new ObjectParameter("Estatus", typeof(int));
                        resultado.Value = 0;

                        Directory.CreateDirectory(fullPath);
                        foreach (var item in files)
                        {
                            if (item != null)
                            {
                                var nombreArchivo = DateTime.Now.ToString("yyyyMMddHHmmss") + "_" + item.FileName;
                                item.SaveAs(fullPath + Path.GetFileName(nombreArchivo));

                                context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                                context.CatSolicitudesArchivosSi(int.Parse(solicitudId), nombreArchivo, useremployeeid, resultado);
                            }
                        }
                    }

                    return("Ok");
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("error", "Ocurrió un error al procesar la solicitud.");
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return("Error");
            }
        }
コード例 #18
0
ファイル: InicioController.cs プロジェクト: jas12345/ASN
        // GET: Inicio
        public ActionResult Index()
        {
            try
            {
                if (User.Identity.IsAuthenticated)
                {
                    MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;

                    return(View(usuario));
                }
                else
                {
                    return(RedirectToAction("Login", "Home"));
                }
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(RedirectToAction("Login", "Home"));
            }
        }
コード例 #19
0
        public ActionResult GetPeriodosNominaCMB(int?PaisId)
        {
            MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;

            try
            {
                var lstCMB = new List <CatPeriodosNominaCMB_Result>();

                using (ASNContext ctx = new ASNContext())
                {
                    ctx.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    lstCMB = ctx.CatPeriodosNominaCMB(4, usuario.UserInfo.Ident.Value, PaisId).ToList();
                }

                return(Json(lstCMB, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                LogError log = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #20
0
        public ActionResult GetResponsabilidades([DataSourceRequest] DataSourceRequest request, int FolioSolicitud)
        {
            MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;

            int.TryParse(User.Identity.Name, out int idAdmin);

            try
            {
                using (ASNContext context = new ASNContext())
                {
                    context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    var lstSolicitudes  = context.CatResponsabilidadesSel(FolioSolicitud, idAdmin).ToList();
                    DataSourceResult ok = lstSolicitudes.ToDataSourceResult(request);
                    return(Json(ok));
                }
            }
            catch (Exception ex)
            {
                LogError log = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #21
0
        public JsonResult GetCiudadesCMB(int?country)
        {
            try
            {
                //var lstCMB = new List<CatCityTodosCMB_Result>();
                var lstCMB = new List <CatCityByCountryCMB_Result>();

                using (ASNContext ctx = new ASNContext())
                {
                    ctx.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    //lstCMB = ctx.CatCityTodosCMB().ToList();
                    lstCMB = ctx.CatCityByCountryCMB(country).ToList();
                }

                return(Json(lstCMB, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #22
0
        public JsonResult GridEmpleadosAutorizantesSel([DataSourceRequest] DataSourceRequest request, string SolicitudId)
        {
            try
            {
                var listEmpleadosAutorizante = new List <CatSolicitudEmpleadosAutorizantesSel_Result>();
                using (ASNContext context = new ASNContext())
                {
                    SolicitudId = (string.IsNullOrEmpty(SolicitudId) && !string.IsNullOrEmpty(ViewBag.SolicitudBaseId) ? ViewBag.SolicitudBaseId : SolicitudId);
                    int i = 0;
                    context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    listEmpleadosAutorizante        = context.CatSolicitudEmpleadosAutorizantesSel(((Int32.TryParse(SolicitudId, out i) ? i : (int?)null))).ToList();

                    DataSourceResult ok = listEmpleadosAutorizante.ToDataSourceResult(request);
                    return(Json(ok));
                }
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #23
0
ファイル: NominaController.cs プロジェクト: jas12345/ASN
        // GET: MesesNomina
        public ActionResult MesesNomina()
        {
            try
            {
                //if (ctx.Request.IsAuthenticated)
                //{
                //    return redirecciona(User.Identity.Name);
                //}
                //return this.View();

                if (User.Identity.IsAuthenticated)
                {
                    using (ASNContext context = new ASNContext())
                    {
                        context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                        //ViewData["TipoPeriodicidad"] = context.CatPeriodicidadNominaCMB().ToList();
                        //ViewData["ConsecutivosPeriodo"] = context.CatConsecutivoPeriodicidadCMB("All").ToList();
                        ViewData["AniosCMB"] = context.CatAniosNominaCMB(0).ToList();
                        ViewData["MesCMB"]   = context.CatMesesCMB(0).ToList();
                    }

                    return(View());
                }
                else
                {
                    return(RedirectToAction("Login", "Home"));
                }
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(RedirectToAction("Login", "Home"));
            }
        }
コード例 #24
0
        public JsonResult GetConceptosxEmpleadoxSolicitanteCMB(int ident, int Ident_Solicitante, int PeriodoNominaId)
        {
            try
            {
                // Se asigna el Solicitante de la solicitud, no el usuario actual de la aplicación
                //int.TryParse(User.Identity.Name, out int ident_Solicitante);

                var listPeriodoNomina = new List <CatConceptosxEmpleadoxSolicitanteCMB_Result>();
                using (ASNContext context = new ASNContext())
                {
                    context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    listPeriodoNomina = context.CatConceptosxEmpleadoxSolicitanteCMB(ident, Ident_Solicitante, PeriodoNominaId).OrderBy(x => x.Valor).ToList();
                }

                return(Json(listPeriodoNomina, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #25
0
        public ActionResult Async_CreaPerfilEmpleadosMasiva(IEnumerable <HttpPostedFileBase> filesPE)
        {
            try
            {
                //int solicitudIdActual = -1;
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                int.TryParse(User.Identity.Name, out int userEmployeeId);

                string Perfil    = string.Empty;
                string Pais      = string.Empty;
                string Ciudad    = string.Empty;
                string Cliente   = string.Empty;
                string Site      = string.Empty;
                string Programa  = string.Empty;
                string Contrato  = string.Empty;
                string Concepto  = string.Empty;
                string TpoAcceso = string.Empty;

                ObjectParameter resultado   = new ObjectParameter("Estatus", typeof(int));
                ObjectParameter solicitudId = new ObjectParameter("FolioSolicitudOut", typeof(int));
                resultado.Value = -1;

                var lista        = new List <CargaMasivaPerfilEmpleado>();
                var listaRetorno = new List <CargaMasivaRetorno>();
                listaRetorno.Add(new CargaMasivaRetorno()
                {
                    NombrePerfil = "Nombre del Perfil", Campo = "Campo", Texto = "Error"
                });
                //byte[] result= null;

                if (filesPE != null)
                {
                    foreach (var file in filesPE)
                    {
                        if (file != null)
                        {
                            var fileName = Path.GetFileName(file.FileName);
                            var ext      = Path.GetExtension(fileName);

                            if (ext.ToUpper() == ".CSV")
                            {
                                var postedFile = file;

                                if (postedFile.ContentLength > 0)
                                {
                                    using (var csvReader = new StreamReader(postedFile.InputStream, Encoding.Default, true))
                                    {
                                        using (var csv = new CsvReader(csvReader))
                                        {
                                            while (csv.Read())
                                            {
                                                var objeton = new CargaMasivaPerfilEmpleado();

                                                if (csv.TryGetField(0, out Perfil) && csv.TryGetField(1, out Pais) && csv.TryGetField(2, out Ciudad) && csv.TryGetField(3, out Cliente) &&
                                                    csv.TryGetField(4, out Site) && csv.TryGetField(5, out Programa) && csv.TryGetField(6, out Contrato) && csv.TryGetField(7, out Concepto) && csv.TryGetField(8, out TpoAcceso))
                                                {
                                                    objeton.perfil         = Perfil;
                                                    objeton.pais           = Pais;
                                                    objeton.ciudad         = Ciudad;
                                                    objeton.cliente        = Cliente;
                                                    objeton.site           = Site;
                                                    objeton.programa       = Programa;
                                                    objeton.contrato       = Contrato;
                                                    objeton.concepto       = Concepto; //convertTOUTF8(Concepto);
                                                    objeton.tpoAcceso      = TpoAcceso;
                                                    objeton.userEmployeeId = userEmployeeId;
                                                    //objeton.catEmployeeId = 0;//ccmsId;

                                                    if (Perfil != "Perfil" && Perfil != "")
                                                    {
                                                        lista.Add(objeton);
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }


                                using (ASNContext context = new ASNContext())
                                {
                                    foreach (var obj in lista)
                                    {
                                        var parameters = new List <System.Data.SqlClient.SqlParameter>();
                                        var p1         = new System.Data.SqlClient.SqlParameter("@P1", obj.perfil);
                                        var p2         = new System.Data.SqlClient.SqlParameter("@P2", obj.pais);
                                        var p3         = new System.Data.SqlClient.SqlParameter("@P3", obj.ciudad);
                                        var p4         = new System.Data.SqlClient.SqlParameter("@P4", obj.cliente);
                                        var p5         = new System.Data.SqlClient.SqlParameter("@P5", obj.site);
                                        var p6         = new System.Data.SqlClient.SqlParameter("@P6", obj.programa);
                                        var p7         = new System.Data.SqlClient.SqlParameter("@P7", obj.contrato);
                                        var p8         = new System.Data.SqlClient.SqlParameter("@P8", obj.concepto);
                                        var p9         = new System.Data.SqlClient.SqlParameter("@P9", obj.tpoAcceso);
                                        var p10        = new System.Data.SqlClient.SqlParameter("@P10", obj.catEmployeeId)
                                        {
                                            DbType = System.Data.DbType.Int32
                                        };
                                        var p11 = new System.Data.SqlClient.SqlParameter("@P11", "")
                                        {
                                            DbType = System.Data.DbType.Int32, Direction = System.Data.ParameterDirection.Output
                                        };

                                        parameters.Add(p1);
                                        parameters.Add(p2);
                                        parameters.Add(p3);
                                        parameters.Add(p4);
                                        parameters.Add(p5);
                                        parameters.Add(p6);
                                        parameters.Add(p7);
                                        parameters.Add(p8);
                                        parameters.Add(p9);
                                        parameters.Add(p10);
                                        //parameters.Add(p11);


                                        var retorno = context.Database.SqlQuery <CargaMasivaRetorno>("EXEC app620.CatPerfilEmpleadosMasivo @P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8, @P9, @P10", parameters.ToArray()).ToList <CargaMasivaRetorno>();
                                        if (retorno.Count > 0)
                                        {
                                            listaRetorno.Add(retorno[0]);
                                        }
                                    }
                                }

                                return(Json(listaRetorno, JsonRequestBehavior.AllowGet));
                            }
                        }
                    }
                }

                return(null);
                //return Json(new { res = 1 }, JsonRequestBehavior.AllowGet);
            }
            catch (Exception e)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(e, usuario.UserInfo.Ident.Value);

                return(Json(new { res = -1 }, JsonRequestBehavior.AllowGet));
            }



            // Return an empty string to signify success
            //return Content("");
        }
コード例 #26
0
        public ActionResult CopyPerfilEmpleados([DataSourceRequest] DataSourceRequest request, Nullable <int> Perfil_Ident, string NombrePerfilEmpleados)
        {
            try
            {
                int    res         = 0;
                var    result      = new object();
                int    ccmsidAdmin = 0;
                string mensaje     = "";

                using (ASNContext context = new ASNContext())
                {
                    context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);

                    ObjectParameter resultado = new ObjectParameter("Estatus", typeof(int));
                    resultado.Value = 0;

                    int.TryParse(User.Identity.Name, out ccmsidAdmin);

                    context.CatPerfilEmpleadosCopy(
                        Perfil_Ident,
                        NombrePerfilEmpleados,

                        ccmsidAdmin,
                        resultado
                        );

                    int.TryParse(resultado.Value.ToString(), out res);

                    switch (res)
                    {
                    case -1:
                        mensaje = "Ya existe un Perfil de Empleados copiado con la misma descripción.";
                        break;
                        //case -2:
                        //    mensaje = "El empleado no existe en CCMS o no está activo.";
                        //    break;
                        //case -3:
                        //    mensaje = "El puesto del empleado no es válido para este perfil.";
                        //    break;
                        //case -4:
                        //    mensaje = "El nivel ya está asignado a otro empleado";
                        //    break;
                    }

                    //return Json(profiles.ToDataSourceResult(request, ModelState));
                    //return Json(ModelState);

                    return(Json(mensaje));
                }
            }
            catch (Exception ex)
            {
                string           mensaje = "Ocurrió un error al procesar la solicitud.";
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(mensaje));
            }
            //        if (res == -1)
            //        {
            //            resultadoAccion = "Ya existe un Perfil de Empleados copiado con la misma descripción.";
            //            Error = new { Errors = resultadoAccion };
            //            ModelState.AddModelError("error", "Ya existe un Perfil de Empleados copiado con la misma descripción.");
            //        }

            //    result = new { Id = Perfil_Ident, responseError = Error, status = res.ToString() };

            //    }
            //    return Json(result, JsonRequestBehavior.AllowGet);
            //}
            //catch (Exception ex)
            //{
            //    ModelState.AddModelError("error", "Ocurrió un error al procesar la solicitud.");
            //    MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
            //    LogError log = new LogError();
            //    log.RecordError(ex, usuario.UserInfo.Ident.Value);
            //    var resultadoAccion = "Ocurrió un error al procesar la solicitud.";
            //    return Json(new { Id = 0, responseError = new { Errors = resultadoAccion }, status = "-1" }, JsonRequestBehavior.AllowGet);
            //}
        }
コード例 #27
0
        public ActionResult UpdatePerfilEmpleados([DataSourceRequest] DataSourceRequest request, [Bind(Prefix = "models")] IEnumerable <CatPerfilEmpleadosViewModel> profiles, string country_Ident, string client_Ident, string contract_Type_Ident, string city_Ident)
        {
            if (!User.Identity.IsAuthenticated)
            {
                return(RedirectToAction("Login", "Home"));
            }
            if (string.IsNullOrEmpty(contract_Type_Ident))
            {
                ModelState.AddModelError("error", "El contrato esta en blanco, favor de revisar la información");
                return(Json(profiles.ToDataSourceResult(request, ModelState)));
            }


            try
            {
                using (ASNContext context = new ASNContext())
                {
                    context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    int             ccmsidAdmin = 0;
                    int             res         = 0;
                    ObjectParameter resultado   = new ObjectParameter("Estatus", typeof(int));
                    resultado.Value = 0;

                    int.TryParse(User.Identity.Name, out ccmsidAdmin);

                    foreach (var obj in profiles)
                    {
                        obj.Client_Ident = client_Ident;
                        //obj.ConceptoId = conceptoId;
                        obj.Country_Ident       = country_Ident;
                        obj.Contract_Type_Ident = contract_Type_Ident;

                        if (obj.Perfil_Ident < 0)
                        {
                            context.CatPerfilEmpleados_AccesoSi(
                                obj.NombrePerfilEmpleados,
                                (string.IsNullOrEmpty(obj.Country_Ident) ? -1 : int.Parse(obj.Country_Ident)),
                                obj.City_Ident,
                                obj.Location_Ident,
                                obj.Client_Ident,
                                (string.IsNullOrEmpty(obj.Program_Ident) ? -1 : int.Parse(obj.Program_Ident)),
                                obj.Contract_Type_Ident,
                                obj.ConceptoId,
                                obj.TipoAccesoId,
                                ccmsidAdmin,
                                resultado
                                );
                        }
                        else
                        {
                            context.CatPerfilEmpleadosSu(
                                obj.Perfil_Ident,
                                obj.NombrePerfilEmpleados,

                                (string.IsNullOrEmpty(obj.Country_Ident) ? -1 : int.Parse(obj.Country_Ident)),
                                obj.City_Ident,
                                obj.Location_Ident,
                                obj.Client_Ident,
                                (string.IsNullOrEmpty(obj.Program_Ident) ? -1 : int.Parse(obj.Program_Ident)),
                                obj.Contract_Type_Ident,
                                obj.ConceptoId,
                                obj.TipoAccesoId,
                                ccmsidAdmin,
                                obj.Active,
                                resultado
                                );
                        }
                    }

                    int.TryParse(resultado.Value.ToString(), out res);

                    if (res == -1)
                    {
                        ModelState.AddModelError("error", "Ya existe un Perfil de Empleados con la misma descripción.");
                    }

                    if (res == -2)
                    {
                        ModelState.AddModelError("error", "Ya existe un Perfil de Empleados con la misma clave.");
                    }

                    if (res == -3)
                    {
                        ModelState.AddModelError("error", "Ya existe un Perfil de Empleados con la misma clave y descripción.");
                    }

                    return(Json(profiles.ToDataSourceResult(request, ModelState)));
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("error", "Ocurrió un error al procesar la solicitud.");
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(profiles.ToDataSourceResult(request, ModelState)));
            }
        }
コード例 #28
0
        public ActionResult GetPerfilEmpleados([DataSourceRequest] DataSourceRequest request, string perfil, int?CCMSId)
        {
            try
            {
                if ((!string.IsNullOrEmpty(perfil)) || (CCMSId > 0))
                {
                    using (ASNContext context = new ASNContext())
                    {
                        List <CatPerfilEmpleadosViewModel>  listado               = new List <CatPerfilEmpleadosViewModel>();
                        List <CatPerfilEmpleadosViewModel>  listadoTemp           = new List <CatPerfilEmpleadosViewModel>();
                        List <CatPerfilEmpleadosSel_Result> list2                 = new List <CatPerfilEmpleadosSel_Result>();
                        List <CatPerfilEmpleadosSel_ByEmpleadoNivel_Result> list3 = new List <CatPerfilEmpleadosSel_ByEmpleadoNivel_Result>();

                        if (!string.IsNullOrEmpty(perfil))
                        {
                            context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                            list2 = context.CatPerfilEmpleadosSel(Convert.ToInt32(perfil)).ToList();
                            foreach (var item in list2)
                            {
                                CatPerfilEmpleadosViewModel element = new CatPerfilEmpleadosViewModel()
                                {
                                    Perfil_Ident          = item.Perfil_Ident,
                                    Country_Ident         = (item.Country_Ident != null ? item.Country_Ident.ToString() : "-1"),
                                    NombrePerfilEmpleados = item.NombrePerfilEmpleados,
                                    Country_Full_Name     = item.Country_Full_Name,
                                    City_Ident            = item.City_Ident.ToString(),
                                    City_Name             = item.City_Name,
                                    Location_Ident        = (item.Location_Ident != null ? item.Location_Ident.ToString() : "-1"),
                                    Location_Name         = item.Location_Name,
                                    Client_Ident          = item.Client_Ident,
                                    Client_Name           = item.Client_Name,
                                    Program_Ident         = (item.Program_Ident != null ? item.Program_Ident.ToString() : "-1"),
                                    Program_Name          = item.Program_Name,
                                    Contract_Type_Ident   = (item.Contract_Type_Ident != null ? item.Contract_Type_Ident.ToString() : "-1"),
                                    Contract_Type         = item.Contract_Type,
                                    ConceptoId            = (item.ConceptoId != null ? item.ConceptoId.ToString() : "-1"),
                                    ConceptoNombre        = item.ConceptoNombre,
                                    TipoAccesoId          = item.TipoAccesoId,
                                    TipoAcceso            = item.TipoAcceso,
                                    Active = item.Active
                                };


                                listadoTemp.Add(element);
                            }

                            var conta = (from x in listadoTemp where x.TipoAccesoId == 1 select x).Count();
                            if (conta == 0)
                            {
                                listado.Add(new CatPerfilEmpleadosViewModel()
                                {
                                    Perfil_Ident = -1, NombrePerfilEmpleados = "SOL_1749278", TipoAccesoId = 1
                                });
                            }
                            else
                            {
                                listado.AddRange(from x in listadoTemp where x.TipoAccesoId == 1 select x);
                            }

                            conta = (from x in listadoTemp where x.TipoAccesoId == 2 select x).Count();
                            if (conta == 0)
                            {
                                listado.Add(new CatPerfilEmpleadosViewModel()
                                {
                                    Perfil_Ident = -2, NombrePerfilEmpleados = "AU1_1749278", TipoAccesoId = 2
                                });
                                listado.Add(new CatPerfilEmpleadosViewModel()
                                {
                                    Perfil_Ident = -2, NombrePerfilEmpleados = "AU2_1749278", TipoAccesoId = 2
                                });
                                listado.Add(new CatPerfilEmpleadosViewModel()
                                {
                                    Perfil_Ident = -3, NombrePerfilEmpleados = "AU3_1749278", TipoAccesoId = 2
                                });
                            }
                            else
                            {
                                listado.AddRange(from x in listadoTemp where x.TipoAccesoId == 2 select x);
                            }

                            conta = (from x in listado where x.TipoAccesoId == 4 select x).Count();
                            if (conta == 0)
                            {
                                listado.Add(new CatPerfilEmpleadosViewModel()
                                {
                                    Perfil_Ident = -4, NombrePerfilEmpleados = "CON_1749278", TipoAccesoId = 4
                                });
                            }
                            else
                            {
                                listado.AddRange(from x in listadoTemp where x.TipoAccesoId == 4 select x);
                            }

                            conta = (from x in listado where x.TipoAccesoId == 3 select x).Count();
                            if (conta == 0)
                            {
                                listado.Add(new CatPerfilEmpleadosViewModel()
                                {
                                    Perfil_Ident = -5, NombrePerfilEmpleados = "RES_1749278", TipoAccesoId = 3
                                });
                            }
                            else
                            {
                                listado.AddRange(from x in listadoTemp where x.TipoAccesoId == 3 select x);
                            }

                            DataSourceResult ok = listado.ToDataSourceResult(request);
                            return(Json(ok));
                        }
                        else
                        {
                            context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                            list3 = context.CatPerfilEmpleadosSel_ByEmpleadoNivel(CCMSId).ToList();
                            foreach (var item in list3)
                            {
                                CatPerfilEmpleadosViewModel element = new CatPerfilEmpleadosViewModel()
                                {
                                    Perfil_Ident          = item.Perfil_Ident,
                                    Country_Ident         = (item.Country_Ident != null ? item.Country_Ident.ToString() : "-1"),
                                    NombrePerfilEmpleados = item.NombrePerfilEmpleados,
                                    Country_Full_Name     = item.Country_Full_Name,
                                    City_Ident            = item.City_Ident.ToString(),
                                    City_Name             = item.City_Name,
                                    Location_Ident        = (item.Location_Ident != null ? item.Location_Ident.ToString() : "-1"),
                                    Location_Name         = item.Location_Name,
                                    Client_Ident          = item.Client_Ident,
                                    Client_Name           = item.Client_Name,
                                    Program_Ident         = (item.Program_Ident != null ? item.Program_Ident.ToString() : "-1"),
                                    Program_Name          = item.Program_Name,
                                    Contract_Type_Ident   = (item.Contract_Type_Ident != null ? item.Contract_Type_Ident.ToString() : "-1"),
                                    Contract_Type         = item.Contract_Type,
                                    ConceptoId            = (item.ConceptoId != null ? item.ConceptoId.ToString() : "-1"),
                                    ConceptoNombre        = item.ConceptoNombre,
                                    TipoAccesoId          = item.TipoAccesoId ?? 0,
                                    TipoAcceso            = item.TipoAcceso,
                                    Active = item.Active ?? false,
                                    Nivel  = item.Nivel ?? 0
                                };
                                listadoTemp.Add(element);
                            }
                            int[] arr = { 1, 1, 1, 1, 1, 1 };
                            foreach (var item in listadoTemp)
                            {
                                if (item.TipoAccesoId == 1)
                                {
                                    arr[0] = 0;
                                }
                                if (item.TipoAccesoId == 2)
                                {
                                    if (item.Nivel == 1)
                                    {
                                        arr[1] = 0;
                                    }
                                    if (item.Nivel == 2)
                                    {
                                        arr[2] = 0;
                                    }
                                    if (item.Nivel == 3)
                                    {
                                        arr[3] = 0;
                                    }
                                }
                                if (item.TipoAccesoId == 4)
                                {
                                    arr[4] = 0;
                                }
                                if (item.TipoAccesoId == 3)
                                {
                                    arr[5] = 0;
                                }
                            }


                            if (arr[0] == 1)
                            {
                                listado.Add(new CatPerfilEmpleadosViewModel()
                                {
                                    Perfil_Ident = -1, NombrePerfilEmpleados = NomprePerfil("SOL", CCMSId), TipoAccesoId = 1
                                });
                            }
                            else
                            {
                                listado.AddRange(from x in listadoTemp where x.TipoAccesoId == 1 select x);
                            }
                            if (arr[1] == 1)
                            {
                                listado.Add(new CatPerfilEmpleadosViewModel()
                                {
                                    Perfil_Ident = -2, NombrePerfilEmpleados = NomprePerfil("AU1", CCMSId), TipoAccesoId = 2
                                });
                            }
                            else
                            {
                                listado.AddRange(from x in listadoTemp where x.TipoAccesoId == 2 && x.Nivel == 1 select x);
                            }
                            if (arr[2] == 1)
                            {
                                listado.Add(new CatPerfilEmpleadosViewModel()
                                {
                                    Perfil_Ident = -3, NombrePerfilEmpleados = NomprePerfil("AU2", CCMSId), TipoAccesoId = 2
                                });
                            }
                            else
                            {
                                listado.AddRange(from x in listadoTemp where x.TipoAccesoId == 2 && x.Nivel == 2 select x);
                            }
                            if (arr[3] == 1)
                            {
                                listado.Add(new CatPerfilEmpleadosViewModel()
                                {
                                    Perfil_Ident = -4, NombrePerfilEmpleados = NomprePerfil("AU3", CCMSId), TipoAccesoId = 2
                                });
                            }
                            else
                            {
                                listado.AddRange(from x in listadoTemp where x.TipoAccesoId == 2 && x.Nivel == 3 select x);
                            }
                            if (arr[4] == 1)
                            {
                                listado.Add(new CatPerfilEmpleadosViewModel()
                                {
                                    Perfil_Ident = -5, NombrePerfilEmpleados = NomprePerfil("CON", CCMSId), TipoAccesoId = 4
                                });
                            }
                            else
                            {
                                listado.AddRange(from x in listadoTemp where x.TipoAccesoId == 4 select x);
                            }
                            if (arr[5] == 1)
                            {
                                listado.Add(new CatPerfilEmpleadosViewModel()
                                {
                                    Perfil_Ident = -6, NombrePerfilEmpleados = NomprePerfil("RES", CCMSId), TipoAccesoId = 3
                                });
                            }
                            else
                            {
                                listado.AddRange(from x in listadoTemp where x.TipoAccesoId == 3 select x);
                            }
                            DataSourceResult ok = listado.ToDataSourceResult(request);
                            return(Json(ok));
                        }
                    }
                }
                else
                {
                    return(Json(""));
                }
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                return(Json(""));
            }
        }
コード例 #29
0
 public ActionResult GetPerfilEmpleados([DataSourceRequest] DataSourceRequest request, string perfil, int?CCMSId)
 {
     try
     {
         if ((!string.IsNullOrEmpty(perfil)) || (CCMSId > 0))
         {
             using (ASNContext context = new ASNContext())
             {
                 List <CatPerfilEmpleadosViewModel>             listado = new List <CatPerfilEmpleadosViewModel>();
                 List <CatPerfilEmpleadosSel_Result>            list2   = new List <CatPerfilEmpleadosSel_Result>();
                 List <CatPerfilEmpleadosSel_ByEmpleado_Result> list3   = new List <CatPerfilEmpleadosSel_ByEmpleado_Result>();
                 if (!string.IsNullOrEmpty(perfil))
                 {
                     context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                     list2 = context.CatPerfilEmpleadosSel(Convert.ToInt32(perfil)).ToList();
                     foreach (var item in list2)
                     {
                         CatPerfilEmpleadosViewModel element = new CatPerfilEmpleadosViewModel()
                         {
                             Perfil_Ident          = item.Perfil_Ident,
                             Country_Ident         = (item.Country_Ident != null ? item.Country_Ident.ToString() : "-1"),
                             NombrePerfilEmpleados = item.NombrePerfilEmpleados,
                             Country_Full_Name     = item.Country_Full_Name,
                             City_Ident            = item.City_Ident.ToString(),
                             City_Name             = item.City_Name,
                             Location_Ident        = (item.Location_Ident != null ? item.Location_Ident.ToString() : "-1"),
                             Location_Name         = item.Location_Name,
                             Client_Ident          = item.Client_Ident,
                             Client_Name           = item.Client_Name,
                             Program_Ident         = (item.Program_Ident != null ? item.Program_Ident.ToString() : "-1"),
                             Program_Name          = item.Program_Name,
                             Contract_Type_Ident   = (item.Contract_Type_Ident != null ? item.Contract_Type_Ident.ToString() : "-1"),
                             Contract_Type         = item.Contract_Type,
                             ConceptoId            = (item.ConceptoId != null ? item.ConceptoId.ToString() : "-1"),
                             ConceptoNombre        = item.ConceptoNombre,
                             TipoAccesoId          = item.TipoAccesoId,
                             TipoAcceso            = item.TipoAcceso,
                             Active = item.Active
                         };
                         listado.Add(element);
                     }
                     DataSourceResult ok = listado.ToDataSourceResult(request);
                     return(Json(ok));
                 }
                 else
                 {
                     context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                     list3 = context.CatPerfilEmpleadosSel_ByEmpleado(CCMSId).ToList();
                     foreach (var item in list3)
                     {
                         CatPerfilEmpleadosViewModel element = new CatPerfilEmpleadosViewModel()
                         {
                             Perfil_Ident          = item.Perfil_Ident,
                             Country_Ident         = (item.Country_Ident != null ? item.Country_Ident.ToString() : "-1"),
                             NombrePerfilEmpleados = item.NombrePerfilEmpleados,
                             Country_Full_Name     = item.Country_Full_Name,
                             City_Ident            = item.City_Ident.ToString(),
                             City_Name             = item.City_Name,
                             Location_Ident        = (item.Location_Ident != null ? item.Location_Ident.ToString() : "-1"),
                             Location_Name         = item.Location_Name,
                             Client_Ident          = item.Client_Ident,
                             Client_Name           = item.Client_Name,
                             Program_Ident         = (item.Program_Ident != null ? item.Program_Ident.ToString() : "-1"),
                             Program_Name          = item.Program_Name,
                             Contract_Type_Ident   = (item.Contract_Type_Ident != null ? item.Contract_Type_Ident.ToString() : "-1"),
                             Contract_Type         = item.Contract_Type,
                             ConceptoId            = (item.ConceptoId != null ? item.ConceptoId.ToString() : "-1"),
                             ConceptoNombre        = item.ConceptoNombre,
                             TipoAccesoId          = item.TipoAccesoId,
                             TipoAcceso            = item.TipoAcceso,
                             Active = item.Active
                         };
                         listado.Add(element);
                     }
                     DataSourceResult ok = listado.ToDataSourceResult(request);
                     return(Json(ok));
                 }
             }
         }
         else
         {
             return(Json(""));
         }
     }
     catch (Exception ex)
     {
         MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
         LogError         log     = new LogError();
         log.RecordError(ex, usuario.UserInfo.Ident.Value);
         return(Json(""));
     }
 }
コード例 #30
0
        public JsonResult EnviarSolicitud([DataSourceRequest] DataSourceRequest request, string solicitud)
        {
            try
            {
                var lista  = new List <CargaMasivaRegistroViewModel>();
                int res    = 0;
                var result = new object();

                using (ASNContext context = new ASNContext())
                {
                    object Error = null;

                    context.Database.CommandTimeout = int.Parse(ConfigurationManager.AppSettings["TimeOutMinutes"]);
                    int ccmsidAdmin = 0;

                    ObjectParameter resultado = new ObjectParameter("Estatus", typeof(int));
                    resultado.Value = 1;

                    var resultadoValidacion = context.ValidaSolicitud(int.Parse(solicitud), resultado);

                    int.TryParse(resultado.Value.ToString(), out res);

                    if (res == 0)
                    {
                        int.TryParse(resultado.Value.ToString(), out res);

                        if (res == 0)
                        {
                            int.TryParse(User.Identity.Name, out ccmsidAdmin);
                            context.CatSolicitudesSu(int.Parse(solicitud), DateTime.Now, 0, 0, string.Empty, 0, string.Empty, string.Empty, 0, 0, string.Empty, 0, 0, string.Empty, resultado, ccmsidAdmin);

                            var resultadoAccion = "";
                            if (res == -1)
                            {
                                resultadoAccion = "Ocurrio un problema durante la actualización de la solicitud. Intente más tarde.";
                                Error           = new { Errors = resultadoAccion };
                            }
                            else
                            {
                                var listadoAutorizadores = context.CatSolicitudEmpleadosAutorizantesSel(int.Parse(solicitud)).ToList();
                                var correos = string.Empty;
                                foreach (var item in listadoAutorizadores)
                                {
                                    if (!string.IsNullOrEmpty(item.EmailManager))
                                    {
                                        correos += item.EmailManager + ";";
                                    }
                                }

                                correos = correos.Substring(0, correos.Length - 1);

                                MailHelper mail = new MailHelper();
                                mail.IsBodyHtml     = true;
                                mail.RecipientCCO   = correos;//emails.EmailTo; mail.RecipientCC = emails.EmailCC;
                                mail.Subject        = "Notificación de Nueva Solicitud";
                                mail.AttachmentFile = Server.MapPath("~/Content/images/logo.png");
                                mail.Body           = RenderPartialView.RenderPartialViewToString(this, "~\\Views\\Shared\\Mail\\NoticacionSolicitud.cshtml", null);
                                mail.Body           = mail.Body.Replace("#cuerpo#", "Existen solicitudes asignadas para su revisión. Ingrese a la sección de Administrador de solicitudes para darle seguimiento a la solicitud.");
                                mail.Send();
                            }
                        }
                    }

                    result = new { Id = solicitud, type = "create", responseError = Error, listaEmpleados = lista, status = res.ToString() };
                }

                return(Json(result, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                MyCustomIdentity usuario = (MyCustomIdentity)User.Identity;
                LogError         log     = new LogError();
                log.RecordError(ex, usuario.UserInfo.Ident.Value);
                var resultadoAccion = "Ocurrió un error al procesar la solicitud.";
                return(Json(new { Id = 0, type = "create", responseError = new { Errors = resultadoAccion }, status = "-1" }, JsonRequestBehavior.AllowGet));
            }
        }