package org.yeshi.utils.generater.entity.admin;
|
|
import org.yeshi.utils.generater.annotation.admin.AdminController;
|
import org.yeshi.utils.generater.util.AnotationUtil;
|
|
import java.lang.annotation.Annotation;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* @author Administrator
|
* @title: AdminGeneraterInfo
|
* @description: TODO
|
* @date 2021/9/24 11:03
|
*/
|
public class AdminGeneraterInfo {
|
|
//entity类
|
private Class entity;
|
//controller注解对象
|
private AdminController controllerData;
|
//修改的表单行数据
|
private List<FormRowData> updateFormRows;
|
//添加的表单行数据
|
private List<FormRowData> addFormRows;
|
//搜索的表单行数据
|
private List<FormRowData> searchFormRows;
|
|
private List<Map<String, Object>> showDataList;
|
|
|
public Class getEntity() {
|
return entity;
|
}
|
|
public void setEntity(Class entity) {
|
this.entity = entity;
|
}
|
|
public AdminController getControllerData() {
|
return controllerData;
|
}
|
|
public void setControllerData(AdminController controllerData) {
|
this.controllerData = controllerData;
|
}
|
|
public List<FormRowData> getUpdateFormRows() {
|
return updateFormRows;
|
}
|
|
public void setUpdateFormRows(List<FormRowData> updateFormRows) {
|
this.updateFormRows = updateFormRows;
|
}
|
|
public List<FormRowData> getAddFormRows() {
|
return addFormRows;
|
}
|
|
public void setAddFormRows(List<FormRowData> addFormRows) {
|
this.addFormRows = addFormRows;
|
}
|
|
public List<FormRowData> getSearchFormRows() {
|
return searchFormRows;
|
}
|
|
public void setSearchFormRows(List<FormRowData> searchFormRows) {
|
this.searchFormRows = searchFormRows;
|
}
|
|
public List<Map<String, Object>> getShowDataList() {
|
return showDataList;
|
}
|
|
public void setShowDataList(List<Map<String, Object>> showDataList) {
|
this.showDataList = showDataList;
|
}
|
|
|
public static class Builder {
|
|
private Class entity;
|
|
public Builder setEntityClass(Class clazz) {
|
this.entity = clazz;
|
return this;
|
}
|
|
public AdminGeneraterInfo build() throws Exception {
|
if (entity == null) {
|
throw new Exception("尚未设置entity");
|
}
|
//查询是否需要生成管理界面与controller
|
Annotation[] ans = entity.getAnnotations();
|
for (Annotation an : ans) {
|
if (an instanceof AdminController) {
|
Class searchFormClass = ((AdminController) an).searchForm();
|
AdminGeneraterInfo info = new AdminGeneraterInfo();
|
info.setControllerData((AdminController) an);
|
info.setSearchFormRows(AnotationUtil.getFormRowData(searchFormClass));
|
info.setAddFormRows(AnotationUtil.getFormRowData(entity));
|
info.setUpdateFormRows(AnotationUtil.getUpdateFormRowData(entity));
|
info.setShowDataList(AnotationUtil.getShowDataList(entity));
|
return info;
|
}
|
}
|
return null;
|
}
|
|
}
|
|
|
}
|