Files
youlai-boot/src/main/java/com/youlai/boot/system/converter/UserConverter.java
Ray.Hao 9cd3ff88f8 refactor: 重构目录结构统一规范
- shared/ → common/(constant、enums、model)
- framework/cache/config/ → framework/cache/(扁平化)
- framework/integration/captcha/ → framework/captcha/
- config/property/ → 各模块 config/ 下
- interfaces/ → module/(sse、mail、sms)
- 移除冗余枚举 LogModuleEnum
2026-03-28 09:00:35 +08:00

48 lines
1.3 KiB
Java

package com.youlai.boot.system.converter;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.youlai.boot.common.model.Option;
import com.youlai.boot.system.model.entity.SysUser;
import com.youlai.boot.system.model.vo.CurrentUserVO;
import com.youlai.boot.system.model.form.UserForm;
import com.youlai.boot.system.model.form.UserImportForm;
import com.youlai.boot.system.model.form.UserProfileForm;
import org.mapstruct.InheritInverseConfiguration;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.Mappings;
import java.util.List;
/**
* 用户对象转换器
*
* @author Ray.Hao
* @since 2022/6/8
*/
@Mapper(componentModel = "spring")
public interface UserConverter {
UserForm toForm(SysUser entity);
@InheritInverseConfiguration(name = "toForm")
SysUser toEntity(UserForm entity);
@Mappings({
@Mapping(target = "userId", source = "id")
})
CurrentUserVO toCurrentUserVo(SysUser entity);
SysUser toEntity(UserImportForm vo);
SysUser toEntity(UserProfileForm formData);
@Mappings({
@Mapping(target = "label", source = "nickname"),
@Mapping(target = "value", source = "id")
})
Option<String> toOption(SysUser entity);
List<Option<String>> toOptions(List<SysUser> list);
}