public void gerarCaged(string pCompetencia, string pAlteracao) { using (ServicoFolhaClient serv = new ServicoFolhaClient()) { Empresa = serv.selectEmpresaId(Empresa.Id); } ComponenteFolha.ComponenteFolha folha = new ComponenteFolha.ComponenteFolha(); // REGISTRO A (AUTORIZADO) FolhaCagedRegistroTipoA RegistroTipoA = new FolhaCagedRegistroTipoA(); RegistroTipoA.Competencia = pCompetencia; RegistroTipoA.Alteracao = pAlteracao; RegistroTipoA.TipoIdentificador = "1"; //CNPJ RegistroTipoA.NumeroIdentificadorDoAutorizado = Empresa.Cnpj; RegistroTipoA.NomeRazaoSocialDoAutorizado = Empresa.RazaoSocial; RegistroTipoA.Endereco = Empresa.endereco.logradouro + " " + Empresa.endereco.numero; RegistroTipoA.Cep = Empresa.endereco.cep; RegistroTipoA.UF = Empresa.endereco.uf; RegistroTipoA.Telefone = Empresa.endereco.fone; folha.CagedRegistroTipoA = RegistroTipoA; // REGISTRO B (ESTABELECIMENTO) FolhaCagedRegistroTipoB RegistroTipoB = new FolhaCagedRegistroTipoB(); RegistroTipoB.TipoIdentificador = "1"; //CNPJ RegistroTipoB.NumeroIdentificadorDoEstabelecimento = Empresa.Cnpj; RegistroTipoB.PrimeiraDeclaracao = "1"; RegistroTipoB.Alteracao = pAlteracao; RegistroTipoB.Cep = Empresa.endereco.cep; RegistroTipoB.NomeRazaoSocialDoEstabelecimento = Empresa.RazaoSocial; RegistroTipoB.Endereco = Empresa.endereco.logradouro + " " + Empresa.endereco.numero; RegistroTipoB.Bairro = Empresa.endereco.bairro; RegistroTipoB.UF = Empresa.endereco.uf; RegistroTipoB.TotalDeEmpregadosExistentesNoPrimeiroDia = "0"; RegistroTipoB.PorteDoEstabelecimento = "1"; RegistroTipoB.Cnae2ComSubClasse = ""; RegistroTipoB.Telefone = Empresa.endereco.fone; RegistroTipoB.Email = Empresa.Email; folha.CagedRegistroTipoB = RegistroTipoB; //REGISTRO C (MOVIMENTAÇÃO) List <ColaboradorDTO> listaColaborador = new List <ColaboradorDTO>(); try { using (ServicoFolhaClient serv = new ServicoFolhaClient()) { listaColaborador = serv.selectColaborador(new ColaboradorDTO()); } } catch (Exception ex) { throw ex; } if (listaColaborador.Count > 0) { List <FolhaCagedRegistroTipoC> listaRegistroC = new List <FolhaCagedRegistroTipoC>(); for (int i = 0; i < listaColaborador.Count; i++) { FolhaCagedRegistroTipoC RegistroTipoC = new FolhaCagedRegistroTipoC(); RegistroTipoC.TipoIdentificador = "1"; RegistroTipoC.NumeroIdentificadorDoEstabelecimento = Empresa.Cnpj; RegistroTipoC.PisPasep = listaColaborador[i].PisNumero; RegistroTipoC.Admissao = listaColaborador[i].DataAdmissao.Value; listaRegistroC.Add(RegistroTipoC); } folha.ListaCagedRegistroTipoC = listaRegistroC; } //REGISTRO X (ACERTO) // Implementado a critério do Participante do T2Ti ERP SaveFileDialog dialog = new SaveFileDialog(); dialog.Filter = "Arquivo Caged (*.txt) | *.txt"; dialog.Title = "Selecione o arquivo"; dialog.InitialDirectory = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location); if (dialog.ShowDialog() == true) { folha.gerarArquivoCaged(dialog.FileName); } }
public void gerarSefip(string pCompetencia, string pCodigoRecohimento) { using (ServicoFolhaClient serv = new ServicoFolhaClient()) { Empresa = serv.selectEmpresaId(Empresa.Id); } ComponenteFolha.ComponenteFolha folha = new ComponenteFolha.ComponenteFolha(); // REGISTRO TIPO 00 – Informações do Responsável (Header do arquivo) FolhaSefipRegistroTipo00 RegistroTipo00 = new FolhaSefipRegistroTipo00(); RegistroTipo00.TipoRemessa = "1"; //1=GFIP RegistroTipo00.TipoInscricaoResponsavel = "1"; //1=CNPJ RegistroTipo00.InscricaoResponsavel = Empresa.Cnpj; RegistroTipo00.NomeResponsavel = Empresa.RazaoSocial; RegistroTipo00.NomeContato = Empresa.RazaoSocial; RegistroTipo00.Logradouro = Empresa.endereco.logradouro; RegistroTipo00.Bairro = Empresa.endereco.bairro; RegistroTipo00.CEP = Empresa.endereco.cep; RegistroTipo00.Cidade = Empresa.endereco.cidade; RegistroTipo00.UnidadeFederacao = Empresa.endereco.uf; RegistroTipo00.TelefoneContato = Empresa.endereco.fone; RegistroTipo00.EnderecoInternetContato = Empresa.Email; RegistroTipo00.Competencia = pCompetencia; RegistroTipo00.CodigoRecolhimento = pCodigoRecohimento; RegistroTipo00.IndicadorRecolhimentoFGTS = "1"; //1 (GRF no prazo) RegistroTipo00.ModalidadeArquivo = "1"; //1 - Declaração ao FGTS e à Previdência RegistroTipo00.TipoInscricaoFornecedorFolhaPagamento = "1"; //1=CNPJ RegistroTipo00.DataRecolhimentoFGTS = DateTime.Now; RegistroTipo00.IndicadorRecolhimentoPrevidenciaSocial = "1"; //1 (no prazo) RegistroTipo00.DataRecolhimentoPrevidenciaSocial = DateTime.Now; RegistroTipo00.TipoInscricaoFornecedorFolhaPagamento = "1"; //1=CNPJ RegistroTipo00.InscricaoFornecedorFolhaPagamento = Empresa.Cnpj; folha.SefipRegistroTipo00 = RegistroTipo00; //REGISTRO TIPO 10 – Informações da Empresa (Header da empresa ) FolhaSefipRegistroTipo10 RegistroTipo10 = new FolhaSefipRegistroTipo10(); RegistroTipo10.TipoInscricaoEmpresa = "1"; //1=CNPJ RegistroTipo10.InscricaoEmpresa = Empresa.Cnpj; RegistroTipo10.NomeEmpresaRazaoSocial = Empresa.RazaoSocial; RegistroTipo10.Logradouro = Empresa.endereco.logradouro; RegistroTipo10.Bairro = Empresa.endereco.bairro; RegistroTipo10.Cep = Empresa.endereco.cep; RegistroTipo10.Cidade = Empresa.endereco.cidade; RegistroTipo10.UnidadeFederacao = Empresa.endereco.uf; RegistroTipo10.TelefoneContato = Empresa.endereco.fone; RegistroTipo10.IndicadorAlteracaoEndereco = "N"; RegistroTipo10.CNAE = ""; //Empresa.CodigoCnaePrincipal; RegistroTipo10.IndicadorAlteracaoCNAE = "N"; RegistroTipo10.AliquotaRAT = "00"; //Será zeros para FPAS 604, 647, 825, 833 e 868 (empregador doméstico) e para a empresa optante pelo SIMPLES. RegistroTipo10.CodigoCentralizacao = "1"; //1 (centralizadora) RegistroTipo10.SIMPLES = "2"; //2 – Optante; RegistroTipo10.FPAS = ""; //Empresa.DescricaoFpas; RegistroTipo10.CodigoOutrasEntidades = Empresa.CodigoTerceiros; RegistroTipo10.CodigoPagamentoGPS = Empresa.CodigoGps.ToString(); folha.SefipRegistroTipo10 = RegistroTipo10; //REGISTRO TIPO 12 – Informações Adicionais do Recolhimento da Empresa (Opcional) //{ Implementado a critério do Participante do T2Ti ERP } //REGISTRO TIPO 13 – Alteração Cadastral Trabalhador (Opcional) //{ Implementado a critério do Participante do T2Ti ERP } //REGISTRO TIPO 14 – Inclusão/Alteração Endereço do Trabalhador (Opcional) //{ Implementado a critério do Participante do T2Ti ERP } //REGISTRO TIPO 20 – Registro do Tomador de Serviço/Obra de Construção Civil (Opcional) //{ Implementado a critério do Participante do T2Ti ERP } //REGISTRO TIPO 21 - Registro de informações adicionais do Tomador de Serviço/Obra de Const. Civil (Opcional) //{ Implementado a critério do Participante do T2Ti ERP } //REGISTRO TIPO 30 - Registro do Trabalhador List <ColaboradorDTO> listaColaborador = new List <ColaboradorDTO>(); try { using (ServicoFolhaClient serv = new ServicoFolhaClient()) { listaColaborador = serv.selectColaborador(new ColaboradorDTO()); } } catch (Exception ex) { throw ex; } if (listaColaborador.Count > 0) { List <FolhaSefipRegistroTipo30> listaRegistro30 = new List <FolhaSefipRegistroTipo30>(); for (int i = 0; i < listaColaborador.Count; i++) { FolhaSefipRegistroTipo30 RegistroTipo30 = new FolhaSefipRegistroTipo30(); RegistroTipo30.TipoInscricaoEmpresa = RegistroTipo10.TipoInscricaoEmpresa; RegistroTipo30.InscricaoEmpresa = RegistroTipo10.InscricaoEmpresa; RegistroTipo30.PISPASEPCI = listaColaborador[i].PisNumero; RegistroTipo30.DataAdmissao = listaColaborador[i].DataAdmissao.Value; RegistroTipo30.CategoriaTrabalhador = listaColaborador[i].CategoriaSefip; RegistroTipo30.NomeTrabalhador = listaColaborador[i].Pessoa.Nome; RegistroTipo30.MatriculaEmpregado = listaColaborador[i].Matricula; RegistroTipo30.NumeroCTPS = listaColaborador[i].CtpsNumero; RegistroTipo30.SerieCTPS = listaColaborador[i].CtpsSerie; RegistroTipo30.DataOpcao = listaColaborador[i].FgtsDataOpcao.Value; listaRegistro30.Add(RegistroTipo30); } folha.ListaSefipRegistroTipo30 = listaRegistro30; } //REGISTRO TIPO 32 – Movimentação do Trabalhador (Opcional) //{ Implementado a critério do Participante do T2Ti ERP } //REGISTRO TIPO 50– Empresa Com Recolhimento pelos códigos 027, 046, 604 e 736 (Header da empresa ) (PARA IMPLEMENTAÇÃO FUTURA) //{ Implementado a critério do Participante do T2Ti ERP } //REGISTRO TIPO 51 - Registro de Individualização de valores recolhidos pelos códigos 027, 046, 604 e 736 (PARA IMPLEMENTAÇÃO FUTURA) //{ Implementado a critério do Participante do T2Ti ERP } FolhaSefipRegistroTipo90 RegistroTipo90 = new FolhaSefipRegistroTipo90(); folha.SefipRegistroTipo90 = RegistroTipo90; SaveFileDialog dialog = new SaveFileDialog(); dialog.Filter = "Arquivo Sefip (*.txt) | *.txt"; dialog.Title = "Selecione o arquivo"; dialog.InitialDirectory = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location); if (dialog.ShowDialog() == true) { folha.gerarArquivoSefip(dialog.FileName); } }