Ejemplo n.º 1
0
            internal void SaveDataToFile()
            {
                IBaseDao dao;
                var      saveFileDialog = new SaveFileDialog
                {
                    Filter = "XML|*.xml|CSV|*.csv",
                    Title  = "Save numeric data"
                };

                saveFileDialog.ShowDialog();
                if (saveFileDialog.FileName != "")
                {
                    switch (saveFileDialog.FilterIndex)
                    {
                    case 1:
                        dao = new XmlDao();
                        dao.SerializeToFile(saveFileDialog.FileName, _dates);
                        break;

                    case 2:
                        dao = new CsvDao();
                        dao.SerializeToFile(saveFileDialog.FileName, _dataTable);
                        break;
                    }
                }
            }
Ejemplo n.º 2
0
        /// <summary>
        /// 执行检出操作
        /// </summary>
        /// <param name="repositoryPath">svn服务器路径</param>
        /// <param name="workDirectory">工程本地工作路径</param>
        /// <param name="svnPath">本地svn路径</param>
        /// <param name="checkResult">检出操作的结果</param>
        /// <returns>返回检出操作的日志</returns>
        public string CheckOut(string repositoryPath, string workDirectory, out string checkResult, string xmlConfigPath)
        {
            string      err;
            string      time;
            XmlDao      xmlDao      = new XmlDao();
            XmlNodeList xmlNodeList = xmlDao.XmlQuery("config/preferences/SvnPath", xmlConfigPath);
            string      svnPath     = xmlNodeList[0].InnerText;

            using (SvnClient client = new SvnClient())
            {
                Tools  tools       = new Tools();
                string checkOutLog = "";
                try
                {
                    client.CheckOut(new Uri(repositoryPath), workDirectory);
                    string args = "checkout " + repositoryPath + " " + workDirectory;
                    checkOutLog = tools.BuildProject(svnPath, args, null, out err, out time);
                    checkResult = "successful";
                    return(checkOutLog);
                }
                catch (Exception ex)
                {
                    checkResult = " failed";
                    checkOutLog = ex.Message;
                    return(checkOutLog);
                }
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 执行保存已经修改的ConfigInfo
        /// </summary>
        /// <param name="configInfo">传入configInfo实例对象</param>
        /// <param name="xmlConfigPath">修改的xml文件</param>
        /// <returns></returns>
        public string SaveConfig(ConfigInfo configInfo, string xmlConfigPath)
        {
            string modifyPath = "preferences";
            string result     = "";
            var    value      = new Dictionary <string, string>();

            value.Add("SvnPath", configInfo.Svnpath);
            value.Add("UpdateInterval", configInfo.Updateinterval);
            value.Add("StandarOutput", configInfo.StandarOutput);
            value.Add("ServiceSwitch", configInfo.ServiceSwitch);
            value.Add("ReportFrom", configInfo.ReportFrom);
            value.Add("Password", configInfo.Password);
            value.Add("MailHost", configInfo.SmtpServer);
            value.Add("ReportTo", configInfo.ReportTo);
            try
            {
                XmlDao   xmlDao   = new XmlDao();
                XElement xElement = xmlDao.SelectOneXElement(null, xmlConfigPath, modifyPath);
                result = xmlDao.ModifyXNode(value, xElement, xmlConfigPath);
                return(result);
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message);
                result = "failed";
                return(result);
            }
        }
Ejemplo n.º 4
0
            internal void LoadCategoriesFromFile()
            {
                XmlDao dao = new XmlDao();

                _categories = dao.DeserializeToObject <List <CategoryDto> >("categories.xml");
                if (_categories != null)
                {
                    FillDataTable();
                }
                else
                {
                    _categories = new List <CategoryDto>();
                }
            }
Ejemplo n.º 5
0
            internal void LoadDataFromFile()
            {
                IBaseDao dao;

                _dataTable = new WorkoutDataTable();

                OpenFileDialog openFileDialog = new OpenFileDialog
                {
                    Filter = "XML|*.xml|CSV|*.csv",
                    Title  = "Select data file"
                };

                if (openFileDialog.ShowDialog() == DialogResult.OK)
                {
                    switch (openFileDialog.FilterIndex)
                    {
                    case 1:
                        dao    = new XmlDao();
                        _dates = dao.DeserializeToObject <List <DateDto> >(openFileDialog.FileName);
                        EraseDataTable();
                        if (IsDataCorrect())
                        {
                            FillDataTable();
                        }
                        break;

                    case 2:
                        dao            = new CsvDao();
                        _dataTable     = dao.DeserializeToObject <WorkoutDataTable>(openFileDialog.FileName);
                        _bindingSource = new BindingSource();
                        _dates         = new List <DateDto>();
                        UpdateDatesFromDataTable();
                        if (_dates.Count != 0)
                        {
                            _parent.dataGridView.DataSource = _bindingSource.DataSource = _dataTable;
                            _dataGridView.RowHeadersVisible = true;
                            _dataGridView.RowHeadersWidth   = 100;
                        }
                        else
                        {
                            _dates = new List <DateDto>();
                        }

                        break;
                    }
                }
            }
Ejemplo n.º 6
0
        /// <summary>
        /// 查询配置信息
        /// </summary>
        /// <param name="dataPath">节点路径</param>
        /// <param name="xmlConfigPath">查询的xml文件路径</param>
        /// <returns></returns>
        public ConfigInfo ConfigQuery(string dataPath, string xmlConfigPath)
        {
            ConfigInfo configInfo = new ConfigInfo();
            XmlDao     xmlDao     = new XmlDao();

            try
            {
                XmlNodeList xmlNodeList = xmlDao.XmlQuery(dataPath, xmlConfigPath);
                configInfo.Svnpath        = xmlNodeList[0].SelectSingleNode("SvnPath").InnerText;
                configInfo.Updateinterval = xmlNodeList[0].SelectSingleNode("UpdateInterval").InnerText;
                configInfo.StandarOutput  = xmlNodeList[0].SelectSingleNode("StandarOutput").InnerText;
                configInfo.ServiceSwitch  = xmlNodeList[0].SelectSingleNode("ServiceSwitch").InnerText;
                return(configInfo);
            }
            catch (Exception)
            {
                return(configInfo);
            }
        }
Ejemplo n.º 7
0
        /// <summary>
        /// 获取gitlab信息
        /// </summary>
        /// <param name="dataPath">节点路径</param>
        /// <param name="xmlConfigPath">xml路径</param>
        /// <returns></returns>
        public GitInfo GitInfoQuery(string dataPath, string xmlConfigPath)
        {
            GitInfo gitlabInfo = new GitInfo();
            XmlDao  xmlDao     = new XmlDao();

            try
            {
                XmlNodeList xmlNodeList = xmlDao.XmlQuery(dataPath, xmlConfigPath);
                gitlabInfo.Username     = xmlNodeList[0].SelectSingleNode("Username").InnerText;
                gitlabInfo.Password     = xmlNodeList[0].SelectSingleNode("Password").InnerText;
                gitlabInfo.Emailaddress = xmlNodeList[0].SelectSingleNode("Email").InnerText;
                gitlabInfo.Gitreversion = xmlNodeList[0].SelectSingleNode("GitReversion").InnerText;
                return(gitlabInfo);
            }
            catch (Exception)
            {
                return(gitlabInfo);
            }
        }
Ejemplo n.º 8
0
        /// <summary>
        /// 执行更新操作
        /// </summary>
        /// <param name="workDirectory">工程本地工作路径</param>
        /// <param name="svnPath">svn程序的路径</param>
        /// <param name="updateResult">更新操作的结果</param>
        /// <returns>返回更新操作的日志</returns>
        public string Update(string workDirectory, out string updateResult, string xmlConfigPath)
        {
            string      err;
            string      time;
            Tools       tools       = new Tools();
            XmlDao      xmlDao      = new XmlDao();
            XmlNodeList xmlNodeList = xmlDao.XmlQuery("config/preferences/SvnPath", xmlConfigPath);
            string      svnPath     = xmlNodeList[0].InnerText;
            string      updateLog   = "";

            try
            {
                string args = "update --accept tf" + " " + workDirectory;
                updateLog    = tools.BuildProject(svnPath, args, null, out err, out time);
                updateResult = "successful";
                return(updateLog);
            }
            catch (Exception ex)
            {
                updateResult = "failed";
                updateLog    = ex.Message;
                return(updateLog);
            }
        }
Ejemplo n.º 9
0
        // ========================================================================
        private bool Gera_NFCe()
        {
            var xmlNFCe         = new XmlDocument();
            var xmlNFCeAssinado = new XmlDocument();

            var gerarXml      = new GeraXml();
            var assinarXml    = new AssinaXml();
            var validarXml    = new ValidaXml();
            var transmitirXml = new TransmiteXml();
            //Email email = new Email();
            var xmlDao = new XmlDao();

            StreamWriter Grava;

            string retValidar;
            string strProc;
            string strXmlProcNfe;
            string retTransmitir;
            string cStatus_LoteProcessado;
            string cStatus_Autorizado;

            int nPosI;
            int nPosF;

            try
            {
                retTransmitir = string.Empty;
                retValidar    = string.Empty;

                cStatus_LoteProcessado = string.Empty;
                cStatus_Autorizado     = string.Empty;


                _pedido.NFiscal = ((new ControleFiscalDao()).GetUltimoNumeroNFiscalGerado() + 1);

                try
                {
                    // Gerando o XML
                    xmlNFCe = (gerarXml.GeraXmlNFCe(_pedido));

                    //MensagemSistema("Arquivo Gerado ...", Color.OliveDrab);

                    // Assinando o XML
                    xmlNFCeAssinado = assinarXml.AssinaXML(xmlNFCe.InnerXml, "infNFe", CertificadoDigital.getInstance.oCertificado);
                }
                catch (Exception ex)
                {
                    //Log_Exception.Monta_ArquivoLog(ex);
                    //MensagemSistema("** Erro ao ASSINAR XML NFC-e, tente novamente **", Color.Brown);
                    MessageBox.Show("Erro ao tentar gerar e assinar o xml  da NFC-e" + Environment.NewLine + "Erro: " + ex.Message, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return(false);
                }

                //MensagemSistema("Arquivo Assinado ...", Color.OliveDrab);



                if (GeraXml.AmbienteNFCe == "2")
                {
                    //Salvando o arquivo XML na pasta
                    Grava = File.CreateText(@"C:\Users\Comercial\Desktop\ASSINADO.xml");
                    Grava.Write(xmlNFCeAssinado.InnerXml);
                    Grava.Close();
                }


                try
                {
                    // Validando o XML
                    retValidar = validarXml.Valida(xmlNFCeAssinado, "NFe");
                    urlQRCode  = gerarXml.GetUrlQRCode(xmlNFCeAssinado, _pedido);

                    //Inserindo a URL QRCode no xml já assinado
                    xmlNFCeAssinado.LoadXml(xmlNFCeAssinado.InnerXml.Replace("</infNFe>", "</infNFe><infNFeSupl><qrCode><![CDATA[" + urlQRCode + "]]></qrCode><urlChave>http://www4.fazenda.rj.gov.br/consultaNFCe/QRCode</urlChave></infNFeSupl>"));
                }
                catch (Exception ex)
                {
                    //Log_Exception.Monta_ArquivoLog(ex);

                    //MensagemSistema("** Erro ao VALIDAR XML NFC-e **", Color.Brown);
                    MessageBox.Show("Erro ao tentar validar o xml da NFC-e " + Environment.NewLine + "Erro: " + ex.Message, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return(false);
                }

                if (retValidar == string.Empty)
                {
                    try
                    {
                        //MensagemSistema("Enviando a NFC-e", Color.OliveDrab);

                        // Recebendo o XML de retorno da transmissão
                        retTransmitir = transmitirXml.XML_NFCe4(xmlNFCeAssinado, _pedido.NFiscal.ToString(), CertificadoDigital.getInstance.oCertificado);

                        if (retTransmitir.Substring(0, 4) != "Erro")
                        {
                            XmlDocument xmlRetorno = new XmlDocument();
                            xmlRetorno.LoadXml(retTransmitir);

                            // Lote processado
                            if (xmlRetorno.GetElementsByTagName("cStat")[0].InnerText == "104")
                            {
                                // Autorizado
                                if (xmlRetorno.GetElementsByTagName("cStat")[1].InnerText == "100")
                                {
                                    try
                                    {
                                        //MensagemSistema("Autorizado o uso da NFC-e", Color.OliveDrab);

                                        _pedido.Chave     = xmlRetorno.GetElementsByTagName("chNFe")[0].InnerText;
                                        _pedido.Protocolo = xmlRetorno.GetElementsByTagName("nProt")[0].InnerText;

                                        // Separar somente o conteúdo a partir da tag <protNFe> até </protNFe>
                                        nPosI   = retTransmitir.IndexOf("<protNFe");
                                        nPosF   = retTransmitir.Length - (nPosI + 13);
                                        strProc = retTransmitir.Substring(nPosI, nPosF);


                                        // XML pronto para salvar
                                        strXmlProcNfe = @"<?xml version=""1.0"" encoding=""utf-8"" ?><nfeProc xmlns=""http://www.portalfiscal.inf.br/nfe"" versao=""4.00"">" + xmlNFCeAssinado.InnerXml + strProc + "</nfeProc>";

                                        _pedido.Xml = new Xml()
                                        {
                                            NumDoc     = _pedido.NumDoc,
                                            ArquivoXml = strXmlProcNfe,
                                            Data       = DateTime.Now,
                                            Modelo     = _pedido.ModeloNFiscal,
                                            StatNFCe   = "100"
                                        };



                                        using (var db = new Database("stringConexao"))
                                        {
                                            db.BeginTransaction();

                                            try
                                            {
                                                db.Update("Update Controle Set NFiscal=" + _pedido.NFiscal + " Where ChvControle = 1");
                                                db.Update("Update Movdb Set data_nfiscal = '" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "', NFiscal= " + _pedido.NFiscal + ", Chave='" + _pedido.Chave + "' ,Protocolo='" + _pedido.Protocolo + "', status_nfce = '" + _pedido.Xml.StatNFCe + "' Where NumDoc = " + _pedido.NumDoc);

                                                db.CompleteTransaction();
                                            }
                                            catch (Exception)
                                            {
                                                db.AbortTransaction();
                                            }
                                        }



                                        if (GeraXml.AmbienteNFCe == "2")
                                        {
                                            //Salvando o arquivo XML na pasta
                                            Grava = File.CreateText(@"C:\Users\Comercial\Desktop\EMITIDO.xml");
                                            Grava.Write(_pedido.Xml.ArquivoXml);
                                            Grava.Close();
                                        }

                                        if (GeraXml.AmbienteNFCe == "1")
                                        {
                                            if (!string.IsNullOrEmpty(ControleFiscal.GetInstance.CaminhoXmlAutorizado))
                                            {
                                                //Salvando o arquivo XML na pasta
                                                Grava = File.CreateText(ControleFiscal.GetInstance.CaminhoXmlAutorizado.Remove(ControleFiscal.GetInstance.CaminhoXmlAutorizado.Length - 1) + DateTime.Now.Month + @"\" + _pedido.Chave + "-procNfe.xml");
                                                Grava.Write(_pedido.Xml.ArquivoXml);
                                                Grava.Close();
                                            }
                                        }


                                        //Salva arquivo XML no Banco SQL (NFe)
                                        if (xmlDao.GravaXml(_pedido.Xml))
                                        {
                                        }
                                    }
                                    catch (Exception ex)
                                    {
                                        MessageBox.Show("NOTA EMITIDA, porém houve um erro ao inesperado ao salvar as informações no banco de dados " + Environment.NewLine + "Erro: " + ex.Message, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                        return(false);
                                    }
                                }
                                else
                                {
                                    MessageBox.Show("O xml não pôde ser Autorizado! " + Environment.NewLine + "Motivo: " + xmlRetorno.GetElementsByTagName("xMotivo")[1].InnerText, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                    return(false);
                                }
                            }
                            else
                            {
                                //MensagemSistema("Erro ao Transmitir(003) XML NFC-e para SEFAZ", Color.Brown);
                                MessageBox.Show("Erro no arquivo xml: " + Environment.NewLine + "Erro: " + xmlRetorno.GetElementsByTagName("xMotivo")[0].InnerText, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                return(false);
                            }
                        }
                        else
                        {
                            //MensagemSistema("Erro ao Transmitir(002) XML NFC-e para SEFAZ", Color.Brown);
                            MessageBox.Show("Erro ao tentar transmitir o xml da NFC-e, tente novamente " + Environment.NewLine + "Erro: " + retTransmitir, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            return(false);
                        }
                    }
                    catch (Exception ex)
                    {
                        //Log_Exception.Monta_ArquivoLog(ex);
                        //MensagemSistema("Erro ao Transmitir(001) XML NFC-e para SEFAZ", Color.Brown);
                        MessageBox.Show("Erro: " + ex.Message, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return(false);
                    }
                }
                else
                {
                    //MensagemSistema("Erro ao validar XML NFC-e", Color.Brown);
                    MessageBox.Show("Erro XML Shema: " + retValidar, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return(false);
                }
            }
            catch (Exception ex)
            {
                //Log_Exception.Monta_ArquivoLog(ex);
                //MensagemSistema("Ocorreu um erro inesperado, informe ao administrador do sistema!", Color.Brown);
                MessageBox.Show("Erro : " + ex.Message, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(false);
            }
            return(true);
        }
Ejemplo n.º 10
0
        /// <summary>
        /// 查询配置信息
        /// </summary>
        /// <param name="nodePath"></param>
        /// <returns></returns>
        public XmlNodeList FindConfigInfo(string nodePath, string xmlConfigPath)
        {
            XmlDao dao = new XmlDao();

            return(dao.XmlQuery(nodePath, xmlConfigPath));
        }
Ejemplo n.º 11
0
        /// <summary>
        /// 获取人名对应表
        /// </summary>
        /// <param name="nodePath">人名对应表节点路径</param>
        /// <param name="xmlPath">存放对应表的xml文件路径</param>
        /// <returns></returns>
        public XmlNodeList AcquireSlackPeople(string nodePath, string xmlPath)
        {
            XmlDao dao = new XmlDao();

            return(dao.XmlQuery(nodePath, xmlPath));
        }
Ejemplo n.º 12
0
            internal void SaveCategoriesToFile()
            {
                XmlDao dao = new XmlDao();

                dao.SerializeToFile("categories.xml", _categories);
            }