常规功能和模块自定义系统 (cfcmms)—017自定义grid方案(1)
在定义好了模块和字段这二个最基本的系统元素之后,就可以开始其他功能的加入了。最先想到的功能应该就是grid了。
grid对应于某个模块。由于模块字段有很多,一个模块只有一个grid方案并不能满足需求,因此一个模块需要多grid方案。每个grid方案中可以分别放置不同的字段,最为普通的可以建立二个grid方案,一个方案里面放置模块的重要信息,还有一个方案放置所有模块的信息。
对于每一个grid方案来说,又可以分为若干个字段组,每个组下有若干个字段。因此一个自定义grid方案需要有三个表来保存信息:grid方案表、grid 字段分组、字段分组下的字段。具体层次见下图:
列表方案的表名为 _ModuleGridScheme ,其java bean定义为:
@TableDefine(group = "系统模块", id = 9904, title = "模块列表方案", shortName = "列表方案")
public class _ModuleGridScheme implements _IModuleControlInterface, Serializable {
@Id
@GeneratedValue(generator = "increment")
@GenericGenerator(name = "increment", strategy = "increment")
@FieldDefine(title = "ID号", number = 10, hidden = true)
private Integer tf_gridSchemeId;
@JsonIgnore
@ManyToOne(cascade = CascadeType.REFRESH, fetch = FetchType.LAZY)
@JoinColumn(name = "tf_moduleId", nullable = false)
@FieldDefine(title = "模块", number = 20)
private _Module tf