示例#1
0
        public async Task <IActionResult> Create(Enrollments enrollments)
        {
            if (ModelState.IsValid)
            {
                _context.Add(enrollments);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(enrollments));
        }
        public async Task <IActionResult> Create([Bind("Id,Startdate,Enddate,Reference,Invoice,Department,Costcenter,Account,ProjectCode,Description,Contractor,LaborPrice,MaterialPrice,StateProject,Userid,Comment,State,CreatedAt,UpdatedAt,Idteam")] Ots ots)
        {
            if (ModelState.IsValid)
            {
                _context.Add(ots);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(ots));
        }
示例#3
0
        public async Task <IActionResult> Create(Qualification qualification)
        {
            if (ModelState.IsValid)
            {
                _context.Add(qualification);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["IdCourseNote"]  = new SelectList(_context.Enrollments, "IdEnrollment", "IdEnrollment", qualification.IdCourseNote);
            ViewData["IdStudentNote"] = new SelectList(_context.Enrollments, "IdEnrollment", "IdEnrollment", qualification.IdStudentNote);
            return(View(qualification));
        }
示例#4
0
        public async Task <IViewComponentResult> InvokeAsync()
        {
            //remover usarios atendidos
            var usariosatendidos = await _db.T_ListasClientes
                                   .Where(r => r.Fecha < DateTime.Now).ToListAsync();

            if (usariosatendidos.Any())
            {
                _db.T_ListasClientes.RemoveRange(usariosatendidos);
                await _db.SaveChangesAsync();
            }


            return(View(await _db.T_ListasClientes
                        .Include(r => r.ID_ClientesNavigation)
                        .Include(r => r.ID_ListaNavigation)
                        .Where(r => r.Fecha >= DateTime.Now).ToListAsync()));
        }
示例#5
0
        public async Task <IActionResult> AddClienteAsync(T_Clientes model)
        {
            if (!ModelState.IsValid)
            {
                return(PartialView(model));
            }

            var existsClient = await _db.T_Clientes
                               .Include(r => r.T_ListasClientes).ThenInclude(r => r.ID_ListaNavigation)
                               .FirstOrDefaultAsync(r => r.Cedula == model.Cedula);

            // Se crea o se actualiza el cliente identificado
            try
            {
                if (existsClient == null)
                {
                    existsClient = new T_Clientes
                    {
                        ID_Cliente = Guid.NewGuid(),
                        Cedula     = model.Cedula,
                        CreatedOn  = DateTime.Now,
                        Nombre     = model.Nombre
                    };
                    _db.T_Clientes.Add(existsClient);
                }
                else
                {
                    existsClient.Nombre = model.Nombre;
                    _db.T_Clientes.Update(existsClient);

                    // comprobar si cliente tiene se encuentra en una lista
                    var IsInlist = existsClient.T_ListasClientes?.OrderByDescending(r => r.Fecha).FirstOrDefault();

                    if (IsInlist != null && IsInlist.Fecha >= DateTime.Now)
                    {
                        TempData["Notify"] = _serv.Notificacion("Usuario ya en cola", Tipo.alert);
                        return(RedirectToAction("MostraInfo", new { id = existsClient.ID_Cliente }));
                    }
                }



                var listaMenorMinutos = _db.T_Listas
                                        .Include(r => r.T_ListasClientes)
                                        .OrderBy(r => r.Duracion)
                                        .ToList().Select(m => new
                {
                    TotalTiempo = m.T_ListasClientes.Where(r => r.Fecha >= DateTime.Now).Sum(r => r.Duracion),
                    Lista       = m
                }).OrderBy(r => r.TotalTiempo).FirstOrDefault().Lista;



                var ultimoCliente = await _db.T_ListasClientes.OrderByDescending(r => r.Fecha).FirstOrDefaultAsync(r => r.ID_Lista == listaMenorMinutos.ID_lista);

                _db.T_ListasClientes.Add(new T_ListasClientes
                {
                    Duracion        = listaMenorMinutos.Duracion,
                    ID_Cliente      = existsClient.ID_Cliente,
                    ID_Lista        = listaMenorMinutos.ID_lista,
                    ID_ListaCliente = Guid.NewGuid(),
                    Fecha           = ultimoCliente == null ? DateTime.Now.AddMinutes(listaMenorMinutos.Duracion) : ultimoCliente.Fecha.AddMinutes(listaMenorMinutos.Duracion)
                });



                await _db.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                return(NotFound($"Ha ocurrido un error intente nuevamete :{ex.Message}"));
            }



            return(RedirectToAction("MostraInfo", new { id = existsClient.ID_Cliente }));
        }