示例#1
0
        private void ConfigurarAbas(Empresa empresa, bool novaempresa)
        {
            switch (empresa.Servico)
            {
            case TipoAplicativo.Nfse:
                uce_divs.Populate(empresa, novaempresa);
                uce_pastas.Populate(empresa);
                uce_ftp.Populate(empresa);
                uce_cert.Populate(empresa);
                _tpEmpresa_danfe.Parent = null;
                _tpEmpresa_sat.Parent   = null;
                break;

            case TipoAplicativo.SAT:
                uce_divs.Populate(empresa, novaempresa);
                uce_pastas.Populate(empresa);
                uce_ftp.Populate(empresa);
                uce_danfe.Populate(empresa);
                _tpEmpresa_sat.Parent = tc_empresa;
                uce_sat.Populate(empresa);
                _tpEmpresa_cert.Parent = null;
                break;

            case TipoAplicativo.EFDReinf:
            case TipoAplicativo.eSocial:
            case TipoAplicativo.EFDReinfeSocial:
                uce_divs.Populate(empresa, novaempresa);
                uce_pastas.Populate(empresa);
                uce_cert.Populate(empresa);
                _tpEmpresa_cert.Parent  = tc_empresa;
                _tpEmpresa_ftp.Parent   = null;
                _tpEmpresa_sat.Parent   = null;
                _tpEmpresa_danfe.Parent = null;
                break;

            default:
                uce_divs.Populate(empresa, novaempresa);
                uce_pastas.Populate(empresa);
                uce_ftp.Populate(empresa);
                uce_cert.Populate(empresa);
                uce_danfe.Populate(empresa);
                _tpEmpresa_cert.Parent  = tc_empresa;
                _tpEmpresa_danfe.Parent = tc_empresa;
                _tpEmpresa_ftp.Parent   = tc_empresa;
                _tpEmpresa_sat.Parent   = null;
                break;
            }
        }
示例#2
0
        void CopiaDadosDaEmpresaParaControls(Empresa oempresa, bool empty)
        {
            bool _modificado = false;
            bool _nova       = string.IsNullOrEmpty(oempresa.PastaXmlEnvio);

            stopChangedEvent = true;
            try
            {
                servicoCurrent = oempresa.Servico;
                oempresa.CriaPastasAutomaticamente = false;

                if (string.IsNullOrEmpty(oempresa.PastaXmlEnvio) && !empty)
                {
                    oempresa.CriaPastasAutomaticamente = true;
                    _modificado = true;

                    ///
                    /// tenta definir as pastas na mesma arvore do CNPJ
                    ///
                    foreach (Empresa rr in (from x in Empresas.Configuracoes
                                            where x.CNPJ.Equals(oempresa.CNPJ)
                                            select x))
                    {
                        string temp = CopiaPastaDeEmpresa(rr.CNPJ, rr.PastaXmlEnvio, oempresa);
                        if (!Directory.Exists(temp))
                        {
                            CopiaPastaDeEmpresa(rr, oempresa);
                            break;
                        }
                    }
                    if (string.IsNullOrEmpty(oempresa.PastaXmlEnvio))
                    {
                        ///
                        /// acha uma configuracao valida
                        ///
                        foreach (Empresa rr in (from x in Empresas.Configuracoes
                                                where !x.CNPJ.Equals(oempresa.CNPJ)
                                                select x))
                        {
                            string temp = CopiaPastaDeEmpresa(rr.CNPJ, rr.PastaXmlEnvio, oempresa);
                            if (!Directory.Exists(temp))
                            {
                                CopiaPastaDeEmpresa(rr, oempresa);
                                break;
                            }
                        }
                    }
                    if (string.IsNullOrEmpty(oempresa.PastaXmlEnvio))
                    {
                        ///
                        /// se mesmo assim não encontrou nenhuma configuracao valida, assume a pasta do UniNFe
                        ///
                        string subpasta = oempresa.CNPJ;
                        switch (oempresa.Servico)
                        {
                        case TipoAplicativo.Todos:
                        case TipoAplicativo.Nfe:
                            break;

                        default:
                            subpasta += "\\" + oempresa.Servico.ToString().ToLower();
                            break;
                        }
                        oempresa.PastaXmlEnvio   = Path.Combine(Propriedade.PastaExecutavel, subpasta + "\\Envio");
                        oempresa.PastaXmlRetorno = Path.Combine(Propriedade.PastaExecutavel, subpasta + "\\Retorno");
                        oempresa.PastaXmlErro    = Path.Combine(Propriedade.PastaExecutavel, subpasta + "\\Erro");
                        oempresa.PastaValidar    = Path.Combine(Propriedade.PastaExecutavel, subpasta + "\\Validar");
                        if (oempresa.Servico != TipoAplicativo.Nfse)
                        {
                            oempresa.PastaXmlEnviado      = Path.Combine(Propriedade.PastaExecutavel, subpasta + "\\Enviado");
                            oempresa.PastaXmlEmLote       = Path.Combine(Propriedade.PastaExecutavel, subpasta + "\\EnvioEmLote");
                            oempresa.PastaDownloadNFeDest = Path.Combine(Propriedade.PastaExecutavel, subpasta + "\\DownloadNFe");
                        }
                    }
                }
                uce_divs.Populate(oempresa, _nova);
                uce_pastas.Populate(oempresa);
                uce_ftp.Populate(oempresa);
                uce_cert.Populate(oempresa);

                if (oempresa.Servico != TipoAplicativo.Nfse)
                {
                    _tpEmpresa_danfe.Parent = tc_empresa;
                    uce_danfe.Populate(oempresa);
                }
                else
                {
                    if (_tpEmpresa_danfe != null)
                    {
                        _tpEmpresa_danfe.Parent = null;
                    }
                }
            }
            finally
            {
                tc_empresa.Enabled = !empty;

                stopChangedEvent = false;
                Modificado       = _modificado;
            }
        }