public ActionResult Create()
        {
            var OMensaje = new Mensaje();

            try
            {
                using (RELOJBIOEntities wdb = new RELOJBIOEntities())
                {
                    var ListEmpresa = wdb.Company.ToList();
                    var ListTur     = wdb.Schedule.ToList();

                    var OVMDepartamentos = new DepartamentosViewModel
                    {
                        ListaEmpresa = new SelectList(ListEmpresa, "CompanyID", "Name"),
                        ListaTurno   = new SelectList(ListTur, "ScheduleID", "Name"),
                    };

                    return(View(OVMDepartamentos));
                }
            }
            catch (Exception e)
            {
                OMensaje.Tipo      = "Error";
                OMensaje.Msg       = e.ToString();
                Session["Mensaje"] = OMensaje;
                return(RedirectToAction("Index", "Departamentos"));
            }
        }
        public ActionResult Create(DepartamentosViewModel Omodelo)
        {
            var OMensaje = new Mensaje();

            try
            {
                using (RELOJBIOEntities wdb = new RELOJBIOEntities())
                {
                    var OUltimoDepartaCode = wdb.Department.OrderByDescending(a => a.DepartmentID).FirstOrDefault();
                    int wCode = (OUltimoDepartaCode.Code) + 1;


                    var ODepartamentoNuevo = new Department
                    {
                        Code         = wCode,
                        DepartmentID = wCode,
                        Name         = Omodelo.Name,
                        CompanyID    = Omodelo.CompanyID,
                        ScheduleID   = Omodelo.ScheduleID
                    };
                    wdb.Department.Add(ODepartamentoNuevo);
                    wdb.SaveChanges();



                    OMensaje.Tipo      = "Exito";
                    OMensaje.Msg       = "Departamento Creado con exito";
                    Session["Mensaje"] = OMensaje;

                    return(RedirectToAction("Index", "Departamentos"));
                }
            }
            catch (DbEntityValidationException e)
            {
                var errorMessages    = e.EntityValidationErrors.SelectMany(x => x.ValidationErrors).Select(x => x.ErrorMessage);
                var fullErrorMessage = string.Join("; ", errorMessages);

                var exceptionMessage = string.Concat(e.Message, " El error de validacion es: ", fullErrorMessage);

                OMensaje.Tipo      = "Error";
                OMensaje.Msg       = exceptionMessage;
                Session["Mensaje"] = OMensaje;

                using (RELOJBIOEntities wdb = new RELOJBIOEntities())
                {
                    var ListEmpresa = wdb.Company.ToList();
                    var ListTur     = wdb.Schedule.ToList();


                    Omodelo.ListaEmpresa = new SelectList(ListEmpresa, "CompanyID", "Name");
                    Omodelo.ListaTurno   = new SelectList(ListTur, "ScheduleID", "Name");


                    return(View(Omodelo));
                }
            }
        }
        public ActionResult Edit(DepartamentosViewModel Omodelo)
        {
            var OMensaje = new Mensaje();

            try
            {
                using (RELOJBIOEntities wdb = new RELOJBIOEntities())
                {
                    var OEMDepata = wdb.Department.Where(a => a.DepartmentID == Omodelo.DepartmentID).FirstOrDefault();

                    OEMDepata.Name       = Omodelo.Name;
                    OEMDepata.CompanyID  = Omodelo.CompanyID;
                    OEMDepata.ScheduleID = Omodelo.ScheduleID;


                    wdb.Entry(OEMDepata).State = EntityState.Modified;
                    wdb.SaveChanges();



                    OMensaje.Tipo      = "Exito";
                    OMensaje.Msg       = "Departamento Fue Modificado con exito";
                    Session["Mensaje"] = OMensaje;

                    return(RedirectToAction("Index", "Departamentos"));
                }
            }
            catch (DbEntityValidationException e)
            {
                var errorMessages    = e.EntityValidationErrors.SelectMany(x => x.ValidationErrors).Select(x => x.ErrorMessage);
                var fullErrorMessage = string.Join("; ", errorMessages);

                var exceptionMessage = string.Concat(e.Message, " El error de validacion es: ", fullErrorMessage);

                OMensaje.Tipo      = "Error";
                OMensaje.Msg       = exceptionMessage;
                Session["Mensaje"] = OMensaje;

                using (RELOJBIOEntities wdb = new RELOJBIOEntities())
                {
                    var ListEmpresa = wdb.Company.ToList();
                    var ListTur     = wdb.Schedule.ToList();


                    Omodelo.ListaEmpresa = new SelectList(ListEmpresa, "CompanyID", "Name");
                    Omodelo.ListaTurno   = new SelectList(ListTur, "ScheduleID", "Name");


                    return(View(Omodelo));
                }
            }
        }
Exemplo n.º 4
0
        // POST: api/Departamentos
        public ResponseResult Post([FromBody] DepartamentosViewModel departamento)
        {
            ResponseResult response = new ResponseResult()
            {
                Message = "", Result = false
            };

            var departamentoinDb = new DEPARTAMENTOS()
            {
                REFERENCIA = departamento.REFERENCIA, DESCRIPCION = departamento.DESCRIPCION, NOMBRE = departamento.NOMBRE
            };

            using (var _db = db.Database.BeginTransaction())
            {
                try
                {
                    db.DEPARTAMENTOS.Add(departamentoinDb);
                    db.SaveChanges();

                    if (departamento != null)
                    {
                        if (departamento.EMPLEADOS.Count() > 0)
                        {
                            foreach (var item in departamento.EMPLEADOS)
                            {
                                db.EMPLEADOS.Add(new EMPLEADOS()
                                {
                                    DESCRIPCION = item.DESCRIPCION, FECHA_NACIMIENTO = item.FECHA_NACIMIENTO, GENERO_SEXO = item.GENERO_SEXO, ID_DEPARTAMENTO = departamentoinDb.ID_DEPARTAMENTO, NOMBRE = item.NOMBRE
                                });
                                db.SaveChanges();
                            }
                        }
                    }

                    _db.Commit();

                    response.Message = "Departamento almacenado correctamente";
                    response.Result  = true;
                }
                catch (Exception E)
                {
                    _db.Rollback();
                    response.Message = "Departamento no almacenado correctamente, debe ingresar todos los datos de los empleados";
                }
            }

            return(response);
        }
Exemplo n.º 5
0
        //
        // GET: /Departamentos/Pesquisa
        public async Task <ActionResult> Pesquisa(DepartamentosViewModel viewModel)
        {
            var query = _db.Departamentoes.AsQueryable();

            //TODO: parâmetros de pesquisa
            if (!String.IsNullOrWhiteSpace(viewModel.Descricao))
            {
                var descricaos = viewModel.Descricao?.Split(' ');
                query = query.Where(a => descricaos.All(descricao => a.Descricao.Contains(descricao)));
            }

            viewModel.Resultados = await query.OrderBy(a => a.Descricao).ToPagedListAsync(viewModel.Pagina, viewModel.TamanhoPagina);

            if (Request?.IsAjaxRequest() ?? false)
            {
                return(PartialView("_Pesquisa", viewModel));
            }

            return(View("Indice", viewModel));
        }
        // GET: Departamentos
        public async Task <IActionResult> Index(int page = 1, string searchString = "", string sort = "true", string procurar = "Nome")
        {
            var departamentos = from p in _context.Departamentos
                                select p;

            if (!String.IsNullOrEmpty(searchString))
            {
                departamentos = departamentos.Where(p => p.NomeDepartamento.Contains(searchString));
                if (procurar.Equals("Nome"))
                {
                    departamentos = departamentos.Where(p => p.NomeDepartamento.Contains(searchString));
                }
            }

            decimal numberDepartamentos = _context.Departamentos.Count();
            DepartamentosViewModel vm   = new DepartamentosViewModel {
                Sort          = sort,
                Departamentos = _context.Departamentos.OrderBy(p => p.NomeDepartamento).Skip((page - 1) * FUNC_PER_PAGE).Take(FUNC_PER_PAGE),
                CurrentPage   = page,
                FirstPageShow = Math.Max(1, page - NUMBER_PAGES_BEFORE_AND_AFTER),
                TotalPages    = (int)Math.Ceiling(numberDepartamentos / NUMBER_FUNC_PER_PAGE),
                Procurar      = procurar
            };

            if (sort.Equals("true"))
            {
                vm.Departamentos = departamentos.OrderBy(p => p.NomeDepartamento).Skip((page - 1) * NUMBER_FUNC_PER_PAGE).Take(NUMBER_FUNC_PER_PAGE);
            }
            else
            {
                vm.Departamentos = departamentos.OrderByDescending(p => p.NomeDepartamento).Skip((page - 1) * NUMBER_FUNC_PER_PAGE).Take(NUMBER_FUNC_PER_PAGE);
            }


            vm.LastPageShow   = Math.Min(vm.TotalPages, page + NUMBER_PAGES_BEFORE_AND_AFTER);
            vm.StringProcurar = searchString;


            return(View(vm));
        }
        public async Task <JsonResult> Save(DepartamentosViewModel departamento)
        {
            string      content     = JsonConvert.SerializeObject(departamento);
            HttpContent httpContent = new StringContent(content, Encoding.UTF8, "application/json");

            var responseCreationFields = await client.PostAsync(URI + "api/Departamentos", httpContent);

            if (responseCreationFields.StatusCode == HttpStatusCode.OK)
            {
                string result = await responseCreationFields.Content.ReadAsStringAsync();

                var response = JsonConvert.DeserializeObject <ResponseResult>(result);

                return(Json(new { data = response }, JsonRequestBehavior.AllowGet));
            }
            else
            {
                return(Json(new ResponseResult {
                    Result = false, Message = responseCreationFields.StatusCode.ToString()
                }));
            }
        }
        public ActionResult Edit(int Id)
        {
            var OMensaje = new Mensaje();

            try
            {
                using (RELOJBIOEntities wdb = new RELOJBIOEntities())
                {
                    var ODepartamento = wdb.Department.Where(a => a.DepartmentID == Id).FirstOrDefault();

                    var ListEmpresa = wdb.Company.ToList();
                    var ListTur     = wdb.Schedule.ToList();


                    var OVMDepartamento = new DepartamentosViewModel
                    {
                        DepartmentID = ODepartamento.DepartmentID,

                        Name       = ODepartamento.Name,
                        CompanyID  = ODepartamento.CompanyID,
                        ScheduleID = ODepartamento.ScheduleID,

                        ListaEmpresa = new SelectList(ListEmpresa, "CompanyID", "Name"),
                        ListaTurno   = new SelectList(ListTur, "ScheduleID", "Name"),
                    };

                    return(View(OVMDepartamento));
                }
            }
            catch (Exception e)
            {
                OMensaje.Tipo      = "Error";
                OMensaje.Msg       = e.ToString();
                Session["Mensaje"] = OMensaje;

                return(RedirectToAction("Index", "Departamentos"));
            }
        }