feat(REQ-3282): 增加班组日志分页查询
This commit is contained in:
parent
e169a0a178
commit
9a47414d26
@ -0,0 +1,32 @@
|
||||
package cn.axzo.orgmanax.api.teamlog.feign;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.foundation.result.ApiResult;
|
||||
import cn.axzo.orgmanax.dto.nodeuser.req.ListNodeUserReq;
|
||||
import cn.axzo.orgmanax.dto.teamlog.dto.TeamLogDTO;
|
||||
import cn.axzo.orgmanax.dto.teamlog.req.TeamLogPageReq;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/25
|
||||
*/
|
||||
@FeignClient(
|
||||
value = "orgmanax",
|
||||
url = "${axzo.service.orgmanax:http://orgmanax:8080}")
|
||||
public interface TeamLogApi {
|
||||
/**
|
||||
* 分页列表接口。
|
||||
* XXX:本接口默认分页,单页最多返回1000条数据。调用方使用时需注意。
|
||||
*
|
||||
* @param req
|
||||
* @return
|
||||
* @see ListNodeUserReq#getPageSize()
|
||||
*/
|
||||
@PostMapping("/api/team-log/list")
|
||||
ApiResult<PageResp<TeamLogDTO>> list(@RequestBody @Validated TeamLogPageReq req);
|
||||
|
||||
}
|
||||
13
orgmanax-api/src/test/resources/http/teamlog/team-log.http
Normal file
13
orgmanax-api/src/test/resources/http/teamlog/team-log.http
Normal file
@ -0,0 +1,13 @@
|
||||
# 查询
|
||||
POST {{host}}/api/team-log/list
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
|
||||
{
|
||||
"page": 1,
|
||||
"pageSize": 20,
|
||||
"teamIds": [10358],
|
||||
"type": "CHANGE_TEAM_OWNER"
|
||||
}
|
||||
|
||||
###
|
||||
@ -0,0 +1,66 @@
|
||||
package cn.axzo.orgmanax.dto.teamlog.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 平台班组变更日志表
|
||||
* </p>
|
||||
*
|
||||
* @author autoGenerator
|
||||
* @since 2023-04-14
|
||||
*/
|
||||
@Data
|
||||
public class TeamLogDTO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 平台班组id
|
||||
*/
|
||||
private Long platTeamId;
|
||||
|
||||
/**
|
||||
* log类型
|
||||
*/
|
||||
private String type;
|
||||
|
||||
/**
|
||||
* 变更描述
|
||||
*/
|
||||
private String content;
|
||||
|
||||
/**
|
||||
* 相关参数
|
||||
*/
|
||||
private String param;
|
||||
|
||||
/**
|
||||
* 操作人身份id
|
||||
*/
|
||||
private Long operatorId;
|
||||
|
||||
/**
|
||||
* 是否删除 0否1是
|
||||
*/
|
||||
private Long isDelete;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date createAt;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
private Date updateAt;
|
||||
|
||||
}
|
||||
@ -0,0 +1,22 @@
|
||||
package cn.axzo.orgmanax.dto.teamlog.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 平台班组日志类型
|
||||
* @author zhangtianyu
|
||||
* @date 2023/4/14 4:00 PM
|
||||
**/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum PlatTeamLogType {
|
||||
/**
|
||||
* 更换班组长
|
||||
*/
|
||||
CHANGE_TEAM_OWNER("更换班组长", "将原班组长%s更换为%s"),
|
||||
;
|
||||
|
||||
private final String desc;
|
||||
private final String content;
|
||||
}
|
||||
@ -0,0 +1,43 @@
|
||||
package cn.axzo.orgmanax.dto.teamlog.req;
|
||||
|
||||
import cn.axzo.foundation.page.PageReqV2;
|
||||
import cn.axzo.orgmanax.dto.teamlog.enums.PlatTeamLogType;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/17
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@SuperBuilder
|
||||
public class TeamLogPageReq extends PageReqV2 {
|
||||
/**
|
||||
* 平台班组日志类型
|
||||
*/
|
||||
@NotNull(message = "type must not null")
|
||||
private PlatTeamLogType type;
|
||||
|
||||
/**
|
||||
* 班组id列表
|
||||
*/
|
||||
private List<Long> teamIds;
|
||||
|
||||
/**
|
||||
* 开始时间(对于创建时间)
|
||||
*/
|
||||
private Date start;
|
||||
|
||||
/**
|
||||
* 结束时间(对于创建时间)
|
||||
*/
|
||||
private Date end;
|
||||
}
|
||||
@ -0,0 +1,19 @@
|
||||
package cn.axzo.orgmanax.infra.dao.teamlog.dao;
|
||||
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.entity.PlatTeamLog;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.mapper.PlatTeamLogMapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 平台班组变更日志表 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author autoGenerator
|
||||
* @since 2023-04-14
|
||||
*/
|
||||
@Service
|
||||
public class PlatTeamLogDao extends ServiceImpl<PlatTeamLogMapper, PlatTeamLog> {
|
||||
|
||||
}
|
||||
@ -0,0 +1,91 @@
|
||||
package cn.axzo.orgmanax.infra.dao.teamlog.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.extension.activerecord.Model;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.Accessors;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 平台班组变更日志表
|
||||
* </p>
|
||||
*
|
||||
* @author autoGenerator
|
||||
* @since 2023-04-14
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@Accessors(chain = true)
|
||||
@TableName("plat_team_log")
|
||||
public class PlatTeamLog implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@TableId(value = "id", type = IdType.AUTO)
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 平台班组id
|
||||
*/
|
||||
@TableField("plat_team_id")
|
||||
private Long platTeamId;
|
||||
|
||||
/**
|
||||
* log类型
|
||||
*/
|
||||
@TableField("type")
|
||||
private String type;
|
||||
|
||||
/**
|
||||
* 变更描述
|
||||
*/
|
||||
@TableField("content")
|
||||
private String content;
|
||||
|
||||
/**
|
||||
* 相关参数
|
||||
*/
|
||||
@TableField("param")
|
||||
private String param;
|
||||
|
||||
/**
|
||||
* 操作人身份id
|
||||
*/
|
||||
@TableField("operator_id")
|
||||
private Long operatorId;
|
||||
|
||||
/**
|
||||
* 是否删除 0否1是
|
||||
*/
|
||||
@TableField("is_delete")
|
||||
private Long isDelete;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("create_at")
|
||||
private Date createAt;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@TableField("update_at")
|
||||
private Date updateAt;
|
||||
|
||||
}
|
||||
@ -0,0 +1,16 @@
|
||||
package cn.axzo.orgmanax.infra.dao.teamlog.mapper;
|
||||
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.entity.PlatTeamLog;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 平台班组变更日志表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author autoGenerator
|
||||
* @since 2023-04-14
|
||||
*/
|
||||
public interface PlatTeamLogMapper extends BaseMapper<PlatTeamLog> {
|
||||
|
||||
}
|
||||
@ -0,0 +1,107 @@
|
||||
package cn.axzo.orgmanax.infra.dao.teamlog.repository;
|
||||
|
||||
import cn.axzo.foundation.dao.support.wrapper.CriteriaField;
|
||||
import cn.axzo.foundation.dao.support.wrapper.Operator;
|
||||
import cn.axzo.foundation.page.PageReqV2;
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.dto.teamlog.enums.PlatTeamLogType;
|
||||
import cn.axzo.orgmanax.dto.teamlog.req.TeamLogPageReq;
|
||||
import cn.axzo.orgmanax.infra.dao.nodeuser.entity.OrganizationalNodeUser;
|
||||
import cn.axzo.orgmanax.infra.dao.nodeuser.repository.NodeUserQueryRepository;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.entity.PlatTeamLog;
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/25
|
||||
*/
|
||||
public interface PlatTeamLogRepository {
|
||||
PageResp<TeamLogResp> page(PageReq req);
|
||||
|
||||
default List<TeamLogResp> list(PageReq req) {
|
||||
return page(req).getData();
|
||||
}
|
||||
|
||||
default TeamLogResp one(OneReq req) {
|
||||
return oneOpt(req).orElse(null);
|
||||
}
|
||||
|
||||
default Optional<TeamLogResp> oneOpt(OneReq req) {
|
||||
PageReq page = BeanUtil.toBean(req, PageReq.class);
|
||||
page.setPage(1);
|
||||
page.setPageSize(1);
|
||||
return page(page).getData().stream().findFirst();
|
||||
}
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
@SuperBuilder
|
||||
class PageReq extends PageReqV2 {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@CriteriaField
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 平台班组日志类型
|
||||
*/
|
||||
@CriteriaField
|
||||
private String type;
|
||||
|
||||
/**
|
||||
* 班组id列表
|
||||
*/
|
||||
@CriteriaField(field = "platTeamId", operator = Operator.IN)
|
||||
private List<Long> teamIds;
|
||||
|
||||
/**
|
||||
* 开始时间(对于创建时间)
|
||||
*/
|
||||
@CriteriaField(field = "createAt", operator = Operator.GE)
|
||||
private Date start;
|
||||
|
||||
/**
|
||||
* 结束时间(对于创建时间)
|
||||
*/
|
||||
@CriteriaField(field = "createAt", operator = Operator.LE)
|
||||
private Date end;
|
||||
|
||||
/**
|
||||
* 是都包含删除(默认走查询未删除)
|
||||
*/
|
||||
@CriteriaField(ignore = true)
|
||||
private Boolean includeDeleted;
|
||||
}
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
@SuperBuilder
|
||||
class TeamLogResp extends PlatTeamLog {
|
||||
private String xx;
|
||||
}
|
||||
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
@SuperBuilder
|
||||
class OneReq {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private Long id;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,47 @@
|
||||
package cn.axzo.orgmanax.infra.dao.teamlog.repository.impl;
|
||||
|
||||
import cn.axzo.foundation.dao.support.converter.PageConverter;
|
||||
import cn.axzo.foundation.dao.support.mysql.QueryWrapperHelper;
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.dao.PlatTeamLogDao;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.entity.PlatTeamLog;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.repository.PlatTeamLogRepository;
|
||||
import cn.axzo.orgmanax.infra.util.CommonUtil;
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.BooleanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/25
|
||||
*/
|
||||
@Repository
|
||||
@Slf4j
|
||||
@AllArgsConstructor
|
||||
public class PlatTeamLogRepositoryImpl implements PlatTeamLogRepository {
|
||||
|
||||
private PlatTeamLogDao platTeamLogDao;
|
||||
|
||||
@Override
|
||||
public PageResp<TeamLogResp> page(PageReq req) {
|
||||
IPage<PlatTeamLog> page = PageConverter.toMybatis(req, PlatTeamLog.class);
|
||||
QueryWrapper<PlatTeamLog> wrapper = QueryWrapperHelper.fromBean(req, PlatTeamLog.class);
|
||||
|
||||
// 处理删除标记
|
||||
if (!BooleanUtil.isTrue(req.getIncludeDeleted())) {
|
||||
wrapper.eq("is_delete", 0);
|
||||
}
|
||||
|
||||
IPage<TeamLogResp> results = platTeamLogDao.page(page, wrapper)
|
||||
.convert(e -> BeanUtil.toBean(e, TeamLogResp.class));
|
||||
if (CollUtil.isEmpty(results.getRecords())) {
|
||||
return CommonUtil.getEmptyPage(req, TeamLogResp.class);
|
||||
}
|
||||
return PageConverter.toResp(results);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,26 @@
|
||||
package cn.axzo.orgmanax.infra.util;
|
||||
|
||||
import cn.axzo.foundation.page.PageReqV2;
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import com.baomidou.mybatisplus.extension.api.R;
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import lombok.experimental.UtilityClass;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/26
|
||||
*/
|
||||
@UtilityClass
|
||||
public class CommonUtil {
|
||||
|
||||
/**
|
||||
* 获取空集合分页数据
|
||||
* @param req
|
||||
* @param rClass
|
||||
* @param <R>
|
||||
* @return
|
||||
*/
|
||||
public static <R> PageResp<R> getEmptyPage(PageReqV2 req, Class<R> rClass){
|
||||
return PageResp.<R>builder().size(req.getPageSize()).current(req.getPage()).total(0L).data(ImmutableList.of()).build();
|
||||
}
|
||||
}
|
||||
@ -7,8 +7,12 @@ import cn.azxo.framework.common.model.CommonResponse;
|
||||
import cn.hutool.core.util.ReUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.validation.BindingResult;
|
||||
import org.springframework.validation.FieldError;
|
||||
import org.springframework.web.bind.MethodArgumentNotValidException;
|
||||
import org.springframework.web.bind.annotation.ExceptionHandler;
|
||||
import org.springframework.web.bind.annotation.RestControllerAdvice;
|
||||
import org.springframework.web.method.annotation.MethodArgumentTypeMismatchException;
|
||||
|
||||
@Slf4j
|
||||
@RestControllerAdvice
|
||||
@ -29,6 +33,26 @@ public class ExceptionControllerAdvice {
|
||||
return ApiResult.error(BizResultCode.UNKNOWN_ERROR.getErrorCode(), extractMessage(ex));
|
||||
}
|
||||
|
||||
@ExceptionHandler(value = MethodArgumentNotValidException.class)
|
||||
public ApiResult handleArgumentValidException(MethodArgumentNotValidException e){
|
||||
log.warn("handleArgumentValidException Exception", e);
|
||||
BindingResult bindingResult = e.getBindingResult();
|
||||
StringBuilder errorMsg = new StringBuilder();
|
||||
for (FieldError fieldError : bindingResult.getFieldErrors()) {
|
||||
if (-1 == errorMsg.indexOf(fieldError.getDefaultMessage())) {
|
||||
errorMsg.append(fieldError.getDefaultMessage()).append(",");
|
||||
}
|
||||
}
|
||||
errorMsg.deleteCharAt(errorMsg.length() - 1);
|
||||
return ApiResult.error(BizResultCode.INVALID_PARAM.getErrorCode(), errorMsg.toString());
|
||||
}
|
||||
|
||||
@ExceptionHandler(value = MethodArgumentTypeMismatchException.class)
|
||||
public ApiResult handleMethodArgumentTypeMismatchException(MethodArgumentTypeMismatchException e){
|
||||
log.warn("handleMethodArgumentTypeMismatchException Exception", e);
|
||||
return ApiResult.error(BizResultCode.INVALID_PARAM.getErrorCode(), e.getMessage());
|
||||
}
|
||||
|
||||
/**
|
||||
* 捕捉Exception异常
|
||||
*
|
||||
|
||||
@ -0,0 +1,28 @@
|
||||
package cn.axzo.orgmanax.server.teamlog.controller;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.foundation.result.ApiResult;
|
||||
import cn.axzo.orgmanax.api.teamlog.feign.TeamLogApi;
|
||||
import cn.axzo.orgmanax.dto.teamlog.dto.TeamLogDTO;
|
||||
import cn.axzo.orgmanax.dto.teamlog.req.TeamLogPageReq;
|
||||
import cn.axzo.orgmanax.server.teamlog.service.TeamLogService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/25
|
||||
*/
|
||||
@RestController
|
||||
@Slf4j
|
||||
@AllArgsConstructor
|
||||
public class TeamLogController implements TeamLogApi {
|
||||
|
||||
private TeamLogService teamLogService;
|
||||
|
||||
@Override
|
||||
public ApiResult<PageResp<TeamLogDTO>> list(TeamLogPageReq req) {
|
||||
return ApiResult.success(teamLogService.page(req));
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,13 @@
|
||||
package cn.axzo.orgmanax.server.teamlog.foundation;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.dto.teamlog.dto.TeamLogDTO;
|
||||
import cn.axzo.orgmanax.dto.teamlog.req.TeamLogPageReq;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/26
|
||||
*/
|
||||
public interface TeamLogFoundationService {
|
||||
PageResp<TeamLogDTO> page(TeamLogPageReq req);
|
||||
}
|
||||
@ -0,0 +1,40 @@
|
||||
package cn.axzo.orgmanax.server.teamlog.foundation.impl;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.dto.job.dto.OrgJobDTO;
|
||||
import cn.axzo.orgmanax.dto.teamlog.dto.TeamLogDTO;
|
||||
import cn.axzo.orgmanax.dto.teamlog.req.TeamLogPageReq;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.entity.PlatTeamLog;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.repository.PlatTeamLogRepository;
|
||||
import cn.axzo.orgmanax.server.teamlog.foundation.TeamLogFoundationService;
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/26
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
@AllArgsConstructor
|
||||
public class TeamLogFoundationServiceImpl implements TeamLogFoundationService {
|
||||
|
||||
private PlatTeamLogRepository platTeamLogRepository;
|
||||
|
||||
@Override
|
||||
public PageResp<TeamLogDTO> page(TeamLogPageReq req) {
|
||||
PlatTeamLogRepository.PageReq pageReq = BeanUtil.copyProperties(req, PlatTeamLogRepository.PageReq.class);
|
||||
pageReq.setType(req.getType().name());
|
||||
PageResp<PlatTeamLogRepository.TeamLogResp> page = platTeamLogRepository.page(pageReq);
|
||||
return PageResp.<TeamLogDTO>builder()
|
||||
.size(page.getSize())
|
||||
.current(page.getCurrent())
|
||||
.total(page.getTotal())
|
||||
.data(BeanUtil.copyToList(page.getData(), TeamLogDTO.class))
|
||||
.build();
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,18 @@
|
||||
package cn.axzo.orgmanax.server.teamlog.service;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.dto.teamlog.dto.TeamLogDTO;
|
||||
import cn.axzo.orgmanax.dto.teamlog.req.TeamLogPageReq;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/26
|
||||
*/
|
||||
public interface TeamLogService {
|
||||
/**
|
||||
* 分页查询班组日志
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
PageResp<TeamLogDTO> page(TeamLogPageReq req);
|
||||
}
|
||||
@ -0,0 +1,33 @@
|
||||
package cn.axzo.orgmanax.server.teamlog.service.impl;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.dto.teamlog.dto.TeamLogDTO;
|
||||
import cn.axzo.orgmanax.dto.teamlog.req.TeamLogPageReq;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.repository.PlatTeamLogRepository;
|
||||
import cn.axzo.orgmanax.server.teamlog.foundation.TeamLogFoundationService;
|
||||
import cn.axzo.orgmanax.server.teamlog.service.TeamLogService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/26
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
@AllArgsConstructor
|
||||
public class TeamLogServiceImpl implements TeamLogService {
|
||||
|
||||
private TeamLogFoundationService teamLogFoundationService;
|
||||
|
||||
/**
|
||||
* 分页查询班组日志
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public PageResp<TeamLogDTO> page(TeamLogPageReq req) {
|
||||
return teamLogFoundationService.page(req);
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user