提交 6e9d447b authored 作者: renjiancai's avatar renjiancai

--no commit message

上级 d8361fbd
package com.zrqx.sysuser.bg.controller.news;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.zrqx.core.constant.sysuser.SysUserRequestPath;
import com.zrqx.core.enums.sysuser.news.IsRecommendEnum;
import com.zrqx.core.enums.sysuser.news.IsTopEnum;
import com.zrqx.core.enums.sysuser.news.NewsStatusEnum;
import com.zrqx.core.exception.BusinessValidateException;
import com.zrqx.core.form.sysuser.bg.news.QueryNewsForm;
import com.zrqx.core.form.sysuser.bg.news.UpdateNewsForm;
import com.zrqx.core.form.sysuser.bg.news.UpdateNewsRecommendForm;
import com.zrqx.core.model.sysuser.news.News;
import com.zrqx.core.util.page.PageInfo;
import com.zrqx.core.util.page.PageParam;
import com.zrqx.core.util.response.CallBack;
import com.zrqx.sysuser.bg.service.news.NewsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import tk.mybatis.mapper.entity.Example;
import tk.mybatis.mapper.entity.Example.Criteria;
/**
* 新闻动态
* @author rjc
* @date 2020年12月8日下午3:35:18
*/
@RestController
@RequestMapping(SysUserRequestPath.BG+SysUserRequestPath.NEWS)
@Api(description = "网站管理-新闻动态")
public class NewsController {
@Autowired
private NewsService service;
@ApiOperation(value = "新增" , notes ="新增一个")
@PostMapping(value = SysUserRequestPath.SAVE)
public CallBack<Boolean> save(@RequestBody News entity){
Example example = service.createExample();
example.createCriteria().andEqualTo("newsTitle",entity.getNewsTitle());
if(service.selectOneByExample(example) != null){
throw new BusinessValidateException("该新闻动态已存在");
}
entity.setNewsStatus(NewsStatusEnum.STATUS_1.getCode());
entity.setNewsIsTop(IsTopEnum.STATUS_0.getCode());
entity.setNewsIsRecommend(IsRecommendEnum.STATUS_0.getCode());
entity.setNewPulishDate(new Date());
if(!service.insert(entity)){
throw new BusinessValidateException("操作失败");
}
return CallBack.success();
}
@ApiOperation(value = "更新" , notes ="根据newsId更新,newsId必传")
@PostMapping(value = SysUserRequestPath.UPDATE)
public CallBack<Boolean> update(@RequestBody News entity){
Example example = service.createExample();
Criteria cr = example.createCriteria();
cr.andEqualTo("newsTitle",entity.getNewsTitle());
if(entity.getNewsId() != null){
cr.andNotEqualTo("newsId", entity.getNewsId());
}
if(!service.updateByPrimaryKey(entity)){
throw new BusinessValidateException("操作失败");
}
return CallBack.success();
}
@ApiOperation(value = "推荐" , notes ="推荐:1推荐/0不推荐")
@PostMapping(value = SysUserRequestPath.RECOMMEND)
public CallBack<Boolean> updateRecommend(@RequestBody UpdateNewsRecommendForm form){
News news = service.selectByPrimaryKey(form.getOId());
news.setNewsIsRecommend(form.getRecommend());
if(!service.updateByPrimaryKey(news)){
throw new BusinessValidateException("操作失败");
}
return CallBack.success();
}
@ApiOperation(value = "批量 上架/下架" , notes ="批量 上架/下架")
@PostMapping(value = SysUserRequestPath.BATCH + "/showState")
public CallBack<Boolean> updateShowState(@RequestBody UpdateNewsForm form){
Example example = service.createExample();
Criteria cr = example.createCriteria();
cr.andIn("newsId", Arrays.asList(form.getIds()));
News news = new News();
news.setNewsStatus(form.getStatus());
if(!service.UpdateByExampleSelective(news,example)){
throw new BusinessValidateException("操作失败");
}
return CallBack.success();
}
@ApiOperation(value = "删除" , notes ="批量删除")
@PostMapping(value = SysUserRequestPath.DELETE)
public CallBack<Boolean> delete(@RequestBody List<String> id){
Example example = service.createExample();
example.createCriteria().andIn("newsId", Arrays.asList(id));
if(!service.deleteByExample(example)){
throw new BusinessValidateException("操作失败");
}
return CallBack.success();
}
@ApiOperation(value = "查询", notes = "根据ID查询")
@GetMapping(value = SysUserRequestPath.OID)
public CallBack<News> getById(@PathVariable String oid) {
return CallBack.success(service.selectByPrimaryKey(oid));
}
@ApiOperation(value = "分页查询" , notes ="分页查询")
@GetMapping(value = SysUserRequestPath.PAGE)
public CallBack<PageInfo<News>> getListPage(QueryNewsForm entity,PageParam pageParam){
if(StringUtils.isBlank(pageParam.getOrderBy())){
pageParam.setOrderBy("newPulishDate desc");
}
Example example = service.createExample();
Criteria cr = example.createCriteria();
if(StringUtils.isNotBlank(entity.getNewsTitle())){
cr.andLike("newsTitle","%"+entity.getNewsTitle()+"%");
}
if(entity.getStatus()!=null){
cr.andEqualTo("newsStatus",entity.getStatus());
}
return CallBack.success(service.queryExample(pageParam,example));
}
}
package com.zrqx.sysuser.bg.mapper.news;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.model.sysuser.news.News;
/**
* 新闻动态
* @author rjc
* @date 2020年12月8日下午3:13:14
*/
public interface NewsMapper extends BaseMapper<News>{
}
package com.zrqx.sysuser.bg.service.news;
import com.zrqx.core.model.sysuser.news.News;
import com.zrqx.core.service.BaseService;
/**
* 新闻动态
* @author rjc
* @date 2020年12月8日下午3:13:57
*/
public interface NewsService extends BaseService<News,String>{
}
package com.zrqx.sysuser.bg.service.news;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.model.sysuser.news.News;
import com.zrqx.core.service.BaseServiceImpl;
import com.zrqx.sysuser.bg.mapper.news.NewsMapper;
/**
* 新闻动态
* @author rjc
* @date 2020年12月8日下午3:14:25
*/
@Service
public class NewsServiceImpl extends BaseServiceImpl<News,String> implements NewsService {
@Autowired
private NewsMapper mapper;
@Override
public BaseMapper<News> getMapper() {
return mapper;
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论