提交 564f9cf8 作者: 17607474349

upd:

1、职位信息分页、导出修复
上级 ab7fec26
......@@ -181,7 +181,7 @@ public class LocationTagServiceImpl implements LocationTagService {
List<Predicate> predicates = ListUtil.toList();
if (StrUtil.isNotEmpty(param.getCode())) {
cb.equal(root.get(LocationTag.Fields.code), param.getCode());
cb.like(root.get(LocationTag.Fields.code), "%" + param.getCode() + "%");
}
if (ObjectUtil.isNotEmpty(param.getType())) {
......
/* (C) 2022 YiRing, Inc. */
package com.yiring.auth.excel.post;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.github.liaochong.myexcel.core.annotation.ExcelColumn;
import com.github.liaochong.myexcel.core.annotation.ExcelModel;
import com.yiring.auth.domain.post.Post;
......@@ -25,9 +24,9 @@ import lombok.experimental.FieldDefaults;
@FieldDefaults(level = AccessLevel.PRIVATE)
public class PostExcel {
@ExcelColumn(title = "编号")
/*@ExcelColumn(title = "编号")
@JsonSerialize(using = ToStringSerializer.class)
Long id;
Long id;*/
@ExcelColumn(title = "职位名称")
String name;
......@@ -36,8 +35,10 @@ public class PostExcel {
String describe;
@ExcelColumn(title = "是否启用")
@JsonSerialize(using = ToStringSerializer.class)
Boolean enable;
String enable;
@ExcelColumn(title = "创建时间")
String createTime;
public static List<PostExcel> transforms(List<Post> posts) {
return posts
......@@ -45,10 +46,11 @@ public class PostExcel {
.map(post ->
PostExcel
.builder()
.id(post.getId())
// .id(post.getId())
.name(post.getName())
.describe(post.getDescribe())
.enable(post.getEnable())
.enable(post.getEnable() ? "启用" : "禁用")
.createTime(LocalDateTimeUtil.format(post.getCreateTime(), "yyyy-MM-dd HH:mm:ss"))
.build()
)
.collect(Collectors.toList());
......
......@@ -24,14 +24,12 @@ import java.util.List;
import java.util.Optional;
import java.util.concurrent.Executors;
import javax.annotation.Resource;
import javax.persistence.criteria.Order;
import javax.persistence.criteria.Predicate;
import javax.servlet.http.HttpServletResponse;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.data.domain.Example;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.*;
import org.springframework.data.jpa.domain.Specification;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
......@@ -68,8 +66,9 @@ public class PostServiceImpl implements PostService {
if (!StrUtil.equals(post.getName(), postParam.getName())) {
if (hasPostInfo(postParam.getName())) return Result.no(Status.BAD_REQUEST, "职位已存在");
}
post = postParam.transform();
post.setName(postParam.getName());
post.setDescribe(postParam.getDescribe());
post.setEnable(postParam.getEnable());
post.setUpdateTime(LocalDateTime.now());
post.setId(idParam.getId());
postRepository.save(post);
......@@ -87,6 +86,8 @@ public class PostServiceImpl implements PostService {
public Result<PageVo<PostVo>> findPostPage(PostFindParam param) {
Specification<Post> specification = getPostPageSpecification(param);
Sort sort = Sort.by(Sort.Order.desc(Post.Fields.createTime));
if (ObjectUtil.isNotEmpty(param.getPageSize()) && ObjectUtil.isNotEmpty(param.getPageNo())) {
//分页
Pageable pageable = PageRequest.of(param.getPageNo() - 1, param.getPageSize());
......@@ -95,7 +96,7 @@ public class PostServiceImpl implements PostService {
PageVo<PostVo> pageVo = PageVo.build(postVos, postVos.size());
return Result.ok(pageVo);
} else {
List<Post> posts = postRepository.findAll(specification);
List<Post> posts = postRepository.findAll(specification, sort);
List<PostVo> postVos = PostVo.transforms(posts);
PageVo<PostVo> pageVo = PageVo.build(postVos, postVos.size());
return Result.ok(pageVo);
......@@ -155,13 +156,15 @@ public class PostServiceImpl implements PostService {
List<Predicate> predicates = ListUtil.toList();
if (StrUtil.isNotEmpty(param.getName())) {
predicates.add(cb.equal(root.get(Post.Fields.name), param.getName()));
predicates.add(cb.like(root.get(Post.Fields.name), "%" + param.getName() + "%"));
}
if (ObjectUtil.isNotEmpty(param.getEnable())) {
predicates.add(cb.equal(root.get(Post.Fields.enable), param.getEnable()));
}
Order order = cb.desc(root.get(Post.Fields.createTime));
return cq.where(predicates.toArray(new Predicate[0])).getRestriction();
};
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论