Ejemplo n.º 1
0
 private async Task SyncronizeData(DateTime?date = null)
 {
     await Task.WhenAll(new Task[]
     {
         Task.Run(() => OfertaRepository.SyncDataBaseAsync(date)),
         Task.Run(() => CarteiraProdutoRepository.SyncDataBaseAsync(date)),
         Task.Run(() => ProdutoRepository.SyncDataBaseAsync(date)),
         Task.Run(() => TipoRepository.SyncDataBaseAsync(date)),
         Task.Run(() => MarcaRepository.SyncDataBaseAsync(date)),
         Task.Run(() => EstabelecimentoRepository.SyncDataBaseAsync(date)),
         Task.Run(() => UnidadeMedidaRepository.SyncDataBaseAsync(date)),
         Task.Run(() => GrupoOfertaRepository.SyncDataBaseAsync(date)),
         Task.Run(() => HistoricoOfertaRepository.SyncDataBaseAsync(date)),
         Task.Run(() => ParticipanteGrupoRepository.SyncDataBaseAsync(date)),
         Task.Run(() => UserRepository.SyncDataBaseAsync(date)),
         Task.Run(() => CategoriaRepository.SyncDataBaseAsync(date)),
         Task.Run(() => MonitoramentoOfertaRepository.SyncDataBaseAsync(date)),
         Task.Run(() => ListaCompraRepository.SyncDataBaseAsync(date)),
         Task.Run(() => ParticipanteListaCompraRepository.SyncDataBaseAsync(date)),
         Task.Run(() => ParticipanteListaCompraRepository.SyncDataBaseAsync(date)),
         Task.Run(() => ProdutoListaCompraRepository.SyncDataBaseAsync(date)),
     });
 }
Ejemplo n.º 2
0
 public UnidadeMedidaController(UnidadeMedidaService service, UnidadeMedidaRepository rep, ILoggerFactory logger)
     : base(service, rep, logger)
 {
 }
Ejemplo n.º 3
0
 public UnidadeMedidaService(UnidadeMedidaRepository rep, ValidationContract validation, CurrentUser user, IUnitOfWork uow)
     : base(rep, validation, user, uow)
 {
 }
Ejemplo n.º 4
0
 public UnidadeMedidaServiceBase(UnidadeMedidaRepository rep, ValidationContract validation, CurrentUser user, IUnitOfWork uow)
     : base(rep, uow, validation)
 {
     this._rep  = rep;
     this._user = user;
 }
Ejemplo n.º 5
0
            // SD05 - Inteface de UM - Comunicação
            // Funcao - ZFXI_SD05C
            //[RfcServerFunction(Name = "ZGXI_SD05")]
            public static void StfcInterfaceUM(RfcServerContext context,
            IRfcFunction function)
            {
                // Exibe no console a interface que será executada
                Console.WriteLine("Received function call {0} from system {1}.", function.Metadata.Name, context.SystemAttributes.SystemID);

                // Mandar salvar o Condicao de Pagamento
                UnidadeMedidaRepository unidadeMedidaRepository = new UnidadeMedidaRepository();

                // Implementa repositorio antes do Foreach para evitar duplicações
                UnidadeMedida unidadeMedida = new UnidadeMedida();

                // Flag da interface que de Limpar tabela de dados
                Char deletar = function.GetChar("I_REFRESH");

                // exibe se o mesmo foi flegado
                Console.WriteLine(deletar);

                // Se estiver espaco em branco na variavel, não limpa a tabela da interface.
                if (deletar != ' ')
                {
                    // Apaga todos os registros da tabela pro_fornecedor
                    IList<UnidadeMedida> fromDB = unidadeMedidaRepository.ObterTodos();
                    foreach (UnidadeMedida dados in fromDB)
                    {
                        unidadeMedidaRepository.Excluir(dados);
                    }
                }

                // ZTBSD063
                IRfcTable it_unidadeMedida = function.GetTable("IT_UM");

                // Implementa Repositorio Rfc de resposta
                RfcRepository rep = context.Repository;

                // RETORNO - BAPIRET2
                RfcStructureMetadata bapiret2 = rep.GetStructureMetadata("BAPIRET2");
                IRfcStructure linha_retorno = bapiret2.CreateStructure();

                int v_cont = 0;
                foreach (IRfcStructure row in it_unidadeMedida)
                {                    
                                       
                    unidadeMedida.descricao        = row.GetString("MSEHL");
                    unidadeMedida.id_unidademedida = row.GetString("MSEHI");  
                    // Pacote
                    unidadeMedida.pacote           = row.GetString("PACOTE");
                    unidadeMedida.dimensao         = row.GetString("DIMID");
                    unidadeMedida.aprestecnica     = row.GetString("MSEH3");
                    // Data Cricao
                    string v_data_Cricao           = row.GetString("ERDAT");
                    unidadeMedida.data_criacao     = Convert.ToDateTime(v_data_Cricao);
                    // Hora de Criacao
                    unidadeMedida.hora_criacao     = row.GetString("ERZET");

                    //Console.WriteLine("CODIGO: " + unidadeMedida.id_unidademedida + " DESCRICAO: " + unidadeMedida.dimensao);               
                    try
                    {
                        v_cont = v_cont + 1;
                        if (deletar == ' ')
                        {
                            IList<UnidadeMedida> fromDB = unidadeMedidaRepository.ObterTodosComCampo("id_material", unidadeMedida.id_unidademedida);
                            foreach (UnidadeMedida dados in fromDB)
                            {
                                unidadeMedidaRepository.Excluir(dados);
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        // Em caso de erro retorna o erro e a descricao do material
                        Console.Write("entrou no exception");

                        IRfcTable retorno = function.GetTable("IT_RETURN");
                        linha_retorno.SetValue("TYPE", "E");
                        linha_retorno.SetValue("MESSAGE", ex.Message);
                        linha_retorno.SetValue("MESSAGE", "Erro ao inserir a Unidade de Medida: " + unidadeMedida.descricao + " - Id: " + unidadeMedida.id_unidademedida);
                        retorno.Insert(linha_retorno);
                    }

                    unidadeMedidaRepository.Salvar(unidadeMedida);
                    String PACOTE = row.GetString("PACOTE");
                    String ERDAT = row.GetString("ERDAT");
                    String ERZET = row.GetString("ERZET");
                }

                IRfcTable retornoSucesso = function.GetTable("IT_RETURN");
                linha_retorno.SetValue("TYPE", "S");
                linha_retorno.SetValue("MESSAGE", "Registros com Sucesso: " + v_cont);
                retornoSucesso.Insert(linha_retorno);
            }
Ejemplo n.º 6
0
 public UnidadeMedidaControllerBase(UnidadeMedidaService service, UnidadeMedidaRepository rep, ILoggerFactory logger)
 {
     this._service = service;
     this._rep     = rep;
     this._logger  = logger.CreateLogger <UnidadeMedidaController>();
 }