コード例 #1
0
        public IList <AnnouncementInfo> GetList()
        {
            string cmdText = @"select Id,ContentTypeId,Title,Descr,ContentText,LastUpdatedDate 
			                from Announcement
							order by LastUpdatedDate desc "                            ;

            IList <AnnouncementInfo> list = new List <AnnouncementInfo>();

            using (SqlDataReader reader = SqlHelper.ExecuteReader(SqlHelper.SqlProviderConnString, CommandType.Text, cmdText))
            {
                if (reader != null && reader.HasRows)
                {
                    while (reader.Read())
                    {
                        AnnouncementInfo model = new AnnouncementInfo();
                        model.Id              = reader.GetGuid(0);
                        model.ContentTypeId   = reader.GetGuid(1);
                        model.Title           = reader.GetString(2);
                        model.Descr           = reader.GetString(3);
                        model.ContentText     = reader.GetString(4);
                        model.LastUpdatedDate = reader.GetDateTime(5);

                        list.Add(model);
                    }
                }
            }

            return(list);
        }
コード例 #2
0
        public IList <AnnouncementInfo> GetList(string sqlWhere, params SqlParameter[] cmdParms)
        {
            string cmdText = @"select Id,ContentTypeId,Title,Descr,ContentText,LastUpdatedDate
                              from Announcement";

            if (!string.IsNullOrEmpty(sqlWhere))
            {
                cmdText += " where 1=1 " + sqlWhere;
            }

            IList <AnnouncementInfo> list = new List <AnnouncementInfo>();

            using (SqlDataReader reader = SqlHelper.ExecuteReader(SqlHelper.SqlProviderConnString, CommandType.Text, cmdText, cmdParms))
            {
                if (reader != null && reader.HasRows)
                {
                    while (reader.Read())
                    {
                        AnnouncementInfo model = new AnnouncementInfo();
                        model.Id              = reader.GetGuid(0);
                        model.ContentTypeId   = reader.GetGuid(1);
                        model.Title           = reader.GetString(2);
                        model.Descr           = reader.GetString(3);
                        model.ContentText     = reader.GetString(4);
                        model.LastUpdatedDate = reader.GetDateTime(5);

                        list.Add(model);
                    }
                }
            }

            return(list);
        }
コード例 #3
0
        private void UpdateAnnounceInfo_Click(object sender, EventArgs e)
        {
            #region 更新公告相关信息

            if (this.CheckCookie())
            {
                AnnouncementInfo announcementInfo = new AnnouncementInfo();
                announcementInfo.Id           = DNTRequest.GetInt("id", 0);
                announcementInfo.Poster       = poster.Text.Trim();
                announcementInfo.Title        = title.Text.Trim();
                announcementInfo.Displayorder = TypeConverter.StrToInt(displayorder.Text);
                announcementInfo.Starttime    = Convert.ToDateTime(starttime.Text);
                announcementInfo.Endtime      = Convert.ToDateTime(endtime.Text);
                announcementInfo.Message      = DNTRequest.GetString("announcemessage_hidden").Trim();
                Announcements.UpdateAnnouncement(announcementInfo);
                //移除公告缓存
                Discuz.Cache.DNTCache.GetCacheService().RemoveObject("/Forum/AnnouncementList");
                Discuz.Cache.DNTCache.GetCacheService().RemoveObject("/Forum/SimplifiedAnnouncementList");

                //记录日志
                AdminVistLogs.InsertLog(this.userid, this.username, this.usergroupid, this.grouptitle, this.ip, "更新公告", "更新公告,标题为:" + title.Text);
                base.RegisterStartupScript("PAGE", "window.location.href='global_announcegrid.aspx';");
            }
            #endregion
        }
コード例 #4
0
        public AnnouncementInfo GetModel(object Id)
        {
            AnnouncementInfo model = null;

            string       cmdText = @"select top 1 Id,ContentTypeId,Title,Descr,ContentText,LastUpdatedDate 
			                   from Announcement
							   where Id = @Id "                            ;
            SqlParameter parm    = new SqlParameter("@Id", SqlDbType.UniqueIdentifier);

            parm.Value = Guid.Parse(Id.ToString());

            using (SqlDataReader reader = SqlHelper.ExecuteReader(SqlHelper.SqlProviderConnString, CommandType.Text, cmdText, parm))
            {
                if (reader != null)
                {
                    while (reader.Read())
                    {
                        model                 = new AnnouncementInfo();
                        model.Id              = reader.GetGuid(0);
                        model.ContentTypeId   = reader.GetGuid(1);
                        model.Title           = reader.GetString(2);
                        model.Descr           = reader.GetString(3);
                        model.ContentText     = reader.GetString(4);
                        model.LastUpdatedDate = reader.GetDateTime(5);
                    }
                }
            }

            return(model);
        }
コード例 #5
0
        public void SaveAnnouncement(AnnouncementInfo announcementInfo)
        {
            Data.Announcement announcement = ConvertToDb(announcementInfo);

            _context.Announcements.Add(announcement);
            _context.SaveChanges();
        }
コード例 #6
0
        // GET: Admin/Announcement/Update
        public ActionResult Update(string id = "")
        {
            try
            {
                int _id;
                AnnouncementInfo _announcement = null;

                if (!int.TryParse(id, out _id))
                {
                    return(RedirectToAction("Manage", "Announcement"));
                }

                using (AnnouncementRepository Repo = new AnnouncementRepository())
                {
                    _announcement = Repo.GetAnnouncementById(_id);
                }

                if (_announcement == null)
                {
                    return(RedirectToAction("Manage", "Announcement"));
                }

                return(View(_announcement));
            }

            catch (Exception ex)
            {
                return(View("Error", new HandleErrorInfo(ex, "Announcement", "Update")));
            }
        }
コード例 #7
0
        public void PhoneViewAnalysis(CallsInfo[] calls)
        {
            _logger.LogInformation("Анализ по расхлопам");

            foreach (var call in calls)
            {
                AnnouncementInfo announcementWithView = default;
                var announcementWithViewCount         = 0;

                foreach (var announcement in call.Announcements)
                {
                    if (announcement.PhoneViewCount != default)
                    {
                        announcement.Features.Add(new FeatureInfo
                        {
                            Name   = FeatureInfo.PHONE_VIEW,
                            Weight = (double)announcement.PhoneViewCount / call.Announcements.Sum(x => x.PhoneViewCount)
                        });

                        announcementWithView = announcement;
                        announcementWithViewCount++;
                    }
                }

                if (announcementWithViewCount == 1)
                {
                    announcementWithView.Features.Add(new FeatureInfo
                    {
                        Name   = FeatureInfo.ONE_PHONE_VIEW,
                        Weight = 1.0f
                    });
                }
            }
            _logger.LogInformation("Закончили");
        }
コード例 #8
0
ファイル: Announcement.cs プロジェクト: 2644783865/Infoztc
        public IList <AnnouncementInfo> GetList()
        {
            StringBuilder sb = new StringBuilder(250);

            sb.Append(@"select Id,ContentTypeId,Title,Descr,ContentText,VirtualViewCount,ViewCount,Sort,IsDisable,LastUpdatedDate 
			            from Announcement
					    order by LastUpdatedDate desc,Sort "                    );

            IList <AnnouncementInfo> list = new List <AnnouncementInfo>();

            using (SqlDataReader reader = SqlHelper.ExecuteReader(SqlHelper.SqlProviderConnString, CommandType.Text, sb.ToString()))
            {
                if (reader != null && reader.HasRows)
                {
                    while (reader.Read())
                    {
                        AnnouncementInfo model = new AnnouncementInfo();
                        model.Id               = reader.GetGuid(0);
                        model.ContentTypeId    = reader.GetGuid(1);
                        model.Title            = reader.GetString(2);
                        model.Descr            = reader.GetString(3);
                        model.ContentText      = reader.GetString(4);
                        model.VirtualViewCount = reader.GetInt32(5);
                        model.ViewCount        = reader.GetInt32(6);
                        model.Sort             = reader.GetInt32(7);
                        model.IsDisable        = reader.GetBoolean(8);
                        model.LastUpdatedDate  = reader.GetDateTime(9);

                        list.Add(model);
                    }
                }
            }

            return(list);
        }
コード例 #9
0
        public IList <AnnouncementInfo> GetListByJoin(int pageIndex, int pageSize, out int totalRecords, string sqlWhere, params SqlParameter[] cmdParms)
        {
            StringBuilder sb = new StringBuilder(250);

            sb.Append(@"select count(*) from Announcement ");
            if (!string.IsNullOrEmpty(sqlWhere))
            {
                sb.AppendFormat(" where 1=1 {0} ", sqlWhere);
            }
            totalRecords = (int)SqlHelper.ExecuteScalar(SqlHelper.GzxySiteDbConnString, CommandType.Text, sb.ToString(), cmdParms);

            if (totalRecords == 0)
            {
                return(new List <AnnouncementInfo>());
            }

            sb.Clear();
            int startIndex = (pageIndex - 1) * pageSize + 1;
            int endIndex   = pageIndex * pageSize;

            sb.Append(@"select * from(select row_number() over(order by a.Sort,a.LastUpdatedDate desc) as RowNumber,
			          a.Id,a.ContentTypeId,a.Title,a.Descr,a.ContentText,a.VirtualViewCount,a.ViewCount,a.Sort,a.IsDisable,a.LastUpdatedDate,
                      ct.TypeValue
					  from Announcement a 
                      left join ContentType ct on ct.Id = a.ContentTypeId
                      ");
            if (!string.IsNullOrEmpty(sqlWhere))
            {
                sb.AppendFormat(" where 1=1 {0} ", sqlWhere);
            }
            sb.AppendFormat(@")as objTable where RowNumber between {0} and {1} ", startIndex, endIndex);

            IList <AnnouncementInfo> list = new List <AnnouncementInfo>();

            using (SqlDataReader reader = SqlHelper.ExecuteReader(SqlHelper.GzxySiteDbConnString, CommandType.Text, sb.ToString(), cmdParms))
            {
                if (reader != null && reader.HasRows)
                {
                    while (reader.Read())
                    {
                        AnnouncementInfo model = new AnnouncementInfo();
                        model.Id               = reader.GetGuid(1);
                        model.ContentTypeId    = reader.GetGuid(2);
                        model.Title            = reader.GetString(3);
                        model.Descr            = reader.GetString(4);
                        model.ContentText      = reader.GetString(5);
                        model.VirtualViewCount = reader.GetInt32(6);
                        model.ViewCount        = reader.GetInt32(7);
                        model.Sort             = reader.GetInt32(8);
                        model.IsDisable        = reader.GetBoolean(9);
                        model.LastUpdatedDate  = reader.GetDateTime(10);
                        model.ContentTypeName  = reader.GetString(11);

                        list.Add(model);
                    }
                }
            }

            return(list);
        }
コード例 #10
0
ファイル: Announcements.cs プロジェクト: xiongeee/BBX
 public static void UpdateAnnouncement(AnnouncementInfo announcementInfo)
 {
     if (announcementInfo.Id > 0)
     {
         Discuz.Data.Announcements.UpdateAnnouncement(announcementInfo);
     }
 }
コード例 #11
0
ファイル: AnnouncementService.cs プロジェクト: lolegg/Cupcake
 public virtual void DeleteGoogleProduct(AnnouncementInfo googleProductRecord)
 {
     if (googleProductRecord == null)
     {
         throw new ArgumentNullException("googleProductRecord");
     }
     repository.Delete(googleProductRecord);
 }
コード例 #12
0
        public async Task LoadAnnouncementsHousesAsync(CallsInfo[] calls)
        {
            _logger.LogInformation("Загрузка данных по домам объявлений из Presto");

            IPrestoClient client = new PrestodbClient(Config);

            var query = @"
select * from apoturaev.hackaton_dataset2_stage8 where calltrackingid in (ID)
";

            var batch   = 500;
            var batches = Math.Ceiling((decimal)calls.Length / batch);

            for (int i = 0; i < batches; i++)
            {
                var loadCount = Math.Min(batch, calls.Length - i * batch);

                var ids = calls.Skip(i * batch).Take(loadCount).Select(x => x.CalltrackingId);

                var stringIds = String.Join(',', ids.Select(x => x.ToString()).ToArray());

                var parsedQuery = query.Replace("ID", stringIds);

                var request = new ExecuteQueryV1Request(parsedQuery);

                var response = await client.ExecuteQueryV1(request);

                foreach (var data in response.Data)
                {
                    var call = calls.First(x => x.CalltrackingId == Int32.Parse(data[1].ToString()));

                    var announcementId = Int32.Parse(data[0].ToString());

                    var announcement = call.Announcements.FirstOrDefault(x => x.Id == announcementId);

                    if (announcement == default)
                    {
                        announcement = new AnnouncementInfo
                        {
                            Id = announcementId
                        };

                        call.Announcements.Add(announcement);
                    }

                    announcement.House = data[3].ToString();
                }

                if (response.LastError != null)
                {
                    _logger.LogError("Error while loading texts");
                }

                _logger.LogInformation($"Batch {i} loaded");
            }

            _logger.LogInformation("Закончили");
        }
コード例 #13
0
ファイル: AnnouncementService.cs プロジェクト: lolegg/Cupcake
        public virtual void InsertGoogleProductRecord(AnnouncementInfo googleProductRecord)
        {
            if (googleProductRecord == null)
            {
                throw new ArgumentNullException("googleProductRecord");
            }

            repository.Insert(googleProductRecord);
        }
コード例 #14
0
        /// <summary>
        /// cmdUpdate_Click runs when the update button is clicked
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        /// <remarks></remarks>
        private void CmdUpdateClick(object sender, EventArgs e)
        {
            try
            {
                // verify data
                if (Page.IsValid)
                {
                    AnnouncementInfo announcement;
                    if (Model.IsAddMode)
                    {
                        // new item, create new announcement
                        announcement = new AnnouncementInfo
                        {
                            ItemID          = Model.ItemId,
                            ModuleID        = ModuleContext.ModuleId,
                            PortalID        = ModuleContext.PortalId,
                            CreatedByUserID = ModuleContext.PortalSettings.UserId,
                            CreatedOnDate   = DateTime.Now
                        };
                    }
                    else
                    {
                        // updating existing item, load it
                        announcement = Model.AnnouncementInfo;
                    }

                    announcement.Title                = txtTitle.Text;
                    announcement.ImageSource          = urlImage.FilePath;
                    announcement.Description          = teDescription.Text;
                    announcement.URL                  = ctlURL.Url;
                    announcement.PublishDate          = GetDateTimeValue(publishDate, publishTime, DateTime.Now);
                    announcement.ExpireDate           = GetDateTimeValue(expireDate, expireTime);
                    announcement.LastModifiedByUserID = ModuleContext.PortalSettings.UserId;
                    announcement.LastModifiedOnDate   = DateTime.Now;
                    if (txtViewOrder.Text != "")
                    {
                        announcement.ViewOrder = Convert.ToInt32(txtViewOrder.Text);
                    }

                    UpdateAnnouncement(this, new EditItemEventArgs(announcement));

                    // url tracking
                    var objUrls = new UrlController();
                    objUrls.UpdateUrl(ModuleContext.PortalId, ctlURL.Url, ctlURL.UrlType, ctlURL.Log, ctlURL.Track, ModuleContext.ModuleId, ctlURL.NewWindow);

                    // redirect back to page
                    Response.Redirect(ReturnURL, true);
                }
            }
            catch (Exception exc)
            {
                Exceptions.ProcessModuleLoadException(this, exc);
            }
        }
コード例 #15
0
        private async void OnItemTapped(object sender, ItemTappedEventArgs e)
        {
            AnnouncementInfo select = e.Item as AnnouncementInfo;

            if (Navigation.NavigationStack.FirstOrDefault(x => x is NotificationOnePage) == null)
            {
                await Navigation.PushAsync(new NotificationOnePage(select));
            }

            MessagingCenter.Send <Object, int>(this, "SetNotificationRead", select.ID);
        }
コード例 #16
0
        private double GetFeatureWeight(AnnouncementInfo info, string name)
        {
            var feature = info.Features.FirstOrDefault(x => x.Name == name);

            if (feature == default)
            {
                return(0);
            }

            return(feature.Weight);
        }
コード例 #17
0
        /// <summary>
        /// 获取公告
        /// </summary>
        /// <param name="aId">公告id</param>
        /// <returns></returns>
        public static AnnouncementInfo GetAnnouncement(int aid)
        {
            AnnouncementInfo announcementInfo = null;
            IDataReader      reader           = DatabaseProvider.GetInstance().GetAnnouncement(aid);

            if (reader.Read())
            {
                announcementInfo = LoadSingleAnnouncementInfo(reader);
            }
            reader.Close();
            return(announcementInfo);
        }
コード例 #18
0
ファイル: AnnouncementModel.cs プロジェクト: lolegg/Cupcake
 public AnnouncementModel ToModel(AnnouncementInfo info)
 {
     this.Id         = info.Id;
     this.Title      = info.Title;
     this.Name       = info.Name;
     this.Content    = info.Content;
     this.Department = info.Department;
     this.Imgurl     = info.Imgurl;
     this.ImgName    = info.ImgName;
     this.ImgSLT     = info.ImgSLT;
     return(this);
 }
コード例 #19
0
ファイル: Announcements.cs プロジェクト: xiongeee/BBX
        public static void UpdateAnnouncementDisplayOrder(string displayorder, string[] hid, int userid, int useradminid)
        {
            DataTable announcementList = Announcements.GetAnnouncementList();

            for (int i = 0; i < displayorder.Split(',').Length; i++)
            {
                AnnouncementInfo announcement = Announcements.GetAnnouncement(TypeConverter.StrToInt(hid[i]));
                if (((announcement.Posterid > 0 && announcement.Posterid == userid) || useradminid == 1) && announcement.Displayorder.ToString() != displayorder[i].ToString())
                {
                    Discuz.Data.Announcements.UpdateAnnouncementDisplayOrder(TypeConverter.StrToInt(displayorder.Split(',')[i]), TypeConverter.ObjectToInt(announcementList.Rows[i]["id"]));
                }
            }
        }
コード例 #20
0
 public Data.Announcement ConvertToDb(AnnouncementInfo announcementInfo)
 {
     return(new Data.Announcement
     {
         Id = announcementInfo.Id,
         Title = announcementInfo.Title,
         Description = announcementInfo.Description,
         CreatedOn = announcementInfo.CreatedOn,
         CreatedByAccountId = announcementInfo.CreatedByAccountId,
         ModifiedOn = announcementInfo.ModifiedOn,
         ModifiedByAccountId = announcementInfo.ModifiedByAccountId
     });
 }
コード例 #21
0
        private void SaveAnnouncement(HttpContext context)
        {
            try
            {
                string Id             = context.Request.Form["ctl00$cphMain$hId"].Trim();
                string title          = context.Request.Form["ctl00$cphMain$txtTitle"].Trim();
                string sContentTypeId = context.Request.Form["contentTypeId"].Trim();
                string sDescr         = context.Request.Form["ctl00$cphMain$txtaDescr"].Trim();
                string content        = context.Request.Form["txtContent"].Trim();
                content = HttpUtility.HtmlDecode(content);
                Guid gId = Guid.Empty;
                if (Id != "")
                {
                    Guid.TryParse(Id, out gId);
                }
                Guid contentTypeId = Guid.Empty;
                Guid.TryParse(sContentTypeId, out contentTypeId);

                AnnouncementInfo model = new AnnouncementInfo();
                model.LastUpdatedDate = DateTime.Now;
                model.Title           = title;
                model.Descr           = sDescr;
                model.ContentText     = content;
                model.ContentTypeId   = contentTypeId;
                model.Id = gId;

                Announcement bll = new Announcement();

                int effect = -1;
                if (!gId.Equals(Guid.Empty))
                {
                    effect = bll.Update(model);
                }
                else
                {
                    effect = bll.Insert(model);
                }

                if (effect != 1)
                {
                    context.Response.Write("{\"success\": false,\"message\": \"操作失败,请正确输入\"}");
                    return;
                }

                context.Response.Write("{\"success\": true,\"message\": \"操作成功\"}");
            }
            catch (Exception ex)
            {
                context.Response.Write("{\"success\": false,\"message\": \"异常:" + ex.Message + "\"}");
            }
        }
コード例 #22
0
        /// <summary>
        /// 装载实体对象
        /// </summary>
        /// <param name="reader"></param>
        /// <returns></returns>
        private static AnnouncementInfo LoadSingleAnnouncementInfo(IDataReader reader)
        {
            AnnouncementInfo announcementInfo = new AnnouncementInfo();

            announcementInfo.Id           = TypeConverter.ObjectToInt(reader["id"]);
            announcementInfo.Poster       = reader["poster"].ToString();
            announcementInfo.Posterid     = TypeConverter.ObjectToInt(reader["posterid"]);
            announcementInfo.Title        = reader["title"].ToString();
            announcementInfo.Displayorder = TypeConverter.ObjectToInt(reader["displayorder"]);
            announcementInfo.Starttime    = Convert.ToDateTime(reader["starttime"].ToString());
            announcementInfo.Endtime      = Convert.ToDateTime(reader["endtime"].ToString());
            announcementInfo.Message      = reader["message"].ToString();
            return(announcementInfo);
        }
コード例 #23
0
ファイル: AnnouncementModel.cs プロジェクト: lolegg/Cupcake
 public AnnouncementInfo FormData(AnnouncementInfo info)
 {
     info.Id         = this.Id;
     info.CreateDate = this.CreateDate;
     info.UpdateDate = this.UpdateDate;
     info.IsDelete   = this.IsDelete;
     info.Title      = this.Title;
     info.Content    = this.Content;
     info.Department = this.Department;
     info.Imgurl     = this.Imgurl;
     info.ImgName    = this.ImgName;
     info.ImgSLT     = this.ImgSLT;
     return(info);
 }
コード例 #24
0
        public void CalculateResult(CallsInfo[] calls)
        {
            _logger.LogInformation("Расчёт результатов");

            foreach (var call in calls)
            {
                if (call.Announcements.Count == 0)
                {
                    continue;
                }

                AnnouncementInfo bestChoose = default;

                foreach (var announcement in call.Announcements)
                {
                    var oneAnn = GetFeatureWeight(announcement, FeatureInfo.ONE_ANNOUNEMENT);
                    var leven  = GetFeatureWeight(announcement, FeatureInfo.LEVENSTAIN);
                    var cosine = GetFeatureWeight(announcement, FeatureInfo.COSINE);
                    var jaro   = GetFeatureWeight(announcement, FeatureInfo.JARO);
                    var house  = GetFeatureWeight(announcement, FeatureInfo.HOUSE);
                    var phone  = GetFeatureWeight(announcement, FeatureInfo.PHONE_VIEW);

                    var featureWeights = new List <double>
                    {
                        oneAnn * 1
                        , leven * 0.79 + house * 0.2
                        , cosine * 0.79 + house * 0.2
                        , jaro * 0.79 + house * 0.2
                        , phone * 1
                    };

                    var weight = featureWeights.Max();

                    announcement.Similarity = weight;

                    if (bestChoose == null || bestChoose.Similarity <= announcement.Similarity)
                    {
                        bestChoose = announcement;
                    }
                }

                call.CalculatedId = bestChoose.Id;
                call.Similarity   = bestChoose.Similarity;
            }

            _logger.LogInformation("Закончили");
        }
コード例 #25
0
        public List <AnnouncementInfo> GetListForTitle(int pageIndex, int pageSize, out int totalRecords, string sqlWhere, params SqlParameter[] cmdParms)
        {
            StringBuilder sb = new StringBuilder();

            sb.Append(@"select count(*) from Announcement ");
            if (!string.IsNullOrEmpty(sqlWhere))
            {
                sb.AppendFormat("where 1=1 {0} ", sqlWhere);
            }
            totalRecords = (int)SqlHelper.ExecuteScalar(SqlHelper.GzxySiteDbConnString, CommandType.Text, sb.ToString(), cmdParms);

            int startIndex = (pageIndex - 1) * pageSize + 1;
            int endIndex   = pageIndex * pageSize;

            sb.Clear();
            sb.Append(@"select * from(select row_number() over(order by Sort,LastUpdatedDate desc) as RowNumber,
			          Id,Title,ContentTypeId,LastUpdatedDate,VirtualViewCount,ViewCount
					  from Announcement "                    );
            if (!string.IsNullOrEmpty(sqlWhere))
            {
                sb.AppendFormat("where 1=1 {0} ", sqlWhere);
            }
            sb.AppendFormat(")as objTable where RowNumber between {0} and {1} ", startIndex, endIndex);

            List <AnnouncementInfo> list = new List <AnnouncementInfo>();

            using (SqlDataReader reader = SqlHelper.ExecuteReader(SqlHelper.GzxySiteDbConnString, CommandType.Text, sb.ToString(), cmdParms))
            {
                if (reader != null && reader.HasRows)
                {
                    while (reader.Read())
                    {
                        AnnouncementInfo model = new AnnouncementInfo();
                        model.Id               = reader.GetGuid(1);
                        model.Title            = reader.GetString(2);
                        model.ContentTypeId    = reader.GetGuid(3);
                        model.LastUpdatedDate  = reader.GetDateTime(4);
                        model.VirtualViewCount = reader.GetInt32(5);
                        model.ViewCount        = reader.GetInt32(6);

                        list.Add(model);
                    }
                }
            }

            return(list);
        }
コード例 #26
0
        public Task <List <AnnouncementInfo> > GetAnnouncement(int userID, int currentIndex, int maxRows)
        {
            return(Task.Run(() =>
            {
                using (MIUEntities db = new MIUEntities())
                {
                    int skip = currentIndex <= 1 ? 0 : (currentIndex - 1) * maxRows;
                    List <AnnouncementInfo> infoList = new List <AnnouncementInfo>();
                    try
                    {
                        //DateTime startDate = DateTime.Now.AddDays(-7);
                        //DateTime endDate = DateTime.Now;
                        string visibilityName = db.Users.Where(x => x.ID == userID).SingleOrDefault().Role;
                        List <Announcement> dataList = db.Announcements
                                                       .Where(w => w.isDraft != true
                                                              //&& DbFunctions.TruncateTime(w.ToDate) >= startDate && DbFunctions.TruncateTime(w.FromDate) <= endDate
                                                              //visibility
                                                              && (
                                                                  w.AnnouncementVisibilities.Any(x => x.VisibilityName == "Public") ||
                                                                  w.AnnouncementVisibilities.Any(x => x.VisibilityName == visibilityName)
                                                                  )

                                                              ).OrderByDescending(a => a.CreatedDate)
                                                       .Skip(skip).Take(maxRows).ToList();

                        foreach (var data in dataList)
                        {
                            AnnouncementInfo info = new AnnouncementInfo();
                            if (data != null)
                            {
                                PropertyCopier <Announcement, AnnouncementInfo> .Copy(data, info);
                                info.Content = data.Description != null ? data.Description : data.Content;
                                info.IsFavorite = db.FavoriteLists.Any(a => a.FavoriteID == data.ID && a.UserID == userID && a.FavoriteType == "Announcement");
                                infoList.Add(info);
                            }
                        }
                    }
                    catch (DbEntityValidationException ex)
                    {
                        Logger log = new Logger();
                        log.ErrorLog(ex, "Announcement", "GetAnnouncement");
                    }

                    return infoList;
                }
            }));
        }
コード例 #27
0
ファイル: Announcements.cs プロジェクト: xiongeee/BBX
        public static void CreateAnnouncement(string username, int userid, string subject, int displayorder, string starttime, string endtime, string message)
        {
            AnnouncementInfo announcementInfo = new AnnouncementInfo();

            announcementInfo.Title        = subject;
            announcementInfo.Poster       = username;
            announcementInfo.Posterid     = userid;
            announcementInfo.Displayorder = displayorder;
            DateTime dateTime;

            DateTime.TryParse(starttime, out dateTime);
            announcementInfo.Starttime = dateTime;
            DateTime.TryParse(endtime, out dateTime);
            announcementInfo.Endtime = dateTime;
            announcementInfo.Message = message;
            Discuz.Data.Announcements.CreateAnnouncement(announcementInfo);
        }
コード例 #28
0
ファイル: AnnouncementModel.cs プロジェクト: lolegg/Cupcake
        public AnnouncementInfo ToInfo()
        {
            AnnouncementInfo info = new AnnouncementInfo();

            info.Id         = this.Id;
            info.CreateDate = this.CreateDate;
            info.UpdateDate = this.UpdateDate;
            info.IsDelete   = this.IsDelete;
            info.Title      = this.Title;
            info.Content    = this.Content;
            info.Name       = this.Name;
            info.Department = this.Department;
            info.Imgurl     = this.Imgurl;
            info.ImgName    = this.ImgName;
            info.ImgSLT     = this.ImgSLT;
            return(info);
        }
コード例 #29
0
        public IList <AnnouncementInfo> GetList(int pageIndex, int pageSize, out int totalRecords, string sqlWhere, params SqlParameter[] cmdParms)
        {
            string cmdText = @"select count(*) from Announcement ";

            if (!string.IsNullOrEmpty(sqlWhere))
            {
                cmdText += " where 1=1 " + sqlWhere;
            }
            totalRecords = (int)SqlHelper.ExecuteScalar(SqlHelper.SqlProviderConnString, CommandType.Text, cmdText, cmdParms);

            int startIndex = (pageIndex - 1) * pageSize + 1;
            int endIndex   = pageIndex * pageSize;

            cmdText = @"select * from(select row_number() over(order by LastUpdatedDate desc) as RowNumber,
			          Id,ContentTypeId,Title,Descr,ContentText,LastUpdatedDate
					  from Announcement "                    ;
            if (!string.IsNullOrEmpty(sqlWhere))
            {
                cmdText += "where 1=1 " + sqlWhere;
            }
            cmdText += ")as objTable where RowNumber between " + startIndex + " and " + endIndex + " ";

            IList <AnnouncementInfo> list = new List <AnnouncementInfo>();

            using (SqlDataReader reader = SqlHelper.ExecuteReader(SqlHelper.SqlProviderConnString, CommandType.Text, cmdText, cmdParms))
            {
                if (reader != null && reader.HasRows)
                {
                    while (reader.Read())
                    {
                        AnnouncementInfo model = new AnnouncementInfo();
                        model.Id              = reader.GetGuid(1);
                        model.ContentTypeId   = reader.GetGuid(2);
                        model.Title           = reader.GetString(3);
                        model.Descr           = reader.GetString(4);
                        model.ContentText     = reader.GetString(5);
                        model.LastUpdatedDate = reader.GetDateTime(6);

                        list.Add(model);
                    }
                }
            }

            return(list);
        }
コード例 #30
0
 public bool DeleteAnnouncementInfoByID(int ID)
 {
     try
     {
         AnnouncementInfo ami = _dataContext.AnnouncementInfos.Where(x => x.ID == ID).SingleOrDefault();
         if (ami != null)
         {
             _dataContext.AnnouncementInfos.DeleteOnSubmit(ami);
             _dataContext.SubmitChanges();
         }
         return(true);
     }
     catch (Exception e)
     {
         System.Console.WriteLine(e.Message);
         return(false);
     }
 }
コード例 #31
0
 protected void CreateAnnouncementDialog_OkButtonClicked(object sender, EventArgs e)
 {
     if (Page.IsValid)
     {
         AnnouncementInfo entity = new AnnouncementInfo();
         entity.Id = 0;
         entity.Description = AnnouncementDescriptionTextBox.Text.ToString().Trim();
         entity.VisibleStartDate = DateTimePickerStartDate.Date;
         entity.VisibleEndDate = DateTimePickerEndDate.Date;
         AnnouncementsHelper.InsertAnnouncements(entity);
         CreateAnnouncementDialog.Reset();
         DataBind();
         OnAnnouncementCreated(EventArgs.Empty);
     }
     else
     {
         ValidationHelper.SetFocusToFirstError(this.Page, "create_announcement");
     }
 }
コード例 #32
0
 public static bool UpdateAnnouncements(AnnouncementInfo entity)
 {
     DbCommand cmd = SqlHelpers.CreateCommand(DataHelpers.ConnectionString);
     cmd.CommandText = "dbo.mon_UPDATE_ANNOUNCEMENT";
     cmd.AddInputParam("@Id", DbType.Int32, entity.Id);
     cmd.AddInputParam("@Description", DbType.AnsiString, entity.Description);
     cmd.AddInputParam("@VisibleStartDate", DbType.DateTime, entity.VisibleStartDate);
     cmd.AddInputParam("@VisibleEndDate", DbType.DateTime, entity.VisibleEndDate);
     cmd.AddInputParam("@CreatedDate", DbType.DateTime, entity.CreatedDate);
     return Convert.ToBoolean(SqlHelpers.ExecuteNonQuery(cmd));
 }
コード例 #33
0
        private SyndicationItem BuildSyndicationItem(AnnouncementInfo ann)
        {
            var item = new SyndicationItem();
            if (ann.PublishDate != null)
                item.PublishDate = DateTime.SpecifyKind(ann.PublishDate.Value,DateTimeKind.Utc);

            item.Content = new TextSyndicationContent(ann.Description, TextSyndicationContentKind.Html);
            item.LastUpdatedTime = DateTime.SpecifyKind(ann.LastModifiedOnDate, DateTimeKind.Utc);
            item.Title = new TextSyndicationContent(ann.Title);
            var p = ann.Permalink;
            if (p != null)
            {
                //item.BaseUri = new Uri(p);
                item.AddPermalink(new Uri(p));
            }

            if (ann.URL != "")
            {
                item.Links.Add(new SyndicationLink(new Uri(ann.URL)));
                item.Id = ann.URL;
            }

            item.Authors.Add(new SyndicationPerson { Name = ann.LastModifiedByUserID.ToString(CultureInfo.InvariantCulture) });
            return item;
        }
コード例 #34
0
 public static bool InsertAnnouncements(AnnouncementInfo entity)
 {
     DbCommand cmd = SqlHelpers.CreateCommand(DataHelpers.ConnectionString);
     cmd.CommandText = "dbo.mon_INSERT_ANNOUNCEMENTS_INFO";
     cmd.AddInputParam("@Id", DbType.Int32, entity.Id);
     cmd.AddInputParam("@Description", DbType.AnsiString, entity.Description);
     cmd.AddInputParam("@VisibleStartDate", DbType.DateTime, entity.VisibleStartDate);
     cmd.AddInputParam("@VisibleEndDate", DbType.DateTime, entity.VisibleEndDate);
     cmd.AddInputParam("@CreatedDate", DbType.DateTime, System.DateTime.Now);
     cmd.AddInputParam("@ApplicationName", DbType.String, System.Web.Security.Membership.Provider.ApplicationName);
     int result;
     result = Convert.ToInt32(SqlHelpers.ExecuteScalar(cmd));
     if (result > 0)
         return true;
     return false;
  }