package cn.iocoder.yudao.module.crm.framework.operatelog.core; import cn.hutool.core.util.StrUtil; import cn.iocoder.yudao.module.system.api.user.AdminUserApi; import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; import com.mzt.logapi.service.IParseFunction; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; /** * 管理员名字的 {@link IParseFunction} 实现类 * * @author HUIHUI */ @Slf4j @Component public class SysAdminUserParseFunction implements IParseFunction { public static final String NAME = "getAdminUserById"; @Resource private AdminUserApi adminUserApi; @Override public String functionName() { return NAME; } @Override public String apply(Object value) { if (StrUtil.isEmptyIfStr(value)) { return ""; } // 获取用户信息 AdminUserRespDTO user = adminUserApi.getUser(Long.parseLong(value.toString())); if (user == null) { log.warn("[apply][获取用户{{}}为空", value); return ""; } // 返回格式 芋道源码(13888888888) String nickname = user.getNickname(); if (StrUtil.isEmpty(user.getMobile())) { return nickname; } return StrUtil.format("{}({})", nickname, user.getMobile()); } }