调整文章管理
This commit is contained in:
parent
6518d7b507
commit
082d64655e
|
|
@ -0,0 +1,113 @@
|
|||
package com.hxkj.admin.controller.article;
|
||||
|
||||
import com.hxkj.admin.config.aop.Log;
|
||||
import com.hxkj.admin.service.article.IArticleCateService;
|
||||
import com.hxkj.admin.validate.article.CategoryParam;
|
||||
import com.hxkj.admin.validate.common.PageParam;
|
||||
import com.hxkj.admin.vo.common.article.CategoryVo;
|
||||
import com.hxkj.common.core.AjaxResult;
|
||||
import com.hxkj.common.core.PageResult;
|
||||
import com.hxkj.common.validator.annotation.IDMust;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 文章分类管理
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("api/article/cate")
|
||||
public class ArticleCateController {
|
||||
|
||||
@Resource
|
||||
IArticleCateService iArticleCateService;
|
||||
|
||||
/**
|
||||
* 分类所有
|
||||
*
|
||||
* @author fzr
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/all")
|
||||
public Object all() {
|
||||
List<CategoryVo> list = iArticleCateService.all();
|
||||
return AjaxResult.success(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类列表
|
||||
*
|
||||
* @author fzr
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/cateList")
|
||||
public Object list(@Validated PageParam pageParam,
|
||||
@RequestParam Map<String, String> params) {
|
||||
PageResult<CategoryVo> list = iArticleCateService.list(pageParam, params);
|
||||
return AjaxResult.success(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类详情
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 主键
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/detail")
|
||||
public Object detail(@Validated @IDMust() @RequestParam("id") Integer id) {
|
||||
CategoryVo vo = iArticleCateService.detail(id);
|
||||
return AjaxResult.success(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类新增
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleCateParam 分类参数
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "文章分类新增")
|
||||
@PostMapping("/add")
|
||||
public Object add(@Validated(value = CategoryParam.create.class)
|
||||
@RequestBody CategoryParam articleCateParam) {
|
||||
iArticleCateService.add(articleCateParam);
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类编辑
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleCateParam 分类编辑
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "文章分类编辑")
|
||||
@PostMapping("/edit")
|
||||
public Object edit(@Validated(value = CategoryParam.update.class)
|
||||
@RequestBody CategoryParam articleCateParam) {
|
||||
iArticleCateService.edit(articleCateParam);
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类删除
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleCateParam 分类删除
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "文章分类删除")
|
||||
@PostMapping("/cateDel")
|
||||
public Object del(@Validated(value = CategoryParam.delete.class)
|
||||
@RequestBody CategoryParam articleCateParam) {
|
||||
iArticleCateService.del(articleCateParam.getId());
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,102 @@
|
|||
package com.hxkj.admin.controller.article;
|
||||
|
||||
import com.hxkj.admin.config.aop.Log;
|
||||
import com.hxkj.admin.service.article.IArticleTextService;
|
||||
import com.hxkj.admin.validate.article.ArticleParam;
|
||||
import com.hxkj.admin.validate.common.PageParam;
|
||||
import com.hxkj.admin.vo.common.article.ArticleDetailVo;
|
||||
import com.hxkj.admin.vo.common.article.ArticleListVo;
|
||||
import com.hxkj.common.core.AjaxResult;
|
||||
import com.hxkj.common.core.PageResult;
|
||||
import com.hxkj.common.validator.annotation.IDMust;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 文章管理
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("api/article")
|
||||
public class ArticleTextController {
|
||||
|
||||
@Resource
|
||||
IArticleTextService iArticleTextService;
|
||||
|
||||
/**
|
||||
* 文章列表
|
||||
*
|
||||
* @author fzr
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public Object articleList(@Validated PageParam pageParam,
|
||||
@RequestParam Map<String, String> params) {
|
||||
PageResult<ArticleListVo> vos = iArticleTextService.list(pageParam, params);
|
||||
return AjaxResult.success(vos);
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章列表
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 文章ID
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/detail")
|
||||
public Object detail(@Validated @IDMust() @RequestParam("id") Integer id) {
|
||||
ArticleDetailVo vo = iArticleTextService.detail(id);
|
||||
return AjaxResult.success(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章新增
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleParam 文章参数
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "文章新增")
|
||||
@PostMapping("/add")
|
||||
public Object add(
|
||||
@Validated(value = ArticleParam.create.class)
|
||||
@RequestBody ArticleParam articleParam) {
|
||||
iArticleTextService.add(articleParam);
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章编辑
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleParam 文章参数
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "文章编辑")
|
||||
@PostMapping("/edit")
|
||||
public Object edit(@Validated(value = ArticleParam.update.class)
|
||||
@RequestBody ArticleParam articleParam) {
|
||||
iArticleTextService.edit(articleParam);
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章删除
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleParam 文章参数
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "文章删除")
|
||||
@PostMapping("/del")
|
||||
public Object del(@Validated(value = ArticleParam.delete.class)
|
||||
@RequestBody ArticleParam articleParam) {
|
||||
iArticleTextService.del(articleParam.getId());
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1,219 +0,0 @@
|
|||
package com.hxkj.admin.controller.common;
|
||||
|
||||
import com.hxkj.admin.config.aop.Log;
|
||||
import com.hxkj.admin.service.common.IArticleService;
|
||||
import com.hxkj.admin.validate.article.CategoryParam;
|
||||
import com.hxkj.admin.validate.article.ArticleParam;
|
||||
import com.hxkj.admin.validate.common.PageParam;
|
||||
import com.hxkj.admin.vo.common.article.ArticleDetailVo;
|
||||
import com.hxkj.admin.vo.common.article.ArticleListVo;
|
||||
import com.hxkj.admin.vo.common.article.CategoryVo;
|
||||
import com.hxkj.common.core.AjaxResult;
|
||||
import com.hxkj.common.core.PageResult;
|
||||
import com.hxkj.common.validator.annotation.IDMust;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("api/common/article")
|
||||
public class ArticleController {
|
||||
|
||||
@Resource
|
||||
IArticleService iArticleService;
|
||||
|
||||
/**
|
||||
* 文章列表
|
||||
*
|
||||
* @author fzr
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/articleList")
|
||||
public Object articleList(@Validated PageParam pageParam,
|
||||
@RequestParam Map<String, String> params) {
|
||||
PageResult<ArticleListVo> vos = iArticleService.articleList(pageParam, params);
|
||||
return AjaxResult.success(vos);
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章列表
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 文章ID
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/articleDetail")
|
||||
public Object articleDetail(@Validated @IDMust() @RequestParam("id") Integer id) {
|
||||
try {
|
||||
ArticleDetailVo vo = iArticleService.articleDetail(id);
|
||||
return AjaxResult.success(vo);
|
||||
} catch (Exception e) {
|
||||
return AjaxResult.failed(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章新增
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleParam 文章参数
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "文章新增")
|
||||
@PostMapping("/articleAdd")
|
||||
public Object articleAdd(
|
||||
@Validated(value = ArticleParam.create.class)
|
||||
@RequestBody ArticleParam articleParam) {
|
||||
try {
|
||||
iArticleService.articleAdd(articleParam);
|
||||
return AjaxResult.success();
|
||||
} catch (Exception e) {
|
||||
return AjaxResult.failed(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章编辑
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleParam 文章参数
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "文章编辑")
|
||||
@PostMapping("/articleEdit")
|
||||
public Object articleEdit(@Validated(value = ArticleParam.update.class)
|
||||
@RequestBody ArticleParam articleParam) {
|
||||
try {
|
||||
iArticleService.articleEdit(articleParam);
|
||||
return AjaxResult.success();
|
||||
} catch (Exception e) {
|
||||
return AjaxResult.failed(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章删除
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleParam 文章参数
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "文章删除")
|
||||
@PostMapping("/articleDel")
|
||||
public Object articleDel(@Validated(value = ArticleParam.delete.class)
|
||||
@RequestBody ArticleParam articleParam) {
|
||||
try {
|
||||
iArticleService.articleDel(articleParam.getId());
|
||||
return AjaxResult.success();
|
||||
} catch (Exception e) {
|
||||
return AjaxResult.failed(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类所有
|
||||
*
|
||||
* @author fzr
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/cateAll")
|
||||
public Object cateAll() {
|
||||
List<CategoryVo> voPageResult = iArticleService.cateAll();
|
||||
return AjaxResult.success(voPageResult);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类列表
|
||||
*
|
||||
* @author fzr
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/cateList")
|
||||
public Object cateList(@Validated PageParam pageParam,
|
||||
@RequestParam Map<String, String> params) {
|
||||
try {
|
||||
PageResult<CategoryVo> voPageResult = iArticleService.cateList(pageParam, params);
|
||||
return AjaxResult.success(voPageResult);
|
||||
} catch (Exception e) {
|
||||
return AjaxResult.failed(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类详情
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 主键
|
||||
* @return Object
|
||||
*/
|
||||
@GetMapping("/cateDetail")
|
||||
public Object cateDetail(@Validated @IDMust() @RequestParam("id") Integer id) {
|
||||
CategoryVo vo = iArticleService.cateDetail(id);
|
||||
return AjaxResult.success(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类新增
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleCateParam 分类参数
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "文章分类新增")
|
||||
@PostMapping("/cateAdd")
|
||||
public Object cateAdd(@Validated(value = CategoryParam.create.class)
|
||||
@RequestBody CategoryParam articleCateParam) {
|
||||
try {
|
||||
iArticleService.cateAdd(articleCateParam);
|
||||
return AjaxResult.success();
|
||||
} catch (Exception e) {
|
||||
return AjaxResult.failed(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类编辑
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleCateParam 分类编辑
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "文章分类编辑")
|
||||
@PostMapping("/cateEdit")
|
||||
public Object cateEdit(@Validated(value = CategoryParam.update.class)
|
||||
@RequestBody CategoryParam articleCateParam) {
|
||||
try {
|
||||
iArticleService.cateEdit(articleCateParam);
|
||||
return AjaxResult.success();
|
||||
} catch (Exception e) {
|
||||
return AjaxResult.failed(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类删除
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleCateParam 分类删除
|
||||
* @return Object
|
||||
*/
|
||||
@Log(title = "文章分类删除")
|
||||
@PostMapping("/cateDel")
|
||||
public Object cateDel(@Validated(value = CategoryParam.delete.class)
|
||||
@RequestBody CategoryParam articleCateParam) {
|
||||
try {
|
||||
iArticleService.cateDel(articleCateParam.getId());
|
||||
return AjaxResult.success();
|
||||
} catch (Exception e) {
|
||||
return AjaxResult.failed(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,66 @@
|
|||
package com.hxkj.admin.service.article;
|
||||
|
||||
import com.hxkj.admin.validate.article.CategoryParam;
|
||||
import com.hxkj.admin.validate.common.PageParam;
|
||||
import com.hxkj.admin.vo.common.article.CategoryVo;
|
||||
import com.hxkj.common.core.PageResult;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 文章分类服务类接口
|
||||
*/
|
||||
public interface IArticleCateService {
|
||||
|
||||
/**
|
||||
* 分类所有
|
||||
*
|
||||
* @author fzr
|
||||
* @return List<CategoryVo>
|
||||
*/
|
||||
List<CategoryVo> all();
|
||||
|
||||
/**
|
||||
* 分类列表
|
||||
*
|
||||
* @author fzr
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return PageResult<CategoryVo>
|
||||
*/
|
||||
PageResult<CategoryVo> list(PageParam pageParam, Map<String, String> params);
|
||||
|
||||
/**
|
||||
* 分类详情
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 分类ID
|
||||
*/
|
||||
CategoryVo detail(Integer id);
|
||||
|
||||
/**
|
||||
* 分类新增
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleCateParam 分类参数
|
||||
*/
|
||||
void add(CategoryParam articleCateParam);
|
||||
|
||||
/**
|
||||
* 分类编辑
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleCateParam 分类参数
|
||||
*/
|
||||
void edit(CategoryParam articleCateParam);
|
||||
|
||||
/**
|
||||
* 分类删除
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 分类ID
|
||||
*/
|
||||
void del(Integer id);
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
package com.hxkj.admin.service.article;
|
||||
|
||||
import com.hxkj.admin.validate.article.ArticleParam;
|
||||
import com.hxkj.admin.validate.common.PageParam;
|
||||
import com.hxkj.admin.vo.common.article.ArticleDetailVo;
|
||||
import com.hxkj.admin.vo.common.article.ArticleListVo;
|
||||
import com.hxkj.common.core.PageResult;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 文章服务接口类
|
||||
*/
|
||||
public interface IArticleTextService {
|
||||
|
||||
/**
|
||||
* 文章列表
|
||||
*
|
||||
* @author fzr
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return PageResult<ArticleListVo>
|
||||
*/
|
||||
PageResult<ArticleListVo> list(PageParam pageParam, Map<String, String> params);
|
||||
|
||||
/**
|
||||
* 文章详情
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 主键ID
|
||||
*/
|
||||
ArticleDetailVo detail(Integer id);
|
||||
|
||||
/**
|
||||
* 文章新增
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleParam 文章参数
|
||||
*/
|
||||
void add(ArticleParam articleParam);
|
||||
|
||||
/**
|
||||
* 文章编辑
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleParam 文章参数
|
||||
*/
|
||||
void edit(ArticleParam articleParam);
|
||||
|
||||
/**
|
||||
* 文章删除
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 文章主键
|
||||
*/
|
||||
void del(Integer id);
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,187 @@
|
|||
package com.hxkj.admin.service.article.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.hxkj.admin.service.article.IArticleCateService;
|
||||
import com.hxkj.admin.validate.article.CategoryParam;
|
||||
import com.hxkj.admin.validate.common.PageParam;
|
||||
import com.hxkj.admin.vo.common.article.CategoryVo;
|
||||
import com.hxkj.common.core.PageResult;
|
||||
import com.hxkj.common.entity.article.ArticleCategory;
|
||||
import com.hxkj.common.mapper.article.ArticleCategoryMapper;
|
||||
import com.hxkj.common.utils.TimeUtil;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.Assert;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 文章分类服务实现类
|
||||
*/
|
||||
@Service
|
||||
public class ArticleCateServiceImpl implements IArticleCateService {
|
||||
|
||||
@Resource
|
||||
ArticleCategoryMapper articleCategoryMapper;
|
||||
|
||||
/**
|
||||
* 分类所有
|
||||
*
|
||||
* @author fzr
|
||||
* @return List<CategoryVo>
|
||||
*/
|
||||
@Override
|
||||
public List<CategoryVo> all() {
|
||||
QueryWrapper<ArticleCategory> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.select("id", "name", "sort", "is_show", "create_time", "update_time")
|
||||
.eq("is_delete", 0);
|
||||
|
||||
List<ArticleCategory> lists = articleCategoryMapper.selectList(queryWrapper);
|
||||
|
||||
List<CategoryVo> vos = new ArrayList<>();
|
||||
for (ArticleCategory category : lists) {
|
||||
CategoryVo vo = new CategoryVo();
|
||||
BeanUtils.copyProperties(category, vo);
|
||||
|
||||
vo.setCreateTime(TimeUtil.timestampToDate(vo.getCreateTime()));
|
||||
vo.setUpdateTime(TimeUtil.timestampToDate(vo.getUpdateTime()));
|
||||
vos.add(vo);
|
||||
}
|
||||
|
||||
return vos;
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类列表
|
||||
*
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return PageResult<CategoryVo>
|
||||
*/
|
||||
@Override
|
||||
public PageResult<CategoryVo> list(PageParam pageParam, Map<String, String> params) {
|
||||
Integer pageNo = pageParam.getPageNo();
|
||||
Integer pageSize = pageParam.getPageSize();
|
||||
|
||||
QueryWrapper<ArticleCategory> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.select("id", "name", "sort", "is_show", "create_time", "update_time")
|
||||
.eq("is_delete", 0);
|
||||
|
||||
articleCategoryMapper.setSearch(queryWrapper, params, new String[]{
|
||||
"like:name:str",
|
||||
"=:isShow@is_show:int"
|
||||
});
|
||||
|
||||
IPage<ArticleCategory> iPage = articleCategoryMapper.selectPage(new Page<>(pageNo, pageSize), queryWrapper);
|
||||
|
||||
List<CategoryVo> list = new ArrayList<>();
|
||||
for (ArticleCategory category : iPage.getRecords()) {
|
||||
CategoryVo vo = new CategoryVo();
|
||||
BeanUtils.copyProperties(category, vo);
|
||||
|
||||
vo.setCreateTime(TimeUtil.timestampToDate(vo.getCreateTime()));
|
||||
vo.setUpdateTime(TimeUtil.timestampToDate(vo.getUpdateTime()));
|
||||
list.add(vo);
|
||||
}
|
||||
|
||||
return PageResult.iPageHandle(iPage.getTotal(), iPage.getCurrent(), iPage.getSize(), list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类详情
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 分类ID
|
||||
* @return CategoryVo
|
||||
*/
|
||||
@Override
|
||||
public CategoryVo detail(Integer id) {
|
||||
ArticleCategory model = articleCategoryMapper.selectOne(
|
||||
new QueryWrapper<ArticleCategory>()
|
||||
.select(ArticleCategory.class, info->
|
||||
!info.getColumn().equals("is_delete") &&
|
||||
!info.getColumn().equals("delete_time"))
|
||||
.eq("id", id)
|
||||
.eq("is_delete", 0));
|
||||
|
||||
Assert.notNull(model, "分类不存在");
|
||||
|
||||
CategoryVo vo = new CategoryVo();
|
||||
BeanUtils.copyProperties(model, vo);
|
||||
vo.setCreateTime(TimeUtil.timestampToDate(model.getCreateTime()));
|
||||
vo.setUpdateTime(TimeUtil.timestampToDate(model.getUpdateTime()));
|
||||
|
||||
return vo;
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类新增
|
||||
*
|
||||
* @author fzr
|
||||
* @param categoryParam 分类参数
|
||||
*/
|
||||
@Override
|
||||
public void add(CategoryParam categoryParam) {
|
||||
ArticleCategory model = new ArticleCategory();
|
||||
model.setId(categoryParam.getId());
|
||||
model.setName(categoryParam.getName());
|
||||
model.setSort(categoryParam.getSort());
|
||||
model.setCreateTime(TimeUtil.timestamp());
|
||||
model.setUpdateTime(TimeUtil.timestamp());
|
||||
articleCategoryMapper.insert(model);
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章编辑
|
||||
*
|
||||
* @author fzr
|
||||
* @param categoryParam 分类参数
|
||||
*/
|
||||
@Override
|
||||
public void edit(CategoryParam categoryParam) {
|
||||
ArticleCategory model = articleCategoryMapper.selectOne(
|
||||
new QueryWrapper<ArticleCategory>()
|
||||
.select(ArticleCategory.class, info->
|
||||
!info.getColumn().equals("is_delete") &&
|
||||
!info.getColumn().equals("delete_time"))
|
||||
.eq("id", categoryParam.getId())
|
||||
.eq("is_delete", 0));
|
||||
|
||||
Assert.notNull(model, "分类不存在");
|
||||
|
||||
model.setName(categoryParam.getName());
|
||||
model.setSort(categoryParam.getSort());
|
||||
model.setUpdateTime(TimeUtil.timestamp());
|
||||
articleCategoryMapper.updateById(model);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类参数
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 分类ID
|
||||
*/
|
||||
@Override
|
||||
public void del(Integer id) {
|
||||
ArticleCategory model = articleCategoryMapper.selectOne(
|
||||
new QueryWrapper<ArticleCategory>()
|
||||
.select(ArticleCategory.class, info->
|
||||
!info.getColumn().equals("is_delete") &&
|
||||
!info.getColumn().equals("delete_time"))
|
||||
.eq("id", id)
|
||||
.eq("is_delete", 0));
|
||||
|
||||
Assert.notNull(model, "分类不存在");
|
||||
|
||||
model.setIsDelete(1);
|
||||
model.setDeleteTime(TimeUtil.timestamp());
|
||||
articleCategoryMapper.updateById(model);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,182 @@
|
|||
package com.hxkj.admin.service.article.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.github.yulichang.query.MPJQueryWrapper;
|
||||
import com.hxkj.admin.service.article.IArticleTextService;
|
||||
import com.hxkj.admin.validate.article.ArticleParam;
|
||||
import com.hxkj.admin.validate.common.PageParam;
|
||||
import com.hxkj.admin.vo.common.article.ArticleDetailVo;
|
||||
import com.hxkj.admin.vo.common.article.ArticleListVo;
|
||||
import com.hxkj.common.core.PageResult;
|
||||
import com.hxkj.common.entity.article.Article;
|
||||
import com.hxkj.common.entity.article.ArticleCategory;
|
||||
import com.hxkj.common.mapper.article.ArticleCategoryMapper;
|
||||
import com.hxkj.common.mapper.article.ArticleMapper;
|
||||
import com.hxkj.common.utils.StringUtil;
|
||||
import com.hxkj.common.utils.TimeUtil;
|
||||
import com.hxkj.common.utils.UrlUtil;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.Assert;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Arrays;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 文章服务实现类
|
||||
*/
|
||||
@Service
|
||||
public class ArticleTextServiceImpl implements IArticleTextService {
|
||||
|
||||
@Resource
|
||||
ArticleMapper articleMapper;
|
||||
|
||||
@Resource
|
||||
ArticleCategoryMapper articleCategoryMapper;
|
||||
|
||||
/**
|
||||
* 文章列表
|
||||
*
|
||||
* @author fzr
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return PageResult<ArticleListVo>
|
||||
*/
|
||||
@Override
|
||||
public PageResult<ArticleListVo> list(PageParam pageParam, Map<String, String> params) {
|
||||
Integer pageNo = pageParam.getPageNo();
|
||||
Integer pageSize = pageParam.getPageSize();
|
||||
|
||||
MPJQueryWrapper<Article> mpjQueryWrapper = new MPJQueryWrapper<Article>()
|
||||
.selectAll(Article.class)
|
||||
.select("ac.name as category")
|
||||
.innerJoin("ls_article_category ac ON ac.id=t.cid")
|
||||
.eq("t.is_delete", 0)
|
||||
.orderByDesc(Arrays.asList("t.sort", "t.id"));
|
||||
|
||||
articleMapper.setSearch(mpjQueryWrapper, params, new String[]{
|
||||
"like:title@t.title:str",
|
||||
"=:cid@t.cid:int",
|
||||
"=:isShow@t.is_show:int",
|
||||
"datetime:startTime-endTime@t.create_time:str"
|
||||
});
|
||||
|
||||
IPage<ArticleListVo> iPage = articleMapper.selectJoinPage(
|
||||
new Page<>(pageNo, pageSize),
|
||||
ArticleListVo.class,
|
||||
mpjQueryWrapper);
|
||||
|
||||
for (ArticleListVo vo : iPage.getRecords()) {
|
||||
vo.setImage(UrlUtil.toAbsoluteUrl(vo.getImage()));
|
||||
vo.setCreateTime(TimeUtil.timestampToDate(vo.getCreateTime()));
|
||||
vo.setUpdateTime(TimeUtil.timestampToDate(vo.getUpdateTime()));
|
||||
}
|
||||
|
||||
return PageResult.iPageHandle(iPage);
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章详情
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 主键ID
|
||||
*/
|
||||
@Override
|
||||
public ArticleDetailVo detail(Integer id) {
|
||||
Article model = articleMapper.selectOne(
|
||||
new QueryWrapper<Article>()
|
||||
.select(Article.class, info->
|
||||
!info.getColumn().equals("is_delete") &&
|
||||
!info.getColumn().equals("delete_time"))
|
||||
.eq("id", id)
|
||||
.eq("is_delete", 0));
|
||||
|
||||
Assert.notNull(model, "文章不存在");
|
||||
|
||||
ArticleDetailVo vo = new ArticleDetailVo();
|
||||
BeanUtils.copyProperties(model, vo);
|
||||
vo.setContent(StringUtil.isNull(model.getContent()) ? "" : model.getContent());
|
||||
vo.setImage(UrlUtil.toAbsoluteUrl(model.getImage()));
|
||||
vo.setCreateTime(TimeUtil.timestampToDate(model.getCreateTime()));
|
||||
vo.setUpdateTime(TimeUtil.timestampToDate(model.getUpdateTime()));
|
||||
|
||||
return vo;
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章新增
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleParam 文章参数
|
||||
*/
|
||||
@Override
|
||||
public void add(ArticleParam articleParam) {
|
||||
Article model = new Article();
|
||||
model.setCid(articleParam.getCid());
|
||||
model.setTitle(articleParam.getTitle());
|
||||
model.setImage(UrlUtil.toRelativeUrl(articleParam.getImage()));
|
||||
model.setIntro(articleParam.getIntro());
|
||||
model.setContent(articleParam.getContent());
|
||||
model.setSort(articleParam.getSort());
|
||||
model.setIsShow(articleParam.getIsShow());
|
||||
model.setVisit(0);
|
||||
model.setCreateTime(TimeUtil.timestamp());
|
||||
model.setUpdateTime(TimeUtil.timestamp());
|
||||
articleMapper.insert(model);
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章编辑
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleParam 文章参数
|
||||
*/
|
||||
@Override
|
||||
public void edit(ArticleParam articleParam) {
|
||||
Article model = articleMapper.selectOne(
|
||||
new QueryWrapper<Article>()
|
||||
.eq("id", articleParam.getId())
|
||||
.eq("is_delete", 0));
|
||||
|
||||
Assert.notNull(model, "文章不存在!");
|
||||
|
||||
Assert.notNull(articleCategoryMapper.selectOne(
|
||||
new QueryWrapper<ArticleCategory>()
|
||||
.eq("id", articleParam.getCid())
|
||||
.eq("is_delete", 0)), "分类不存在");
|
||||
|
||||
model.setCid(articleParam.getCid());
|
||||
model.setTitle(articleParam.getTitle());
|
||||
model.setImage(UrlUtil.toRelativeUrl(articleParam.getImage()));
|
||||
model.setIntro(articleParam.getIntro());
|
||||
model.setContent(articleParam.getContent());
|
||||
model.setIsShow(articleParam.getIsShow());
|
||||
model.setSort(articleParam.getSort());
|
||||
model.setUpdateTime(TimeUtil.timestamp());
|
||||
articleMapper.updateById(model);
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章删除
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 文章ID
|
||||
*/
|
||||
@Override
|
||||
public void del(Integer id) {
|
||||
Article article = articleMapper.selectOne(
|
||||
new QueryWrapper<Article>()
|
||||
.eq("id", id)
|
||||
.eq("is_delete", 0));
|
||||
|
||||
Assert.notNull(article, "文章不存在!");
|
||||
|
||||
article.setIsDelete(1);
|
||||
article.setDeleteTime(TimeUtil.timestamp());
|
||||
articleMapper.updateById(article);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1,111 +0,0 @@
|
|||
package com.hxkj.admin.service.common;
|
||||
|
||||
import com.hxkj.admin.validate.common.PageParam;
|
||||
import com.hxkj.admin.validate.article.CategoryParam;
|
||||
import com.hxkj.admin.validate.article.ArticleParam;
|
||||
import com.hxkj.admin.vo.common.article.ArticleDetailVo;
|
||||
import com.hxkj.admin.vo.common.article.ArticleListVo;
|
||||
import com.hxkj.admin.vo.common.article.CategoryVo;
|
||||
import com.hxkj.common.core.PageResult;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 文章服务接口类
|
||||
*/
|
||||
public interface IArticleService {
|
||||
|
||||
/**
|
||||
* 文章列表
|
||||
*
|
||||
* @author fzr
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return PageResult<ArticleListVo>
|
||||
*/
|
||||
PageResult<ArticleListVo> articleList(PageParam pageParam, Map<String, String> params);
|
||||
|
||||
/**
|
||||
* 文章详情
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 主键ID
|
||||
*/
|
||||
ArticleDetailVo articleDetail(Integer id);
|
||||
|
||||
/**
|
||||
* 文章新增
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleParam 文章参数
|
||||
*/
|
||||
void articleAdd(ArticleParam articleParam);
|
||||
|
||||
/**
|
||||
* 文章编辑
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleParam 文章参数
|
||||
*/
|
||||
void articleEdit(ArticleParam articleParam);
|
||||
|
||||
/**
|
||||
* 文章删除
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 文章主键
|
||||
*/
|
||||
void articleDel(Integer id);
|
||||
|
||||
/**
|
||||
* 分类所有
|
||||
*
|
||||
* @author fzr
|
||||
* @return List<CategoryVo>
|
||||
*/
|
||||
List<CategoryVo> cateAll();
|
||||
|
||||
/**
|
||||
* 分类列表
|
||||
*
|
||||
* @author fzr
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return PageResult<CategoryVo>
|
||||
*/
|
||||
PageResult<CategoryVo> cateList(PageParam pageParam, Map<String, String> params);
|
||||
|
||||
/**
|
||||
* 分类详情
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 分类ID
|
||||
*/
|
||||
CategoryVo cateDetail(Integer id);
|
||||
|
||||
/**
|
||||
* 分类新增
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleCateParam 分类参数
|
||||
*/
|
||||
void cateAdd(CategoryParam articleCateParam);
|
||||
|
||||
/**
|
||||
* 分类编辑
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleCateParam 分类参数
|
||||
*/
|
||||
void cateEdit(CategoryParam articleCateParam);
|
||||
|
||||
/**
|
||||
* 分类删除
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 分类ID
|
||||
*/
|
||||
void cateDel(Integer id);
|
||||
|
||||
}
|
||||
|
|
@ -1,337 +0,0 @@
|
|||
package com.hxkj.admin.service.common.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.github.yulichang.query.MPJQueryWrapper;
|
||||
import com.hxkj.admin.service.common.IArticleService;
|
||||
import com.hxkj.admin.validate.common.PageParam;
|
||||
import com.hxkj.admin.validate.article.CategoryParam;
|
||||
import com.hxkj.admin.validate.article.ArticleParam;
|
||||
import com.hxkj.admin.vo.common.article.ArticleDetailVo;
|
||||
import com.hxkj.admin.vo.common.article.ArticleListVo;
|
||||
import com.hxkj.admin.vo.common.article.CategoryVo;
|
||||
import com.hxkj.common.core.PageResult;
|
||||
import com.hxkj.common.entity.article.Article;
|
||||
import com.hxkj.common.entity.article.ArticleCategory;
|
||||
import com.hxkj.common.mapper.article.ArticleCategoryMapper;
|
||||
import com.hxkj.common.mapper.article.ArticleMapper;
|
||||
import com.hxkj.common.utils.StringUtil;
|
||||
import com.hxkj.common.utils.TimeUtil;
|
||||
import com.hxkj.common.utils.UrlUtil;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.Assert;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 文章服务实现类
|
||||
*/
|
||||
@Service
|
||||
public class ArticleServiceImpl implements IArticleService {
|
||||
|
||||
@Resource
|
||||
ArticleMapper articleMapper;
|
||||
|
||||
@Resource
|
||||
ArticleCategoryMapper articleCategoryMapper;
|
||||
|
||||
/**
|
||||
* 文章列表
|
||||
*
|
||||
* @author fzr
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return PageResult<ArticleListVo>
|
||||
*/
|
||||
@Override
|
||||
public PageResult<ArticleListVo> articleList(PageParam pageParam, Map<String, String> params) {
|
||||
Integer pageNo = pageParam.getPageNo();
|
||||
Integer pageSize = pageParam.getPageSize();
|
||||
|
||||
MPJQueryWrapper<Article> mpjQueryWrapper = new MPJQueryWrapper<Article>()
|
||||
.selectAll(Article.class)
|
||||
.select("ac.name as category")
|
||||
.innerJoin("ls_article_category ac ON ac.id=t.cid")
|
||||
.eq("t.is_delete", 0)
|
||||
.orderByDesc(Arrays.asList("t.sort", "t.id"));
|
||||
|
||||
articleMapper.setSearch(mpjQueryWrapper, params, new String[]{
|
||||
"like:title@t.title:str",
|
||||
"=:cid@t.cid:int",
|
||||
"=:isShow@t.is_show:int",
|
||||
"datetime:startTime-endTime@t.create_time:str"
|
||||
});
|
||||
|
||||
IPage<ArticleListVo> iPage = articleMapper.selectJoinPage(
|
||||
new Page<>(pageNo, pageSize),
|
||||
ArticleListVo.class,
|
||||
mpjQueryWrapper);
|
||||
|
||||
for (ArticleListVo vo : iPage.getRecords()) {
|
||||
vo.setImage(UrlUtil.toAbsoluteUrl(vo.getImage()));
|
||||
vo.setCreateTime(TimeUtil.timestampToDate(vo.getCreateTime()));
|
||||
vo.setUpdateTime(TimeUtil.timestampToDate(vo.getUpdateTime()));
|
||||
}
|
||||
|
||||
return PageResult.iPageHandle(iPage);
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章详情
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 主键ID
|
||||
*/
|
||||
@Override
|
||||
public ArticleDetailVo articleDetail(Integer id) {
|
||||
Article model = articleMapper.selectOne(
|
||||
new QueryWrapper<Article>()
|
||||
.select(Article.class, info->
|
||||
!info.getColumn().equals("is_delete") &&
|
||||
!info.getColumn().equals("delete_time"))
|
||||
.eq("id", id)
|
||||
.eq("is_delete", 0));
|
||||
|
||||
Assert.notNull(model, "文章不存在");
|
||||
|
||||
ArticleDetailVo vo = new ArticleDetailVo();
|
||||
BeanUtils.copyProperties(model, vo);
|
||||
vo.setContent(StringUtil.isNull(model.getContent()) ? "" : model.getContent());
|
||||
vo.setImage(UrlUtil.toAbsoluteUrl(model.getImage()));
|
||||
vo.setCreateTime(TimeUtil.timestampToDate(model.getCreateTime()));
|
||||
vo.setUpdateTime(TimeUtil.timestampToDate(model.getUpdateTime()));
|
||||
|
||||
return vo;
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章新增
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleParam 文章参数
|
||||
*/
|
||||
@Override
|
||||
public void articleAdd(ArticleParam articleParam) {
|
||||
Article model = new Article();
|
||||
model.setCid(articleParam.getCid());
|
||||
model.setTitle(articleParam.getTitle());
|
||||
model.setImage(UrlUtil.toRelativeUrl(articleParam.getImage()));
|
||||
model.setIntro(articleParam.getIntro());
|
||||
model.setContent(articleParam.getContent());
|
||||
model.setSort(articleParam.getSort());
|
||||
model.setIsShow(articleParam.getIsShow());
|
||||
model.setVisit(0);
|
||||
model.setCreateTime(TimeUtil.timestamp());
|
||||
model.setUpdateTime(TimeUtil.timestamp());
|
||||
articleMapper.insert(model);
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章编辑
|
||||
*
|
||||
* @author fzr
|
||||
* @param articleParam 文章参数
|
||||
*/
|
||||
@Override
|
||||
public void articleEdit(ArticleParam articleParam) {
|
||||
Article model = articleMapper.selectOne(
|
||||
new QueryWrapper<Article>()
|
||||
.eq("id", articleParam.getId())
|
||||
.eq("is_delete", 0));
|
||||
|
||||
Assert.notNull(model, "文章不存在!");
|
||||
|
||||
Assert.notNull(articleCategoryMapper.selectOne(
|
||||
new QueryWrapper<ArticleCategory>()
|
||||
.eq("id", articleParam.getCid())
|
||||
.eq("is_delete", 0)), "分类不存在");
|
||||
|
||||
model.setCid(articleParam.getCid());
|
||||
model.setTitle(articleParam.getTitle());
|
||||
model.setImage(UrlUtil.toRelativeUrl(articleParam.getImage()));
|
||||
model.setIntro(articleParam.getIntro());
|
||||
model.setContent(articleParam.getContent());
|
||||
model.setIsShow(articleParam.getIsShow());
|
||||
model.setSort(articleParam.getSort());
|
||||
model.setUpdateTime(TimeUtil.timestamp());
|
||||
articleMapper.updateById(model);
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章删除
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 文章ID
|
||||
*/
|
||||
@Override
|
||||
public void articleDel(Integer id) {
|
||||
Article article = articleMapper.selectOne(
|
||||
new QueryWrapper<Article>()
|
||||
.eq("id", id)
|
||||
.eq("is_delete", 0));
|
||||
|
||||
Assert.notNull(article, "文章不存在!");
|
||||
|
||||
article.setIsDelete(1);
|
||||
article.setDeleteTime(TimeUtil.timestamp());
|
||||
articleMapper.updateById(article);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类所有
|
||||
*
|
||||
* @author fzr
|
||||
* @return List<CategoryVo>
|
||||
*/
|
||||
@Override
|
||||
public List<CategoryVo> cateAll() {
|
||||
QueryWrapper<ArticleCategory> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.select("id", "name", "sort", "is_show", "create_time", "update_time")
|
||||
.eq("is_delete", 0);
|
||||
|
||||
List<ArticleCategory> lists = articleCategoryMapper.selectList(queryWrapper);
|
||||
|
||||
List<CategoryVo> vos = new ArrayList<>();
|
||||
for (ArticleCategory category : lists) {
|
||||
CategoryVo vo = new CategoryVo();
|
||||
BeanUtils.copyProperties(category, vo);
|
||||
|
||||
vo.setCreateTime(TimeUtil.timestampToDate(vo.getCreateTime()));
|
||||
vo.setUpdateTime(TimeUtil.timestampToDate(vo.getUpdateTime()));
|
||||
vos.add(vo);
|
||||
}
|
||||
|
||||
return vos;
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类列表
|
||||
*
|
||||
* @param pageParam 分页参数
|
||||
* @param params 搜索参数
|
||||
* @return PageResult<CategoryVo>
|
||||
*/
|
||||
@Override
|
||||
public PageResult<CategoryVo> cateList(PageParam pageParam, Map<String, String> params) {
|
||||
Integer pageNo = pageParam.getPageNo();
|
||||
Integer pageSize = pageParam.getPageSize();
|
||||
|
||||
QueryWrapper<ArticleCategory> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.select("id", "name", "sort", "is_show", "create_time", "update_time")
|
||||
.eq("is_delete", 0);
|
||||
|
||||
articleCategoryMapper.setSearch(queryWrapper, params, new String[]{
|
||||
"like:name:str",
|
||||
"=:isShow@is_show:int"
|
||||
});
|
||||
|
||||
IPage<ArticleCategory> iPage = articleCategoryMapper.selectPage(new Page<>(pageNo, pageSize), queryWrapper);
|
||||
|
||||
List<CategoryVo> list = new ArrayList<>();
|
||||
for (ArticleCategory category : iPage.getRecords()) {
|
||||
CategoryVo vo = new CategoryVo();
|
||||
BeanUtils.copyProperties(category, vo);
|
||||
|
||||
vo.setCreateTime(TimeUtil.timestampToDate(vo.getCreateTime()));
|
||||
vo.setUpdateTime(TimeUtil.timestampToDate(vo.getUpdateTime()));
|
||||
list.add(vo);
|
||||
}
|
||||
|
||||
return PageResult.iPageHandle(iPage.getTotal(), iPage.getCurrent(), iPage.getSize(), list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类详情
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 分类ID
|
||||
* @return CategoryVo
|
||||
*/
|
||||
@Override
|
||||
public CategoryVo cateDetail(Integer id) {
|
||||
ArticleCategory model = articleCategoryMapper.selectOne(
|
||||
new QueryWrapper<ArticleCategory>()
|
||||
.select(ArticleCategory.class, info->
|
||||
!info.getColumn().equals("is_delete") &&
|
||||
!info.getColumn().equals("delete_time"))
|
||||
.eq("id", id)
|
||||
.eq("is_delete", 0));
|
||||
|
||||
Assert.notNull(model, "分类不存在");
|
||||
|
||||
CategoryVo vo = new CategoryVo();
|
||||
BeanUtils.copyProperties(model, vo);
|
||||
vo.setCreateTime(TimeUtil.timestampToDate(model.getCreateTime()));
|
||||
vo.setUpdateTime(TimeUtil.timestampToDate(model.getUpdateTime()));
|
||||
|
||||
return vo;
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类新增
|
||||
*
|
||||
* @author fzr
|
||||
* @param categoryParam 分类参数
|
||||
*/
|
||||
@Override
|
||||
public void cateAdd(CategoryParam categoryParam) {
|
||||
ArticleCategory model = new ArticleCategory();
|
||||
model.setId(categoryParam.getId());
|
||||
model.setName(categoryParam.getName());
|
||||
model.setSort(categoryParam.getSort());
|
||||
model.setCreateTime(TimeUtil.timestamp());
|
||||
model.setUpdateTime(TimeUtil.timestamp());
|
||||
articleCategoryMapper.insert(model);
|
||||
}
|
||||
|
||||
/**
|
||||
* 文章编辑
|
||||
*
|
||||
* @author fzr
|
||||
* @param categoryParam 分类参数
|
||||
*/
|
||||
@Override
|
||||
public void cateEdit(CategoryParam categoryParam) {
|
||||
ArticleCategory model = articleCategoryMapper.selectOne(
|
||||
new QueryWrapper<ArticleCategory>()
|
||||
.select(ArticleCategory.class, info->
|
||||
!info.getColumn().equals("is_delete") &&
|
||||
!info.getColumn().equals("delete_time"))
|
||||
.eq("id", categoryParam.getId())
|
||||
.eq("is_delete", 0));
|
||||
|
||||
Assert.notNull(model, "分类不存在");
|
||||
|
||||
model.setName(categoryParam.getName());
|
||||
model.setSort(categoryParam.getSort());
|
||||
model.setUpdateTime(TimeUtil.timestamp());
|
||||
articleCategoryMapper.updateById(model);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分类参数
|
||||
*
|
||||
* @author fzr
|
||||
* @param id 分类ID
|
||||
*/
|
||||
@Override
|
||||
public void cateDel(Integer id) {
|
||||
ArticleCategory model = articleCategoryMapper.selectOne(
|
||||
new QueryWrapper<ArticleCategory>()
|
||||
.select(ArticleCategory.class, info->
|
||||
!info.getColumn().equals("is_delete") &&
|
||||
!info.getColumn().equals("delete_time"))
|
||||
.eq("id", id)
|
||||
.eq("is_delete", 0));
|
||||
|
||||
Assert.notNull(model, "分类不存在");
|
||||
|
||||
model.setIsDelete(1);
|
||||
model.setDeleteTime(TimeUtil.timestamp());
|
||||
articleCategoryMapper.updateById(model);
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue