我有一个引用实体优先级的实体问题。我希望在我的 OpenXava 模块的列表模式中,根据优先级的值,为每一行提供不同的颜色和视觉样式。
这是我的问题实体的代码:
package com.yourcompany.tracker.model;
import java.time.*;
import javax.persistence.*;
import org.openxava.annotations.*;
import org.openxava.calculators.*;
import org.openxava.model.*;
import lombok.*;
@Entity @Getter @Setter
public class Issue extends Identifiable {
@Column(length=100) @Required
String title;
@Stereotype("SIMPLE_HTML_TEXT")
String description;
@ReadOnly
@DefaultValueCalculator(CurrentLocalDateCalculator.class)
LocalDate createdOn;
@ManyToOne(fetch=FetchType.LAZY, optional=true)
@DescriptionsList
Priority priority;
}
这是优先级:
package com.yourcompany.tracker.model;
import javax.persistence.*;
import javax.validation.constraints.*;
import org.openxava.annotations.*;
import lombok.*;
@Entity @Getter @Setter
public class Priority {
@Id @Max(9)
int level;
@Column(length=40) @Required
String description;
}
这是我想要达到的效果:
请注意,低优先级的行是灰色的,高优先级的行是粗体的。
我知道有一个@RowStyle 注释,但似乎它是针对简单属性的。如何根据引用 (@ManyToOne) 值为每一行定义不同的样式?