提交 ce7a3727 authored 作者: lizhuo's avatar lizhuo

--no commit message

上级 830109c0
package com.zrqx.resource.bg.controller.diytype;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collector;
import java.util.stream.Collectors;
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.resource.ResourceRequestPath;
import com.zrqx.core.exception.BaseException;
import com.zrqx.core.form.resource.bg.articlelibrary.AddRecommendForm;
import com.zrqx.core.form.resource.bg.articlelibrary.QueryArticleLibraryForm;
import com.zrqx.core.form.resource.bg.articlelibrary.QueryDiyRecommendForm;
import com.zrqx.core.model.resource.articlelibrary.ArticleLibrary;
import com.zrqx.core.model.resource.diytype.DiyTypeRecommend;
import com.zrqx.core.util.bean.BeanUtils;
import com.zrqx.core.util.page.PageInfo;
import com.zrqx.core.util.page.PageParam;
import com.zrqx.core.util.response.CallBack;
import com.zrqx.core.vo.resource.articlelibrary.ArticleLibraryListVO;
import com.zrqx.resource.bg.service.articlelibrary.ArticleLibraryService;
import com.zrqx.resource.bg.service.diytype.DiyTypeRecommendService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import tk.mybatis.mapper.entity.Example;
/**
* 自定义分类推荐 Controller
*/
@RestController
@RequestMapping(ResourceRequestPath.BG + ResourceRequestPath.DIYTYPE + ResourceRequestPath.RECOMMEND)
@Api(description = "网站管理-自定义分类推荐")
public class DiyTypeRecommendController {
@Autowired
private ArticleLibraryService alservice;
@Autowired
private DiyTypeRecommendService service;
@ApiOperation(value = "分页查询该分类下所有资源", notes = "分页查询")
@GetMapping(value = ResourceRequestPath.PAGE)
public CallBack<PageInfo<ArticleLibraryListVO>> page(QueryDiyRecommendForm form, PageParam pageParam) {
QueryArticleLibraryForm qal = new QueryArticleLibraryForm();
qal.setOption(1);
pageParam.setOrderBy("uploadTime desc");
BeanUtils.copyProperties(form, qal);
return CallBack.success(alservice.page(qal, pageParam));
}
@ApiOperation(value = "批量关联资源", notes = "批量关联资源")
@PostMapping(value = ResourceRequestPath.RES_SAVE)
public CallBack<String> resSave(@RequestBody AddRecommendForm arf) {
//查询已经关联的资源id列表
Example example = service.createExample();
example.createCriteria().andIn("objectId", arf.getObjectIds()).andEqualTo("code", arf.getCode());
List<DiyTypeRecommend> dtrList = service.selectByExample(example);
List<String> hasList = dtrList.stream().map(a -> {
return a.getObjectId();
}).collect(Collectors.toList());
//查询全部文章元数据列表
Example e = alservice.createExample();
e.createCriteria().andIn("id", arf.getObjectIds());
List<ArticleLibrary> alList = alservice.selectByExample(e);
//组建需要保存的文章相关信息
dtrList = BeanUtils.copyList(alList, DiyTypeRecommend.class, a -> {
a.setCode(arf.getCode());
a.setObjectId(a.getId());
a.setId(null);
a.setCreateTime(new Date());
}, obj -> !hasList.contains(obj.getId()));
if(dtrList.size()==0) {
throw new BaseException("您选择的资源都被关联啦");
}
if (!service.insertUuidList(dtrList)) {
throw new BaseException("关联失败");
}
return CallBack.success("关联成功");
}
@ApiOperation(value = "批量取消", notes = "批量取消")
@PostMapping(value = ResourceRequestPath.RES_BATCH_DELETE)
public CallBack<String> resChanel(@RequestBody List<String> ids) {
Example example = service.createExample();
example.createCriteria().andIn("id", ids);
if (!service.deleteByExample(example)) {
throw new BaseException("取消失败");
}
return CallBack.success("取消成功");
}
@ApiOperation(value = "分页查询已关联资源", notes = "分页查询")
@GetMapping(value = ResourceRequestPath.RECOMMEND + ResourceRequestPath.PAGE)
public CallBack<PageInfo<DiyTypeRecommend>> page(String code, PageParam pageParam) {
pageParam.setOrderBy("sortNum desc");
Example example = service.createExample();
example.createCriteria().andEqualTo("code", code);
return CallBack.success(service.queryExample(pageParam, example));
}
@ApiOperation(value = "修改排序号", notes = "修改排序号")
@PostMapping(value = ResourceRequestPath.RES_UPDATE_OID)
public CallBack<String> resUpdate(@PathVariable String oid, @RequestBody Integer sort) {
DiyTypeRecommend res = new DiyTypeRecommend();
res.setId(oid);
res.setSortNum(sort);
return service.updateByPrimaryKeySelective(res) ? CallBack.success() : CallBack.fail();
}
}
......@@ -71,11 +71,11 @@ public interface ArticleLibraryMapper extends BaseMapper<ArticleLibrary> {
List<ArticleLibraryListVO> query(@Param("form")QueryArticleLibraryForm form);
@Select("<script>"
+ "<if test = 'form.diyTypeCode==null'>"
+ "select distinct a.id,a.title,a.author,a.source,a.bookName,a.price,a.realPrice,DATE_FORMAT(a.uploadTime,'%Y-%m-%d') uploadTime,a.status,a.img,a.nationsType,a.resourceType "
+ "select distinct a.id,a.title,a.author,a.source,a.bookName,a.price,a.realPrice,DATE_FORMAT(a.uploadTime,'%Y-%m-%d') uploadTime,a.status,a.img,a.nationsType,a.resourceType,a.synopsis "
+ "from res_Article_Library a where 1=1 and a.isDelete=1 "
+ "</if>"
+ "<if test = '" + NOTBLANK + "(form.diyTypeCode)'>"
+ "select distinct a.id,a.title,a.author,a.source,a.bookName,a.price,a.realPrice,DATE_FORMAT(a.uploadTime,'%Y-%m-%d') uploadTime,a.status,a.img,a.nationsType,a.resourceType "
+ "select distinct a.id,a.title,a.author,a.source,a.bookName,a.price,a.realPrice,DATE_FORMAT(a.uploadTime,'%Y-%m-%d') uploadTime,a.status,a.img,a.nationsType,a.resourceType,a.synopsis "
+ "from res_Article_Library a left join res_Article_Library_Diy_Type ad "
+ "on a.id = ad.alid where 1=1 and a.isDelete=1 "
+ "</if>"
......
package com.zrqx.resource.bg.mapper.diytype;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.model.resource.diytype.DiyTypeRecommend;
/**
* 自定义分类
*/
public interface DiyTypeRecommendMapper extends BaseMapper<DiyTypeRecommend> {
}
......@@ -160,9 +160,10 @@ public class ArticleLibrarySerivceImpl extends BaseServiceImpl<ArticleLibrary,St
}
@Override
public PageInfo<ArticleLibraryListVO> page(QueryArticleLibraryForm form, PageParam pageParam) {
QueryArticleLibraryForm qal =new QueryArticleLibraryForm();
BeanUtils.copyProperties(form, qal);
startPage(pageParam);
//暂不用自定义分类id 做in查询
/*form.setDiyTypeId(null);*/
List<ArticleLibraryListVO> list = mapper.query(form);
return new PageInfo<ArticleLibraryListVO>(list);
}
......
package com.zrqx.resource.bg.service.diytype;
import com.zrqx.core.model.resource.diytype.DiyTypeRecommend;
import com.zrqx.core.service.BaseService;
/**
*
* 自定义分类service
*/
public interface DiyTypeRecommendService extends BaseService<DiyTypeRecommend,Integer>{
}
package com.zrqx.resource.bg.service.diytype;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.model.resource.diytype.DiyTypeRecommend;
import com.zrqx.core.service.BaseServiceImpl;
import com.zrqx.resource.bg.mapper.diytype.DiyTypeRecommendMapper;
/**
* 自定义分类
*/
@Service
public class DiyTypeRecommendServiceImpl extends BaseServiceImpl<DiyTypeRecommend,Integer> implements DiyTypeRecommendService {
@Autowired
private DiyTypeRecommendMapper mapper;
@Override
public BaseMapper<DiyTypeRecommend> getMapper() {
return mapper;
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论