public ActionResult Edit(int stockFarmacia, int id, int hospitalId) { StockFarmacia insumo = db.StockFarmacias.Find(id); insumo.stockFarmacia = stockFarmacia; db.Entry(insumo).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index", "StockFarmacia", new { hospitalId = hospitalId })); }
private void ActualizarStockFarmacia(Pedido pedido, DetallePedido item) { StockFarmacia insumo = db.StockFarmacias.Where(p => p.hospitalId == pedido.hospitalId && p.insumoId == item.insumoId).First(); if (insumo != null) { insumo.stockFarmacia = insumo.stockFarmacia + item.cantidadAutorizada; db.Entry(insumo).State = EntityState.Modified; } //TODO: Si el insumo no existe se deberia insertar en la BD }
private void AddToStockFarmacia(int idInsumo) { var hospitalesList = db.Hospitales.Select(x => x.id).ToList(); foreach (int idHospital in hospitalesList) { StockFarmacia stockFarmacia = new StockFarmacia(); stockFarmacia.insumoId = idInsumo; stockFarmacia.hospitalId = idHospital; stockFarmacia.stockFarmacia = 0; db.StockFarmacias.Add(stockFarmacia); } }
public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } StockFarmacia insumo = db.StockFarmacias.Where(p => p.id == id).Include(s => s.insumo).First(); if (insumo == null) { return(HttpNotFound()); } return(View(insumo)); }
//POST: EntregaPedido public async Task <HttpResponseMessage> EntregaPedido(int?id) { HttpResponseMessage response; if (id == null) { return(new HttpResponseMessage(HttpStatusCode.BadRequest)); } try { var pedido = db.Pedidos.Where(p => p.id == id).Include(t => t.estado).Include(d => d.detallesPedido).First(); if (pedido.estadoId == 3) { pedido.estadoId = 6; foreach (DetallePedido item in pedido.detallesPedido) { StockFarmacia insumo = db.StockFarmacias.Where(p => p.hospitalId == pedido.hospitalId && p.insumoId == item.insumoId).First(); if (insumo != null) { insumo.stockFarmacia = insumo.stockFarmacia + item.cantidadAutorizada; db.Entry(insumo).State = EntityState.Modified; } //TODO: Si el insumo no existe se deberia insertar en la BD } db.Entry(pedido).State = EntityState.Modified; db.SaveChanges(); await SendEmailCambioEstadoAsync(pedido); } else { response = new HttpResponseMessage(HttpStatusCode.NotAcceptable); /*response.Content = new StringContent("El pedido ingresado debe estar en estado " + * "En Proceso de Envío y el estado del pedido ingresado es " + pedido.estado.nombreEstado);*/ return(response); } } catch (Exception) { response = new HttpResponseMessage(HttpStatusCode.InternalServerError); //response.Content = new StringContent("Ocurrió un error al intentar realizar el cambio de estado"); return(response); } response = new HttpResponseMessage(HttpStatusCode.Accepted); //response.Content = new StringContent("El pedido cambió correctamente a estado Entregado"); return(response); }
private void impactarStockFarmaciaYPresupuesto(Reclamo reclamo) { decimal montoReclamado = 0; foreach (DetalleReclamo detalleReclamo in reclamo.detallesReclamo) { StockFarmacia stockFarmacia = db.StockFarmacias.Where(s => s.insumoId == detalleReclamo.insumoId && s.hospitalId == reclamo.hospitalId) .FirstOrDefault(); stockFarmacia.stockFarmacia -= detalleReclamo.cantidad; db.Entry(stockFarmacia).State = EntityState.Modified; var precioInsumo = db.Insumos.Where(p => p.id == detalleReclamo.insumoId).First().precioUnitario; montoReclamado += precioInsumo * detalleReclamo.cantidad; agregarHistoricoFarmacia(detalleReclamo, reclamo.fechaInicioReclamo, reclamo.pedidoId, stockFarmacia.stockFarmacia, reclamo.hospitalId); } var hospital = db.Hospitales.Where(h => h.id == reclamo.hospitalId).First(); hospital.presupuestoDisponible += montoReclamado; db.Entry(hospital).State = EntityState.Modified; db.SaveChanges(); }
private void ActualizarItem(DetalleRemito item, int hospitalId, Remito remito) { StockFarmacia insumo = db.StockFarmacias.Where(p => p.hospitalId == hospitalId && p.insumoId == item.insumoId).First(); if (insumo != null) { insumo.stockFarmacia = insumo.stockFarmacia + item.cantidadEntregada; db.Entry(insumo).State = EntityState.Modified; agregarHistoricoFarmacia(item, insumo.stockFarmacia, remito, hospitalId); } else { var newStock = new StockFarmacia(); newStock.hospitalId = hospitalId; newStock.insumoId = item.insumoId; newStock.stockFarmacia = item.cantidadEntregada; db.StockFarmacias.Add(newStock); agregarHistoricoFarmacia(item, insumo.stockFarmacia, remito, hospitalId); } }