public JsonResult GetApprovers(int id, [FromServices] IRepository <FormatApprover> formatApproversRepository, [FromServices] IOrganigramaModelFactory organigramaModelFactory) { var organigrama = organigramaModelFactory.GetAllData().Employess; var row = formatApproversRepository.GetElement(id); var rows = formatApproversRepository.SearhItemsFor(u => u.Area.Equals(row.Area) && u.Centro.Equals(row.Centro) && u.Departamento.Equals(row.Departamento)); FormatApproverModel model = new FormatApproverModel(); if (rows.Any()) { var emps = (from apv in rows join org in organigrama on apv.RowGuid.ToString().ToLower() equals org.RowId.ToLower() select new FormatApproverItem() { Id = apv.Id, Area = apv.Area, Centro = apv.Centro, Puesto = org.JobTitle, RowGuid = apv.RowGuid.ToString(), Approver = $"{org.Name}", Order = apv.Orden }).ToList(); model.Approvers = emps; } return(Json(new { area = row.Area, centro = row.Centro, depto = row.Departamento, collection = model.Approvers })); }
public IActionResult ApproverIndex( [FromServices] IRepository <FormatApprover> formatApproversRepository, [FromServices] IOrganigramaModelFactory organigramaModelFactory) { FormatApproverModel model = new FormatApproverModel(); var approvers = formatApproversRepository.GetAll(); var organigrama = organigramaModelFactory.GetAllData().Employess; var emps = (from apv in approvers join org in organigrama on apv.RowGuid.ToString().ToLower() equals org.RowId.ToLower() select new FormatApproverItem() { Id = apv.Id, Area = apv.Area, Centro = apv.Centro, Puesto = org.JobTitle, RowGuid = apv.RowGuid.ToString(), Approver = $"{org.Name}", Order = apv.Orden }).ToList(); model.Approvers = emps; List <SelectListItem> areas = new List <SelectListItem>() { new SelectListItem() { Text = "Seleccione una opción", Value = "0" } }; areas.AddRange(organigramaModelFactory.GetAreas().Select(o => new SelectListItem() { Text = o.Descripcion, Value = o.Id.ToString() }).ToList()); ViewBag.Areas = areas; return(View(model)); }