public async Task <Guid> FinalizarRecibo(InventarioForFinishRecive command) { OrdenRecibo dominio = null; dominio = _context.OrdenesRecibo.SingleOrDefaultAsync(x => x.Id == command.OrdenReciboId).Result; dominio.EstadoId = (int)Constantes.EstadoOrdenIngreso.PendienteAlmacenamiento; var inventarios = _context.InventarioGeneral.Where(x => x.OrdenReciboId == command.OrdenReciboId).ToList(); foreach (var item in inventarios) { // if(item.UbicacionIdProx == null) // throw new ArgumentException("Err101"); } using (var transaction = _context.Database.BeginTransaction()) { try { await _context.SaveChangesAsync(); transaction.Commit(); } catch (Exception ex) { transaction.Rollback(); throw ex; } return(command.OrdenReciboId); } }
public async Task <IActionResult> Register(OrdenReciboForRegisterDto ordenReciboForRegisterDto) { var NumOrden = await _repository.GetMaxNumOrdenRecibo(); var param = new OrdenRecibo { Id = Guid.NewGuid(), NumOrden = (Convert.ToInt64(NumOrden.NumOrden) + 1).ToString().PadLeft(7, '0'), PropietarioId = ordenReciboForRegisterDto.PropietarioId, Propietario = ordenReciboForRegisterDto.Propietario, AlmacenId = 1, //ordenReciboForRegisterDto.AlmacenId, GuiaRemision = ordenReciboForRegisterDto.GuiaRemision, FechaEsperada = Convert.ToDateTime(ordenReciboForRegisterDto.FechaEsperada), FechaRegistro = DateTime.Now, HoraEsperada = ordenReciboForRegisterDto.HoraEsperada, EstadoId = (Int16)Constantes.EstadoOrdenIngreso.Planeado, UsuarioRegistro = 1,//ordenReciboForRegisterDto.UsuarioRegistro, Activo = true }; var createdUser = await _repository.AddAsync(param); return(Ok(createdUser)); }