guava 应用

/**
* 通过 Optional 对可以对泛型转换
* 并通过 BeanCopier 进行 bean copy
* @see [copy bean]
* @param paramVO
* @param userInfo
*/
private void copyBean(Optional<? extends ScBaseParm> paramVO, UserInfo userInfo) {
BeanCopier copier = BeanCopier.create(paramVO.get().getClass(), userInfo.getClass(), false);
copier.copy(paramVO.get(), userInfo, null);
}


/**
* 去除重复数据
* @param userInfos
* @return
*/
public static Collection<UserInfo> doDuplicateData(List<UserInfo> userInfos) {
return Collections2.filter(userInfos,new Predicate<UserInfo>(){
@Override
public boolean apply(UserInfo input) {
return Optional.fromNullable(input.getRegistrationId()).isPresent();
}});
}


/**
* 返回满足条件的设备id
* @param userInfo
* @param tempRegistrationIds
* @return
*/
public static List<String> getConditionRegId(final UserInfo userInfo, Collection<UserInfo> tempRegistrationIds) {
List<String> registrationIds = FluentIterable.from(tempRegistrationIds).filter(new Predicate<UserInfo>(){
@Override
public boolean apply(UserInfo input) {
return StringUtils.equals(userInfo.getSysOrgCode(), input.getSysOrgCode());
}}).transform(new Function<UserInfo,String>(){
@Override
public String apply(UserInfo input) {
return input.getRegistrationId();
}}).toList();
return registrationIds;
}

package com.buss.loan.push.vo;

import java.util.List;

public class UserInfo {

// 用户名
private String userName;
// 用户角色
private String userKey;
// 设备id
private String registrationId;
// 相关设备id
private List<String> registrationIds;
// 机构码
private String sysOrgCode;
// 机构下的所有合同号
private String contractSns;
//------------- 首创
// 合同号
private String contractSn;
// 投资金额
private String amount;
// 还款期数
private String paidAmount;
// 已还本金
private String paidPrincipal;
// 已还利息
private String paidInterest;
// 还款期数
private String periods;
// 项目id
private String projectId;
// 融资人id
private String financierId;
// 担保人id
private String guaranteeId;
// 申请单编号
private String projectKey;
// 订单id
private String orderId;
// 原还款日期
private String oldRepayDate;
// 新还款日期
private String newRepayDate;
// 应还利息
private String repaymentAmount;
------ getter setter ------

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值