예제 #1
0
        public async Task <MedicamentoDto> Update(MedicamentoDto input)
        {
            var medicamento = ObjectMapper.Map <Medicamento>(input);
            await _medicamentoRepository.UpdateAsync(medicamento);

            return(ObjectMapper.Map <MedicamentoDto>(medicamento));
        }
 public void SalvarMedicamento(MedicamentoDto medicamento)
 {
     using (MedicamentoFacade facade = new MedicamentoFacade())
     {
         facade.SalvarMedicamento(ref medicamento);
         medicamentosHub.Invoke("NotificarAlteracao", medicamento.Codigo, medicamento.Nome, medicamento.Forma, medicamento.Apresentacao);
     }
 }
예제 #3
0
        public async Task <MedicamentoDto> Create(MedicamentoDto input)
        {
            var medicamento = ObjectMapper.Map <Medicamento>(input);
            await _medicamentoRepository.InsertAsync(medicamento);

            CurrentUnitOfWork.SaveChanges();

            return(ObjectMapper.Map <MedicamentoDto>(medicamento));
        }
        public void SalvarMedicamento(ref MedicamentoDto dto)
        {
            Log.Info("Salvando medicamento: " + dto.Nome);

            //Salva ou atualiza a medicamento
            medicamentoBO.Salvar(dto);

            //Executa as alteracoes no banco de dados
            Dao.SaveChanges();
        }
예제 #5
0
        public void Salvar(MedicamentoDto medicamentoDto)
        {
            bool        insert      = false;
            Medicamento medicamento = Dao.Buscar <Medicamento>(m => m.Id.Equals(medicamentoDto.Codigo)).FirstOrDefault();

            insert = medicamento == null;

            medicamento = AutoMapper.Mapper.Map(medicamentoDto, medicamento);
            if (insert)
            {
                Inserir(medicamento);
            }
            else
            {
                Atualizar(medicamento);
            }
        }
예제 #6
0
        public void TestSalvarMedicamento()
        {
            using (MedicamentoFacade facade = new MedicamentoFacade())
            {
                MedicamentoDto medicamento = new MedicamentoDto();

                medicamento = new MedicamentoDto
                {
                    Registro          = 1,
                    Processo          = 1,
                    ClasseTerapeutica = "PRODUTO P.TERAPIA SINTOMATICA DA GRIPE",
                    Nome         = "ACIDO ASCORBICO + PARACETAMOL + CLORIDRATO DE FENILEFRINA",
                    Apresentacao = "100 MG + 400 MG + 10 MG COM CT 5 STRIP X 4",
                    Forma        = "COMPRIMIDO SIMPLES"
                };

                facade.SalvarMedicamento(ref medicamento);

                var lista = facade.BuscarMedicamentoPorNome("ACIDO ASCORBICO + PARACETAMOL + CLORIDRATO DE FENILEFRINA");

                Assert.IsTrue(lista != null);
            }
        }
예제 #7
0
        //public string NombreProducto(string IdProductoDetalle)
        //{
        //    try
        //    {
        //        using (var cnx = ConnectionHelper.GetConnection)
        //        {
        //            if (cnx.State != ConnectionState.Open) cnx.Open();

        //            var query = " select IdProductoDetalle " +
        //                        " from productodetalle pd " +
        //                        " inner join producto p on pd.v_IdProducto = p.v_IdProducto " +
        //                        " where pd.v_IdProductoDetalle = '" + IdProductoDetalle + "'";

        //            var listado = cnx.Query<MedicamentoDto>(query).ToList();

        //            return listado[0].Nombre;
        //        }
        //    }
        //    catch (Exception ex)
        //    {

        //        throw;
        //    }
        //}

        public void AddUpdateMedicamento(ref OperationResult pobjOperationResult, MedicamentoDto pobjDto)
        {
            try
            {
                using (var dbContext = ConnectionHelper.ContasolContext)
                {
                    var entidad = dbContext.productodetalle.FirstOrDefault(p => p.v_IdProductoDetalle == pobjDto.IdProductoDetalle);

                    var nombre        = pobjDto.Nombre.Trim();
                    var presentacion  = pobjDto.Presentacion.Trim();
                    var concentracion = pobjDto.Concentracion.Trim();
                    if (entidad == null)
                    {
                        var yaExiste =
                            dbContext.producto.Any(p => p.v_Descripcion.Trim().Equals(nombre) &&
                                                   p.v_Presentacion.Trim().Equals(presentacion) && p
                                                   .v_Concentracion.Trim()
                                                   .Equals(concentracion));

                        if (yaExiste)
                        {
                            throw new Exception("El medicamento ya fue registrado anteriormente!");
                        }
                        var productoToInsert = new productoDto
                        {
                            v_Descripcion             = nombre,
                            v_Presentacion            = presentacion,
                            v_Concentracion           = concentracion,
                            v_AccionFarmaco           = pobjDto.AccionFarmaco,
                            v_Ubicacion               = pobjDto.Ubicacion,
                            i_IdProveedor             = -1,
                            i_IdTipoProducto          = 1,
                            i_IdUsuario               = -1,
                            i_EsAfectoDetraccion      = 0,
                            i_IdUnidadMedida          = pobjDto.IdUnidadMedida,
                            d_Empaque                 = 1,
                            v_CodInterno              = pobjDto.CodInterno,
                            i_EsActivo                = 1,
                            i_EsActivoFijo            = 0,
                            i_EsLote                  = 0,
                            i_EsServicio              = 0,
                            i_SolicitarNroLoteIngreso = 1,
                            i_SolicitarNroLoteSalida  = 1,
                            i_NombreEditable          = 0,
                            i_ValidarStock            = 1,
                            v_IdLinea                 = pobjDto.IdLinea
                        };
                        var op         = new SAMBHS.Common.Resource.OperationResult();
                        var productoBl = new ProductoBL();
                        productoBl.InsertarProducto(ref op, productoToInsert, null, dbContext);
                    }
                    else
                    {
                        var prodOriginal = entidad.producto;
                        prodOriginal.v_Descripcion             = nombre;
                        prodOriginal.v_Presentacion            = presentacion;
                        prodOriginal.v_Concentracion           = concentracion;
                        prodOriginal.v_AccionFarmaco           = pobjDto.AccionFarmaco;
                        prodOriginal.v_Ubicacion               = pobjDto.Ubicacion;
                        prodOriginal.i_IdUnidadMedida          = pobjDto.IdUnidadMedida;
                        prodOriginal.d_Empaque                 = 1;
                        prodOriginal.v_CodInterno              = pobjDto.CodInterno;
                        prodOriginal.i_EsActivo                = 1;
                        prodOriginal.i_EsActivoFijo            = 0;
                        prodOriginal.i_EsLote                  = 0;
                        prodOriginal.i_EsServicio              = 0;
                        prodOriginal.i_SolicitarNroLoteIngreso = 1;
                        prodOriginal.i_SolicitarNroLoteSalida  = 1;
                        dbContext.producto.ApplyCurrentValues(prodOriginal);
                    }
                    dbContext.SaveChanges();
                    pobjOperationResult.Success = 1;
                }
            }
            catch (Exception ex)
            {
                pobjOperationResult.Success          = 0;
                pobjOperationResult.ErrorMessage     = ex.Message;
                pobjOperationResult.ExceptionMessage = ex.InnerException != null
                    ? ex.InnerException.Message
                    : string.Empty;
                pobjOperationResult.AdditionalInformation = "MedicamentoBl.AddUpdateMedicamento()";
            }
        }