48 lines
1.3 KiB
Java
48 lines
1.3 KiB
Java
package com.youlai.boot.app.converter;
|
|
|
|
import com.youlai.boot.app.model.entity.AppUser;
|
|
import com.youlai.boot.app.model.form.AppUserForm;
|
|
import com.youlai.boot.common.model.Option;
|
|
import com.youlai.boot.system.model.entity.SysUser;
|
|
import com.youlai.boot.system.model.form.UserImportForm;
|
|
import com.youlai.boot.system.model.form.UserProfileForm;
|
|
import com.youlai.boot.system.model.vo.CurrentUserVO;
|
|
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 AppUserConverter {
|
|
|
|
AppUserForm toForm(AppUser entity);
|
|
|
|
@InheritInverseConfiguration(name = "toForm")
|
|
AppUser toEntity(AppUserForm entity);
|
|
|
|
@Mappings({
|
|
@Mapping(target = "userId", source = "id")
|
|
})
|
|
CurrentUserVO toCurrentUserVo(AppUser entity);
|
|
|
|
AppUser toEntity(UserImportForm vo);
|
|
|
|
AppUser toEntity(UserProfileForm formData);
|
|
|
|
@Mappings({
|
|
@Mapping(target = "label", source = "nickname"),
|
|
@Mapping(target = "value", source = "id")
|
|
})
|
|
Option<String> toOption(AppUser entity);
|
|
|
|
List<Option<String>> toOptions(List<AppUser> list);
|
|
}
|