/// <summary> /// Método para listar as unidade de medidas /// </summary> /// <param name="entradaUnidadeMedida.UnidadeMedidas">Objeto com os dados do filtro</param> /// <returns>Contrato.RetornoUnidadeMedida</returns> internal static Contrato.RetornoUnidadeMedida ListarUnidadeMedida(Contrato.EntradaUnidadeMedida entradaUnidadeMedida) { // Objeto que recebe o retorno do método Contrato.RetornoUnidadeMedida retUnidadeMedida = new Contrato.RetornoUnidadeMedida(); // Objeto que recebe o retorno da sessão Contrato.RetornoSessao retSessao = Negocio.Sessao.ValidarSessao(new Contrato.Sessao() { Login = entradaUnidadeMedida.UsuarioLogado, Chave = entradaUnidadeMedida.Chave }); // Verifica se o usuário está autenticado if (retSessao.Codigo == Contrato.Constantes.COD_RETORNO_SUCESSO) { // Verifica se a empresa não foi informada if (string.IsNullOrWhiteSpace(entradaUnidadeMedida.EmpresaLogada.Id.ToString())) { entradaUnidadeMedida.EmpresaLogada.Id = Guid.Empty; } // Loga no banco de dados Dados.BRASIL_DIDATICOS context = new Dados.BRASIL_DIDATICOS(); // Busca a unidade de medida no banco List<Contrato.UnidadeMedida> lstUnidadeMedidas = (from um in context.T_UNIDADE_MEDIDA where (um.BOL_ATIVO == entradaUnidadeMedida.UnidadeMedida.Ativo) && (entradaUnidadeMedida.UnidadeMedida.Codigo == null || entradaUnidadeMedida.UnidadeMedida.Codigo == string.Empty || um.COD_UNIDADE_MEDIDA.Contains(entradaUnidadeMedida.UnidadeMedida.Codigo)) && (entradaUnidadeMedida.UnidadeMedida.Nome == null || entradaUnidadeMedida.UnidadeMedida.Nome == string.Empty || um.NOME_UNIDADE_MEDIDA.Contains(entradaUnidadeMedida.UnidadeMedida.Nome)) && (entradaUnidadeMedida.EmpresaLogada.Id == Guid.Empty || um.ID_EMPRESA == entradaUnidadeMedida.EmpresaLogada.Id) select new Contrato.UnidadeMedida { Id = um.ID_UNIDADE_MEDIDA, Codigo = um.COD_UNIDADE_MEDIDA, Nome = um.NOME_UNIDADE_MEDIDA, Descricao = um.DES_UNIDADE_MEDIDA, Ativo = um.BOL_ATIVO }).ToList(); // Verifica se foi encontrado algum registro if (lstUnidadeMedidas.Count > 0) { // Preenche o objeto de retorno retUnidadeMedida.Codigo = Contrato.Constantes.COD_RETORNO_SUCESSO; retUnidadeMedida.UnidadeMedidas = lstUnidadeMedidas; } else { // Preenche o objeto de retorno retUnidadeMedida.Codigo = Contrato.Constantes.COD_RETORNO_VAZIO; retUnidadeMedida.Mensagem = "Não existe dados para o filtro informado."; } } else { // retorna quando o usuário não está autenticado retUnidadeMedida.Codigo = retSessao.Codigo; retUnidadeMedida.Mensagem = retSessao.Mensagem; } // retorna os dados return retUnidadeMedida; }
/// <summary> /// Método para salvar o unidade de medida do produto /// </summary> /// <param name="UnidadeMedidas">Objeto com os dados do unidade de medida</param> /// <returns>Contrato.RetornoUnidadeMedida</returns> internal static Contrato.RetornoUnidadeMedida SalvarUnidadeMedidaProduto(Dados.PRODUTO Produto, string UsuarioLogado, Contrato.UnidadeMedida UnidadeMedida) { // Objeto que recebe o retorno do método Contrato.RetornoUnidadeMedida retUnidadeMedida = new Contrato.RetornoUnidadeMedida(); // Verifica se as informações do unidademedida foram informadas string strValidacao = ValidarUnidadeMedidaPreenchido(UnidadeMedida); // Se existe algum erro if (strValidacao.Length > 0) { retUnidadeMedida.Codigo = Contrato.Constantes.COD_FILTRO_VAZIO; retUnidadeMedida.Mensagem = strValidacao; } else { // Cria a unidade de medida Dados.PRODUTO_UNIDADE_MEDIDA tProdutoUnidadeMedida = new Dados.PRODUTO_UNIDADE_MEDIDA() { ID_PRODUTO_UNIDADE_MEDIDA = Guid.NewGuid(), ID_PRODUTO = Produto.ID_PRODUTO, ID_UNIDADE_MEDIDA = UnidadeMedida.Id, NUM_QUANTIDADE = UnidadeMedida.Quantidade, NUM_QUANTIDADE_ITEM = UnidadeMedida.QuantidadeItens, LOGIN_USUARIO = UsuarioLogado, DATA_ATUALIZACAO = DateTime.Now }; Produto.T_PRODUTO_UNIDADE_MEDIDA.Add(tProdutoUnidadeMedida); // Preenche o objeto de retorno retUnidadeMedida.Codigo = Contrato.Constantes.COD_RETORNO_SUCESSO; } // retorna dos dados return retUnidadeMedida; }
/// <summary> /// Método para salvar a unidade de medida /// </summary> /// <param name="UnidadeMedidas">Objeto com os dados da unidade de medida</param> /// <returns>Contrato.RetornoUnidadeMedida</returns> internal static Contrato.RetornoUnidadeMedida SalvarUnidadeMedida(Contrato.EntradaUnidadeMedida entradaUnidadeMedida) { // Objeto que recebe o retorno do método Contrato.RetornoUnidadeMedida retUnidadeMedida = new Contrato.RetornoUnidadeMedida(); // Verifica se as informações do unidademedida foram informadas string strValidacao = ValidarUnidadeMedidaPreenchido(entradaUnidadeMedida.UnidadeMedida); // Objeto que recebe o retorno da sessão Contrato.RetornoSessao retSessao = Negocio.Sessao.ValidarSessao(new Contrato.Sessao() { Login = entradaUnidadeMedida.UsuarioLogado, Chave = entradaUnidadeMedida.Chave }); // Verifica se o usuário está autenticado if (retSessao.Codigo == Contrato.Constantes.COD_RETORNO_SUCESSO) { // Se existe algum erro if (strValidacao.Length > 0) { retUnidadeMedida.Codigo = Contrato.Constantes.COD_FILTRO_VAZIO; retUnidadeMedida.Mensagem = strValidacao; } else { // Loga no banco de dados Dados.BRASIL_DIDATICOS context = new Dados.BRASIL_DIDATICOS(); // Busca o unidademedida no banco List<Dados.UNIDADE_MEDIDA> lstUnidadeMedidas = (from um in context.T_UNIDADE_MEDIDA where (um.COD_UNIDADE_MEDIDA == entradaUnidadeMedida.UnidadeMedida.Codigo && (entradaUnidadeMedida.EmpresaLogada.Id == Guid.Empty || um.ID_EMPRESA == entradaUnidadeMedida.EmpresaLogada.Id)) || (entradaUnidadeMedida.Novo == null && entradaUnidadeMedida.UnidadeMedida.Id == um.ID_UNIDADE_MEDIDA) select um).ToList(); // Verifica se foi encontrado algum registro if (lstUnidadeMedidas.Count > 0 && entradaUnidadeMedida.Novo != null && (bool)entradaUnidadeMedida.Novo) { // Preenche o objeto de retorno retUnidadeMedida.Codigo = Contrato.Constantes.COD_REGISTRO_DUPLICADO; retUnidadeMedida.Mensagem = string.Format("A unidade de medida de código '{0}' já existe!", lstUnidadeMedidas.First().COD_UNIDADE_MEDIDA); } else { // Se existe o unidademedida if (lstUnidadeMedidas.Count > 0) { // Atualiza o unidademedida lstUnidadeMedidas.First().NOME_UNIDADE_MEDIDA = entradaUnidadeMedida.UnidadeMedida.Nome; lstUnidadeMedidas.First().DES_UNIDADE_MEDIDA = entradaUnidadeMedida.UnidadeMedida.Descricao; lstUnidadeMedidas.First().BOL_ATIVO = entradaUnidadeMedida.UnidadeMedida.Ativo; lstUnidadeMedidas.First().DATA_ATUALIZACAO = DateTime.Now; lstUnidadeMedidas.First().LOGIN_USUARIO = entradaUnidadeMedida.UsuarioLogado; } else { // Cria o unidademedida Dados.UNIDADE_MEDIDA tUnidadeMedida = new Dados.UNIDADE_MEDIDA(); tUnidadeMedida.ID_UNIDADE_MEDIDA = Guid.NewGuid(); tUnidadeMedida.COD_UNIDADE_MEDIDA = entradaUnidadeMedida.UnidadeMedida.Codigo; tUnidadeMedida.NOME_UNIDADE_MEDIDA = entradaUnidadeMedida.UnidadeMedida.Nome; tUnidadeMedida.DES_UNIDADE_MEDIDA = entradaUnidadeMedida.UnidadeMedida.Descricao; tUnidadeMedida.ID_EMPRESA = entradaUnidadeMedida.EmpresaLogada.Id; tUnidadeMedida.BOL_ATIVO = entradaUnidadeMedida.UnidadeMedida.Ativo; tUnidadeMedida.DATA_ATUALIZACAO = DateTime.Now; tUnidadeMedida.LOGIN_USUARIO = entradaUnidadeMedida.UsuarioLogado; context.AddToT_UNIDADE_MEDIDA(tUnidadeMedida); } // Salva as alterações context.SaveChanges(); // Preenche o objeto de retorno retUnidadeMedida.Codigo = Contrato.Constantes.COD_RETORNO_SUCESSO; } } } else { // retorna quando o usuário não está autenticado retUnidadeMedida.Codigo = retSessao.Codigo; retUnidadeMedida.Mensagem = retSessao.Mensagem; } // retorna dos dados return retUnidadeMedida; }