コード例 #1
0
        public async Task <ActionResult> BatchOperation(string operation, params int?[] ids)
        {
            var ajaxResponse = new AjaxResponse();

            if (ids.Length > 0)
            {
                try
                {
                    var models = await db.Site_Notifies.Where(p => ids.Contains(p.Id)).ToListAsync();

                    if (models.Count == 0)
                    {
                        ajaxResponse.Success = false;
                        ajaxResponse.Message = "没有找到匹配的项,项已被删除或不存在!";
                        return(Json(ajaxResponse));
                    }
                    switch (operation.ToUpper())
                    {
                    case "READ":
                        #region 设置为已读
                    {
                        foreach (var item in models)
                        {
                            var uid = UserId;
                            if (!db.Site_ReadNotifies.Any(p => p.NotifyId == item.Id && p.CreateBy == uid))
                            {
                                var read = new Site_ReadNotify()
                                {
                                    CreateBy   = uid,
                                    CreateTime = DateTime.Now,
                                    NotifyId   = item.Id
                                };
                                db.Site_ReadNotifies.Add(read);
                            }
                        }
                        await db.SaveChangesAsync();

                        ajaxResponse.Success = true;
                        ajaxResponse.Message = string.Format("已成功操作{0}项!", models.Count);
                        break;
                    }

                        #endregion
                    default:
                        break;
                    }
                }
                catch (Exception ex)
                {
                    ajaxResponse.Success = false;
                    ajaxResponse.Message = ex.Message;
                }
            }
            else
            {
                ajaxResponse.Success = false;
                ajaxResponse.Message = "请至少选择一项!";
            }
            return(Json(ajaxResponse));
        }
コード例 #2
0
        public IHttpActionResult Remove(int id)
        {
            var uid = UserId;

            if (!db.Site_ReadNotifies.Any(p => p.NotifyId == id && p.CreateBy == uid))
            {
                var read = new Site_ReadNotify()
                {
                    CreateBy   = uid,
                    CreateTime = DateTime.Now,
                    NotifyId   = id
                };
                db.Site_ReadNotifies.Add(read);
                db.SaveChanges();
            }
            return(Ok());
        }