Ejemplo n.º 1
0
        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();
        }
Ejemplo n.º 2
0
        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();
        }