protected void TreeViewMedicamento_SelectedNodeChanged(object sender, EventArgs e) { TreeNode no = TreeViewMedicamento.SelectedNode; ViverMais.Model.Medicamento medicamento = Factory.GetInstance<IFarmaciaServiceFacade>().BuscarPorCodigo<ViverMais.Model.Medicamento>(int.Parse(no.Value.Split(';')[0])); ViverMais.Model.ElencoMedicamento elenco = Factory.GetInstance<IFarmaciaServiceFacade>().BuscarPorCodigo<ViverMais.Model.ElencoMedicamento>(int.Parse(no.Value.Split(';')[1])); ViverMais.Model.RequisicaoMedicamento rm = (ViverMais.Model.RequisicaoMedicamento)Session["rm"]; ViverMais.Model.ItemRequisicao item = new ViverMais.Model.ItemRequisicao(); item.Medicamento = medicamento; item.Elenco = elenco; item.Requisicao = Factory.GetInstance<IFarmaciaServiceFacade>().BuscarPorCodigo<ViverMais.Model.RequisicaoMedicamento>(rm.Codigo); IList<ViverMais.Model.ItemRequisicao> itens; if (Session["itens"] != null) itens = (IList<ViverMais.Model.ItemRequisicao>)Session["itens"]; else itens = new List<ViverMais.Model.ItemRequisicao>(); foreach (ViverMais.Model.ItemRequisicao i in itens) { if (i.Medicamento.Codigo == item.Medicamento.Codigo && i.Elenco.Codigo == item.Elenco.Codigo) return; } itens.Add(item); gridItens.DataSource = itens; gridItens.DataBind(); Session["itens"] = itens; gridItens.Focus(); }
protected void gridItens_RowUpdating(object sender, GridViewUpdateEventArgs e) { IList<ViverMais.Model.ItemRequisicao> itens = (IList<ViverMais.Model.ItemRequisicao>)Session["itens"]; GridViewRow r = gridItens.Rows[e.RowIndex]; itens.ElementAt<ViverMais.Model.ItemRequisicao>(e.RowIndex).QtdPedidaDistrito = int.Parse(((TextBox)r.FindControl("TextBox_Quantidade")).Text); int co_itemRequisicao = itens.ElementAt<ViverMais.Model.ItemRequisicao>(e.RowIndex).Codigo; ViverMais.Model.ItemRequisicao item; if (co_itemRequisicao == 0) { item = new ViverMais.Model.ItemRequisicao(); item.Medicamento = Factory.GetInstance<IFarmaciaServiceFacade>().BuscarPorCodigo<ViverMais.Model.Medicamento>(itens.ElementAt<ViverMais.Model.ItemRequisicao>(e.RowIndex).Medicamento.Codigo); item.Requisicao = Factory.GetInstance<IFarmaciaServiceFacade>().BuscarPorCodigo<ViverMais.Model.RequisicaoMedicamento>(itens.ElementAt<ViverMais.Model.ItemRequisicao>(e.RowIndex).Requisicao.Codigo); item.Elenco = Factory.GetInstance<IFarmaciaServiceFacade>().BuscarPorCodigo<ViverMais.Model.ElencoMedicamento>(itens.ElementAt<ViverMais.Model.ItemRequisicao>(e.RowIndex).Elenco.Codigo); item.Cod_Atendimento = 0; DateTime dataUltimaRequisicao = Factory.GetInstance<IRequisicaoMedicamento>().BuscarDataUltimaRequisicao(); int consumoDispensacao = Factory.GetInstance<IRequisicaoMedicamento>().CalculaConsumoDispensacao(dataUltimaRequisicao, DateTime.Today, itens.ElementAt<ViverMais.Model.ItemRequisicao>(e.RowIndex).Medicamento.Codigo, itens.ElementAt<ViverMais.Model.ItemRequisicao>(e.RowIndex).Requisicao.Farmacia.Codigo); item.Consumo = consumoDispensacao; item.SaldoAtual = Factory.GetInstance<IRequisicaoMedicamento>().BuscarSaldoAtual(itens.ElementAt<ViverMais.Model.ItemRequisicao>(e.RowIndex).Medicamento.Codigo, itens.ElementAt<ViverMais.Model.ItemRequisicao>(e.RowIndex).Requisicao.Farmacia.Codigo); item.Solicitante = "D"; item.QtdPedida = 0; } else item = Factory.GetInstance<IRequisicaoMedicamento>().BuscarPorCodigo<ViverMais.Model.ItemRequisicao>(co_itemRequisicao); item.QtdPedidaDistrito = int.Parse(((TextBox)r.FindControl("TextBox_Quantidade")).Text); Factory.GetInstance<IFarmaciaServiceFacade>().Salvar(item); itens.ElementAt<ViverMais.Model.ItemRequisicao>(e.RowIndex).Codigo = item.Codigo; r.BackColor = Color.WhiteSmoke; gridItens.EditIndex = -1; Session["itens"] = itens; RecarregaGrid(); }