diff --git a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/DeptDetailResp.java b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/DeptDetailResp.java index b847ce92..9c9321be 100644 --- a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/DeptDetailResp.java +++ b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/DeptDetailResp.java @@ -16,12 +16,15 @@ package top.charles7c.continew.admin.system.model.resp; +import cn.crane4j.annotation.AssembleMethod; +import cn.crane4j.annotation.ContainerMethod; +import cn.crane4j.annotation.Mapping; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; -import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import top.charles7c.continew.admin.common.enums.DisEnableStatusEnum; +import top.charles7c.continew.admin.system.service.DeptService; import top.charles7c.continew.starter.extension.crud.base.BaseDetailResp; import top.charles7c.continew.starter.extension.crud.converter.ExcelBaseEnumConverter; @@ -52,13 +55,13 @@ public class DeptDetailResp extends BaseDetailResp { * 上级部门 ID */ @Schema(description = "上级部门 ID", example = "2") + @AssembleMethod(targetType = DeptService.class, method = @ContainerMethod(bindMethod = "get", resultType = DeptDetailResp.class), props = @Mapping(src = "name", ref = "parentName")) private Long parentId; /** * 上级部门 */ @Schema(description = "上级部门", example = "天津总部") - @TableField(exist = false) @ExcelProperty(value = "上级部门") private String parentName; diff --git a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/MessageResp.java b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/MessageResp.java index 5c02028f..0f3b4852 100644 --- a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/MessageResp.java +++ b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/MessageResp.java @@ -16,18 +16,17 @@ package top.charles7c.continew.admin.system.model.resp; +import cn.crane4j.annotation.Assemble; +import cn.crane4j.annotation.Mapping; +import com.fasterxml.jackson.annotation.JsonIgnore; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import top.charles7c.continew.admin.common.enums.MessageTypeEnum; + import java.io.Serial; import java.io.Serializable; import java.time.LocalDateTime; -import lombok.Data; - -import io.swagger.v3.oas.annotations.media.Schema; - -import com.fasterxml.jackson.annotation.JsonIgnore; - -import top.charles7c.continew.admin.common.enums.MessageTypeEnum; - /** * 消息信息 * @@ -81,6 +80,7 @@ public class MessageResp implements Serializable { * 创建人 */ @JsonIgnore + @Assemble(container = "userNickname", props = @Mapping(ref = "createUserString")) private Long createUser; /** diff --git a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/UserDetailResp.java b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/UserDetailResp.java index 68a5dc03..8c6a0f56 100644 --- a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/UserDetailResp.java +++ b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/UserDetailResp.java @@ -16,24 +16,25 @@ package top.charles7c.continew.admin.system.model.resp; +import cn.crane4j.annotation.AssembleMethod; +import cn.crane4j.annotation.ContainerMethod; +import cn.crane4j.annotation.Mapping; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import top.charles7c.continew.admin.common.enums.DisEnableStatusEnum; +import top.charles7c.continew.admin.common.enums.GenderEnum; +import top.charles7c.continew.admin.common.util.helper.LoginHelper; +import top.charles7c.continew.admin.system.service.DeptService; +import top.charles7c.continew.starter.extension.crud.base.BaseDetailResp; +import top.charles7c.continew.starter.extension.crud.converter.ExcelBaseEnumConverter; + import java.io.Serial; import java.time.LocalDateTime; import java.util.List; import java.util.Objects; -import lombok.Data; - -import io.swagger.v3.oas.annotations.media.Schema; - -import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; -import com.alibaba.excel.annotation.ExcelProperty; - -import top.charles7c.continew.starter.extension.crud.converter.ExcelBaseEnumConverter; -import top.charles7c.continew.admin.common.enums.DisEnableStatusEnum; -import top.charles7c.continew.admin.common.enums.GenderEnum; -import top.charles7c.continew.admin.common.util.helper.LoginHelper; -import top.charles7c.continew.starter.extension.crud.base.BaseDetailResp; - /** * 用户详情信息 * @@ -121,6 +122,7 @@ public class UserDetailResp extends BaseDetailResp { * 部门 ID */ @Schema(description = "部门 ID", example = "5") + @AssembleMethod(targetType = DeptService.class, method = @ContainerMethod(bindMethod = "get", resultType = DeptDetailResp.class), props = @Mapping(src = "name", ref = "deptName")) private Long deptId; /** diff --git a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/DeptServiceImpl.java b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/DeptServiceImpl.java index 227a7bcd..c426da9c 100644 --- a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/DeptServiceImpl.java +++ b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/DeptServiceImpl.java @@ -22,7 +22,6 @@ import jakarta.annotation.Resource; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import top.charles7c.continew.admin.common.constant.SysConstants; import top.charles7c.continew.admin.common.enums.DisEnableStatusEnum; import top.charles7c.continew.admin.system.mapper.DeptMapper; import top.charles7c.continew.admin.system.model.entity.DeptDO; @@ -33,13 +32,11 @@ import top.charles7c.continew.admin.system.model.resp.DeptResp; import top.charles7c.continew.admin.system.service.DeptService; import top.charles7c.continew.admin.system.service.RoleDeptService; import top.charles7c.continew.admin.system.service.UserService; -import top.charles7c.continew.starter.core.util.ExceptionUtils; import top.charles7c.continew.starter.core.util.validate.CheckUtils; import top.charles7c.continew.starter.extension.crud.base.BaseServiceImpl; import java.util.ArrayList; import java.util.List; -import java.util.Objects; import java.util.Optional; /** @@ -121,17 +118,6 @@ public class DeptServiceImpl extends BaseServiceImpl this.get(detail.getParentId()).getName())); - } - } - /** * 名称是否存在 * diff --git a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/MessageServiceImpl.java b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/MessageServiceImpl.java index d31d6636..0174c63c 100644 --- a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/MessageServiceImpl.java +++ b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/MessageServiceImpl.java @@ -16,20 +16,14 @@ package top.charles7c.continew.admin.system.service.impl; -import java.util.List; - -import lombok.RequiredArgsConstructor; - -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; - +import cn.crane4j.annotation.AutoOperate; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; -import cn.hutool.extra.spring.SpringUtil; - +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import top.charles7c.continew.admin.system.mapper.MessageMapper; import top.charles7c.continew.admin.system.model.entity.MessageDO; import top.charles7c.continew.admin.system.model.query.MessageQuery; @@ -37,13 +31,13 @@ import top.charles7c.continew.admin.system.model.req.MessageReq; import top.charles7c.continew.admin.system.model.resp.MessageResp; import top.charles7c.continew.admin.system.service.MessageService; import top.charles7c.continew.admin.system.service.MessageUserService; -import top.charles7c.continew.starter.core.util.ExceptionUtils; import top.charles7c.continew.starter.core.util.validate.CheckUtils; import top.charles7c.continew.starter.data.mybatis.plus.query.QueryHelper; -import top.charles7c.continew.starter.extension.crud.base.CommonUserService; import top.charles7c.continew.starter.extension.crud.model.query.PageQuery; import top.charles7c.continew.starter.extension.crud.model.resp.PageResp; +import java.util.List; + /** * 消息业务实现 * @@ -58,12 +52,12 @@ public class MessageServiceImpl implements MessageService { private final MessageUserService messageUserService; @Override + @AutoOperate(type = MessageResp.class, on = "list") public PageResp page(MessageQuery query, PageQuery pageQuery) { QueryWrapper queryWrapper = QueryHelper.build(query); queryWrapper.apply(null != query.getUserId(), "t2.user_id={0}", query.getUserId()) .apply(null != query.getIsRead(), "t2.is_read={0}", query.getIsRead()); IPage page = baseMapper.selectPageByUserId(pageQuery.toPage(), queryWrapper); - page.getRecords().forEach(this::fill); return PageResp.build(page); } @@ -82,18 +76,4 @@ public class MessageServiceImpl implements MessageService { baseMapper.deleteBatchIds(ids); messageUserService.deleteByMessageIds(ids); } - - /** - * 填充数据 - * - * @param message 待填充信息 - */ - private void fill(MessageResp message) { - Long createUser = message.getCreateUser(); - if (null == createUser) { - return; - } - CommonUserService userService = SpringUtil.getBean(CommonUserService.class); - message.setCreateUserString(ExceptionUtils.exToNull(() -> userService.getNicknameById(createUser))); - } } \ No newline at end of file diff --git a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/UserServiceImpl.java b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/UserServiceImpl.java index 090ded23..2469b489 100644 --- a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/UserServiceImpl.java +++ b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/UserServiceImpl.java @@ -24,7 +24,6 @@ import com.alicp.jetcache.anno.CacheInvalidate; import com.alicp.jetcache.anno.CacheType; import com.alicp.jetcache.anno.CacheUpdate; import com.alicp.jetcache.anno.Cached; -import jakarta.annotation.Resource; import lombok.RequiredArgsConstructor; import org.dromara.x.file.storage.core.FileInfo; import org.dromara.x.file.storage.core.FileStorageService; @@ -45,9 +44,11 @@ import top.charles7c.continew.admin.system.model.req.UserReq; import top.charles7c.continew.admin.system.model.req.UserRoleUpdateReq; import top.charles7c.continew.admin.system.model.resp.UserDetailResp; import top.charles7c.continew.admin.system.model.resp.UserResp; -import top.charles7c.continew.admin.system.service.*; +import top.charles7c.continew.admin.system.service.FileService; +import top.charles7c.continew.admin.system.service.RoleService; +import top.charles7c.continew.admin.system.service.UserRoleService; +import top.charles7c.continew.admin.system.service.UserService; import top.charles7c.continew.starter.core.constant.StringConstants; -import top.charles7c.continew.starter.core.util.ExceptionUtils; import top.charles7c.continew.starter.core.util.validate.CheckUtils; import top.charles7c.continew.starter.extension.crud.base.BaseServiceImpl; import top.charles7c.continew.starter.extension.crud.base.CommonUserService; @@ -67,8 +68,6 @@ import java.util.Optional; @RequiredArgsConstructor public class UserServiceImpl extends BaseServiceImpl implements UserService, CommonUserService { - @Resource - private DeptService deptService; private final RoleService roleService; private final UserRoleService userRoleService; private final FileService fileService; @@ -152,7 +151,6 @@ public class UserServiceImpl extends BaseServiceImpl deptService.get(detail.getDeptId()).getName())); List roleIdList = userRoleService.listRoleIdByUserId(detail.getId()); detail.setRoleIds(roleIdList); detail.setRoleNames(String.join(StringConstants.CHINESE_COMMA, roleService.listNameByIds(roleIdList)));