Пример #1
0
        public ActionResult CargarHojaVida(int LinkId, HttpPostedFileBase File)
        {
            if (File != null)
            {
                var folder   = "~/Content/HojasVida";
                var file     = string.Format("{0}_{1}_{2}", 1, LinkId, File.FileName);
                var response = FilesHelper.UploadPhoto(File, folder, file);
                if (response)
                {
                    var pic = string.Format("{0}/{1}", folder, file);

                    //Elimino la actual HV
                    var hoja = db.HojaVidas.Where(h => h.RolId == 2 && h.UserId == LinkId).FirstOrDefault();
                    if (hoja != null)
                    {
                        var resp = FilesHelper.DeleteDocument(hoja.Path);
                        db.HojaVidas.Remove(hoja);
                        db.SaveChanges();
                    }
                    var HV = new HojaVida
                    {
                        RolId  = 2,
                        UserId = LinkId,
                        Path   = pic,
                    };
                    db.HojaVidas.Add(HV);
                    db.SaveChanges();
                }
            }

            return(RedirectToAction("Index"));
        }
Пример #2
0
        public ActionResult DeleteConfirmed(int id)
        {
            var user = db.Users.Find(id);

            db.Users.Remove(user);
            try
            {
                var response = FilesHelper.DeleteDocument(user.Photo);
                db.SaveChanges();
                UsersHelper.DeleteUser(user.UserName);
                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                if (ex.InnerException != null &&
                    ex.InnerException.InnerException != null &&
                    ex.InnerException.InnerException.Message.Contains("REFERENCE"))
                {
                    ModelState.AddModelError(string.Empty, "El registro no se puede borrar porque tiene registros relacionados");
                }
                else
                {
                    ModelState.AddModelError(string.Empty, ex.ToString());
                }
            }
            ViewBag.CountryId = new SelectList(
                CombosHelper.GetCountries(),
                "CountryId",
                "Name",
                user.CountryId);

            ViewBag.CityId = new SelectList(
                CombosHelper.GetCities(),
                "CityId",
                "Name",
                user.CityId);

            ViewBag.CompanyId = new SelectList(
                CombosHelper.GetCompanies(),
                "CompanyId",
                "Name",
                user.CompanyId);

            ViewBag.DepartmentId = new SelectList(
                CombosHelper.GetDepartments(),
                "DepartmentId",
                "Name",
                user.DepartmentId);
            return(View(user));
        }
Пример #3
0
        public ActionResult DeleteConfirmed(int id)
        {
            var link = db.Links.Find(id);

            using (var transaction = db.Database.BeginTransaction())
            {
                try
                {
                    var response = FilesHelper.DeleteDocument(link.Photo);
                    var Voter    = db.Voters.Where(V => V.Document == link.Document).FirstOrDefault();
                    if (Voter != null)
                    {
                        db.Voters.Remove(Voter);
                    }
                    var Refer = db.Refers.Where(r => r.ReferType == 2 && r.UserId == link.LinkId).FirstOrDefault();
                    if (Refer != null)
                    {
                        var coordinators = db.Coordinators.Where(c => c.ReferId == Refer.ReferId).ToList();
                        foreach (var coor in coordinators)
                        {
                            db.Coordinators.Remove(coor);
                        }

                        var leaders = db.Leaders.Where(l => l.ReferId == Refer.ReferId).ToList();
                        foreach (var leader in leaders)
                        {
                            db.Leaders.Remove(leader);
                        }

                        var voters = db.Voters.Where(v => v.ReferId == Refer.ReferId).ToList();
                        foreach (var voter in voters)
                        {
                            db.Voters.Remove(voter);
                        }

                        db.Refers.Remove(Refer);
                        db.SaveChanges();
                    }

                    //Elimino todo Coordinador y Lider Asociado a este enlace

                    //Borro cualquier anotacion que tenga en la agenda
                    var dates = db.Dates.Where(d => d.ProfessionalId == link.Document).ToList();
                    foreach (var item in dates)
                    {
                        db.Dates.Remove(item);
                    }

                    var dateItems = db.TimesDates.Where(di => di.ProfessionalId == link.Document).ToList();
                    foreach (var it in dateItems)
                    {
                        db.TimesDates.Remove(it);
                    }


                    var HV = db.HojaVidas.Where(h => h.RolId == 2 && h.UserId == link.LinkId).FirstOrDefault();
                    if (HV != null)
                    {
                        db.HojaVidas.Remove(HV);
                    }
                    db.Links.Remove(link);
                    db.SaveChanges();
                    transaction.Commit();
                    return(RedirectToAction("Index"));
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    if (ex.InnerException != null &&
                        ex.InnerException.InnerException != null &&
                        ex.InnerException.InnerException.Message.Contains("REFERENCE"))
                    {
                        ModelState.AddModelError(string.Empty, "El registro no se puede borrar porque tiene registros relacionados");
                    }
                    else
                    {
                        ModelState.AddModelError(string.Empty, ex.ToString());
                    }
                }
            }
            ViewBag.CountryId = new SelectList(
                CombosHelper.GetCountries(),
                "CountryId",
                "Name",
                link.CountryId);

            ViewBag.CityId = new SelectList(
                CombosHelper.GetCities(),
                "CityId",
                "Name",
                link.CityId);

            ViewBag.CompanyId = new SelectList(
                CombosHelper.GetCompanies(),
                "CompanyId",
                "Name",
                link.CompanyId);

            ViewBag.DepartmentId = new SelectList(
                CombosHelper.GetDepartments(),
                "DepartmentId",
                "Name",
                link.DepartmentId);

            ViewBag.BossId = new SelectList(
                CombosHelper.GetBosses(link.CompanyId),
                "BossId",
                "FullName",
                link.BossId);

            ViewBag.CommuneId = new SelectList(
                CombosHelper.GetCommunes(),
                "CommuneId",
                "Name",
                link.CommuneId);

            ViewBag.WorkPlaceId = new SelectList(
                CombosHelper.GetWorkPlaces(),
                "WorkPlaceId",
                "Name",
                link.WorkPlaceId);

            ViewBag.VotingPlaceId = new SelectList(
                CombosHelper.GetVotingPlaces(),
                "VotingPlaceId",
                "Name",
                link.VotingPlaceId);

            return(View(link));
        }
Пример #4
0
        public ActionResult CargarHojaVida(int VoterId, HttpPostedFileBase File)
        {
            int roluserId = 0;

            if (File != null)
            {
                var folder   = "~/Content/HojasVida";
                var file     = string.Format("{0}_{1}_{2}", 1, VoterId, File.FileName);
                var response = FilesHelper.UploadPhoto(File, folder, file);
                if (response)
                {
                    var pic = string.Format("{0}/{1}", folder, file);

                    //Elimino la actual HV

                    var voter = db.Voters.Find(VoterId);
                    if (voter.userId == 1)
                    {
                        var boss = db.Bosses.Where(b => b.Document == voter.Document).FirstOrDefault();
                        if (boss != null)
                        {
                            var hoja = db.HojaVidas.Where(h => h.RolId == 1 && h.UserId == boss.BossId).FirstOrDefault();
                            if (hoja != null)
                            {
                                var resp = FilesHelper.DeleteDocument(hoja.Path);
                                db.HojaVidas.Remove(hoja);
                                db.SaveChanges();
                            }
                            roluserId = boss.BossId;
                        }
                    }
                    if (voter.userId == 2)
                    {
                        var link = db.Links.Where(b => b.Document == voter.Document).FirstOrDefault();
                        if (link != null)
                        {
                            var hoja = db.HojaVidas.Where(h => h.RolId == 2 && h.UserId == link.LinkId).FirstOrDefault();
                            if (hoja != null)
                            {
                                var resp = FilesHelper.DeleteDocument(hoja.Path);
                                db.HojaVidas.Remove(hoja);
                                db.SaveChanges();
                            }
                            roluserId = link.LinkId;
                        }
                    }
                    if (voter.userId == 3)
                    {
                        var coor = db.Coordinators.Where(b => b.Document == voter.Document).FirstOrDefault();
                        if (coor != null)
                        {
                            var hoja = db.HojaVidas.Where(h => h.RolId == 3 && h.UserId == coor.CoordinatorId).FirstOrDefault();
                            if (hoja != null)
                            {
                                var resp = FilesHelper.DeleteDocument(hoja.Path);
                                db.HojaVidas.Remove(hoja);
                                db.SaveChanges();
                            }
                            roluserId = coor.CoordinatorId;
                        }
                    }
                    if (voter.userId == 4)
                    {
                        var leader = db.Leaders.Where(b => b.Document == voter.Document).FirstOrDefault();
                        if (leader != null)
                        {
                            var hoja = db.HojaVidas.Where(h => h.RolId == 4 && h.UserId == leader.LeaderId).FirstOrDefault();
                            if (hoja != null)
                            {
                                var resp = FilesHelper.DeleteDocument(hoja.Path);
                                db.HojaVidas.Remove(hoja);
                                db.SaveChanges();
                            }
                            roluserId = leader.LeaderId;
                        }
                    }
                    if (voter.userId == 5)
                    {
                        var hoja = db.HojaVidas.Where(h => h.RolId == 5 && h.UserId == voter.VoterId).FirstOrDefault();
                        if (hoja != null)
                        {
                            var resp = FilesHelper.DeleteDocument(hoja.Path);
                            db.HojaVidas.Remove(hoja);
                            db.SaveChanges();
                        }
                        roluserId = voter.VoterId;
                    }

                    var HV = new HojaVida
                    {
                        RolId  = voter.userId,
                        UserId = roluserId,
                        Path   = pic,
                    };
                    db.HojaVidas.Add(HV);
                    db.SaveChanges();
                }
            }

            return(RedirectToAction("Index"));
        }