public async Task <IActionResult> RegisterEquipoTransporte(EquipoTransporteForRegisterDto equipotrans) { List <long> ids = new List <long>(); String[] prm = equipotrans.OrdenTransporteId.Split(','); foreach (var item in prm) { ids.Add(long.Parse(item)); } var param = new EquipoTransporte(); var vehiculo = await _repoVehiculo.Get(x => x.Placa == equipotrans.Placa); if (vehiculo == null) { new ArgumentException("No existe el vehículo"); } var carreta = await _repoVehiculo.Get(x => x.Placa == equipotrans.Carreta); var proveedor = await _repoProveedor.Get(x => x.Ruc == equipotrans.Ruc); if (proveedor == null) { new ArgumentException("No existe el proveedor"); } var chofer = await _repoChofer.Get(x => x.Dni == equipotrans.Dni); if (proveedor == null) { new ArgumentException("No existe el conductor"); } param.ProveedorId = proveedor.Id; param.VehiculoId = vehiculo.Id; param.ChoferId = chofer.Id.Value; param.EstadoId = (int)Constantes.EstadoEquipoTransporte.EnProceso; //param.PropietarioId = equipotrans.PropietarioId; if (carreta != null) { param.CarretaId = carreta.Id; } try { var createdEquipoTransporte = await _repoOrdenRecibo.RegisterEquipoTransporte(param, ids); return(Ok(createdEquipoTransporte)); } catch (System.Exception) { throw; } }
public async Task <IActionResult> MatchTransporteOrdenIngreso(EquipoTransporteForRegisterDto equipotrans) { //var param = _mapper.Map<EquipoTransporteForRegisterDto, EquipoTransporte>(equipotrans); //Buscar Placa var createdEquipoTransporte = await _repoOrdenRecibo.matchTransporteOrdenIngreso(equipotrans); return(Ok(createdEquipoTransporte)); }
public async Task <IActionResult> RegisterEquipoTransporte(EquipoTransporteForRegisterDto equipotrans) { var param = new EquipoTransporte(); var vehiculo = await _repoVehiculo.Get(x => x.Placa == equipotrans.Placa); //Insertar nuevo if (vehiculo == null) { vehiculo = new Vehiculo(); vehiculo.TipoId = equipotrans.tipoVehiculo; vehiculo.MarcaId = equipotrans.marcaVehiculo; vehiculo.Placa = equipotrans.Placa; vehiculo = await _repoVehiculo.AddAsync(vehiculo); } var proveedor = await _repoProveedor.Get(x => x.Ruc == equipotrans.Ruc); if (proveedor == null) { proveedor = new Proveedor(); proveedor.RazonSocial = equipotrans.RazonSocial; proveedor.Ruc = equipotrans.Ruc; proveedor = await _repoProveedor.AddAsync(proveedor); } var chofer = await _repoChofer.Get(x => x.Dni == equipotrans.Dni); if (chofer == null) { chofer = new Chofer(); chofer.Brevete = equipotrans.Brevete; chofer.Dni = equipotrans.Dni; chofer.NombreCompleto = equipotrans.NombreCompleto; chofer = await _repoChofer.AddAsync(chofer); } param.ProveedorId = proveedor.Id; param.VehiculoId = vehiculo.Id; param.ChoferId = chofer.Id; param.EstadoId = (int)Constantes.EstadoEquipoTransporte.EnProceso; param.PropietarioId = equipotrans.PropietarioId; var createdEquipoTransporte = await _repoOrdenRecibo.RegisterEquipoTransporte(param, equipotrans.OrdenReciboId); return(Ok(createdEquipoTransporte)); }
public async Task <Guid> matchTransporteOrdenIngreso(EquipoTransporteForRegisterDto eq) { using (var transaction = _context.Database.BeginTransaction()) { var ordenDb = await _context.OrdenesRecibo.SingleOrDefaultAsync(x => x.Id == eq.OrdenReciboId); ordenDb.EquipoTransporteId = eq.Id; ordenDb.EstadoId = (int)Constantes.EstadoOrdenIngreso.Asignado; await _context.SaveChangesAsync(); transaction.Commit(); // transaction.Dispose(); return(eq.OrdenReciboId); } }