@Resource DockingAccount dockingAccount。 公共 <T> のボイド convertVOName(リスト<T> のリスト、文字列getIdFile、文字列setNameFile){ 場合(CollectionUtil.isNotEmpty(リスト)){ 文字列getIdFileStr = "GET" + getIdFile。 文字列setNameFileStrは = + "設定" setNameFile。 リストの<string> IDS = list.stream()マップ(P - >。ReflectUtil.invoke(P、getIdFileStr).toString())の別個の()を収集(Collectors.toList())。 もし(CollectionUtil.isNotEmpty(IDS)){ DockingResult <リスト<UserBasicInfo >>dockingAccount.getUserBasicInfoByBatch(IDS)。 もし(userListDockingResult.isSuccess()&& CollectionUtil.isNotEmpty(userListDockingResult.getBody())){ list.forEach((P) - > { オプション。<UserBasicInfo> userBasicInfoOptional = userListDockingResult.getBody()ストリーム()(Xをフィルタ- > x.getId()に等しい(ReflectUtil.invoke(P、getIdFileStr).toString()))関数は、FindFirst。。(); 場合(userBasicInfoOptional.isPresent()){ ReflectUtil.invoke(P、setNameFileStr、userBasicInfoOptional.get() .getName()); } })。 } } } }