コード例 #1
0
        protected void Button1_Click(object sender, EventArgs e)
        {
            DropDownListPizza.Text    = DropDownListPizza.SelectedItem.Value;
            DropDownListClientes.Text = DropDownListClientes.SelectedItem.Value;
            Empleados userLogin  = (Empleados)Session["usuario"];
            object    usuario    = userLogin.IdUsuario;
            var       nuevoOrden = OrdenesServicio.Factory(DropDownListPizza, DropDownListClientes, TextBoxCantidad, usuario);

            OrdenesDal.Insertar(nuevoOrden);
        }
コード例 #2
0
        protected void Guardar_Orden(object sender, EventArgs e)
        {
            if (serviciosElegidos.Count > 0)
            {
                using (var context = new Entities1())
                {
                    Ordene orden = new Ordene();
                    orden.fecha = DateTime.Now;

                    foreach (Servicio s in serviciosElegidos)
                    {
                        OrdenesServicio os = new OrdenesServicio();
                        os.servicio_id = s.Id;
                        orden.OrdenesServicios.Add(os);
                    }

                    Vehiculo vehiculo = context.Vehiculos.Where(x => x.patente == txtPatente.Text).FirstOrDefault();

                    if (vehiculo == null)
                    {
                        //El vehiculo no esta cargado
                        vehiculo           = new Vehiculo();
                        vehiculo.anio      = txtAnio.Text;
                        vehiculo.modelo_id = Int32.Parse(ddModelos.SelectedValue);
                        vehiculo.patente   = txtPatente.Text;

                        context.Vehiculos.Add(vehiculo);
                    }

                    Cliente clienteExistente = context.Clientes.Where(x => x.dni == txtDni.Text).FirstOrDefault();

                    if (clienteExistente == null)
                    {
                        //Es cliente nuevo
                        Cliente c = new Cliente();
                        c.nombre    = txtNombre.Text;
                        c.apellido  = txtApellido.Text;
                        c.dni       = txtDni.Text;
                        c.email     = txtEmail.Text;
                        c.telefono  = txtTelefono.Text;
                        c.direccion = txtDireccion.Text;

                        vehiculo.Cliente = c;
                    }
                    else
                    {
                        //Un cliente ya registrado agrega nuevo auto
                        vehiculo.Cliente = clienteExistente;
                    }

                    orden.Vehiculo = vehiculo;
                    orden.Cliente  = vehiculo.Cliente;

                    Button btn = (Button)sender;

                    if (btn.ID == btnPresupuesto.ID)
                    {
                        OrdenesEstado oe = new OrdenesEstado();
                        oe.estado_id  = 1;
                        oe.fecha      = DateTime.Now;
                        oe.usuario_id = User.Identity.GetUserId();
                        orden.OrdenesEstados.Add(oe);

                        context.Ordenes.Add(orden);
                        context.SaveChanges();

                        Response.Redirect("~/Operario/Presupuesto?id=" + orden.Id);
                    }
                    else
                    {
                        bool falta = false;
                        foreach (OrdenesServicio os in orden.OrdenesServicios)
                        {
                            int idServicio = os.servicio_id.Value;
                            if (Falta_Producto(idServicio, 1))
                            {
                                falta = true;
                            }
                        }

                        if (!falta)
                        {
                            OrdenesEstado oe = new OrdenesEstado();
                            oe.estado_id  = 1;
                            oe.fecha      = DateTime.Now;
                            oe.usuario_id = User.Identity.GetUserId();
                            orden.OrdenesEstados.Add(oe);

                            OrdenesEstado oe2 = new OrdenesEstado();
                            oe2.estado_id  = 2;
                            oe2.fecha      = DateTime.Now;
                            oe2.usuario_id = User.Identity.GetUserId();
                            orden.OrdenesEstados.Add(oe2);

                            int      idEmpleado = Int32.Parse(ddMecanicos.SelectedValue);
                            Empleado empleado   = context.Empleados.Where(x => x.Id == idEmpleado).First();

                            orden.mecanico_id = empleado.usuario_id;

                            context.Ordenes.Add(orden);
                            context.SaveChanges();

                            lblMessage2.Text = "Orden enviada a taller";
                        }
                        else
                        {
                            lblMessage2.Text = "Hay faltante de productos";
                        }
                    }
                }
            }
            else
            {
                lblMessage2.Text = "Debe seleccionar al menos un servicio.";
            }
        }