diff --git a/orgmanax-api/src/main/java/cn/axzo/orgmanax/api/teamlog/feign/TeamLogApi.java b/orgmanax-api/src/main/java/cn/axzo/orgmanax/api/teamlog/feign/TeamLogApi.java new file mode 100644 index 0000000..d589fc9 --- /dev/null +++ b/orgmanax-api/src/main/java/cn/axzo/orgmanax/api/teamlog/feign/TeamLogApi.java @@ -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> list(@RequestBody @Validated TeamLogPageReq req); + +} diff --git a/orgmanax-api/src/test/resources/http/teamlog/team-log.http b/orgmanax-api/src/test/resources/http/teamlog/team-log.http new file mode 100644 index 0000000..c6c7efd --- /dev/null +++ b/orgmanax-api/src/test/resources/http/teamlog/team-log.http @@ -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" +} + +### \ No newline at end of file diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/teamlog/dto/TeamLogDTO.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/teamlog/dto/TeamLogDTO.java new file mode 100644 index 0000000..38e1b07 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/teamlog/dto/TeamLogDTO.java @@ -0,0 +1,66 @@ +package cn.axzo.orgmanax.dto.teamlog.dto; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + *

+ * 平台班组变更日志表 + *

+ * + * @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; + +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/teamlog/enums/PlatTeamLogType.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/teamlog/enums/PlatTeamLogType.java new file mode 100644 index 0000000..8443930 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/teamlog/enums/PlatTeamLogType.java @@ -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; +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/teamlog/req/TeamLogPageReq.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/teamlog/req/TeamLogPageReq.java new file mode 100644 index 0000000..b0c2f41 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/teamlog/req/TeamLogPageReq.java @@ -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 teamIds; + + /** + * 开始时间(对于创建时间) + */ + private Date start; + + /** + * 结束时间(对于创建时间) + */ + private Date end; +} diff --git a/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/dao/PlatTeamLogDao.java b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/dao/PlatTeamLogDao.java new file mode 100644 index 0000000..f36efb5 --- /dev/null +++ b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/dao/PlatTeamLogDao.java @@ -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; + +/** + *

+ * 平台班组变更日志表 服务实现类 + *

+ * + * @author autoGenerator + * @since 2023-04-14 + */ +@Service +public class PlatTeamLogDao extends ServiceImpl { + +} diff --git a/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/entity/PlatTeamLog.java b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/entity/PlatTeamLog.java new file mode 100644 index 0000000..0437aca --- /dev/null +++ b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/entity/PlatTeamLog.java @@ -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; + +/** + *

+ * 平台班组变更日志表 + *

+ * + * @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; + +} diff --git a/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/mapper/PlatTeamLogMapper.java b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/mapper/PlatTeamLogMapper.java new file mode 100644 index 0000000..49620b6 --- /dev/null +++ b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/mapper/PlatTeamLogMapper.java @@ -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; + +/** + *

+ * 平台班组变更日志表 Mapper 接口 + *

+ * + * @author autoGenerator + * @since 2023-04-14 + */ +public interface PlatTeamLogMapper extends BaseMapper { + +} diff --git a/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/repository/PlatTeamLogRepository.java b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/repository/PlatTeamLogRepository.java new file mode 100644 index 0000000..c21e3db --- /dev/null +++ b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/repository/PlatTeamLogRepository.java @@ -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 page(PageReq req); + + default List list(PageReq req) { + return page(req).getData(); + } + + default TeamLogResp one(OneReq req) { + return oneOpt(req).orElse(null); + } + + default Optional 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 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; + } +} diff --git a/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/repository/impl/PlatTeamLogRepositoryImpl.java b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/repository/impl/PlatTeamLogRepositoryImpl.java new file mode 100644 index 0000000..427ed41 --- /dev/null +++ b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/dao/teamlog/repository/impl/PlatTeamLogRepositoryImpl.java @@ -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 page(PageReq req) { + IPage page = PageConverter.toMybatis(req, PlatTeamLog.class); + QueryWrapper wrapper = QueryWrapperHelper.fromBean(req, PlatTeamLog.class); + + // 处理删除标记 + if (!BooleanUtil.isTrue(req.getIncludeDeleted())) { + wrapper.eq("is_delete", 0); + } + + IPage 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); + } +} diff --git a/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/util/CommonUtil.java b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/util/CommonUtil.java new file mode 100644 index 0000000..d04a70f --- /dev/null +++ b/orgmanax-infra/src/main/java/cn/axzo/orgmanax/infra/util/CommonUtil.java @@ -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 + * @return + */ + public static PageResp getEmptyPage(PageReqV2 req, Class rClass){ + return PageResp.builder().size(req.getPageSize()).current(req.getPage()).total(0L).data(ImmutableList.of()).build(); + } +} diff --git a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/ExceptionControllerAdvice.java b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/ExceptionControllerAdvice.java index 4818018..244163d 100644 --- a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/ExceptionControllerAdvice.java +++ b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/ExceptionControllerAdvice.java @@ -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异常 * diff --git a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/controller/TeamLogController.java b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/controller/TeamLogController.java new file mode 100644 index 0000000..d985885 --- /dev/null +++ b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/controller/TeamLogController.java @@ -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> list(TeamLogPageReq req) { + return ApiResult.success(teamLogService.page(req)); + } +} diff --git a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/foundation/TeamLogFoundationService.java b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/foundation/TeamLogFoundationService.java new file mode 100644 index 0000000..eb1063d --- /dev/null +++ b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/foundation/TeamLogFoundationService.java @@ -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 page(TeamLogPageReq req); +} diff --git a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/foundation/impl/TeamLogFoundationServiceImpl.java b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/foundation/impl/TeamLogFoundationServiceImpl.java new file mode 100644 index 0000000..ae18cd6 --- /dev/null +++ b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/foundation/impl/TeamLogFoundationServiceImpl.java @@ -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 page(TeamLogPageReq req) { + PlatTeamLogRepository.PageReq pageReq = BeanUtil.copyProperties(req, PlatTeamLogRepository.PageReq.class); + pageReq.setType(req.getType().name()); + PageResp page = platTeamLogRepository.page(pageReq); + return PageResp.builder() + .size(page.getSize()) + .current(page.getCurrent()) + .total(page.getTotal()) + .data(BeanUtil.copyToList(page.getData(), TeamLogDTO.class)) + .build(); + } +} diff --git a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/service/TeamLogService.java b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/service/TeamLogService.java new file mode 100644 index 0000000..5892101 --- /dev/null +++ b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/service/TeamLogService.java @@ -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 page(TeamLogPageReq req); +} diff --git a/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/service/impl/TeamLogServiceImpl.java b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/service/impl/TeamLogServiceImpl.java new file mode 100644 index 0000000..03776d3 --- /dev/null +++ b/orgmanax-server/src/main/java/cn/axzo/orgmanax/server/teamlog/service/impl/TeamLogServiceImpl.java @@ -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 page(TeamLogPageReq req) { + return teamLogFoundationService.page(req); + } +}