diff --git a/orgmanax-api/src/main/java/cn/axzo/orgmanax/api/project/team/feign/OrgProjectTeamCategoryApi.java b/orgmanax-api/src/main/java/cn/axzo/orgmanax/api/project/team/feign/OrgProjectTeamCategoryApi.java index 1458378..cb26a70 100644 --- a/orgmanax-api/src/main/java/cn/axzo/orgmanax/api/project/team/feign/OrgProjectTeamCategoryApi.java +++ b/orgmanax-api/src/main/java/cn/axzo/orgmanax/api/project/team/feign/OrgProjectTeamCategoryApi.java @@ -30,7 +30,9 @@ import org.springframework.web.bind.annotation.RequestBody; * @Desc: 班组分类,内部接口 * @Version: 1.0 */ -@FeignClient(name = "org-gateway", url = "${axzo.service.org-gateway:http://org-gateway:8080}") +@FeignClient( + value = "orgmanax", + url = "${axzo.service.orgmanax:http://orgmanax:8080}") public interface OrgProjectTeamCategoryApi { /** @@ -110,6 +112,6 @@ public interface OrgProjectTeamCategoryApi { /** * 列表分页查询 */ - @PostMapping(value = "/api/project/team-category/v2/page") - ApiResult> pageV2(@RequestBody PageOrgTeamCategoryReq req); + @PostMapping(value = "/api/project/team-category/list") + ApiResult> list(@RequestBody PageOrgTeamCategoryReq req); } diff --git a/orgmanax-api/src/test/resources/http/project/teamcategory/team-category.http b/orgmanax-api/src/test/resources/http/project/teamcategory/team-category.http new file mode 100644 index 0000000..5dee63f --- /dev/null +++ b/orgmanax-api/src/test/resources/http/project/teamcategory/team-category.http @@ -0,0 +1,9 @@ +### +# 分页查询班组类别 +POST {{host}}/api/project/team-category/list +Content-Type: application/json +Accept: application/json + +{ + "orgNodeIds": [14606,14585] +} \ No newline at end of file diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/project/team/dto/TeamCategoryDTO.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/project/team/dto/TeamCategoryDTO.java index 8e6e7f5..b60df2b 100644 --- a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/project/team/dto/TeamCategoryDTO.java +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/project/team/dto/TeamCategoryDTO.java @@ -66,16 +66,19 @@ public class TeamCategoryDTO implements Serializable { private String parentCode; /** * 班组类别 - 分类 + * @see TeamCategoryTypeEnum */ - private TeamCategoryTypeEnum type; + private Integer type; /** * 班组类别使用场景 + * @see TeamSceneEnum */ - private TeamSceneEnum scene; + private String scene; /** * 数据有效性标记 + * @see ValidationEnum */ - private ValidationEnum valid; + private Integer valid; /** * 创建人的自然人id */ diff --git a/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/project/team/entity/TeamCategory.java b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/project/team/entity/TeamCategory.java index 0d6674d..77c34cb 100644 --- a/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/project/team/entity/TeamCategory.java +++ b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/project/team/entity/TeamCategory.java @@ -11,6 +11,7 @@ import java.io.Serializable; import java.util.Date; import lombok.AllArgsConstructor; import lombok.Data; +import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; @@ -25,7 +26,8 @@ import lombok.experimental.SuperBuilder; @SuperBuilder @NoArgsConstructor @AllArgsConstructor -@TableName("team_category") +@EqualsAndHashCode(callSuper = false) +@TableName(value = "team_category", autoResultMap = true) public class TeamCategory implements Serializable { private static final long serialVersionUID = -5630510028680541910L; @@ -75,16 +77,18 @@ public class TeamCategory implements Serializable { private String parentCode; /** * 班组类别 - 分类 + * @see TeamCategoryTypeEnum */ - private TeamCategoryTypeEnum type; + private Integer type; /** * 班组类别使用场景 */ private TeamSceneEnum scene; /** * 数据有效性标记 + * @see ValidationEnum */ - private ValidationEnum valid; + private Integer valid; /** * 创建人的自然人id */ diff --git a/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/project/team/repository/TeamCategoryRepository.java b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/project/team/repository/TeamCategoryRepository.java index d39184b..83abb0f 100644 --- a/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/project/team/repository/TeamCategoryRepository.java +++ b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/project/team/repository/TeamCategoryRepository.java @@ -46,7 +46,7 @@ public interface TeamCategoryRepository { * 组织节点idList */ @CriteriaField(field = "orgNodeId", operator = Operator.IN) - private List orgNodeIdList; + private List orgNodeIds; /** * 班组类别code */ @@ -103,43 +103,6 @@ public interface TeamCategoryRepository { */ @CriteriaField(ignore = true) private Boolean includeDeleted; - - - // ============== -// /** -// * 岗位id -// */ -// @CriteriaField(field = "id", operator = Operator.IN) -// private Collection ids; -// -// @CriteriaField(field = "code", operator = Operator.IN) -// private Collection codes; -// @CriteriaField -// private String code; -// -// /** -// * 岗位类型 -// */ -// @CriteriaField(field = "type") -// private OrgJobTypeEnum type; -// -// /** -// * 搜索关键字 -// * Notice: 名称或别名的模糊搜索 -// */ -// @CriteriaField(ignore = true) -// private String keyword; -// @CriteriaField(field = "name") -// private String name; -// @CriteriaField(field = "name", operator = Operator.LIKE) -// private String nameLike; -// -// /** -// * 关联身份类型 1工人 2班组长 3从业人员 5运营人员 -// */ -// private Integer identityType; - - } @EqualsAndHashCode(callSuper = true) diff --git a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/controller/OrgProjectTeamCategoryController.java b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/controller/OrgProjectTeamCategoryController.java index 98a1b5b..9f0fe4d 100644 --- a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/controller/OrgProjectTeamCategoryController.java +++ b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/controller/OrgProjectTeamCategoryController.java @@ -77,7 +77,7 @@ public class OrgProjectTeamCategoryController implements OrgProjectTeamCategoryA } @Override - public ApiResult> pageV2(PageOrgTeamCategoryReq req) { + public ApiResult> list(PageOrgTeamCategoryReq req) { return ApiResult.success(projectTeamCategoryService .page(BeanUtil.copyProperties(req, ListTeamCategoryReq.class))); } diff --git a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/foundation/ProjectTeamCategoryFoundationService.java b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/foundation/ProjectTeamCategoryFoundationService.java index 0a7a161..bd1e304 100644 --- a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/foundation/ProjectTeamCategoryFoundationService.java +++ b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/foundation/ProjectTeamCategoryFoundationService.java @@ -3,6 +3,7 @@ package cn.axzo.orgmanax.server.project.team.foundation; import cn.axzo.foundation.page.PageResp; import cn.axzo.orgmanax.dto.project.team.dto.TeamCategoryDTO; import cn.axzo.orgmanax.server.project.team.service.dto.ListTeamCategoryReq; +import java.util.List; /** * @author syl @@ -11,8 +12,14 @@ import cn.axzo.orgmanax.server.project.team.service.dto.ListTeamCategoryReq; public interface ProjectTeamCategoryFoundationService { /** - * 查询班组类别 - * @return + * 分页查询班组类别 */ PageResp page(ListTeamCategoryReq req); + + /** + * 查询班组类别 + * 仅内部使用 + */ + List pageAll(ListTeamCategoryReq param); + } diff --git a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/foundation/impl/ProjectTeamCategoryFoundationServiceImpl.java b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/foundation/impl/ProjectTeamCategoryFoundationServiceImpl.java index 55ab4b7..450eb49 100644 --- a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/foundation/impl/ProjectTeamCategoryFoundationServiceImpl.java +++ b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/foundation/impl/ProjectTeamCategoryFoundationServiceImpl.java @@ -1,9 +1,17 @@ package cn.axzo.orgmanax.server.project.team.foundation.impl; +import static cn.axzo.orgmanax.dto.job.dto.OrgJobConstants.JOB_PAGE_SIZE; + import cn.axzo.foundation.page.PageResp; import cn.axzo.orgmanax.dto.project.team.dto.TeamCategoryDTO; +import cn.axzo.orgmanax.infra.dao.project.team.repository.TeamCategoryRepository; +import cn.axzo.orgmanax.infra.dao.project.team.repository.TeamCategoryRepository.TeamCategoryResp; import cn.axzo.orgmanax.server.project.team.foundation.ProjectTeamCategoryFoundationService; import cn.axzo.orgmanax.server.project.team.service.dto.ListTeamCategoryReq; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollUtil; +import java.util.ArrayList; +import java.util.List; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -17,8 +25,32 @@ import org.springframework.stereotype.Service; @Service public class ProjectTeamCategoryFoundationServiceImpl implements ProjectTeamCategoryFoundationService { + private final TeamCategoryRepository teamCategoryRepository; @Override - public PageResp page(ListTeamCategoryReq req) { - return null; + public PageResp page(ListTeamCategoryReq param) { + PageResp page = teamCategoryRepository.page( + BeanUtil.copyProperties(param, TeamCategoryRepository.PageReq.class)); + return PageResp.builder() + .size(page.getSize()) + .current(page.getCurrent()) + .total(page.getTotal()) + .data(BeanUtil.copyToList(page.getData(), TeamCategoryDTO.class)) + .build(); + } + + @Override + public List pageAll(ListTeamCategoryReq param) { + List categoryList = new ArrayList<>(); + PageResp pageResp; + int pageNumber = 0; + param.setPageSize(JOB_PAGE_SIZE); + do { + param.setPage(++pageNumber); + pageResp = this.page(param); + if (CollUtil.isNotEmpty(pageResp.getData())) { + categoryList.addAll(pageResp.getData()); + } + } while (pageResp.hasNext()); + return categoryList; } } diff --git a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/service/impl/ProjectTeamCategoryServiceImpl.java b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/service/impl/ProjectTeamCategoryServiceImpl.java index 5acf9dc..afdc3cf 100644 --- a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/service/impl/ProjectTeamCategoryServiceImpl.java +++ b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/project/team/service/impl/ProjectTeamCategoryServiceImpl.java @@ -2,9 +2,11 @@ package cn.axzo.orgmanax.server.project.team.service.impl; import cn.axzo.foundation.page.PageResp; import cn.axzo.orgmanax.dto.project.team.dto.TeamCategoryDTO; +import cn.axzo.orgmanax.server.project.team.foundation.ProjectTeamCategoryFoundationService; import cn.axzo.orgmanax.server.project.team.service.ProjectTeamCategoryService; import cn.axzo.orgmanax.server.project.team.service.dto.ListTeamCategoryReq; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; /** @@ -15,9 +17,11 @@ import org.springframework.stereotype.Service; @Service public class ProjectTeamCategoryServiceImpl implements ProjectTeamCategoryService { + @Autowired + private ProjectTeamCategoryFoundationService teamCategoryFoundationService; @Override public PageResp page(ListTeamCategoryReq req) { - // todo - return null; + // todo 扩展 + return teamCategoryFoundationService.page(req); } }