0

课堂游戏:

@Data
@NoArgsConstructor
@AllArgsConstructor
@Entity
@Table(name = "game")
public class Game {

@id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id_game", nullable = false)
private Long id;

@Column(nullable = false)
private String description;

@Column(name = "ad_enable", nullable = false)
private boolean enable;

@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "file_id", nullable = false)
private File file;

@ManyToOne
@JoinColumn(name = "section_id", nullable = false)
private Section section;

@Transient
@JsonSerialize
private Long rating;

@OneToMany(fetch = FetchType.LAZY, mappedBy = "game",
cascade = CascadeType.ALL, orphanRemoval = true)
private Set<Rating> ratings;


}

班级评价:

@Data
@Entity
@ToString(exclude = { "user" })
@EqualsAndHashCode(exclude = { "user" })
@Table(name = "rating")
public class Rating {

@id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id_rating", nullable = false)
private Long id;

@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd")
@BASIC
@Column(name = "create_date")
private Date createRating;

@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "user_id", nullable = false)
private UserBasic user;

@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "game_id")
private Game game;


@BASIC
private Long value;

}

类 GameRestImpl:

protected List preprocess(Main main, Iterable list) { List items = new ArrayList (); 整数测试;尝试 { for (Game item: list) { item.setRating(item.getRatings().stream().reduce((acc, r) - > acc + r.getValue())); 项目。添加(项目);} } catch (SvcException e) { log.error(e); } 退换货品; } protected Object preprocess(Main principal, Game item) { try { item.setRating(item.getRatings()) .stream() .filter() .reduce((acc, r) - > acc + r.getValue()) ); } catch (SvcException e) { log.error(e); } 归还物品; }

我不知道如何将流中收集的值传递给动态属性,因为我得到了错误:

运算符 + 未定义参数类型 Rating, Long

4

0 回答 0