コード例 #1
0
        public object InsertarPlana(VehiculoJson plana, Sam3_Usuario usuario)
        {
            try
            {
                Sam3_Vehiculo nuevaPlana;
                using (SamContext ctx = new SamContext())
                {
                    if (!ctx.Sam3_Vehiculo.Where(c => c.Placas == plana.Placas && c.TipoVehiculoID == 2 && c.Activo).AsParallel().Any())
                    {
                        nuevaPlana = new Sam3_Vehiculo
                        {
                            TipoVehiculoID      = Convert.ToInt32(plana.TipoVehiculoID),
                            Activo              = true,
                            TractoID            = Convert.ToInt32(plana.TractoID),
                            Placas              = plana.Placas,
                            Unidad              = plana.Unidad,
                            Modelo              = plana.Modelo,
                            FechaModificacion   = DateTime.Now,
                            UsuarioModificacion = usuario.UsuarioID
                        };
                        ctx.Sam3_Vehiculo.Add(nuevaPlana);
                        ctx.SaveChanges();


                        Sam3_Rel_Vehiculo_Chofer nuevoRegistroChofer = new Sam3_Rel_Vehiculo_Chofer();
                        nuevoRegistroChofer.VehiculoID          = nuevaPlana.VehiculoID;
                        nuevoRegistroChofer.Activo              = true;
                        nuevoRegistroChofer.ChoferID            = Convert.ToInt32(plana.ChoferID);
                        nuevoRegistroChofer.FechaModificacion   = DateTime.Now;
                        nuevoRegistroChofer.UsuarioModificacion = usuario.UsuarioID;

                        ctx.Sam3_Rel_Vehiculo_Chofer.Add(nuevoRegistroChofer);

                        Sam3_Rel_Vehiculo_Transportista transportista = new Sam3_Rel_Vehiculo_Transportista();
                        transportista.Activo              = true;
                        transportista.FechaModificacion   = DateTime.Now;
                        transportista.TransportistaID     = Convert.ToInt32(plana.TransportistaID);
                        transportista.VehiculoID          = nuevaPlana.VehiculoID;
                        transportista.UsuarioModificacion = usuario.UsuarioID;

                        ctx.Sam3_Rel_Vehiculo_Transportista.Add(transportista);

                        ctx.SaveChanges();

                        return(new CatalogoPlana
                        {
                            VehiculoID = nuevaPlana.VehiculoID.ToString(),
                            Placas = nuevaPlana.Placas,
                            Unidad = nuevaPlana.Unidad,
                            Modelo = nuevaPlana.Modelo,
                            choferNombre = plana.choferNombre,
                            choferID = plana.ChoferID.ToString(),
                            transportistaNombre = plana.transportistaNombre,
                            transportistaID = plana.TransportistaID.ToString(),
                            relVehiculoChoferID = nuevoRegistroChofer.Rel_Vehiculo_Chofer_ID.ToString(),
                            relVehiculoTransportistaID = transportista.Rel_Vehiculo_Transportista_ID.ToString()
                        });
                        //return new Plana { Nombre = nuevaPlana.Placas, PlanaID = Convert.ToString(nuevaPlana.VehiculoID) };
                    }
                    else
                    {
                        throw new Exception("Plana existente");
                    }
                }
            }
            catch (Exception ex)
            {
                //-----------------Agregar mensaje al Log -----------------------------------------------
                LoggerBd.Instance.EscribirLog(ex);
                //-----------------Agregar mensaje al Log -----------------------------------------------
                TransactionalInformation result = new TransactionalInformation();
                result.ReturnMessage.Add(ex.Message);
                result.ReturnCode     = 500;
                result.ReturnStatus   = false;
                result.IsAuthenicated = true;

                return(result);
            }
        }
コード例 #2
0
        public object InsertarTracto(VehiculoJson cambios, Sam3_Usuario usuario)
        {
            try
            {
                using (SamContext ctx = new SamContext())
                {
                    if (!ctx.Sam3_Vehiculo.Where(c => c.Placas == cambios.Placas && c.TipoVehiculoID == 1 && c.Activo).AsParallel().Any())
                    {
                        Sam3_Vehiculo nuevoCamion = new Sam3_Vehiculo();
                        nuevoCamion.Activo              = true;
                        nuevoCamion.FechaModificacion   = DateTime.Now;
                        nuevoCamion.Placas              = cambios.Placas;
                        nuevoCamion.PolizaSeguro        = cambios.PolizaSeguro;
                        nuevoCamion.TarjetaCirculacion  = cambios.TarjetaCirculacion;
                        nuevoCamion.UsuarioModificacion = usuario.UsuarioID;
                        nuevoCamion.TipoVehiculoID      = Convert.ToInt32(cambios.TipoVehiculoID);

                        ctx.Sam3_Vehiculo.Add(nuevoCamion);
                        ctx.SaveChanges();

                        Sam3_Rel_Vehiculo_Chofer nuevoRegistroChofer = new Sam3_Rel_Vehiculo_Chofer();
                        nuevoRegistroChofer.VehiculoID          = nuevoCamion.VehiculoID;
                        nuevoRegistroChofer.Activo              = true;
                        nuevoRegistroChofer.ChoferID            = Convert.ToInt32(cambios.ChoferID);
                        nuevoRegistroChofer.FechaModificacion   = DateTime.Now;
                        nuevoRegistroChofer.UsuarioModificacion = usuario.UsuarioID;

                        ctx.Sam3_Rel_Vehiculo_Chofer.Add(nuevoRegistroChofer);

                        Sam3_Rel_Vehiculo_Transportista transportista = new Sam3_Rel_Vehiculo_Transportista();
                        transportista.Activo              = true;
                        transportista.FechaModificacion   = DateTime.Now;
                        transportista.TransportistaID     = Convert.ToInt32(cambios.TransportistaID);
                        transportista.VehiculoID          = nuevoCamion.VehiculoID;
                        transportista.UsuarioModificacion = usuario.UsuarioID;

                        ctx.Sam3_Rel_Vehiculo_Transportista.Add(transportista);

                        ctx.SaveChanges();

                        return(new CatalogoTracto
                        {
                            VehiculoID = nuevoCamion.VehiculoID.ToString(),
                            Placas = nuevoCamion.Placas,
                            TarjetaCirculacion = nuevoCamion.TarjetaCirculacion,
                            PolizaSeguro = nuevoCamion.PolizaSeguro,
                            choferNombre = cambios.choferNombre,
                            choferID = cambios.ChoferID.ToString(),
                            transportistaNombre = cambios.transportistaNombre,
                            transportistaID = cambios.TransportistaID.ToString(),
                            relVehiculoChoferID = nuevoRegistroChofer.Rel_Vehiculo_Chofer_ID.ToString(),
                            relVehiculoTransportistaID = transportista.Rel_Vehiculo_Transportista_ID.ToString()
                        });
                        //return new Camion { Placas = nuevoCamion.Placas, CamionID = nuevoCamion.VehiculoID.ToString() };
                    }
                    else
                    {
                        throw new Exception("Tracto existente");
                    }
                }
            }
            catch (Exception ex)
            {
                //-----------------Agregar mensaje al Log -----------------------------------------------
                LoggerBd.Instance.EscribirLog(ex);
                //-----------------Agregar mensaje al Log -----------------------------------------------
                TransactionalInformation result = new TransactionalInformation();
                result.ReturnMessage.Add(ex.Message);
                result.ReturnCode     = 500;
                result.ReturnStatus   = false;
                result.IsAuthenicated = true;

                return(result);
            }
        }