Skip to content

Commit

Permalink
1. 新增博客列表管理
Browse files Browse the repository at this point in the history
  • Loading branch information
Halifa committed Jul 21, 2017
1 parent 10701a7 commit 71423fe
Show file tree
Hide file tree
Showing 11 changed files with 358 additions and 1 deletion.
11 changes: 11 additions & 0 deletions TonyBlogs.DTO/BlogArticle/BlogArticleListDTO.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace TonyBlogs.DTO.BlogArticle
{
public class BlogArticleListDTO : BaseListDTO<BlogArticleListItemDTO>
{
}
}
37 changes: 37 additions & 0 deletions TonyBlogs.DTO/BlogArticle/BlogArticleListItemDTO.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace TonyBlogs.DTO.BlogArticle
{
public class BlogArticleListItemDTO
{
public long ID { get; set; }

/// <summary>
/// 创建人用户编号
/// </summary>
public long UserID { get; set; }

/// <summary>
/// 博客标题
/// </summary>
public string Title { get; set; }

/// <summary>
/// 类别
/// </summary>
public string Category { get; set; }

/// <summary>
/// 修改时间
/// </summary>
public DateTime UpdateTime { get; set; }

/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
}
}
16 changes: 16 additions & 0 deletions TonyBlogs.DTO/BlogArticle/BlogArticleSearchDTO.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace TonyBlogs.DTO.BlogArticle
{
public class BlogArticleSearchDTO : JQueryDataTableSearchDTO
{
public long UserID { get; set; }

public string Title { get; set; }

public string Category { get; set; }
}
}
3 changes: 3 additions & 0 deletions TonyBlogs.DTO/TonyBlogs.DTO.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,9 @@
<Compile Include="Base\JQueryDataTableSearchDTO.cs" />
<Compile Include="BlogArticle\BlogArticleEditDTO.cs" />
<Compile Include="BlogArticle\BlogArticleEditResultDTO.cs" />
<Compile Include="BlogArticle\BlogArticleListDTO.cs" />
<Compile Include="BlogArticle\BlogArticleListItemDTO.cs" />
<Compile Include="BlogArticle\BlogArticleSearchDTO.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="UserFunction\UserFunctionEditDTO.cs" />
<Compile Include="UserFunction\UserFunctionMenuItemDTO.cs" />
Expand Down
3 changes: 2 additions & 1 deletion TonyBlogs.IRepository/IBlogArticleRepository.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,13 @@
using System.Collections.Generic;
using System.Linq;
using System.Text;
using TonyBlogs.DTO.BlogArticle;
using TonyBlogs.Entity;

namespace TonyBlogs.IRepository
{
public interface IBlogArticleRepository : IBaseRepository<BlogArticleEntity>
{

List<BlogArticleEntity> GetList(BlogArticleSearchDTO searchDTO, out long totalCount);
}
}
5 changes: 5 additions & 0 deletions TonyBlogs.IService/IBlogArticleService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
using System.Collections.Generic;
using System.Linq;
using System.Text;
using TonyBlogs.DTO;
using TonyBlogs.DTO.BlogArticle;
using TonyBlogs.DTO.UserInfo;
using TonyBlogs.Entity;
Expand All @@ -13,5 +14,9 @@ public interface IBlogArticleService : IBaseServices<BlogArticleEntity>
BlogArticleEditDTO GetBlogArticleEditDTO(long blogID);

BlogArticleEditResultDTO AddOrEditBlogArticle(BlogArticleEditDTO dto, IUserBasicInfo userInfo);

BlogArticleListDTO GetList(JQueryDataTableSearchDTO searchDTO, IUserBasicInfo userInfo);

ExecuteResult Delete(long blogID);
}
}
28 changes: 28 additions & 0 deletions TonyBlogs.Repository/BlogArticleRepository.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,41 @@
using System.Collections.Generic;
using System.Linq;
using System.Text;
using TonyBlogs.DTO.BlogArticle;
using TonyBlogs.Entity;
using TonyBlogs.IRepository;
using ServiceStack.OrmLite;

namespace TonyBlogs.Repository
{
public class BlogArticleRepository : BaseRepository<BlogArticleEntity>, IBlogArticleRepository
{
public List<BlogArticleEntity> GetList(BlogArticleSearchDTO searchDTO, out long totalCount)
{
var sqlExp = db.From<BlogArticleEntity>();

if (searchDTO.UserID > 0)
{
sqlExp.Where(m => m.UserID == searchDTO.UserID);
}

if (!string.IsNullOrEmpty(searchDTO.Title))
{
sqlExp.Where(m => m.Title == searchDTO.Title);
}

if (!string.IsNullOrEmpty(searchDTO.Category))
{
sqlExp.Where(m => m.Category == searchDTO.Category);
}

totalCount = base.Count(sqlExp);

sqlExp.Limit(searchDTO.PageIndex - 1, searchDTO.iDisplayLength);

var list = base.QueryWhere(sqlExp);

return list;
}
}
}
26 changes: 26 additions & 0 deletions TonyBlogs.Service/BlogArticleService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
using TonyBlogs.DTO.BlogArticle;
using AutoMapper;
using TonyBlogs.DTO.UserInfo;
using TonyBlogs.DTO;

namespace TonyBlogs.Service
{
Expand Down Expand Up @@ -74,5 +75,30 @@ public BlogArticleEditResultDTO AddOrEditBlogArticle(BlogArticleEditDTO dto, IUs

return resultDTO;
}

public BlogArticleListDTO GetList(JQueryDataTableSearchDTO searchDTO, IUserBasicInfo userInfo)
{
var theSearchDTO = Mapper.DynamicMap<BlogArticleSearchDTO>(searchDTO);
theSearchDTO.UserID = userInfo.UserID;

BlogArticleListDTO result = new BlogArticleListDTO();

long totalCount = 0;
var entityList = this.dal.GetList(theSearchDTO, out totalCount);

result.TotalRecords = totalCount;
result.List = entityList.Select(m => Mapper.DynamicMap<BlogArticleListItemDTO>(m)).ToList();

return result;
}

public ExecuteResult Delete(long blogID)
{
ExecuteResult result = new ExecuteResult();

dal.Delete(m => m.ID == blogID);

return result;
}
}
}
22 changes: 22 additions & 0 deletions TonyBlogs.WebApp/Areas/Admin/Controllers/BlogArticleController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
using System.Linq;
using System.Web;
using System.Web.Mvc;
using TonyBlogs.DTO;
using TonyBlogs.DTO.BlogArticle;
using TonyBlogs.IService;

Expand Down Expand Up @@ -30,12 +31,33 @@ public ActionResult AddOrEdit(long? blogID)
return View(dto);
}

public ActionResult AjaxGetList(JQueryDataTableSearchDTO searchDTO)
{
var listDTO = _blogArticleService.GetList(searchDTO, UserContext.CurrentUser);

return Json(new
{
sEcho = searchDTO.sEcho,
iTotalRecords = listDTO.TotalRecords,
iTotalDisplayRecords = listDTO.TotalRecords,
aaData = listDTO.List
},
JsonRequestBehavior.AllowGet);
}

public ActionResult AjaxAddOrEdit(BlogArticleEditDTO dto)
{
var result = _blogArticleService.AddOrEditBlogArticle(dto, UserContext.CurrentUser);

return Json(result, JsonRequestBehavior.AllowGet);
}

public ActionResult AjaxDelete(long blogID)
{
var result = _blogArticleService.Delete(blogID);

return Json(result, JsonRequestBehavior.AllowGet);
}

}
}
Loading

0 comments on commit 71423fe

Please sign in to comment.