// GET: Recepcions/Create
        public IActionResult Create()
        {
            List <Automovil>      autos = _context.Automovil.ToList();
            List <SelectListItem> au    = autos.ConvertAll(aa =>
            {
                return(new SelectListItem()
                {
                    Text = aa.placa + " - " + aa.marca + " - " + aa.anio,
                    Value = aa.automovilID.ToString(),
                    Selected = false
                });
            });

            ViewData["automovilID"] = au;
            List <Cliente>        clientes = _context.Cliente.ToList();
            List <SelectListItem> c        = clientes.ConvertAll(cc =>
            {
                return(new SelectListItem()
                {
                    Text = cc.nombre + " " + cc.apellido,
                    Value = cc.clienteID,
                    Selected = false
                });
            });

            ViewData["clienteID"] = c;
            List <Empleado>       empleados = _context.Empleado.ToList();
            List <SelectListItem> e         = empleados.ConvertAll(ee =>
            {
                return(new SelectListItem()
                {
                    Text = ee.nombre + " " + ee.apellido,
                    Value = ee.empleadoID.ToString(),
                    Selected = false
                });
            });

            ViewData["empleadoID"] = e;
            List <Area> areas = new List <Area>();

            areas = _context.Area.FromSqlRaw("SELECT * FROM Area").ToList();
            List <SelectListItem> a = areas.ConvertAll(ac =>
            {
                return(new SelectListItem()
                {
                    Text = ac.areaNom,
                    Value = ac.AreaID.ToString(),
                    Selected = false
                });
            });

            ViewBag.areas = a;
            RecepcionViewModel r  = new RecepcionViewModel();
            string             fa = DateTime.Now.ToString("dd/MM/yyyy HH:mm");

            r.fechaEntrada = DateTime.ParseExact(fa, "dd/MM/yyyy HH:mm", null);
            return(View(r));
        }
Пример #2
0
 public MntRecepcionForm(ObservableListSource <RecepcionViewModel> viewModelList)
 {
     InitializeComponent();
     ViewModel     = new RecepcionViewModel();
     ViewModelList = viewModelList;
     recepcionViewModelBindingSource.DataSource = ViewModel;
     //
     CargarCombos();
 }
        public async Task <IActionResult> Edit(int id, RecepcionViewModel recepcion)
        {
            if (id != recepcion.recepcionID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    Recepcion r = new Recepcion
                    {
                        recepcionID    = recepcion.recepcionID,
                        diagnostico    = recepcion.diagnostico,
                        fechaEntrada   = recepcion.fechaEntrada,
                        fechaSalida    = recepcion.fechaSalida,
                        clienteID      = recepcion.clienteID,
                        empleadoID     = recepcion.empleadoID,
                        automovilID    = recepcion.automovilID,
                        estado         = recepcion.estado,
                        procedimientos = recepcion.procedimientos
                    };
                    List <Procedimiento> pOriginales = _context.Procedimiento.Where(p => p.recepcionID == r.recepcionID).AsNoTracking().ToList();
                    var pEditados = pOriginales.Where(p => r.procedimientos.All(p2 => p2.procedimientoID != p.procedimientoID));
                    foreach (var pE in pEditados)
                    {
                        _context.Procedimiento.Remove(pE);
                    }
                    _context.Update(r);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!RecepcionExists(recepcion.recepcionID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            List <Automovil>      autos = _context.Automovil.ToList();
            List <SelectListItem> au    = autos.ConvertAll(aa =>
            {
                if (aa.automovilID.Equals(recepcion.automovilID))
                {
                    return(new SelectListItem()
                    {
                        Text = aa.placa + " - " + aa.marca + " - " + aa.anio,
                        Value = aa.automovilID.ToString(),
                        Selected = true
                    });
                }
                else
                {
                    return(new SelectListItem()
                    {
                        Text = aa.placa + " - " + aa.marca + " - " + aa.anio,
                        Value = aa.automovilID.ToString(),
                        Selected = false
                    });
                }
            });

            ViewData["automovilID"] = au;
            List <Cliente>        clientes = _context.Cliente.ToList();
            List <SelectListItem> c        = clientes.ConvertAll(cc =>
            {
                if (cc.clienteID == recepcion.clienteID)
                {
                    return(new SelectListItem()
                    {
                        Text = cc.nombre + " " + cc.apellido,
                        Value = cc.clienteID,
                        Selected = true
                    });
                }
                else
                {
                    return(new SelectListItem()
                    {
                        Text = cc.nombre + " " + cc.apellido,
                        Value = cc.clienteID,
                        Selected = false
                    });
                }
            });

            ViewData["clienteID"] = c;
            List <Empleado>       empleados = _context.Empleado.ToList();
            List <SelectListItem> e         = empleados.ConvertAll(ee =>
            {
                if (ee.empleadoID == recepcion.empleadoID)
                {
                    return(new SelectListItem()
                    {
                        Text = ee.nombre + " " + ee.apellido,
                        Value = ee.empleadoID.ToString(),
                        Selected = true
                    });
                }
                else
                {
                    return(new SelectListItem()
                    {
                        Text = ee.nombre + " " + ee.apellido,
                        Value = ee.empleadoID.ToString(),
                        Selected = false
                    });
                }
            });

            ViewData["empleadoID"] = e;
            ViewBag.areas          = _context.Area;
            ViewBag.area           = new SelectList(_context.Area, "AreaID", "areaNom");
            return(View(recepcion));
        }
        // GET: Recepcions/Edit/5
        public async Task <IActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var recepcion = await _context.Recepcion.Include(r => r.procedimientos).ThenInclude(a => a.area).Where(r => r.recepcionID == id).FirstOrDefaultAsync();

            RecepcionViewModel r = new RecepcionViewModel
            {
                recepcionID    = recepcion.recepcionID,
                diagnostico    = recepcion.diagnostico,
                fechaEntrada   = recepcion.fechaEntrada,
                fechaSalida    = recepcion.fechaSalida,
                clienteID      = recepcion.clienteID,
                empleadoID     = recepcion.empleadoID,
                automovilID    = recepcion.automovilID,
                procedimientos = recepcion.procedimientos.ToList(),
                estado         = recepcion.estado
            };

            if (recepcion == null)
            {
                return(NotFound());
            }
            List <Automovil>      autos = _context.Automovil.ToList();
            List <SelectListItem> au    = autos.ConvertAll(aa =>
            {
                if (aa.automovilID.Equals(recepcion.automovilID))
                {
                    return(new SelectListItem()
                    {
                        Text = aa.placa + " - " + aa.marca + " - " + aa.anio,
                        Value = aa.automovilID.ToString(),
                        Selected = true
                    });
                }
                else
                {
                    return(new SelectListItem()
                    {
                        Text = aa.placa + " - " + aa.marca + " - " + aa.anio,
                        Value = aa.automovilID.ToString(),
                        Selected = false
                    });
                }
            });

            ViewData["automovilID"] = au;
            List <Cliente>        clientes = _context.Cliente.ToList();
            List <SelectListItem> c        = clientes.ConvertAll(cc =>
            {
                if (cc.clienteID == recepcion.clienteID)
                {
                    return(new SelectListItem()
                    {
                        Text = cc.nombre + " " + cc.apellido,
                        Value = cc.clienteID,
                        Selected = true
                    });
                }
                else
                {
                    return(new SelectListItem()
                    {
                        Text = cc.nombre + " " + cc.apellido,
                        Value = cc.clienteID,
                        Selected = false
                    });
                }
            });

            ViewData["clienteID"] = c;
            List <Empleado>       empleados = _context.Empleado.ToList();
            List <SelectListItem> e         = empleados.ConvertAll(ee =>
            {
                if (ee.empleadoID == recepcion.empleadoID)
                {
                    return(new SelectListItem()
                    {
                        Text = ee.nombre + " " + ee.apellido,
                        Value = ee.empleadoID.ToString(),
                        Selected = true
                    });
                }
                else
                {
                    return(new SelectListItem()
                    {
                        Text = ee.nombre + " " + ee.apellido,
                        Value = ee.empleadoID.ToString(),
                        Selected = false
                    });
                }
            });

            ViewData["empleadoID"] = e;
            ViewBag.areas          = _context.Area;
            ViewBag.area           = new SelectList(_context.Area, "AreaID", "areaNom");
            return(View(r));
        }
        //public async Task<IActionResult> Create([Bind("diagnostico,fechaEntrada,fechaSalida,clienteID,empleadoID,automovilID," +
        //    "procedimientoID,mantenimientoID,estado")] Recepcion recepcion)
        public async Task <IActionResult> Create(RecepcionViewModel recepcion)
        {
            if (ModelState.IsValid)
            {
                Recepcion r = new Recepcion
                {
                    diagnostico  = recepcion.diagnostico,
                    fechaEntrada = recepcion.fechaEntrada,
                    fechaSalida  = recepcion.fechaSalida,
                    clienteID    = recepcion.clienteID,
                    empleadoID   = recepcion.empleadoID,
                    automovilID  = recepcion.automovilID,
                    estado       = recepcion.estado
                };
                _context.Add(r);
                foreach (var procedimiento in recepcion.procedimientos)
                {
                    _context.Procedimiento.Add(new Procedimiento
                    {
                        procedimiento = procedimiento.procedimiento,
                        precio        = procedimiento.precio,
                        areaID        = procedimiento.areaID,
                        recepcion     = r
                    });
                }
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            List <Automovil>      autos = _context.Automovil.ToList();
            List <SelectListItem> au    = autos.ConvertAll(aa =>
            {
                if (aa.automovilID.Equals(recepcion.automovilID))
                {
                    return(new SelectListItem()
                    {
                        Text = aa.placa + " - " + aa.marca + " - " + aa.anio,
                        Value = aa.automovilID.ToString(),
                        Selected = true
                    });
                }
                else
                {
                    return(new SelectListItem()
                    {
                        Text = aa.placa + " - " + aa.marca + " - " + aa.anio,
                        Value = aa.automovilID.ToString(),
                        Selected = false
                    });
                }
            });

            ViewData["automovilID"] = au;
            List <Cliente>        clientes = _context.Cliente.ToList();
            List <SelectListItem> c        = clientes.ConvertAll(cc =>
            {
                if (cc.clienteID == recepcion.clienteID)
                {
                    return(new SelectListItem()
                    {
                        Text = cc.nombre + " " + cc.apellido,
                        Value = cc.clienteID,
                        Selected = true
                    });
                }
                else
                {
                    return(new SelectListItem()
                    {
                        Text = cc.nombre + " " + cc.apellido,
                        Value = cc.clienteID,
                        Selected = false
                    });
                }
            });

            ViewData["clienteID"] = c;
            List <Empleado>       empleados = _context.Empleado.ToList();
            List <SelectListItem> e         = empleados.ConvertAll(ee =>
            {
                if (ee.empleadoID == recepcion.empleadoID)
                {
                    return(new SelectListItem()
                    {
                        Text = ee.nombre + " " + ee.apellido,
                        Value = ee.empleadoID.ToString(),
                        Selected = true
                    });
                }
                else
                {
                    return(new SelectListItem()
                    {
                        Text = ee.nombre + " " + ee.apellido,
                        Value = ee.empleadoID.ToString(),
                        Selected = false
                    });
                }
            });

            ViewData["empleadoID"] = e;
            List <Area> areas = new List <Area>();

            areas = _context.Area.FromSqlRaw("SELECT * FROM Area").ToList();
            List <SelectListItem> a = areas.ConvertAll(ac =>
            {
                return(new SelectListItem()
                {
                    Text = ac.areaNom,
                    Value = ac.AreaID.ToString(),
                    Selected = false
                });
            });

            ViewBag.areas = a;

            return(View(recepcion));
        }