From d29fa5e060b2820058873e239a033fd429c5a529 Mon Sep 17 00:00:00 2001 From: zhenggm Date: Wed, 23 Mar 2022 16:31:22 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../smtweb/framework/core/cache/AbstractCache.java | 8 +- .../cc/smtweb/framework/core/common/SwConsts.java | 8 +- .../cc/smtweb/framework/core/common/SwEnum.java | 62 +++++++++ .../cc/smtweb/framework/core/db/EntityDao.java | 12 +- .../framework/core/db/config/DesignConfig.java | 14 +- .../framework/core/db/dao/AbstractEntityDao.java | 20 +-- .../framework/core/db/impl/DefaultEntity.java | 8 +- .../smtweb/framework/core/db/vo/ModelCatalog.java | 88 +++++++++++++ .../cc/smtweb/framework/core/db/vo/ModelField.java | 5 +- .../smtweb/framework/core/db/vo/ModelProject.java | 88 +++++++++++++ .../cc/smtweb/framework/core/db/vo/ModelTable.java | 18 ++- .../smtweb/framework/core/db/vo/def/DataType.java | 33 ----- .../smtweb/framework/core/db/vo/def/FieldType.java | 24 ---- .../smtweb/framework/core/db/vo/def/TableType.java | 14 -- .../core/mvc/service/DefaultComboHandler.java | 10 +- .../core/mvc/service/DefaultListHandler.java | 4 +- .../core/mvc/service/DefaultSaveHandler.java | 10 +- .../framework/core/mvc/service/TreeHelper.java | 11 +- .../bpm/web/design/catalog/ModelCatalog.java | 88 ------------- .../web/design/catalog/ModelCatalogService.java | 32 ----- .../design/catalog/ModelCatalogTreeHandler.java | 142 --------------------- .../bpm/web/design/project/ModelProject.java | 88 ------------- .../web/design/project/ModelProjectService.java | 30 ----- .../bpm/web/design/table/ModelCatalogService.java | 29 +++++ .../web/design/table/ModelCatalogTreeHandler.java | 140 ++++++++++++++++++++ .../bpm/web/design/table/ModelDatabaseService.java | 3 +- .../bpm/web/design/table/ModelProjectService.java | 31 +++++ .../bpm/web/design/table/ModelTableService.java | 3 +- .../bpm/web/task/service/BpmTaskCardService.java | 8 +- 29 files changed, 501 insertions(+), 530 deletions(-) create mode 100644 smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelCatalog.java create mode 100644 smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelProject.java delete mode 100644 smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/def/DataType.java delete mode 100644 smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/def/FieldType.java delete mode 100644 smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/def/TableType.java delete mode 100644 smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/catalog/ModelCatalog.java delete mode 100644 smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/catalog/ModelCatalogService.java delete mode 100644 smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/catalog/ModelCatalogTreeHandler.java delete mode 100644 smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/project/ModelProject.java delete mode 100644 smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/project/ModelProjectService.java create mode 100644 smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelCatalogService.java create mode 100644 smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelCatalogTreeHandler.java create mode 100644 smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelProjectService.java diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/cache/AbstractCache.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/cache/AbstractCache.java index 6ba04c9..73b4328 100644 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/cache/AbstractCache.java +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/cache/AbstractCache.java @@ -1,6 +1,7 @@ package cc.smtweb.framework.core.cache; import cc.smtweb.framework.core.annotation.SwCache; +import cc.smtweb.framework.core.common.SwConsts; import cc.smtweb.framework.core.redis.RedisBroadcastEvent; import cc.smtweb.framework.core.redis.RedisManager; import cc.smtweb.framework.core.util.CommUtil; @@ -30,7 +31,6 @@ public abstract class AbstractCache implements ISwCache< protected final static int LS_LOADING = 1; protected final static int LS_LOADED = 2; - private final static String SPLIT_CHAR = "-"; //唯一标识 protected String ident; //展示名称 @@ -278,7 +278,7 @@ public abstract class AbstractCache implements ISwCache< //本地调用,删除一个对象时,更新列表缓存 private void doRemoveList(String regionKey, String key, T value) { if (StringUtils.isEmpty(key)) return; - Set list = mapListLocal.get(regionKey + SPLIT_CHAR + key); + Set list = mapListLocal.get(regionKey + SwConsts.SPLIT_CHAR + key); if (list == null) { return; } @@ -297,7 +297,7 @@ public abstract class AbstractCache implements ISwCache< //本地调用,更新列表缓存 private void doUpdateList(String regionKey, String key, T value) { if (StringUtils.isEmpty(key)) return; - Set list = mapListLocal.computeIfAbsent(regionKey + SPLIT_CHAR + key, k -> new LinkedHashSet<>()); + Set list = mapListLocal.computeIfAbsent(regionKey + SwConsts.SPLIT_CHAR + key, k -> new LinkedHashSet<>()); list.add(value); } @@ -361,7 +361,7 @@ public abstract class AbstractCache implements ISwCache< } public final Set getListByKey(String rk, String key) { - return mapListLocal.get(rk + SPLIT_CHAR + key); + return mapListLocal.get(rk + SwConsts.SPLIT_CHAR + key); } /** diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/common/SwConsts.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/common/SwConsts.java index cdd0f69..f18fa94 100644 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/common/SwConsts.java +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/common/SwConsts.java @@ -1,10 +1,14 @@ package cc.smtweb.framework.core.common; +import lombok.Data; + /** * Created by Akmm at 2022/3/23 9:46 */ public interface SwConsts { - - //树节点按parent的key + //缓存中:树节点按parent的key String KEY_PARENT_ID = "pr"; + //级次码、字符串连接符 + String SPLIT_CHAR = "-"; + } diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/common/SwEnum.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/common/SwEnum.java index 3d54bbc..7331cae 100644 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/common/SwEnum.java +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/common/SwEnum.java @@ -1,9 +1,71 @@ package cc.smtweb.framework.core.common; +import lombok.Data; + /** * Created by Akmm at 2022/3/23 9:39 * 系统的一些枚举变量 */ public interface SwEnum { + /** + * Created by Akmm at 2022/2/9 10:01 + * 字段业务类别 + */ + class FieldType extends IntEnum{ + public static FieldType instance = new FieldType(); + + public static IntEnumBean ID = instance.addEnum(0, "主键"); + public static IntEnumBean PARENT_ID = instance.addEnum(1, "父ID"); + public static IntEnumBean LEVEL_CODE = instance.addEnum(2, "级次码"); + public static IntEnumBean ORDER = instance.addEnum(3, "排序字段"); + public static IntEnumBean CODE = instance.addEnum(4, "编码字段"); + public static IntEnumBean NAME = instance.addEnum(5, "名称字段"); + public static IntEnumBean CREATE_TIME = instance.addEnum(6, "创建时间"); + public static IntEnumBean LAST_TIME = instance.addEnum(7, "更新时间"); + } + + /** + * 数据类型定义,参见design_db.yaml配置 + */ + @Data + class DataType { + /*{type: "id", name: "ID", sql-type: "bigint", java-type: "long", widget: "fz-field-long", defaultValue: "0"} + - {type: "code", name: "编码", sql-type: "varchar", java-type: "string", data-length: 32, widget: "fz-field-string", defaultValue: ""} + - {type: "name", name: "名字", sql-type: "varchar", java-type: "string", data-length: 100, widget: "fz-field-string", defaultValue: ""} + - {type: "remark", name: "备注", sql-type: "varchar", data-length: 255, java-type: "string", widget: "fz-field-string", defaultValue: ""} + - {type: "text", name: "大文本", sql-type: "text", java-type: "string", widget: "fz-field-string", defaultValue: ""} + - {type: "currency", name: "货币", sql-type: "bigint", java-type: "long", widget: "fz-field-long", defaultValue: "0"} + - {type: "datetime", name: "时间日期", sql-type: "bigint", java-type: "long", widget: "fz-field-datetime", defaultValue: "0"} + - {type: "date", name: "日期", sql-type: "int", java-type: "int", widget: "fz-field-date", defaultValue: "0"} + - {type: "time", name: "时间", sql-type: "int", java-type: "int", widget: "fz-field-time", defaultValue: "0"} + - {type: "int", name: "整型", sql-type: "int", java-type: "int", widget: "fz-field-int", defaultValue: "0"} + - {type: "smallint", name: "短整型", sql-type: "smallint", java-type: "short", widget: "fz-field-int", defaultValue: "0"} + - {type: "bool", name: "布尔型", sql-type: "tinyint", java-type: "boolean", widget: "fz-field-bool", defaultValue: "0"}*/ + public static final String TYPE_STR = "varchar"; + public static final String TYPE_BOOL = "bool"; + public static final String TYPE_DATETIME = "datetime"; + public static final String TYPE_DATE = "date"; + + private String type; + private String name; + private String sqlType; + private int dataLength; + private String javaType; + private String defaultValue; + } + + /** + * 表类型 + */ + class TableType extends IntEnum { + public static TableType instance = new TableType(); + + public static AbstractEnum.IntEnumBean TYPE_GENERAL = instance.addEnum(0, "普通表"); + public static AbstractEnum.IntEnumBean TYPE_TREE = instance.addEnum(1, "树型表"); + public static AbstractEnum.IntEnumBean TYPE_CODE = instance.addEnum(2, "编码表"); + public static AbstractEnum.IntEnumBean TYPE_ABSTACT = instance.addEnum(3, "虚拟抽象表"); + public static AbstractEnum.IntEnumBean TYPE_VIEW = instance.addEnum(4, "视图"); + + } } diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/EntityDao.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/EntityDao.java index 9e38fce..8faf39f 100644 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/EntityDao.java +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/EntityDao.java @@ -1,21 +1,15 @@ package cc.smtweb.framework.core.db; import cc.smtweb.framework.core.SwException; +import cc.smtweb.framework.core.common.SwEnum; import cc.smtweb.framework.core.db.dao.AbstractEntityDao; import cc.smtweb.framework.core.db.dao.EntityColumn; import cc.smtweb.framework.core.db.jdbc.JdbcEngine; -import cc.smtweb.framework.core.db.vo.KeyValueVO; import cc.smtweb.framework.core.db.vo.ModelField; -import cc.smtweb.framework.core.db.vo.def.FieldType; import cc.smtweb.framework.core.util.CommUtil; import lombok.Getter; import org.apache.commons.lang3.StringUtils; -import org.springframework.dao.DataAccessException; -import org.springframework.jdbc.core.ResultSetExtractor; -import org.springframework.jdbc.core.RowMapper; -import java.sql.ResultSet; -import java.sql.SQLException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -147,7 +141,7 @@ public class EntityDao extends AbstractEntityDao { sql.append("insert into ").append(tableName).append("("); - List listFields = adjustFields(fields, FieldType.CREATE_TIME, FieldType.LAST_TIME); + List listFields = adjustFields(fields, SwEnum.FieldType.CREATE_TIME.value, SwEnum.FieldType.LAST_TIME.value); List insertColumns = new ArrayList<>(this.columns.size()); if (listFields == null) { @@ -262,7 +256,7 @@ public class EntityDao extends AbstractEntityDao { */ public Map queryNames(List ids) { if (ids == null || ids.isEmpty()) return new HashMap<>(); - ModelField field = modelTable.findFieldByType(FieldType.NAME); + ModelField field = modelTable.findFieldByType(SwEnum.FieldType.NAME.value); if (field == null) return new HashMap<>(); StringBuilder sb = new StringBuilder(); diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/config/DesignConfig.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/config/DesignConfig.java index 766e726..fe5185c 100644 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/config/DesignConfig.java +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/config/DesignConfig.java @@ -1,6 +1,6 @@ package cc.smtweb.framework.core.db.config; -import cc.smtweb.framework.core.db.vo.def.DataType; +import cc.smtweb.framework.core.common.SwEnum; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.PropertySource; import org.springframework.stereotype.Component; @@ -14,16 +14,16 @@ import java.util.Map; @PropertySource(value = "classpath:config/design_db.yaml", factory = YamlPropertyLoaderFactory.class) @ConfigurationProperties(prefix = "design") public class DesignConfig { - private List dataTypes; + private List dataTypes; - private Map mapType = null; + private Map mapType = null; private void adjustMap() { if (mapType == null) { synchronized (DesignConfig.class) { if (mapType == null) { - Map map = new HashMap<>(); - for (DataType type : dataTypes) { + Map map = new HashMap<>(); + for (SwEnum.DataType type : dataTypes) { map.put(type.getType(), type); } mapType = map; @@ -32,12 +32,12 @@ public class DesignConfig { } } - public DataType getDataType(String type) { + public SwEnum.DataType getDataType(String type) { adjustMap(); return mapType.get(type); } - public List getDataTypes() { + public List getDataTypes() { return dataTypes; } } diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/dao/AbstractEntityDao.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/dao/AbstractEntityDao.java index 1102a36..bf121c8 100644 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/dao/AbstractEntityDao.java +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/dao/AbstractEntityDao.java @@ -2,10 +2,10 @@ package cc.smtweb.framework.core.db.dao; import cc.smtweb.framework.core.annotation.SwTable; import cc.smtweb.framework.core.cache.CacheManager; +import cc.smtweb.framework.core.common.AbstractEnum; +import cc.smtweb.framework.core.common.SwEnum; import cc.smtweb.framework.core.db.cache.ModelTableCache; -import cc.smtweb.framework.core.db.impl.BaseBean; import cc.smtweb.framework.core.db.impl.DefaultEntity; -import cc.smtweb.framework.core.db.vo.def.FieldType; import cc.smtweb.framework.core.db.vo.ModelField; import cc.smtweb.framework.core.db.vo.ModelTable; import cc.smtweb.framework.core.exception.DbException; @@ -123,7 +123,7 @@ public abstract class AbstractEntityDao { columns.put(field.getName(), beanColumn); } - protected void updateTime(T obj, FieldType type) { + protected void updateTime(T obj, int type) { ModelField field = modelTable.findFieldByType(type); if (field == null) return; EntityColumn col = columns.get(field.getName()); @@ -138,7 +138,7 @@ public abstract class AbstractEntityDao { * @param fields * @return */ - protected List adjustFields(String fields, FieldType... types) { + protected List adjustFields(String fields, int... types) { if (StringUtils.isEmpty(fields)) return null; String[] fieldNames = fields.toLowerCase().split(","); List listFields = new ArrayList<>(fieldNames.length + 2); @@ -150,7 +150,7 @@ public abstract class AbstractEntityDao { for (String name : fieldNames) { EntityColumn column = this.columns.get(name.trim()); for (int i = 0, len = types.length; i < len; i++) { - if (types[i].name().equalsIgnoreCase(column.getField().getFieldType())) { + if (types[i]== column.getField().getFieldType()) { includeTypes[i] = true; } } @@ -175,11 +175,11 @@ public abstract class AbstractEntityDao { */ protected Object[] handleInsert(T obj, StringBuilder sql, String fields) { List result; - List listFields = adjustFields(fields, FieldType.CREATE_TIME, FieldType.LAST_TIME); + List listFields = adjustFields(fields, SwEnum.FieldType.CREATE_TIME.value, SwEnum.FieldType.LAST_TIME.value); sql.append("insert into ").append(tableName).append("("); - updateTime(obj, FieldType.CREATE_TIME); - updateTime(obj, FieldType.LAST_TIME); + updateTime(obj, SwEnum.FieldType.CREATE_TIME.value); + updateTime(obj, SwEnum.FieldType.LAST_TIME.value); if (listFields == null) { result = new ArrayList<>(this.columns.size()); @@ -222,8 +222,8 @@ public abstract class AbstractEntityDao { protected Object[] handleUpdate(T obj, StringBuilder sql, String fields, String whereFields) { EntityColumn idColumn = findIdColumn(); - List listFields = adjustFields(fields, FieldType.LAST_TIME); - updateTime(obj, FieldType.LAST_TIME); + List listFields = adjustFields(fields, SwEnum.FieldType.LAST_TIME.value); + updateTime(obj, SwEnum.FieldType.LAST_TIME.value); sql.append("update ").append(tableName).append(" set "); List result = new ArrayList<>(); diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/impl/DefaultEntity.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/impl/DefaultEntity.java index e8b66b2..6ea2a22 100644 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/impl/DefaultEntity.java +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/impl/DefaultEntity.java @@ -13,16 +13,16 @@ import java.io.Serializable; */ public class DefaultEntity extends BaseBean implements Serializable, Cloneable { //表名 - private String tableName; + private String _def_table_name; public DefaultEntity() {} - public DefaultEntity(String tableName) { - this.tableName = tableName; + public DefaultEntity(String _def_table_name) { + this._def_table_name = _def_table_name; } public ModelTable getModelTable() { - return ModelTableCache.getInstance().getByName(tableName); + return ModelTableCache.getInstance().getByName(_def_table_name); } //根据实体定义,设默认值 diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelCatalog.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelCatalog.java new file mode 100644 index 0000000..c1428a0 --- /dev/null +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelCatalog.java @@ -0,0 +1,88 @@ +package cc.smtweb.framework.core.db.vo; + +import cc.smtweb.framework.core.annotation.SwTable; +import cc.smtweb.framework.core.db.impl.DefaultEntity; + +/** + * Created by Akmm at 2022/3/1 15:35 + */ +@SwTable("ASP_MODEL_CATALOG") +public class ModelCatalog extends DefaultEntity { + public static final String ENTITY_NAME = "ASP_MODEL_CATALOG"; + + public ModelCatalog() { + super(ENTITY_NAME); + } + + public long getId() { + return getLong("mc_id"); + } + + public void setId(long mcId) { + put("mc_id", mcId); + } + + public long getParentId() { + return getLong("mc_parent_id"); + } + + public void setParentId(long mcParentId) { + put("mc_parent_id", mcParentId); + } + + public String getCode() { + return getStr("mc_code"); + } + + public void setCode(String mcCode) { + put("mc_code", mcCode); + } + + public String getName() { + return getStr("mc_name"); + } + + public void setName(String mcName) { + put("mc_name", mcName); + } + + public long getPrjId() { + return getLong("mc_prj_id"); + } + + public void setPrjId(long mcPrjId) { + put("mc_prj_id", mcPrjId); + } + + public long getCreateUid() { + return getLong("mc_create_uid"); + } + + public void setCreateUid(long mcCreateUid) { + put("mc_create_uid", mcCreateUid); + } + + public long getUpdateUid() { + return getLong("mc_update_uid"); + } + + public void setUpdateUid(long mcUpdateUid) { + put("mc_update_uid", mcUpdateUid); + } + + public long getCreateAt() { + return getLong("mc_create_at"); + } + + public void setCreateAt(long mcCreateAt) { + put("mc_create_at", mcCreateAt); + } + + public long getUpdateAt() { + return getLong("mc_update_at"); + } + + public void setUpdateAt(long mcUpdateAt) { + put("mc_update_at", mcUpdateAt); + } +} diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelField.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelField.java index cd0fe35..a95a565 100644 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelField.java +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelField.java @@ -1,11 +1,8 @@ package cc.smtweb.framework.core.db.vo; -import cc.smtweb.framework.core.db.vo.def.DataType; import com.fasterxml.jackson.annotation.JsonProperty; import lombok.Data; -import java.util.List; - /** * 字段定义 * {name:"字段名,如id",fieldType:"字段类型,如编码字段", dataType:"数据类型,如ID/CODE/NAME等", null:"0-空/1-非空", default: "默认值", title:"中文名",link:"外键关联表",editor:"控件类型:TEXT/TextArea/NUMBER/COMBO"} @@ -16,7 +13,7 @@ public class ModelField { private String title; private String remark; //字段类型,如编码字段,参见FieldTypeDef - private String fieldType; + private int fieldType; /** * 数据类型,参见DataType */ diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelProject.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelProject.java new file mode 100644 index 0000000..6b8382f --- /dev/null +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelProject.java @@ -0,0 +1,88 @@ +package cc.smtweb.framework.core.db.vo; + +import cc.smtweb.framework.core.annotation.SwTable; +import cc.smtweb.framework.core.db.impl.DefaultEntity; + +/** + * Created by Akmm at 2022/3/1 15:35 + */ +@SwTable("ASP_MODEL_PROJECT") +public class ModelProject extends DefaultEntity { + public static final String ENTITY_NAME = "ASP_MODEL_PROJECT"; + + public ModelProject() { + super(ENTITY_NAME); + } + + public long getId() { + return getLong("prj_id"); + } + + public void setId(long prjId) { + put("prj_id", prjId); + } + + public String getName() { + return getStr("prj_name"); + } + + public void setName(String prjName) { + put("prj_name", prjName); + } + + public String getDepends() { + return getStr("prj_depends"); + } + + public void setDepends(String prjDepends) { + put("prj_depends", prjDepends); + } + + public String getDesc() { + return getStr("prj_desc"); + } + + public void setDesc(String prjDesc) { + put("prj_desc", prjDesc); + } + + public int getStatus() { + return getInt("prj_status"); + } + + public void setStatus(int prjStatus) { + put("prj_status", prjStatus); + } + + public long getCreateUid() { + return getLong("prj_create_uid"); + } + + public void setCreateUid(long prjCreateUid) { + put("prj_create_uid", prjCreateUid); + } + + public long getUpdateUid() { + return getLong("prj_update_uid"); + } + + public void setUpdateUid(long prjUpdateUid) { + put("prj_update_uid", prjUpdateUid); + } + + public long getCreateAt() { + return getLong("prj_create_at"); + } + + public void setCreateAt(long prjCreateAt) { + put("prj_create_at", prjCreateAt); + } + + public long getUpdateAt() { + return getLong("prj_update_at"); + } + + public void setUpdateAt(long prjUpdateAt) { + put("prj_update_at", prjUpdateAt); + } +} diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelTable.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelTable.java index 1d847d7..4df751f 100644 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelTable.java +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/ModelTable.java @@ -1,14 +1,14 @@ package cc.smtweb.framework.core.db.vo; import cc.smtweb.framework.core.annotation.SwTable; +import cc.smtweb.framework.core.common.AbstractEnum; +import cc.smtweb.framework.core.common.IntEnum; +import cc.smtweb.framework.core.common.SwEnum; import cc.smtweb.framework.core.db.cache.ModelTableCache; import cc.smtweb.framework.core.db.impl.DefaultEntity; -import cc.smtweb.framework.core.db.vo.def.FieldType; import cc.smtweb.framework.core.util.JsonUtil; -import lombok.Data; import org.apache.commons.lang3.StringUtils; -import java.io.Serializable; import java.util.ArrayList; import java.util.List; @@ -250,12 +250,10 @@ public class ModelTable extends DefaultEntity { return null; } - public ModelField findFieldByType(FieldType type) { - if (type != null) { - for (ModelField value : fields) { - if (type.name().equalsIgnoreCase(value.getFieldType())) { - return value; - } + public ModelField findFieldByType(int type) { + for (ModelField value : fields) { + if (type == value.getFieldType()) { + return value; } } @@ -281,7 +279,7 @@ public class ModelTable extends DefaultEntity { if (linkTable == null) { continue; } - ModelField linkNameField = linkTable.findFieldByType(FieldType.NAME); + ModelField linkNameField = linkTable.findFieldByType(SwEnum.FieldType.NAME.value); if (linkNameField != null) { list.add(new ModelLinkName(field.getName(), linkTable, linkNameField.getName())); } diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/def/DataType.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/def/DataType.java deleted file mode 100644 index a80061e..0000000 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/def/DataType.java +++ /dev/null @@ -1,33 +0,0 @@ -package cc.smtweb.framework.core.db.vo.def; - -import lombok.Data; - -/** - * 数据类型定义,参见design_db.yaml配置 - */ -@Data -public class DataType { - /*{type: "id", name: "ID", sql-type: "bigint", java-type: "long", widget: "fz-field-long", defaultValue: "0"} - - {type: "code", name: "编码", sql-type: "varchar", java-type: "string", data-length: 32, widget: "fz-field-string", defaultValue: ""} - - {type: "name", name: "名字", sql-type: "varchar", java-type: "string", data-length: 100, widget: "fz-field-string", defaultValue: ""} - - {type: "remark", name: "备注", sql-type: "varchar", data-length: 255, java-type: "string", widget: "fz-field-string", defaultValue: ""} - - {type: "text", name: "大文本", sql-type: "text", java-type: "string", widget: "fz-field-string", defaultValue: ""} - - {type: "currency", name: "货币", sql-type: "bigint", java-type: "long", widget: "fz-field-long", defaultValue: "0"} - - {type: "datetime", name: "时间日期", sql-type: "bigint", java-type: "long", widget: "fz-field-datetime", defaultValue: "0"} - - {type: "date", name: "日期", sql-type: "int", java-type: "int", widget: "fz-field-date", defaultValue: "0"} - - {type: "time", name: "时间", sql-type: "int", java-type: "int", widget: "fz-field-time", defaultValue: "0"} - - {type: "int", name: "整型", sql-type: "int", java-type: "int", widget: "fz-field-int", defaultValue: "0"} - - {type: "smallint", name: "短整型", sql-type: "smallint", java-type: "short", widget: "fz-field-int", defaultValue: "0"} - - {type: "bool", name: "布尔型", sql-type: "tinyint", java-type: "boolean", widget: "fz-field-bool", defaultValue: "0"}*/ - public static final String TYPE_STR = "varchar"; - public static final String TYPE_BOOL = "bool"; - public static final String TYPE_DATETIME = "datetime"; - public static final String TYPE_DATE = "date"; - - private String type; - private String name; - private String sqlType; - private int dataLength; - private String javaType; - private String defaultValue; -} diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/def/FieldType.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/def/FieldType.java deleted file mode 100644 index 30cc8f4..0000000 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/def/FieldType.java +++ /dev/null @@ -1,24 +0,0 @@ -package cc.smtweb.framework.core.db.vo.def; - -/** - * Created by Akmm at 2022/2/9 10:01 - * 字段业务类别 - */ -public enum FieldType { - // 主键 - ID, - // 上级ID,树结构需要 - PARENT_ID, - //级次码 - LEVEL_CODE, - // 排序字段,树结构需要 - ORDER, - // 编码字段 - CODE, - // 名词字段 - NAME, - // 创建时间 - CREATE_TIME, - // 更新时间 - LAST_TIME -} diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/def/TableType.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/def/TableType.java deleted file mode 100644 index d75c0ca..0000000 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/db/vo/def/TableType.java +++ /dev/null @@ -1,14 +0,0 @@ -package cc.smtweb.framework.core.db.vo.def; - -/** - * Created by Akmm at 2022/3/17 17:02 - */ -public class TableType { - //0-普通表,1 树型表 2 编码表 9-虚拟抽象表 11 视图 - public static final int TYPE_GENERAL = 0; - public static final int TYPE_TREE = 1; - public static final int TYPE_CODE = 2; - public static final int TYPE_ABSTACT = 3; - public static final int TYPE_VIEW = 3; - -} diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/DefaultComboHandler.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/DefaultComboHandler.java index 4a53563..c183d8e 100644 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/DefaultComboHandler.java +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/DefaultComboHandler.java @@ -3,16 +3,12 @@ package cc.smtweb.framework.core.mvc.service; import cc.smtweb.framework.core.R; import cc.smtweb.framework.core.SwException; import cc.smtweb.framework.core.SwMap; -import cc.smtweb.framework.core.cache.AbstractCache; -import cc.smtweb.framework.core.cache.CacheManager; +import cc.smtweb.framework.core.common.SwEnum; import cc.smtweb.framework.core.db.DbEngine; -import cc.smtweb.framework.core.db.EntityDao; import cc.smtweb.framework.core.db.cache.ModelTableCache; import cc.smtweb.framework.core.db.impl.DefaultEntity; import cc.smtweb.framework.core.db.vo.ModelField; -import cc.smtweb.framework.core.db.vo.ModelLinkName; import cc.smtweb.framework.core.db.vo.ModelTable; -import cc.smtweb.framework.core.db.vo.def.FieldType; import org.apache.commons.lang3.StringUtils; import java.util.*; @@ -77,10 +73,10 @@ public class DefaultComboHandler extends DefaultListHan //构建参与搜索的字段,默认为code和name字段 protected void getFilterFields(List fields) { ModelTable table = ModelTableCache.getInstance().getByName(tableName); - ModelField field = table.findFieldByType(FieldType.CODE); + ModelField field = table.findFieldByType(SwEnum.FieldType.CODE.value); if (field != null) fields.add(field.getName()); - field = table.findFieldByType(FieldType.NAME); + field = table.findFieldByType(SwEnum.FieldType.NAME.value); if (field != null) fields.add(field.getName()); } } diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/DefaultListHandler.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/DefaultListHandler.java index 20c9350..6369468 100644 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/DefaultListHandler.java +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/DefaultListHandler.java @@ -3,6 +3,7 @@ package cc.smtweb.framework.core.mvc.service; import cc.smtweb.framework.core.SwMap; import cc.smtweb.framework.core.cache.AbstractCache; import cc.smtweb.framework.core.cache.CacheManager; +import cc.smtweb.framework.core.common.SwEnum; import cc.smtweb.framework.core.db.DbEngine; import cc.smtweb.framework.core.db.EntityDao; import cc.smtweb.framework.core.db.cache.ModelTableCache; @@ -10,7 +11,6 @@ import cc.smtweb.framework.core.db.impl.DefaultEntity; import cc.smtweb.framework.core.db.vo.ModelField; import cc.smtweb.framework.core.db.vo.ModelLinkName; import cc.smtweb.framework.core.db.vo.ModelTable; -import cc.smtweb.framework.core.db.vo.def.FieldType; import org.apache.commons.lang3.StringUtils; import java.util.*; @@ -61,7 +61,7 @@ public class DefaultListHandler extends AbstractListHan if (table == null) return; sql.append(" order by "); - ModelField field = table.findFieldByType(FieldType.CODE); + ModelField field = table.findFieldByType(SwEnum.FieldType.CODE.value); if (field != null) sql.append(field.getName()).append(","); sql.append(table.getIdField()); } diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/DefaultSaveHandler.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/DefaultSaveHandler.java index 131a42a..1aa8074 100644 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/DefaultSaveHandler.java +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/DefaultSaveHandler.java @@ -4,6 +4,7 @@ import cc.smtweb.framework.core.R; import cc.smtweb.framework.core.SwException; import cc.smtweb.framework.core.cache.AbstractCache; import cc.smtweb.framework.core.cache.CacheManager; +import cc.smtweb.framework.core.common.SwEnum; import cc.smtweb.framework.core.db.DbEngine; import cc.smtweb.framework.core.db.EntityDao; import cc.smtweb.framework.core.db.cache.ModelTableCache; @@ -12,11 +13,8 @@ import cc.smtweb.framework.core.db.jdbc.AbsDbWorker; import cc.smtweb.framework.core.db.vo.ModelField; import cc.smtweb.framework.core.db.vo.ModelIndex; import cc.smtweb.framework.core.db.vo.ModelTable; -import cc.smtweb.framework.core.db.vo.def.FieldType; -import cc.smtweb.framework.core.db.vo.def.TableType; import org.apache.commons.lang3.StringUtils; -import java.util.Collection; import java.util.List; /** @@ -86,7 +84,7 @@ public class DefaultSaveHandler extends AbstractSaveHan } else { dao.updateEntity(bean); ModelTable table = ModelTableCache.getInstance().getByName(tableName); - if (table.getType() == TableType.TYPE_TREE) { + if (table.getType() == SwEnum.TableType.TYPE_TREE.value) { listTreeBean = TreeHelper.getTreeHelper(tableName).resetTreeLevel(bean); } } @@ -123,7 +121,7 @@ public class DefaultSaveHandler extends AbstractSaveHan //树,改变父亲 protected R changeParent() throws Exception { ModelTable table = ModelTableCache.getInstance().getByName(tableName); - if (table.getType() != TableType.TYPE_TREE) throw new SwException("非树型表,不支持更改父节点"); + if (table.getType() != SwEnum.TableType.TYPE_TREE.value) throw new SwException("非树型表,不支持更改父节点"); long id = params.readLong("id"); long parentId = params.readLong("parent_id"); @@ -135,7 +133,7 @@ public class DefaultSaveHandler extends AbstractSaveHan bean = loadComp(id); } //不考虑没有级次码等情况,这个在表设计时校验 - ModelField fieldParentCode = table.findFieldByType(FieldType.PARENT_ID); + ModelField fieldParentCode = table.findFieldByType(SwEnum.FieldType.PARENT_ID.value); bean.put(fieldParentCode.getName(), parentId); DbEngine.getInstance().doTrans(new AbsDbWorker() { diff --git a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/TreeHelper.java b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/TreeHelper.java index 27b81b4..dee3937 100644 --- a/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/TreeHelper.java +++ b/smtweb-framework/sw-framework-core/src/main/java/cc/smtweb/framework/core/mvc/service/TreeHelper.java @@ -4,14 +4,13 @@ import cc.smtweb.framework.core.SwException; import cc.smtweb.framework.core.cache.AbstractCache; import cc.smtweb.framework.core.cache.CacheManager; import cc.smtweb.framework.core.common.SwConsts; +import cc.smtweb.framework.core.common.SwEnum; import cc.smtweb.framework.core.db.DbEngine; import cc.smtweb.framework.core.db.EntityDao; import cc.smtweb.framework.core.db.cache.ModelTableCache; import cc.smtweb.framework.core.db.impl.DefaultEntity; import cc.smtweb.framework.core.db.vo.ModelField; import cc.smtweb.framework.core.db.vo.ModelTable; -import cc.smtweb.framework.core.db.vo.def.FieldType; -import cc.smtweb.framework.core.db.vo.def.TableType; import java.util.ArrayList; import java.util.Collection; @@ -43,9 +42,9 @@ public class TreeHelper { cache = CacheManager.getIntance().getCache(tableName); dao = DbEngine.getInstance().findDao(tableName); - ModelField field = table.findFieldByType(FieldType.PARENT_ID); + ModelField field = table.findFieldByType(SwEnum.FieldType.PARENT_ID.value); fieldParent = field.getName(); - field = table.findFieldByType(FieldType.LEVEL_CODE); + field = table.findFieldByType(SwEnum.FieldType.LEVEL_CODE.value); fieldLevelCode = field.getName(); } @@ -75,7 +74,7 @@ public class TreeHelper { public List resetTreeLevel(T bean) throws Exception { List list = new ArrayList<>(); - if (table.getType() != TableType.TYPE_TREE) return list; + if (table.getType() != SwEnum.TableType.TYPE_TREE.value) return list; if (!table.isNeedCache()) throw new SwException("请定义为需要缓存!"); T oldBean = cache.get(bean.getEntityId()); @@ -88,7 +87,7 @@ public class TreeHelper { private void resetParentChildren(T bean, List list) throws Exception { T parent = cache.get(getParentId(bean)); if (parent != null) { - bean.put(fieldLevelCode, getLevelCode(parent) + "-" + parent.getEntityId()); + bean.put(fieldLevelCode, getLevelCode(parent) + SwConsts.SPLIT_CHAR + parent.getEntityId()); dao.updateEntity(bean, fieldLevelCode); list.add(bean); } diff --git a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/catalog/ModelCatalog.java b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/catalog/ModelCatalog.java deleted file mode 100644 index 7fab779..0000000 --- a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/catalog/ModelCatalog.java +++ /dev/null @@ -1,88 +0,0 @@ -package cc.smtweb.system.bpm.web.design.catalog; - -import cc.smtweb.framework.core.annotation.SwTable; -import cc.smtweb.framework.core.db.impl.DefaultEntity; - -/** - * Created by Akmm at 2022/3/1 15:35 - */ -@SwTable("ASP_MODEL_CATALOG") -public class ModelCatalog extends DefaultEntity { - public static final String ENTITY_NAME = "ASP_MODEL_CATALOG"; - - public ModelCatalog() { - super(ENTITY_NAME); - } - - public long getId() { - return getLong("mc_id"); - } - - public void setId(long mcId) { - put("mc_id", mcId); - } - - public long getParentId() { - return getLong("mc_parent_id"); - } - - public void setParentId(long mcParentId) { - put("mc_parent_id", mcParentId); - } - - public String getCode() { - return getStr("mc_code"); - } - - public void setCode(String mcCode) { - put("mc_code", mcCode); - } - - public String getName() { - return getStr("mc_name"); - } - - public void setName(String mcName) { - put("mc_name", mcName); - } - - public long getPrjId() { - return getLong("mc_prj_id"); - } - - public void setPrjId(long mcPrjId) { - put("mc_prj_id", mcPrjId); - } - - public long getCreateUid() { - return getLong("mc_create_uid"); - } - - public void setCreateUid(long mcCreateUid) { - put("mc_create_uid", mcCreateUid); - } - - public long getUpdateUid() { - return getLong("mc_update_uid"); - } - - public void setUpdateUid(long mcUpdateUid) { - put("mc_update_uid", mcUpdateUid); - } - - public long getCreateAt() { - return getLong("mc_create_at"); - } - - public void setCreateAt(long mcCreateAt) { - put("mc_create_at", mcCreateAt); - } - - public long getUpdateAt() { - return getLong("mc_update_at"); - } - - public void setUpdateAt(long mcUpdateAt) { - put("mc_update_at", mcUpdateAt); - } -} diff --git a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/catalog/ModelCatalogService.java b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/catalog/ModelCatalogService.java deleted file mode 100644 index fe1a9ed..0000000 --- a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/catalog/ModelCatalogService.java +++ /dev/null @@ -1,32 +0,0 @@ -package cc.smtweb.system.bpm.web.design.catalog; - -import cc.smtweb.framework.core.R; -import cc.smtweb.framework.core.SwMap; -import cc.smtweb.framework.core.annotation.SwBody; -import cc.smtweb.framework.core.annotation.SwService; -import cc.smtweb.framework.core.mvc.service.*; -import cc.smtweb.framework.core.session.UserSession; - -/** - * Created by Akmm at 2022/3/1 17:00 - * 项目服务类 - */ -@SwService -public class ModelCatalogService extends AbstractCompService { - @Override - protected IHandler createHandler(String type) { - switch (type) { - case TYPE_LOAD: - return new DefaultLoadHandler(ModelCatalog.ENTITY_NAME); - case TYPE_SAVE: - return new DefaultSaveHandler<>(ModelCatalog.ENTITY_NAME); - case TYPE_DEL: - return new DefaultDelHandler<>(ModelCatalog.ENTITY_NAME); - case TYPE_LIST: - return new DefaultListHandler<>(ModelCatalog.ENTITY_NAME); - case TYPE_TREE: - return new ModelCatalogTreeHandler(); - } - return null; - } -} diff --git a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/catalog/ModelCatalogTreeHandler.java b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/catalog/ModelCatalogTreeHandler.java deleted file mode 100644 index 76d797b..0000000 --- a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/catalog/ModelCatalogTreeHandler.java +++ /dev/null @@ -1,142 +0,0 @@ -package cc.smtweb.system.bpm.web.design.catalog; - -import cc.smtweb.framework.core.SwMap; -import cc.smtweb.framework.core.cache.AbstractCache; -import cc.smtweb.framework.core.cache.CacheManager; -import cc.smtweb.framework.core.db.DbEngine; -import cc.smtweb.framework.core.db.EntityDao; -import cc.smtweb.framework.core.db.cache.ModelTableCache; -import cc.smtweb.framework.core.db.impl.DefaultEntity; -import cc.smtweb.framework.core.db.vo.ModelTable; -import cc.smtweb.framework.core.mvc.service.AbstractTreeHandler; -import cc.smtweb.framework.core.mvc.service.TreeHelper; -import cc.smtweb.framework.core.session.UserSession; -import cc.smtweb.framework.core.util.CommUtil; -import org.apache.commons.lang3.StringUtils; - -import java.util.*; - -/** - * Created by Akmm at 2022/3/21 18:22 - */ -public class ModelCatalogTreeHandler extends AbstractTreeHandler { - //查询类型:0-目录;1-表定义;2-页面定义 - private final static int TYPE_CATALOG = 0; - private final static int TYPE_TABLE = 1; - private final static int TYPE_PAGE = 2; - - private long prj_id;//所属项目 - private int type;//查询类型:0-目录;1-表定义;2-页面定义 - - private TreeHelper mcTreeHelper = null; - - @Override - public void init(SwMap params, UserSession us) { - super.init(params, us); - type = params.readInt("type"); - prj_id = params.readLong("prj_id"); - mcTreeHelper = (TreeHelper) TreeHelper.getTreeHelper(ModelCatalog.ENTITY_NAME); - } - - @Override - protected List getChildren(Object bean) { - if (bean instanceof ModelCatalog) { - return super.getChildren(bean); - } - return null; - } - - @Override - protected List filterData() { - List listRet = new ArrayList<>(); - - EntityDao dao = DbEngine.getInstance().findDao(ModelCatalog.ENTITY_NAME); - String text = "%" + params.readString("text") + "%"; - List list = dao.queryWhere(" where mc_prj_id=? and (mc_name like ? or mc_code like ?) order by mc_name", prj_id, text, text); - listRet.addAll(list); - - switch (type) { - case TYPE_TABLE: - EntityDao tabledao = DbEngine.getInstance().findDao(ModelTable.class); - List l = tabledao.queryWhere(" where tb_prj_id=? and (tb_name like ? or tb_title like ?) order by tb_name", prj_id, text, text); - listRet.addAll(l); - break; - case TYPE_PAGE: - ; - } - return listRet; - } - - @Override - protected List getChildren(long id) { - List listRet = new ArrayList<>(); - List list; - if (id > 0) { - list = mcTreeHelper.getChildren(id, (o1, o2) -> CommUtil.chineseCompare(o1.getName(), o2.getName())); - } else { - list = mcTreeHelper.getChildren(prj_id, (o1, o2) -> CommUtil.chineseCompare(o1.getName(), o2.getName())); - } - - listRet.addAll(list); - - switch (type) { - case TYPE_TABLE: - addTableChildren(listRet, id); - break; - case TYPE_PAGE: - addPageChildren(listRet, id); - } - return listRet; - } - - //增加表 - private void addTableChildren(List listRet, long id) { - Collection set = ModelTableCache.getInstance().getTablesByMc(id, (o1, o2) -> CommUtil.chineseCompare(o1.getName(), o2.getName())); - if (set == null || set.isEmpty()) return; - - listRet.addAll(set); - } - - //增加页面定义 - private void addPageChildren(List listRet, long id) { - - } - - @Override - protected long getId(Object bean) { - if (bean instanceof DefaultEntity) { - return ((DefaultEntity) bean).getEntityId(); - } - if (bean instanceof ModelTable) { - return ((ModelTable) bean).getId(); - } - return 0; - } - - @Override - protected String getText(Object bean) { - if (bean instanceof ModelCatalog) { - return ((ModelCatalog) bean).getName(); - } - if (bean instanceof ModelTable) { - return ((ModelTable) bean).getTitle(); - } - - /*if (bean instanceof ModelTable) { - return ((ModelTable)bean).getTitle(); - }*/ - return null; - } - - @Override - protected void buildNode(SwMap node, Object bean) { - super.buildNode(node, bean); - if (bean instanceof ModelCatalog) { - node.put("type", TYPE_CATALOG); - } else if (bean instanceof ModelTable) { - node.put("type", TYPE_TABLE); - }/* else if (bean instanceof ModelTable) { - node.put("type", TYPE_TABLE); - }*/ - } -} diff --git a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/project/ModelProject.java b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/project/ModelProject.java deleted file mode 100644 index 97db447..0000000 --- a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/project/ModelProject.java +++ /dev/null @@ -1,88 +0,0 @@ -package cc.smtweb.system.bpm.web.design.project; - -import cc.smtweb.framework.core.annotation.SwTable; -import cc.smtweb.framework.core.db.impl.DefaultEntity; - -/** - * Created by Akmm at 2022/3/1 15:35 - */ -@SwTable("ASP_MODEL_PROJECT") -public class ModelProject extends DefaultEntity { - public static final String ENTITY_NAME = "ASP_MODEL_PROJECT"; - - public ModelProject() { - super(ENTITY_NAME); - } - - public long getId() { - return getLong("prj_id"); - } - - public void setId(long prjId) { - put("prj_id", prjId); - } - - public String getName() { - return getStr("prj_name"); - } - - public void setName(String prjName) { - put("prj_name", prjName); - } - - public String getDepends() { - return getStr("prj_depends"); - } - - public void setDepends(String prjDepends) { - put("prj_depends", prjDepends); - } - - public String getDesc() { - return getStr("prj_desc"); - } - - public void setDesc(String prjDesc) { - put("prj_desc", prjDesc); - } - - public int getStatus() { - return getInt("prj_status"); - } - - public void setStatus(int prjStatus) { - put("prj_status", prjStatus); - } - - public long getCreateUid() { - return getLong("prj_create_uid"); - } - - public void setCreateUid(long prjCreateUid) { - put("prj_create_uid", prjCreateUid); - } - - public long getUpdateUid() { - return getLong("prj_update_uid"); - } - - public void setUpdateUid(long prjUpdateUid) { - put("prj_update_uid", prjUpdateUid); - } - - public long getCreateAt() { - return getLong("prj_create_at"); - } - - public void setCreateAt(long prjCreateAt) { - put("prj_create_at", prjCreateAt); - } - - public long getUpdateAt() { - return getLong("prj_update_at"); - } - - public void setUpdateAt(long prjUpdateAt) { - put("prj_update_at", prjUpdateAt); - } -} diff --git a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/project/ModelProjectService.java b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/project/ModelProjectService.java deleted file mode 100644 index 241aece..0000000 --- a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/project/ModelProjectService.java +++ /dev/null @@ -1,30 +0,0 @@ -package cc.smtweb.system.bpm.web.design.project; - -import cc.smtweb.framework.core.annotation.SwService; -import cc.smtweb.framework.core.mvc.service.*; - -/** - * Created by Akmm at 2022/3/1 17:00 - * 项目服务类 - */ -@SwService -public class ModelProjectService extends AbstractCompService { - @Override - protected IHandler createHandler(String type) { - switch (type) { - case TYPE_LOAD: - return new DefaultLoadHandler(ModelProject.ENTITY_NAME); - case TYPE_SAVE: - return new DefaultSaveHandler<>(ModelProject.ENTITY_NAME); - case TYPE_DEL: - return new DefaultDelHandler<>(ModelProject.ENTITY_NAME); - case TYPE_LIST: - return new DefaultListHandler<>(ModelProject.ENTITY_NAME); - case TYPE_COMBO: - return new DefaultComboHandler<>(ModelProject.ENTITY_NAME); - } - return null; - } - - -} diff --git a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelCatalogService.java b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelCatalogService.java new file mode 100644 index 0000000..cae58c8 --- /dev/null +++ b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelCatalogService.java @@ -0,0 +1,29 @@ +package cc.smtweb.system.bpm.web.design.table; + +import cc.smtweb.framework.core.annotation.SwService; +import cc.smtweb.framework.core.db.vo.ModelCatalog; +import cc.smtweb.framework.core.mvc.service.*; + +/** + * Created by Akmm at 2022/3/1 17:00 + * 项目服务类 + */ +@SwService +public class ModelCatalogService extends AbstractCompService { + @Override + protected IHandler createHandler(String type) { + switch (type) { + case TYPE_LOAD: + return new DefaultLoadHandler(ModelCatalog.ENTITY_NAME); + case TYPE_SAVE: + return new DefaultSaveHandler<>(ModelCatalog.ENTITY_NAME); + case TYPE_DEL: + return new DefaultDelHandler<>(ModelCatalog.ENTITY_NAME); + case TYPE_LIST: + return new DefaultListHandler<>(ModelCatalog.ENTITY_NAME); + case TYPE_TREE: + return new ModelCatalogTreeHandler(); + } + return null; + } +} diff --git a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelCatalogTreeHandler.java b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelCatalogTreeHandler.java new file mode 100644 index 0000000..52fe6a4 --- /dev/null +++ b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelCatalogTreeHandler.java @@ -0,0 +1,140 @@ +package cc.smtweb.system.bpm.web.design.table; + +import cc.smtweb.framework.core.SwMap; +import cc.smtweb.framework.core.db.DbEngine; +import cc.smtweb.framework.core.db.EntityDao; +import cc.smtweb.framework.core.db.cache.ModelTableCache; +import cc.smtweb.framework.core.db.impl.DefaultEntity; +import cc.smtweb.framework.core.db.vo.ModelCatalog; +import cc.smtweb.framework.core.db.vo.ModelTable; +import cc.smtweb.framework.core.mvc.service.AbstractTreeHandler; +import cc.smtweb.framework.core.mvc.service.TreeHelper; +import cc.smtweb.framework.core.session.UserSession; +import cc.smtweb.framework.core.util.CommUtil; + +import java.util.*; + +/** + * Created by Akmm at 2022/3/21 18:22 + */ +public class ModelCatalogTreeHandler extends AbstractTreeHandler { + //查询类型:0-目录;1-表定义;2-页面定义 + private final static int TYPE_CATALOG = 0; + private final static int TYPE_TABLE = 1; + private final static int TYPE_PAGE = 2; + + private long prj_id;//所属项目 + private int type;//查询类型:0-目录;1-表定义;2-页面定义 + + private TreeHelper mcTreeHelper = null; + + @Override + public void init(SwMap params, UserSession us) { + super.init(params, us); + type = params.readInt("type"); + prj_id = params.readLong("prj_id"); + mcTreeHelper = (TreeHelper) TreeHelper.getTreeHelper(ModelCatalog.ENTITY_NAME); + } + + @Override + protected List getChildren(Object bean) { + if (bean instanceof ModelCatalog) { + return super.getChildren(bean); + } + return null; + } + + @Override + protected List filterData() { + List listRet = new ArrayList<>(); + + EntityDao dao = DbEngine.getInstance().findDao(ModelCatalog.ENTITY_NAME); + String text = "%" + params.readString("text") + "%"; + List list = dao.queryWhere(" where mc_prj_id=? and (mc_name like ? or mc_code like ?) order by mc_name", prj_id, text, text); + listRet.addAll(list); + + switch (type) { + case TYPE_TABLE: + EntityDao tabledao = DbEngine.getInstance().findDao(ModelTable.class); + List l = tabledao.queryWhere(" where tb_prj_id=? and (tb_name like ? or tb_title like ?) order by tb_name", prj_id, text, text); + listRet.addAll(l); + break; + case TYPE_PAGE: + ; + } + return listRet; + } + + @Override + protected List getChildren(long id) { + List listRet = new ArrayList<>(); + List list; + if (id > 0) { + list = mcTreeHelper.getChildren(id, (o1, o2) -> CommUtil.chineseCompare(o1.getName(), o2.getName())); + } else { + list = mcTreeHelper.getChildren(prj_id, (o1, o2) -> CommUtil.chineseCompare(o1.getName(), o2.getName())); + } + + listRet.addAll(list); + + switch (type) { + case TYPE_TABLE: + addTableChildren(listRet, id); + break; + case TYPE_PAGE: + addPageChildren(listRet, id); + } + return listRet; + } + + //增加表 + private void addTableChildren(List listRet, long id) { + Collection set = ModelTableCache.getInstance().getTablesByMc(id, (o1, o2) -> CommUtil.chineseCompare(o1.getName(), o2.getName())); + if (set == null || set.isEmpty()) return; + + listRet.addAll(set); + } + + //增加页面定义 + private void addPageChildren(List listRet, long id) { + + } + + @Override + protected long getId(Object bean) { + if (bean instanceof DefaultEntity) { + return ((DefaultEntity) bean).getEntityId(); + } + if (bean instanceof ModelTable) { + return ((ModelTable) bean).getId(); + } + return 0; + } + + @Override + protected String getText(Object bean) { + if (bean instanceof ModelCatalog) { + return ((ModelCatalog) bean).getName(); + } + if (bean instanceof ModelTable) { + return ((ModelTable) bean).getTitle(); + } + + /*if (bean instanceof ModelTable) { + return ((ModelTable)bean).getTitle(); + }*/ + return null; + } + + @Override + protected void buildNode(SwMap node, Object bean) { + super.buildNode(node, bean); + if (bean instanceof ModelCatalog) { + node.put("type", TYPE_CATALOG); + } else if (bean instanceof ModelTable) { + node.put("type", TYPE_TABLE); + }/* else if (bean instanceof ModelTable) { + node.put("type", TYPE_TABLE); + }*/ + } +} diff --git a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelDatabaseService.java b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelDatabaseService.java index e076749..5656640 100644 --- a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelDatabaseService.java +++ b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelDatabaseService.java @@ -2,9 +2,8 @@ package cc.smtweb.system.bpm.web.design.table; import cc.smtweb.framework.core.annotation.SwService; import cc.smtweb.framework.core.db.vo.ModelDatabase; -import cc.smtweb.framework.core.db.vo.ModelTable; import cc.smtweb.framework.core.mvc.service.*; -import cc.smtweb.system.bpm.web.design.catalog.ModelCatalog; +import cc.smtweb.framework.core.db.vo.ModelCatalog; /** * Created by Akmm at 2022/3/22 9:12 diff --git a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelProjectService.java b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelProjectService.java new file mode 100644 index 0000000..0ea7a75 --- /dev/null +++ b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelProjectService.java @@ -0,0 +1,31 @@ +package cc.smtweb.system.bpm.web.design.table; + +import cc.smtweb.framework.core.annotation.SwService; +import cc.smtweb.framework.core.db.vo.ModelProject; +import cc.smtweb.framework.core.mvc.service.*; + +/** + * Created by Akmm at 2022/3/1 17:00 + * 项目服务类 + */ +@SwService +public class ModelProjectService extends AbstractCompService { + @Override + protected IHandler createHandler(String type) { + switch (type) { + case TYPE_LOAD: + return new DefaultLoadHandler(ModelProject.ENTITY_NAME); + case TYPE_SAVE: + return new DefaultSaveHandler<>(ModelProject.ENTITY_NAME); + case TYPE_DEL: + return new DefaultDelHandler<>(ModelProject.ENTITY_NAME); + case TYPE_LIST: + return new DefaultListHandler<>(ModelProject.ENTITY_NAME); + case TYPE_COMBO: + return new DefaultComboHandler<>(ModelProject.ENTITY_NAME); + } + return null; + } + + +} diff --git a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelTableService.java b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelTableService.java index ea1300f..ca0cdde 100644 --- a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelTableService.java +++ b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/design/table/ModelTableService.java @@ -3,8 +3,7 @@ package cc.smtweb.system.bpm.web.design.table; import cc.smtweb.framework.core.annotation.SwService; import cc.smtweb.framework.core.db.vo.ModelTable; import cc.smtweb.framework.core.mvc.service.*; -import cc.smtweb.system.bpm.web.design.catalog.ModelCatalog; -import cc.smtweb.system.bpm.web.design.catalog.ModelCatalogTreeHandler; +import cc.smtweb.framework.core.db.vo.ModelCatalog; /** * Created by Akmm at 2022/3/22 9:12 diff --git a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/task/service/BpmTaskCardService.java b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/task/service/BpmTaskCardService.java index ae9f728..7262e80 100644 --- a/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/task/service/BpmTaskCardService.java +++ b/smtweb-system/sw-system-bpm/src/main/java/cc/smtweb/system/bpm/web/task/service/BpmTaskCardService.java @@ -2,9 +2,9 @@ package cc.smtweb.system.bpm.web.task.service; import cc.smtweb.framework.core.SwMap; import cc.smtweb.framework.core.annotation.SwService; +import cc.smtweb.framework.core.common.SwEnum; import cc.smtweb.framework.core.db.vo.ModelField; import cc.smtweb.framework.core.db.vo.ModelTable; -import cc.smtweb.framework.core.db.vo.def.DataType; import cc.smtweb.system.bpm.engine.process.impl.AbstractTaskCardService; import cc.smtweb.system.bpm.engine.process.impl.entity.LoadTaskAckVO; import cc.smtweb.system.bpm.engine.process.runtime.ProcessInstance; @@ -101,11 +101,11 @@ public class BpmTaskCardService extends AbstractTaskCardService { } } else { switch (modelField.getDataType()) { - case DataType.TYPE_BOOL: + case SwEnum.DataType.TYPE_BOOL: uiField.put("component", "fy-checkbox"); break; - case DataType.TYPE_DATETIME: - case DataType.TYPE_DATE: + case SwEnum.DataType.TYPE_DATETIME: + case SwEnum.DataType.TYPE_DATE: uiField.put("component", "fy-datetime"); break; default: