springboot:动态给父对象添加属性和值

   对象列表相对于调用者显示不同的标记(Tag),当然也可以在父类当中添加属性,再动态赋值。

  但对在用的系统,为了某个应用添加一堆没大用的空列我本人不爽,就直接做了个子类继承父类,增加两个标记属性。

@EqualsAndHashCode(callSuper = true)
@Data
@AllArgsConstructor
@NoArgsConstructor
public class UserTag extends Userinfo {

    /**
     * 左右接点状态
     */
    private int isFull;

    /**
     * 是否完成众筹
     */
    /**/
    private int isGive;

}

  应用时,动态拷贝父对象,set动态标记:

 for (Integer integer : teamId) {
            user = userMapper.selectById(integer);
            UserTag userTag = new UserTag();
            BeanUtils.copyProperties(user, userTag);
            int amount=0;  //左右边是否有人
            if (user.getLeftId()==0){amount++;}
            if(user.getRightId()==0){amount++;}
            userTag.setIsFull(amount);
            QueryWrapper<Goldbag> wrapper=new QueryWrapper<>();
            wrapper.eq("sendFrom",integer)
                    .eq("sendTo",userId)
                    .eq("sendState",3);
            Integer isGive = goldMapper.selectCount(wrapper);//红包是否发过
            userTag.setIsGive(isGive);
            layerTeam.add(userTag);
        }

重点是工具:

BeanUtils.copyProperties(父类对象, 子类对象)

就是这样。

posted @ 2021-09-25 01:17  风肖肖(肖遥)  阅读(516)  评论(0编辑  收藏  举报