package com.rainbus.dlp.entity.converter; import com.rainbus.dlp.entity.dto.user.CustomUserDetails; import com.rainbus.dlp.entity.dto.user.TokenClaims; import com.rainbus.dlp.entity.pojo.user.SysUser; import com.rainbus.dlp.entity.req.user.RegisterReq; import org.mapstruct.InheritInverseConfiguration; import org.mapstruct.Mapper; import org.mapstruct.Mapping; @Mapper(componentModel = "spring") public interface UserConv { @InheritInverseConfiguration SysUser RegisterReq2Pojo(RegisterReq req, String password); @Mapping(target = "roles", expression = "java(user.getRoles().stream().map(com.rainbus.dlp.entity.pojo.user.SysRole::getRole).toList())") TokenClaims ClaimsPojo2Dto(SysUser user); @Mapping(target = "authorities", ignore = true) @Mapping(target = "roles", expression = "java(user.getRoles().stream().map(com.rainbus.dlp.entity.pojo.user.SysRole::getRole).toList())") CustomUserDetails UserPojo2UserDetails(SysUser user); }