Ejemplo n.º 1
0
        public virtual void CreateStockNew(StockNew stockNew)
        {
            try
            {

                Database database = DatabaseFactory.CreateDatabase();
                DbCommand dbCommand = database.GetStoredProcCommand("spStockNewsInsert");
                
                database.AddInParameter(dbCommand, "@NewsTitle", DbType.String, stockNew.NewsTitle);
                database.AddInParameter(dbCommand, "@NewsDescription", DbType.String, stockNew.NewsDescription);
                database.AddInParameter(dbCommand, "@NewsContent", DbType.String, stockNew.NewsContent);
                database.AddInParameter(dbCommand, "@NewsDate", DbType.DateTime, stockNew.NewsDate);
                database.AddInParameter(dbCommand, "@NewsSource", DbType.String, stockNew.NewsSource);
                database.AddInParameter(dbCommand, "@ShareSymbol", DbType.String, stockNew.ShareSymbol);
                database.AddInParameter(dbCommand, "@UseUrl", DbType.Boolean, stockNew.UseUrl);
                database.AddInParameter(dbCommand, "@NewsUrl", DbType.String, stockNew.NewsUrl);
                database.AddInParameter(dbCommand, "@LanguageID", DbType.Int32, stockNew.LanguageID);
                database.AddInParameter(dbCommand, "@IsApproved", DbType.Int32, stockNew.IsApproved);
                database.AddInParameter(dbCommand, "@ImageUrl", DbType.String, stockNew.ImageUrl);
                database.AddInParameter(dbCommand, "@LinkId", DbType.Int32, stockNew.LinkId);
                database.AddInParameter(dbCommand, "@OriginalUrl", DbType.String, stockNew.OriginalUrl);
                database.AddInParameter(dbCommand, "@FeedDate", DbType.DateTime, stockNew.FeedDate);
                database.AddOutParameter(dbCommand, "@NewsId", DbType.Int64, 0);
                
                database.ExecuteNonQuery(dbCommand);
                stockNew.NewsId = (long)database.GetParameterValue(dbCommand, "@NewsId");
            }
            catch (Exception ex)
            {
                // log this exception
                log4net.Util.LogLog.Error(ex.Message, ex);
                // wrap it and rethrow
                throw new ApplicationException(SR.DataAccessCreateStockNewException, ex);
            }
        }
Ejemplo n.º 2
0
 public virtual StockNew CreateStockNewFromReader(IDataReader reader)
 {
     StockNew item = new StockNew();
     try
     {
         if (!reader.IsDBNull(reader.GetOrdinal("NewsId"))) item.NewsId = (long)reader["NewsId"];
         if (!reader.IsDBNull(reader.GetOrdinal("NewsTitle"))) item.NewsTitle = (string)reader["NewsTitle"];
         if (!reader.IsDBNull(reader.GetOrdinal("NewsDescription"))) item.NewsDescription = (string)reader["NewsDescription"];
         if (!reader.IsDBNull(reader.GetOrdinal("NewsContent"))) item.NewsContent = (string)reader["NewsContent"];
         if (!reader.IsDBNull(reader.GetOrdinal("NewsDate"))) item.NewsDate = (DateTime)reader["NewsDate"];
         if (!reader.IsDBNull(reader.GetOrdinal("NewsSource"))) item.NewsSource = (string)reader["NewsSource"];
         if (!reader.IsDBNull(reader.GetOrdinal("ShareSymbol"))) item.ShareSymbol = (string)reader["ShareSymbol"];
         if (!reader.IsDBNull(reader.GetOrdinal("UseUrl"))) item.UseUrl = (bool)reader["UseUrl"];
         if (!reader.IsDBNull(reader.GetOrdinal("NewsUrl"))) item.NewsUrl = (string)reader["NewsUrl"];
         if (!reader.IsDBNull(reader.GetOrdinal("LanguageID"))) item.LanguageID = (int)reader["LanguageID"];
         if (!reader.IsDBNull(reader.GetOrdinal("IsApproved"))) item.IsApproved = (int)reader["IsApproved"];
         if (!reader.IsDBNull(reader.GetOrdinal("ImageUrl"))) item.ImageUrl = (string)reader["ImageUrl"];
         if (!reader.IsDBNull(reader.GetOrdinal("LinkId"))) item.LinkId = (int)reader["LinkId"];
         if (!reader.IsDBNull(reader.GetOrdinal("OriginalUrl"))) item.OriginalUrl = (string)reader["OriginalUrl"];
         if (!reader.IsDBNull(reader.GetOrdinal("FeedDate"))) item.FeedDate = (DateTime)reader["FeedDate"];
     }
     catch (Exception ex)
     {
         // log this exception
         log4net.Util.LogLog.Error(ex.Message, ex);
         // wrap it and rethrow
         throw new ApplicationException(SR.DataAccessCreateStockNewFromReaderException, ex);
     }
     return item;
 }
 public void FeedItem(StockNew stockNew, ref Int64 stockId)
 {           
     try
     {
         StockNewService.CreateStockNew(stockNew);
     }
     catch (Exception ex)
     {
         Ultility.Error(ex.InnerException);
         stockId = 0;
     }
     stockId = stockNew.NewsId;
 }
        //public DateTime ConvertStringToDate(string dateString)
        //{
        //    DateTimeFormatInfo datefomatProvider = new DateTimeFormatInfo();
        //    datefomatProvider.DateSeparator = "/";
        //    datefomatProvider.FullDateTimePattern = "dd/MM/yyyy";
        //    datefomatProvider.LongDatePattern = "dd/MM/yyyy";
        //    return new DateTime(int.Parse(dateString.Substring(6, 4)), int.Parse(dateString.Substring(3, 2)), int.Parse(dateString.Substring(0, 2)));

        //    //return DateTime.Parse(dateString);
        //    //return Convert.ToDateTime(dateString, datefomatProvider);
        //}

        public bool FeedItem(StockNew stockNew)
        {
            bool returnVal = true;
            try
            {
                StockNewService.CreateStockNew( stockNew);
            }
            catch (Exception ex)
            {
                Ultility.Error(ex.InnerException);
                returnVal = false;
            }
            return returnVal;
        }
Ejemplo n.º 5
0
        static void Main(string[] args)
        {
            CoreSecurityService.Entities.StockPriceCollection priceList = CoreSecurityService.Business.StockPriceService.GetStockPriceList(CoreSecurityService.Entities.StockPriceColumns.StockNo, "DESC");

            string url = @"http://stox.vn/stox/EarningsCentral/?MenuID=4";
            ParseCafefDocument parseDocument = new ParseCafefDocument(url);
            List<HtmlNode> TableCells = parseDocument.ParseTableCell();
            HtmlNode newDate;
            ParseCafefDocument parseDocument1;
            StockNew stockNew = null;


            string test = ReplaceAsciiToUniCode("Th&#7913; Ba, 20/07/2010, Ng&#224;y giao d&#7883;ch ch&#237;nh th&#7913;c c&#7911;a C&#244;ng ty c&#7893; ph&#7847;n D&#432;&#7907;c L&#226;m &#272;&#7891;ng &#8211; Ladophar (MCK: LDP)");
            test = char.ConvertFromUtf32(7913);
            try
            {
                for (int i = 0; i < TableCells.Count; i++)
                {
                    HtmlNode link = null;
                    link = parseDocument.ParseLink((HtmlNode)TableCells[i]);
                    
                    if (link != null)
                    {
                        parseDocument1 = new ParseCafefDocument("http://stox.vn/" + link.Attributes["href"].Value.ToString().Remove(0, 1));
                        Console.WriteLine("http://stox.vn/" + link.Attributes["href"].Value.ToString().Remove(0, 1));
                        Console.WriteLine("\n");
                        HtmlNode content = parseDocument1.ParseContent();
                        stockNew = new StockNew();
                        stockNew.FeedDate = DateTime.Now;
                        stockNew.LanguageID = 2;
                        stockNew.NewsContent = content.InnerHtml;
                        stockNew.NewsDate = DateTime.Now;
                        stockNew.NewsDescription = link.InnerHtml.Normalize();
                        stockNew.NewsSource = "Stox";
                        stockNew.NewsTitle = link.InnerHtml.Normalize();
                        stockNew.OriginalUrl = "http://stox.vn/" + link.Attributes["href"].Value.ToString().Remove(0, 1);
                        stockNew.LinkId = 9;
                        FeedItem(stockNew);
                    }
                }
            }
            catch (Exception ex)
            {
                //WriteReportToDisk(ex.Message);
                //log4net.Util.LogLog.Error(ex.Message, ex);          
            }
        }
 public void FeedNewsItem(string listUrl, string shortUrl, int linkId)
 {
     FeedCafeFDocument parseDocument = new FeedCafeFDocument(listUrl);
     List<HtmlNode> TableCells = parseDocument.ParseTableCell();            
     HtmlNode newDate;
     FeedCafeFDocument parseDocument1;
     StockNew stockNew = null;
     int post = 0;
     try
     {
         for (int i = 0; i < TableCells.Count; i++)
         {
             HtmlNode link = null;
             link = parseDocument.ParseLink((HtmlNode)TableCells[i]);
             newDate = parseDocument.ParseNewsDate((HtmlNode)TableCells[i]);
             if (link != null)
             {
                 parseDocument1 = new FeedCafeFDocument(shortUrl + link.Attributes["href"].Value.ToString().Remove(0, 1));
                 Console.WriteLine(shortUrl + link.Attributes["href"].Value.ToString().Remove(0, 1));
                 Console.WriteLine("\n");
                 HtmlNode content = parseDocument1.ParseContent();
                 stockNew = new StockNew();
                 stockNew.FeedDate = Convert.ToDateTime(DateTime.Now.ToShortDateString());
                 stockNew.LanguageID = 2;
                 stockNew.NewsContent = content.InnerHtml;
                 stockNew.NewsDate = DateTime.Now;//Ultility.ConvertStringToDate(newDate.InnerHtml.Replace("\r", ""));
                 stockNew.NewsDescription = ((HtmlNode)parseDocument1.ParseNewsDescription()).InnerHtml;
                 stockNew.NewsSource = "CafeF";
                 post = parseDocument1.ParseNewsTitle().InnerHtml.IndexOf("<input");
                 stockNew.NewsTitle = parseDocument1.ParseNewsTitle().InnerHtml.Substring(0, post).Normalize();
                 stockNew.NewsTitle = stockNew.NewsTitle.Trim();
                 stockNew.OriginalUrl = shortUrl + link.Attributes["href"].Value.ToString().Remove(0, 1);
                 stockNew.LinkId = linkId;
                 FeedItem(stockNew);
             }
         }
     }
     catch (Exception ex)
     {
         Ultility.Error(ex.Message);
     }
 }
        public void FeedNewsItem(string listUrl, string shortUrl, int linkId)
        {
            //testing listUrl = @"http://www.hsx.vn/hsx/Modules/News/News.aspx?type=TTGD";
            FeedHoseDocument parseDocument = new FeedHoseDocument(listUrl);
            List<HtmlNode> TableCells = parseDocument.ParseTableCell();
            List<HtmlNode> spans;
            HtmlNode link;
            FeedHoseDocument parseDocument1;
            StockNew stockNew = null;

            try
            {
                for (int i = 0; i < TableCells.Count; i++)
                {
                    spans = parseDocument.ParseSpan((HtmlNode)TableCells[i]);
                    link = parseDocument.ParseLink((HtmlNode)TableCells[i]);
                    //parseDocument1 = new ParseDocument("http://www.hsx.vn/hsx/Modules/News/" + link.Attributes["href"].Value.ToString());
                    if (link != null)
                    {
                        parseDocument1 = new FeedHoseDocument(shortUrl + link.Attributes["href"].Value.ToString());

                        HtmlNode content = parseDocument1.ParseContent();
                        stockNew = new StockNew();
                        stockNew.FeedDate = DateTime.Now;
                        stockNew.LanguageID = 2;
                        stockNew.NewsContent = content.InnerHtml;
                        stockNew.NewsDate = Ultility.ConvertStringToDate(spans[0].InnerHtml.ToString());
                        stockNew.NewsDescription = link.InnerHtml;
                        stockNew.NewsSource = "HOSE";
                        stockNew.NewsTitle = link.InnerHtml;
                        stockNew.OriginalUrl = shortUrl + link.Attributes["href"].Value.ToString();
                        stockNew.LinkId = linkId;
                        FeedItem(stockNew);
                    }
                }
                FeedItemIntoWebSite(1);
            }
            catch (Exception ex)
            {
                Ultility.Error(ex.Message);
            }
        }
        public void FeedNewsItem(string listUrl, string shortUrl, int linkId)
        {
            FeedHnxDocument parseDocument = new FeedHnxDocument(listUrl);
            List<HtmlNode> TableCells = parseDocument.ParseTableCell();
            FeedHnxDocument parseDocument1;
            StockNew stockNew = null;

            try
            {
                for (int i = 0; i < TableCells.Count; i++)
                {
                    HtmlNode link = null;
                    link = TableCells[i];

                    if (link != null)
                    {
                        parseDocument1 = new FeedHnxDocument(shortUrl + link.Attributes["href"].Value.ToString());

                        Console.WriteLine(shortUrl + link.Attributes["href"].Value.ToString().Remove(0, 1));
                        Console.WriteLine("\n");
                        HtmlNode content = parseDocument1.ParseContent();
                        stockNew = new StockNew();
                        stockNew.FeedDate = DateTime.Now;
                        stockNew.LanguageID = 2;
                        stockNew.NewsContent = content.InnerHtml;
                        stockNew.NewsDate = Ultility.ConvertStringToDate(DateTime.Now.ToString("dd/MM/yyyy"));
                        stockNew.NewsDescription = Ultility.ReplaceAsciiToUniCode(link.InnerHtml.Normalize());
                        stockNew.NewsSource = "HNX";
                        stockNew.NewsTitle = Ultility.ReplaceAsciiToUniCode(link.InnerHtml.Normalize());
                        stockNew.OriginalUrl = shortUrl + link.Attributes["href"].Value.ToString();
                        stockNew.LinkId = linkId;
                        FeedItem(stockNew);                        
                    }
                }
                FeedItemIntoWebSite(2);
            }
            catch (Exception ex)
            {
                Ultility.Error(ex.Message);
            }
        }
 private void StoredToApprovedNews(StockNew stockNew)
 {
     ApprovedStockNew approvedStockNew = new ApprovedStockNew();
     approvedStockNew.NewsId = stockNew.NewsId;            
     approvedStockNew.NewsDate = stockNew.NewsDate;
     approvedStockNew.NewsTitle = stockNew.NewsTitle;
     approvedStockNew.NewsDescription = stockNew.NewsDescription;
     approvedStockNew.NewsContent = stockNew.NewsContent;
     approvedStockNew.NewsSource = stockNew.NewsSource;
     approvedStockNew.ShareSymbol = stockNew.ShareSymbol;
     approvedStockNew.UseUrl = stockNew.UseUrl;
     approvedStockNew.NewsUrl = stockNew.NewsUrl;
     approvedStockNew.LanguageID = stockNew.LanguageID;
     approvedStockNew.ImageUrl = stockNew.ImageUrl;
     approvedStockNew.LinkId = stockNew.LinkId;
     approvedStockNew.OriginalUrl = stockNew.OriginalUrl;
     approvedStockNew.ApprovedDate = DateTime.Now;
     ApprovedStockNewService.CreateApprovedStockNew(approvedStockNew);
 }
Ejemplo n.º 10
0
 private void StoreToRejectedNews(StockNew stockNew)
 {
     RejectedStockNew rejectedStockNew = new RejectedStockNew();
     rejectedStockNew.NewsId = stockNew.NewsId;
     rejectedStockNew.NewsDate = stockNew.NewsDate;
     rejectedStockNew.NewsTitle = stockNew.NewsTitle;
     rejectedStockNew.NewsDescription = stockNew.NewsDescription;
     rejectedStockNew.NewsContent = stockNew.NewsContent;
     rejectedStockNew.NewsSource = stockNew.NewsSource;
     rejectedStockNew.ShareSymbol = stockNew.ShareSymbol;
     rejectedStockNew.UseUrl = stockNew.UseUrl;
     rejectedStockNew.NewsUrl = stockNew.NewsUrl;
     rejectedStockNew.LanguageID = stockNew.LanguageID;
     rejectedStockNew.ImageUrl = stockNew.ImageUrl;
     rejectedStockNew.LinkId = stockNew.LinkId;
     rejectedStockNew.OriginalUrl = stockNew.OriginalUrl;
     rejectedStockNew.RejectedDate = DateTime.Now;
     RejectedStockNewService.CreateRejectedStockNew(rejectedStockNew);
 }
 public void FeedStoxNews(string listUrl, string shortUrl, int linkId)
 {
     ParseStoxDocument parseDocument = new ParseStoxDocument(listUrl);
     List<HtmlNode> TableCells = parseDocument.ParseTableCell();         
     ParseStoxDocument parseDocument1;
     StockNew stockNew = null;
     
     try
     {
         for (int i = 0; i < TableCells.Count; i++)
         {
             HtmlNode link = null;
             link = parseDocument.ParseLink((HtmlNode)TableCells[i]);
            
             if (link != null)
             {                   
                 parseDocument1 = new ParseStoxDocument(shortUrl + link.Attributes["href"].Value.ToString().Remove(0, 1));                        
                 HtmlNode content = parseDocument1.ParseContent();
                 stockNew = new StockNew();
                 stockNew.FeedDate = Convert.ToDateTime(DateTime.Now.ToShortDateString());
                 stockNew.LanguageID = 2;
                 stockNew.NewsContent = content.InnerHtml;
                 stockNew.NewsDate = DateTime.Now;//Ultility.ConvertStringToDate(newDate.InnerHtml.Replace("\r", ""));
                 stockNew.NewsDescription = link.InnerHtml.Normalize();
                 stockNew.NewsSource = "Stox";
                 stockNew.NewsTitle = link.InnerHtml.Normalize();
                 stockNew.OriginalUrl = shortUrl + link.Attributes["href"].Value.ToString().Remove(0, 1);
                 stockNew.LinkId = linkId;
                 FeedItem(stockNew);
             }
         }
     }
     catch (Exception ex)
     {
         Ultility.Error(ex.Message);
     }
 }
        public void FeedVnEconomyNews(string listUrl, string shortUrl, int linkId)
        {
            ParseVnEconomyDocument parseDocument = new ParseVnEconomyDocument(listUrl);
            List<HtmlNode> TableCells = parseDocument.ParseTableCell();
            HtmlNode spans;
            HtmlNode newDate;
            ParseVnEconomyDocument parseDocument1;
            StockNew stockNew = null;

            try
            {
                for (int i = 0; i < TableCells.Count; i++)
                {
                    HtmlNode link = null;

                    link = parseDocument.ParseLink((HtmlNode)TableCells[i]);
                    newDate = parseDocument.ParseNewsDate((HtmlNode)TableCells[i]);
                    if (link != null)
                    {
                        parseDocument1 = new ParseVnEconomyDocument(shortUrl + link.Attributes["href"].Value.ToString().Remove(0, 1));
                        Console.WriteLine(shortUrl + link.Attributes["href"].Value.ToString().Remove(0, 1));
                        Console.WriteLine("\n");
                        HtmlNode content = parseDocument1.ParseContent();
                        stockNew = new StockNew();
                        stockNew.FeedDate = DateTime.Now;
                        stockNew.LanguageID = 2;
                        stockNew.NewsContent = content.InnerHtml;
                        stockNew.NewsDate = Ultility.ConvertStringToDate(DateTime.Now.ToString("dd/MM/yyyy"));
                        stockNew.NewsDescription = ((HtmlNode)parseDocument1.ParseNewsDescription()).InnerHtml.Trim();
                        stockNew.NewsSource = "VnEconomy";
                        stockNew.NewsTitle = link.InnerHtml.Trim();
                        stockNew.OriginalUrl = shortUrl + link.Attributes["href"].Value.ToString().Remove(0, 1);
                        stockNew.LinkId = linkId;
                        FeedItem(stockNew);
                    }
                }
            }
            catch (Exception ex)
            {
                Ultility.Error(ex.Message);
            }
        }
        public void FeedVsdNews(string listUrl, string shortUrl, int linkId)
        {
            //testing listUrl = @"http://www.hsx.vn/hsx/Modules/News/News.aspx?type=TTGD";
            ParseVsdDocument parseDocument = new ParseVsdDocument(listUrl);
            List<HtmlNode> TableCells = parseDocument.ParseTableCell();
            HtmlNode spans;
            HtmlNode link;
            ParseVsdDocument parseDocument1;
            StockNew stockNew = null;

            try
            {
                for (int i = 0; i < TableCells.Count; i++)
                {
                    //spans = parseDocument.ParseSpan((HtmlNode)TableCells[i]);
                    link = parseDocument.ParseLink((HtmlNode)TableCells[i]);
                    //parseDocument1 = new ParseDocument("http://www.hsx.vn/hsx/Modules/News/" + link.Attributes["href"].Value.ToString());
                    if (link != null)
                    {
                        parseDocument1 = new ParseVsdDocument(shortUrl + link.Attributes["href"].Value.ToString());

                        HtmlNode content = parseDocument1.ParseContent();
                        stockNew = new StockNew();
                        stockNew.FeedDate = DateTime.Now;
                        stockNew.LanguageID = 2;
                        stockNew.NewsContent = content.InnerHtml;
                        string newDate = link.InnerHtml.Substring(link.InnerHtml.IndexOf('[') + 1, link.InnerHtml.IndexOf(']') - link.InnerHtml.IndexOf('['));
                        stockNew.NewsDate = Ultility.ConvertStringToDate(newDate);
                        stockNew.NewsDescription = link.InnerHtml.Substring(0, link.InnerHtml.IndexOf('['));
                        stockNew.NewsDescription = stockNew.NewsDescription.TrimStart().TrimEnd().Replace("&nbsp", " ");
                        stockNew.NewsSource = "TTLK";
                        /*if (link.InnerHtml.ToString().IndexOf("<img") >= 0)
                            stockNew.NewsTitle = link.InnerHtml.ToString().Remove(link.InnerHtml.ToString().IndexOf("<img"));
                        else
                            stockNew.NewsTitle = link.InnerHtml;*/
                        stockNew.NewsTitle = stockNew.NewsDescription.Replace("&nbsp", " ");
                        stockNew.OriginalUrl = shortUrl + link.Attributes["href"].Value.ToString();
                        stockNew.LinkId = linkId;
                        FeedItem(stockNew);
                    }
                }
            }
            catch (Exception ex)
            {
                Ultility.Error(ex.Message);
            }
        }