public async Task <Response> PostRecepcionArticulo([FromBody] RecepcionArticulos recepcionArticulo) { try { if (!ModelState.IsValid) { return(new Response { IsSuccess = false, Message = Mensaje.ModeloInvalido }); } if (recepcionArticulo.MaestroArticuloSucursal.Minimo > recepcionArticulo.Cantidad || recepcionArticulo.MaestroArticuloSucursal.Maximo < recepcionArticulo.Cantidad) { return(new Response { IsSuccess = false, Message = "La Cantidad no está en el rango del Mínimo y Máximo" }); } db.Entry(recepcionArticulo.Articulo).State = EntityState.Unchanged; db.Entry(recepcionArticulo.MaestroArticuloSucursal).State = EntityState.Unchanged; db.Entry(recepcionArticulo).State = EntityState.Added; await db.SaveChangesAsync(); db.ExistenciaArticuloProveeduria.Add(new ExistenciaArticuloProveeduria { IdArticulo = recepcionArticulo.IdArticulo, Existencia = recepcionArticulo.Cantidad }); await db.SaveChangesAsync(); return(new Response { IsSuccess = true, Message = Mensaje.Satisfactorio }); } catch (Exception ex) { await GuardarLogService.SaveLogEntry(new LogEntryTranfer { ApplicationName = Convert.ToString(Aplicacion.SwRm), ExceptionTrace = ex, Message = Mensaje.Excepcion, LogCategoryParametre = Convert.ToString(LogCategoryParameter.Critical), LogLevelShortName = Convert.ToString(LogLevelParameter.ERR), UserName = "", }); return(new Response { IsSuccess = false, Message = Mensaje.Error, }); } }
public static async Task ComprobarActivosFijosAlta() { try { var lista = await db.RecepcionActivoFijoDetalle.Where(c => c.Estado.Nombre == "Alta").Include(c => c.ActivoFijo.DepreciacionActivoFijo).ToListAsync(); if (lista.Count == 0) { timerDepreciacion.Dispose(); } else { foreach (var item in lista) { var depreciacionActivoFijo = item?.ActivoFijo?.DepreciacionActivoFijo?.FirstOrDefault(); if (depreciacionActivoFijo != null) { var ll = depreciacionActivoFijo.FechaDepreciacion.Subtract(DateTime.Now).TotalDays; if ((depreciacionActivoFijo.FechaDepreciacion.Subtract(DateTime.Now).TotalDays) * (-1) >= 30) { //Buscar el indice (indiceDepreciacion) de cada uno de los Activos Fijos contra la Tabla TablaDepreciacion if (depreciacionActivoFijo.ValorResidual > 1) { var indiceDepreciacion = await db.TablaDepreciacion.FirstOrDefaultAsync(); depreciacionActivoFijo.DepreciacionAcumulada += indiceDepreciacion.IndiceDepreciacion; depreciacionActivoFijo.FechaDepreciacion = DateTime.Now; depreciacionActivoFijo.ValorResidual -= depreciacionActivoFijo.DepreciacionAcumulada; if (depreciacionActivoFijo.ValorResidual <= 0) { depreciacionActivoFijo.ValorResidual = 1; } db.Entry(depreciacionActivoFijo.ActivoFijo).State = EntityState.Detached; db.Entry(depreciacionActivoFijo).State = EntityState.Modified; await db.SaveChangesAsync(); } } } } } } catch (Exception ex) { await GuardarLogService.SaveLogEntry(new LogEntryTranfer { ApplicationName = Convert.ToString(Aplicacion.SwRm), ExceptionTrace = ex, Message = Mensaje.Excepcion, LogCategoryParametre = Convert.ToString(LogCategoryParameter.Critical), LogLevelShortName = Convert.ToString(LogLevelParameter.ERR), UserName = "", }); } }
public async Task <Response> PostSubClaseActivoFijo([FromBody] SubClaseActivoFijo subClaseActivoFijo) { try { if (!ModelState.IsValid) { return(new Response { IsSuccess = false, Message = Mensaje.ModeloInvalido }); } var respuesta = Existe(subClaseActivoFijo); if (!respuesta.IsSuccess) { db.Entry(subClaseActivoFijo.ClaseActivoFijo).State = EntityState.Unchanged; db.SubClaseActivoFijo.Add(subClaseActivoFijo); await db.SaveChangesAsync(); return(new Response { IsSuccess = true, Message = Mensaje.Satisfactorio }); } return(new Response { IsSuccess = false, Message = Mensaje.ExisteRegistro }); } catch (Exception ex) { await GuardarLogService.SaveLogEntry(new LogEntryTranfer { ApplicationName = Convert.ToString(Aplicacion.SwRm), ExceptionTrace = ex, Message = Mensaje.Excepcion, LogCategoryParametre = Convert.ToString(LogCategoryParameter.Critical), LogLevelShortName = Convert.ToString(LogLevelParameter.ERR), UserName = "", }); return(new Response { IsSuccess = false, Message = Mensaje.Error, }); } }
public async Task <Response> PostRecepcionActivoFijo([FromBody] RecepcionActivoFijoDetalle recepcionActivoFijoDetalle) { try { ModelState.Remove("IdActivoFijo"); ModelState.Remove("IdRecepcionActivoFijo"); ModelState.Remove("ActivoFijo.IdCodigoActivoFijo"); if (!ModelState.IsValid) { return(new Response { IsSuccess = false, Message = Mensaje.ModeloInvalido }); } var respuesta = Existe(recepcionActivoFijoDetalle); if (!respuesta.IsSuccess) { db.Entry(recepcionActivoFijoDetalle.RecepcionActivoFijo.SubClaseActivoFijo).State = EntityState.Unchanged; db.Entry(recepcionActivoFijoDetalle.RecepcionActivoFijo.LibroActivoFijo).State = EntityState.Unchanged; await db.RecepcionActivoFijo.AddAsync(recepcionActivoFijoDetalle.RecepcionActivoFijo); await db.SaveChangesAsync(); db.Entry(recepcionActivoFijoDetalle.ActivoFijo.Modelo).State = EntityState.Unchanged; db.Entry(recepcionActivoFijoDetalle.ActivoFijo.Ciudad).State = EntityState.Unchanged; db.Entry(recepcionActivoFijoDetalle.ActivoFijo.UnidadMedida).State = EntityState.Unchanged; await db.ActivoFijo.AddAsync(recepcionActivoFijoDetalle.ActivoFijo); await db.SaveChangesAsync(); db.Entry(recepcionActivoFijoDetalle.ActivoFijo).State = EntityState.Unchanged; db.Entry(recepcionActivoFijoDetalle.RecepcionActivoFijo).State = EntityState.Unchanged; db.Entry(recepcionActivoFijoDetalle.Estado).State = EntityState.Unchanged; db.RecepcionActivoFijoDetalle.Add(recepcionActivoFijoDetalle); await db.SaveChangesAsync(); return(new Response { IsSuccess = true, Message = Mensaje.Satisfactorio, Resultado = recepcionActivoFijoDetalle }); } return(new Response { IsSuccess = false, Message = Mensaje.ExisteRegistro }); } catch (Exception ex) { await GuardarLogService.SaveLogEntry(new LogEntryTranfer { ApplicationName = Convert.ToString(Aplicacion.SwRm), ExceptionTrace = ex, Message = Mensaje.Excepcion, LogCategoryParametre = Convert.ToString(LogCategoryParameter.Critical), LogLevelShortName = Convert.ToString(LogLevelParameter.ERR), UserName = "", }); return(new Response { IsSuccess = false, Message = Mensaje.Error, }); } }