diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/BlockFormEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/BlockFormEnumUtil.java index b53e93c..1c6f611 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/BlockFormEnumUtil.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/BlockFormEnumUtil.java @@ -12,6 +12,182 @@ import java.util.Objects; * @Modify: **/ public class BlockFormEnumUtil { + /** + * common普通操作,不执行脚本 + */ + @JsonFormat(shape = JsonFormat.Shape.OBJECT) + public enum FORM_SCRIPT_TYPE { + SAVE(1, "save", "保存"), + UPDATE(2, "update", "更新"), + DELETE(3, "delete", "删除"), + QUERY(4, "query", "查询"), + EXPORT(5, "export", "导出"), + IMPORT(6, "import", "导入"), + COMMON(7,"common","普通操作"); + + private int value; + private String type; + private String description; + + FORM_SCRIPT_TYPE(int value, String type, String description) { + this.value = value; + this.type = type; + this.description = description; + } + + public int getValue() { + return value; + } + + public String getCode() { + return type; + } + + public String getDescription() { + return description; + } + + public static String valueOfCode(int val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + tmp = values()[i].type; + } + } + return tmp; + } + + public static int codeOfValue(String code) { + int tmp = 1; + for (int i = 0; i < values().length; i++) { + if (values()[i].type.toLowerCase().equals(code.toLowerCase())) { + tmp = values()[i].value; + } + } + return tmp; + } + + public static String valueOfDescription(int val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + tmp = values()[i].description; + } + } + return tmp; + } + + public static FORM_SCRIPT_TYPE valueOf(int val) { + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + return values()[i]; + } + } + return null; + } + + public static String codeOfDescription(String code) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].type.equals(code)) { + tmp = values()[i].description; + } + } + return tmp; + } + } + + /** + * 选择执行脚本的位置 + */ + @JsonFormat(shape = JsonFormat.Shape.OBJECT) + public enum FORM_SCRIPT_FUN_TYPE { + BEFORE_SAVE(1, "beforeSave", "保存前执行"), + AFTER_SAVE(2, "afterSave", "保存后执行"), + BEFORE_UPDATE(3, "beforeUpdate", "更新前执行"), + AFTER_UPDATE(4, "afterUpdate", "更新后执行"), + BEFORE_DELETE(5, "beforeDelete", "删除前执行"), + AFTER_DELETE(6, "afterDelete", "删除后执行"), + BEFORE_QUERY(7, "beforeQuery", "查询前执行"), + AFTER_QUERY(8, "afterQuery", "查询后执行"), + BEFORE_EXPORT(9, "beforeExport", "导出前执行"), + AFTER_EXPORT(10, "afterExport", "导出后执行"), + BEFORE_IMPORT(11, "beforeImport", "导入前执行"), + AFTER_IMPORT(12, "afterImport", "导入后执行"); + + + private int value; + private String funName; + private String description; + + FORM_SCRIPT_FUN_TYPE(int value, String funName, String description) { + this.value = value; + this.funName = funName; + this.description = description; + } + + public int getValue() { + return value; + } + + public String getCode() { + return funName; + } + + public String getDescription() { + return description; + } + + public static String valueOfCode(int val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + tmp = values()[i].funName; + } + } + return tmp; + } + + public static int codeOfValue(String code) { + int tmp = 1; + for (int i = 0; i < values().length; i++) { + if (values()[i].funName.toLowerCase().equals(code.toLowerCase())) { + tmp = values()[i].value; + } + } + return tmp; + } + + public static String valueOfDescription(int val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + tmp = values()[i].description; + } + } + return tmp; + } + + public static FORM_SCRIPT_FUN_TYPE valueOf(int val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + return values()[i]; + } + } + return null; + } + + public static String codeOfDescription(String code) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].funName.equals(code)) { + tmp = values()[i].description; + } + } + return tmp; + } + } /** * 原数据类型 @@ -20,7 +196,8 @@ public class BlockFormEnumUtil { public enum FORM_TABLE_TYPE { TABLE(1, "TABLE", "表"), VIEW(2, "VIEW", "视图"), - PROCEDURE(3, "PROCEDURE", "存储过程"); + PROCEDURE(3, "PROCEDURE", "存储过程"), + CUSTOM(4, "CUSTOM", "自定义对象"); private int value; private String code; @@ -1915,6 +2092,7 @@ public class BlockFormEnumUtil { */ @JsonFormat(shape = JsonFormat.Shape.OBJECT) public enum BUTTON_TRIGGER_EFFECT { + SCRIPT(60,"SCRIPT","执行脚本"), DIALOG(10, "DIALOG", "弹出窗口"), NEW_WINDOW(20, "NEW_WINDOW", "新开窗口"), SQL(30, "SQL", "执行SQL"), @@ -2548,4 +2726,257 @@ public class BlockFormEnumUtil { return result; } } + + + /** + * 脚本语言类型 + * 10=Groovy, 20=Jython, 30=JavaScript, 40=Scala, 50=JRuby + */ + public enum LANGUAGE_TYPE { + GROOVY(1, "Groovy", 10), + PYTHON(2, "jython", 20), // "jython" string can not change + JS(3, "JavaScript", 30); + // 下面这2种语言没人会写,暂不支持 + //SCALA(40,"scala"), + //JRUBY(50,"jruby"); + + private int index; + private String description; + private int value; + + LANGUAGE_TYPE(int index, String description, int value) { + this.index = index; + this.description = description; + this.value = value; + } + + public String getDescription() { + return description; + } + + public int getIndex() { + return this.index; + } + + public int getValue() { + return value; + } + + // 根据枚举编号获取语言代码 + public static String getCodeByIndex(Integer index) { + for (BlockFormEnumUtil.LANGUAGE_TYPE languageType : BlockFormEnumUtil.LANGUAGE_TYPE.values()) { + if (languageType.getValue() == index) { + return languageType.getDescription(); + } + } + + return null; + } + } + + /** + * 系统参数类型 + * 1.SYSTEM:系统参数 + * 2.BUSI:业务参数 + */ + @JsonFormat(shape = JsonFormat.Shape.OBJECT) + public enum BLOCK_FORM_CONFIG_TYPE { + + SYSTEM(10, "系统参数", "系统参数"), + BUSI(20, "业务参数", "业务参数"); + + private int value; + private String name; + private String description; + + BLOCK_FORM_CONFIG_TYPE(int value, String name, String description) { + this.value = value; + this.name = name; + this.description = description; + } + + public int getValue() { + return value; + } + + public String getName() { + return name; + } + + public String getDescription() { + return description; + } + + public static String valueOfCode(int val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + tmp = values()[i].name; + } + } + return tmp; + } + + public static String valueOfDescription(int val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + tmp = values()[i].description; + } + } + return tmp; + } + + public static String codeOfDescription(String code) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].name.equals(code)) { + tmp = values()[i].description; + } + } + return tmp; + } + } + + /** + * 脚本类型 + * 10=组件脚本,20=表单脚本,30=报表脚本,40=JOB脚本,50=其他脚本 + */ + public enum SCRIPT_TYPE { + MODUAL(10, "Modual", "组件脚本"), + FORM(20, "Form", "表单脚本"), + REPORT(30, "Report", "报表脚本"), + JOB(40, "Job", "JOB脚本"), + OTHER(50, "Other", "其他脚本"); + + private String description; + private int value; + private String code; + + SCRIPT_TYPE(int value, String code, String description) { + this.description = description; + this.value = value; + this.code = code; + } + + public String getCode() { + return this.code; + } + + public int getIndex() { + return this.value; + } + + public int getValue() { + return value; + } + + public String getDescription() { + return description; + } + } + + /** + * 系统参数类型 + * 1.SYSTEM:系统参数 + * 2.BUSI:业务参数 + */ + @JsonFormat(shape = JsonFormat.Shape.OBJECT) + public enum CONFIG_TYPE { + + SYSTEM(10, "系统参数", "系统参数"), + BUSI(20, "业务参数", "业务参数"); + + private int value; + private String name; + private String description; + + CONFIG_TYPE(int value, String name, String description) { + this.value = value; + this.name = name; + this.description = description; + } + + public int getValue() { + return value; + } + + public String getName() { + return name; + } + + public String getDescription() { + return description; + } + + public static String valueOfCode(int val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + tmp = values()[i].name; + } + } + return tmp; + } + + public static String valueOfDescription(int val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + tmp = values()[i].description; + } + } + return tmp; + } + + public static String codeOfDescription(String code) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].name.equals(code)) { + tmp = values()[i].description; + } + } + return tmp; + } + } + + + /** + * 系统配置值类型 + */ + @JsonFormat(shape = JsonFormat.Shape.OBJECT) + public enum CONFIG_VALUE_TYPE { + CHECKLIST(10, "可选列表"), + NUMBER(20, "数字"), + STRING(30, "字符串"); + + private int value; + private String description; + + CONFIG_VALUE_TYPE(int value, String description) { + this.value = value; + this.description = description; + } + + public int getValue() { + return value; + } + + public String getDescription() { + return description; + } + + public static String valueOf(int val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + tmp = values()[i].description; + } + } + return tmp; + } + } + + + } diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/CommonEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/CommonEnumUtil.java index c2c8157..0a61ed0 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/CommonEnumUtil.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/CommonEnumUtil.java @@ -576,6 +576,66 @@ public class CommonEnumUtil { } /** + * 用户状态 + * 1.长时间未登录锁定 + * 2.登录失败次数过多锁定 + * 3.管理员手动锁定 + */ + @JsonFormat(shape = JsonFormat.Shape.OBJECT) + public enum LOCK_TYPE { + + NOT_LOGGED_A_LONG_TIME(1, "not logger a long time", "长时间未登录锁定"), + LOGGER_TOO_MANY_FAILURES(2, "logger too many failures", "登录失败次数过多锁定"), + ADMIN_HAND_MOVEMENT_LOCKING(3, "admin hand movement locking", "管理员手动锁定"); + + private int value; + private String code; + private String description; + + private LOCK_TYPE(int value, String code, String description) { + this.value = value; + this.code = code; + this.description = description; + } + + public int getValue() { + return value; + } + + public String getDescription() { + return description; + } + + public String getCode() { + return code; + } + + public static String valueOf(int val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + tmp = values()[i].description; + } + } + return tmp; + } + + public static String valueOfDescription(int val) { + return valueOf(val); + } + + public static int descOf(String desc) { + int tmp = 1; + for (int i = 0; i < values().length; i++) { + if (values()[i].description.equals(desc)) { + tmp = values()[i].value; + } + } + return tmp; + } + } + + /** * 数据类型 * 1库存移动数据 * 2质检数据 diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfButton.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfButton.java index 11a0bcf..b98f62f 100644 --- a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfButton.java +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfButton.java @@ -74,4 +74,12 @@ public class BfButton extends BaseBean { @Column(name = "BUTTON_DESCRIPTION") @ApiParam(value = "按钮描述") private String buttonDescription; + + @Column(name = "FUN_NAME") + @ApiParam(value = "groovy脚本时的方法名") + private String funName; + + @Column(name = "SCRIPT_NO") + @ApiParam(value = "脚本No") + private String scriptNo; } diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObject.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObject.java index 917912c..466e47a 100644 --- a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObject.java +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObject.java @@ -75,6 +75,10 @@ public class BfDataObject extends BaseBean { @ApiParam(value ="描述") private String objectDescription; + @Column(name="DATA_OBJECT_TYPE") + @ApiParam(value ="对象类型") + private Integer dataObjectType; + @Transient @ApiParam(value = "数据对象属性") @AnnoOutputColumn(hidden = true) diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObjectProperty.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObjectProperty.java index e919715..85ed9ec 100644 --- a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObjectProperty.java +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfDataObjectProperty.java @@ -125,6 +125,9 @@ public class BfDataObjectProperty extends BaseBean { @ApiParam(value ="属性描述") private String propertyDescription; + @Column(name = "REF_TABLE_NAME") + @ApiParam(value ="字段来源的表名--可空,如果自定义对象不可空") + private String refTableName; @Transient @ApiParam(value ="默认查询条件") private Integer objectColumnCustomWhere; diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfElement.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfElement.java index 20b7111..ca2cb6f 100644 --- a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfElement.java +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BfElement.java @@ -54,27 +54,27 @@ public class BfElement extends BaseBean { @JsonSerialize(using = ToStringSerializer.class) private Long elementPropertyPrimaryKey; - @Column(name="ELEMENT_PROPERTY_PRIMARY_KEY_NAME_RDD") - @ApiParam(value ="元素主键Key名称") + @Column(name = "ELEMENT_PROPERTY_PRIMARY_KEY_NAME_RDD") + @ApiParam(value = "元素主键Key名称") private String elementPropertyPrimaryKeyNameRdd; - @Column(name="ELEMENT_TYPE") - @ApiParam(value ="元素类型") + @Column(name = "ELEMENT_TYPE") + @ApiParam(value = "元素类型") private Integer elementType; - @Column(name="ELEMENT_NAME") - @ApiParam(value ="元素名称") + @Column(name = "ELEMENT_NAME") + @ApiParam(value = "元素名称") private String elementName; - @Column(name="ELEMENT_CODE") - @ApiParam(value ="元素编码") + @Column(name = "ELEMENT_CODE") + @ApiParam(value = "元素编码") private String elementCode; @Column(name = "IS_OBJECT_ADD") @ApiParam(value = "是否新增") private Integer isObjectAdd; - public boolean isObjectAdd(){ + public boolean isObjectAdd() { return isObjectAdd != null && isObjectAdd == BlockFormEnumUtil.ELEMENT_ADD_STATUS.ON.getValue(); } @@ -82,7 +82,7 @@ public class BfElement extends BaseBean { @ApiParam(value = "是否编辑") private Integer isObjectEdit; - public boolean isObjectEdit(){ + public boolean isObjectEdit() { return isObjectEdit != null && isObjectEdit == BlockFormEnumUtil.ELEMENT_EDIT_STATUS.ON.getValue(); } @@ -90,7 +90,7 @@ public class BfElement extends BaseBean { @ApiParam(value = "是否删除") private Integer isObjectDel; - public boolean isObjectDel(){ + public boolean isObjectDel() { return isObjectDel != null && isObjectDel == BlockFormEnumUtil.ELEMENT_DEL_STATUS.ON.getValue(); } @@ -98,11 +98,11 @@ public class BfElement extends BaseBean { @ApiParam(value = "是否弱删除") private Integer isObjectDelWeak; - public boolean isObjectDelWeak(){ + public boolean isObjectDelWeak() { return isObjectDelWeak != null && isObjectDelWeak == BlockFormEnumUtil.ELEMENT_DELETE_WEAK_STATUS.ON.getValue(); } - public Integer getIsObjectDelWeakVal(){ + public Integer getIsObjectDelWeakVal() { return isObjectDelWeak == null ? BlockFormEnumUtil.ELEMENT_DELETE_WEAK_STATUS.OFF.getValue() : isObjectDelWeak.intValue(); } @@ -114,11 +114,11 @@ public class BfElement extends BaseBean { @ApiParam(value = "是否有效") private Integer isObjectValid; - public Integer getIsObjectValidVal(){ + public Integer getIsObjectValidVal() { return isObjectValid == null ? BlockFormEnumUtil.ELEMENT_VALID_STATUS.OFF.getValue() : isObjectValid.intValue(); } - public boolean isObjectValid(){ + public boolean isObjectValid() { return isObjectValid != null && isObjectValid == BlockFormEnumUtil.ELEMENT_VALID_STATUS.ON.getValue(); } @@ -130,13 +130,14 @@ public class BfElement extends BaseBean { @ApiParam(value = "是否组织隔离") private Integer isOrganizeIsolation; - public Integer getIsOrganizeIsolationVal(){ + public Integer getIsOrganizeIsolationVal() { return isOrganizeIsolation == null ? BlockFormEnumUtil.ELEMENT_ORGANIZE_ISOLATION_STATUS.OFF.getValue() : isOrganizeIsolation.intValue(); } - public boolean isOrganizeIsolation(){ + public boolean isOrganizeIsolation() { return isOrganizeIsolation != null && isOrganizeIsolation == BlockFormEnumUtil.ELEMENT_ORGANIZE_ISOLATION_STATUS.ON.getValue(); } + @Column(name = "ELEMENT_ORGANIZE_ISOLATION_ATTR_ID") @ApiParam(value = "组织隔离属性id") private Long elementOrganizeIsolationAttrId; @@ -158,33 +159,53 @@ public class BfElement extends BaseBean { @ApiParam(value = "是否导入") private Integer isObjectImport; - @Column(name="ELEMENT_SORT_ATTR_ID") - @ApiParam(value ="默认排序属性") + @Column(name = "ELEMENT_SORT_ATTR_ID") + @ApiParam(value = "默认排序属性") @JsonSerialize(using = ToStringSerializer.class) private Long elementSortAttrId; - @Column(name="ELEMENT_SORT_ATTR_CODE_RDD") - @ApiParam(value ="默认排序属性名称") + @Column(name = "ELEMENT_SORT_ATTR_CODE_RDD") + @ApiParam(value = "默认排序属性名称") private String elementSortAttrCodeRdd; - @Column(name="ELEMENT_SORT_ATTR_TYPE") - @ApiParam(value ="默认排序规则") + @Column(name = "ELEMENT_SORT_ATTR_TYPE") + @ApiParam(value = "默认排序规则") private Integer elementSortAttrType; -// @Lob - @Column(name="ELEMENT_CSS_STYLE") - @ApiParam(value ="元素样式") + // @Lob + @Column(name = "ELEMENT_CSS_STYLE") + @ApiParam(value = "元素样式") private String elementCssStyle; -// @Lob - @Column(name="ELEMENT_FORMATTER") - @ApiParam(value ="元素格式化") + // @Lob + @Column(name = "ELEMENT_FORMATTER") + @ApiParam(value = "元素格式化") private String elementFormatter; - @Column(name="ELEMENT_DESCRIPTION") - @ApiParam(value ="元素描述") + @Column(name = "ELEMENT_DESCRIPTION") + @ApiParam(value = "元素描述") private String elementDescription; + /** + * 自定义元素 + * 1: true,只能查询 + * 2: false,普通元素,支持所有操作 + */ + @Column(name = "CUSTOM_ELEMENT") + @ApiParam(value = "自定义元素") + private Integer customElement; + + /** + * BlockFormEnumUtil.FORM_SCRIPT_FUN_TYPE 取值,用逗号隔开 + */ + @Column(name = "SCRIPT_EXECUTE_POSITION") + @ApiParam(value = "执行脚本的位置,取值为枚举") + private String scriptExecutePosition; + + @Column(name = "SCRIPT_NO") + @ApiParam(value = "脚本No") + private String scriptNo; + @Transient @ApiParam(value = "数据对象") private BfDataObject dataObject; diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BlockFormConfig.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BlockFormConfig.java new file mode 100644 index 0000000..df29dbd --- /dev/null +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/BlockFormConfig.java @@ -0,0 +1,65 @@ +package cn.estsh.i3plus.pojo.form.bean; + +import cn.estsh.i3plus.pojo.base.bean.BaseBean; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiParam; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.hibernate.annotations.DynamicInsert; +import org.hibernate.annotations.DynamicUpdate; + +import javax.persistence.*; + +/** + * @Description : + * @Reference : + * @Author : Castle + * @CreateDate : 2022/10/18 17:18 + * @Modify: + **/ +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@EqualsAndHashCode(callSuper = true) +@Inheritance(strategy = InheritanceType.JOINED) +@Table(name = "BLOCK_FORM_CONFIG") +@Api(value = "系统配置", description = "WMS系统配置") +public class BlockFormConfig extends BaseBean { + + @Column(name = "NAME") + @ApiParam(value = "名称") + private String name; + + @Column(name = "CONFIG_TYPE") + @ApiParam(value = "参数类型ID(枚举:1.系统配置...)", example = "-1") + private Integer configType; + + @Column(name = "CONFIG_CODE") + @ApiParam(value = "参数代码") + private String configCode; + + // 枚举 ImppEnumUtil.SYS_CONFIG_GROUP + @Column(name = "CONFIG_GROUP") + @ApiParam(value = "参数组") + private Integer configGroup; + + // 枚举 ImppEnumUtil.SYS_VALUE_TYPE + @Column(name = "CONFIG_VALUE_TYPE") + @ApiParam(value = "参数值类型") + private String configValueType; + + /** + * SQL Server 2005:请使用 varchar(max)、nvarchar(max) 和 varbinary(max) 数据类型,而不要使用 text、ntext 和 image 数据类型。 + */ + @Lob + @Column(name = "CONFIG_VALUE", columnDefinition = "TEXT") + @ApiParam(value = "参数值") + private String configValue; + + @Column(name = "CONFIG_DESCRIPTION") + @ApiParam(value = "参数描述") + private String configDescription; + + +} diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/EngineRulePersistence.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/EngineRulePersistence.java new file mode 100644 index 0000000..2f6eae8 --- /dev/null +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/EngineRulePersistence.java @@ -0,0 +1,54 @@ +package cn.estsh.i3plus.pojo.form.bean; + +import cn.estsh.i3plus.pojo.base.bean.BaseBean; +import io.swagger.annotations.Api; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import org.hibernate.annotations.DynamicInsert; +import org.hibernate.annotations.DynamicUpdate; +import org.springframework.data.annotation.Transient; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Lob; +import javax.persistence.Table; + +/** + * 业务规则持久化实体类 + * + * @author Rock.Yu + * @since 2019-04-16 09:27 + */ +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@AllArgsConstructor +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +@Table(name = "DROOLS_RULE_PERSISTENCE") +@Api("系统动态业务规则") +public class EngineRulePersistence extends BaseBean { + private static final long serialVersionUID = 5119552483383770556L; + // 规则调用的唯一编号,例如:WMS_RECEIVE_0001 + @Column(name = "RULE_NO", length = 50) + private String ruleNo; + // 规则的中文名称 + @Column(name = "RULE_NAME", length = 50) + private String ruleName; + // 规则的具体内容 + @Lob + @Column(name = "RULE_CONTENT", columnDefinition = "TEXT") + private String ruleContent; + // 规则的描述,包含规则的用法,参数说明等 + @Column(name = "RULE_REMARK", length = 2000) + private String ruleRemark; + // 加载好的规则引擎对象(有状态) + @Transient + private transient Object kieSession; + // 加载好的规则引擎对象(无状态) + @Transient + private transient Object statelessKieSession; +} diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/EngineScriptPersistence.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/EngineScriptPersistence.java new file mode 100644 index 0000000..b4b3589 --- /dev/null +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/EngineScriptPersistence.java @@ -0,0 +1,80 @@ +package cn.estsh.i3plus.pojo.form.bean; + +import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn; +import cn.estsh.i3plus.pojo.base.bean.BaseBean; +import io.swagger.annotations.Api; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import org.hibernate.annotations.DynamicInsert; +import org.hibernate.annotations.DynamicUpdate; + +import javax.persistence.*; + +/** + * 脚本持久化实体类 + * + * @author Rock.Yu + * @since 2019-03-18 14:22 + */ +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +@Inheritance(strategy = InheritanceType.JOINED) +@Table(name = "SCRIPT_PERSISTENCE", uniqueConstraints = { + @UniqueConstraint(columnNames = {"ORGANIZE_CODE", "SCRIPT_NO"}) +}) +@Api("系统动态脚本") +public class EngineScriptPersistence extends BaseBean { + private static final long serialVersionUID = 7893111140559759490L; + // 脚本调用的唯一编号,例如:WMS_PDA_0001 + @Column(name = "SCRIPT_NO", length = 50) + @AnnoOutputColumn(name = "脚本编码") + private String scriptNo; + + // 脚本的中文名称 + @Column(name = "SCRIPT_NAME", length = 50) + @AnnoOutputColumn(name = "脚本名称") + private String scriptName; + + // 10=组件脚本,20=表单脚本,30=报表脚本,40=JOB脚本,50=其他脚本 + @Column(name = "SCRIPT_TYPE") + @AnnoOutputColumn(name = "脚本类型") + private Integer scriptType; + + // 脚本编写的语言 + // 10=Groovy, 20=Jython, 30=JavaScript, 40=Scala, 50=JRuby + @Column(name = "LANGUAGE_TYPE") + @AnnoOutputColumn(name = "脚本语言") + private Integer languageType; + + // 脚本的具体内容 + @Lob + @Column(name = "SCRIPT_CONTENT", columnDefinition = "TEXT") + @AnnoOutputColumn(name = "脚本内容") + private String scriptContent; + + // 脚本的描述,包含脚本的用法,参数说明等 + @Column(name = "SCRIPT_REMARK", length = 2000) + @AnnoOutputColumn(name = "脚本描述",required = false) + private String scriptRemark; + + // 编译后的脚本内容,通过预编译加快脚本的运行速度 + @Transient + private Object compiledScript; + + // 构造方法,便于批量创建数据 + public EngineScriptPersistence(Long id, String scriptNo, String scriptName, Integer scriptType, Integer languageType, + String scriptContent, String scriptRemark) { + this.id = id; + this.scriptNo = scriptNo; + this.scriptName = scriptName; + this.scriptType = scriptType; + this.languageType = languageType; + this.scriptContent = scriptContent; + this.scriptRemark = scriptRemark; + } +} diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/EngineScriptPersistenceHistory.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/EngineScriptPersistenceHistory.java new file mode 100644 index 0000000..08afe58 --- /dev/null +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/bean/EngineScriptPersistenceHistory.java @@ -0,0 +1,61 @@ +package cn.estsh.i3plus.pojo.form.bean; + +import cn.estsh.i3plus.pojo.base.bean.BaseBean; +import io.swagger.annotations.Api; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import org.hibernate.annotations.DynamicInsert; +import org.hibernate.annotations.DynamicUpdate; + +import javax.persistence.*; + +/** + * 脚本持久化历史记录 + * + * @author jason.niu + * @since 2020-04-29 + */ +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +@Inheritance(strategy = InheritanceType.JOINED) +@Table(name = "SCRIPT_PERSISTENCE_HISTORY") +@Api("系统动态脚本") +public class EngineScriptPersistenceHistory extends BaseBean { + + private static final long serialVersionUID = 7201021903118622899L; + // 脚本调用的唯一编号,例如:WMS_PDA_0001 + @Column(name = "SCRIPT_NO", length = 50) + private String scriptNo; + + // 脚本的中文名称 + @Column(name = "SCRIPT_NAME", length = 50) + private String scriptName; + + // 10=组件脚本,20=表单脚本,30=报表脚本,40=JOB脚本,50=其他脚本 + @Column(name = "SCRIPT_TYPE") + private Integer scriptType; + + // 脚本编写的语言 + // 10=Groovy, 20=Jython, 30=JavaScript, 40=Scala, 50=JRuby + @Column(name = "LANGUAGE_TYPE") + private Integer languageType; + + // 脚本的具体内容 + @Lob + @Column(name = "SCRIPT_CONTENT", columnDefinition = "TEXT") + private String scriptContent; + + // 脚本的描述,包含脚本的用法,参数说明等 + @Column(name = "SCRIPT_REMARK", length = 2000) + private String scriptRemark; + + // 编译后的脚本内容,通过预编译加快脚本的运行速度 + @Transient + private Object compiledScript; + +} diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/repository/BlockFormRepository.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/repository/BlockFormRepository.java new file mode 100644 index 0000000..55f9c10 --- /dev/null +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/repository/BlockFormRepository.java @@ -0,0 +1,31 @@ +package cn.estsh.i3plus.pojo.form.repository; + +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import cn.estsh.i3plus.pojo.form.bean.BlockFormConfig; +import org.springframework.stereotype.Repository; + +/** + * @Description : + * @Reference : + * @Author : Castle + * @CreateDate : 2022/10/18 17:20 + * @Modify: + **/ +@Repository +public interface BlockFormRepository extends BaseRepository { + + /** + * 按照工厂代码和配置代码查询配置信息 + * @param organizeCode 工厂代码 + * @param configCode 配置代码 + * @return 配置信息 + */ + BlockFormConfig getFirstByOrganizeCodeAndConfigCode(String organizeCode, String configCode); + + /** + * 按照配置代码查询配置信息 + * @param configCode 配置代码 + * @return 配置信息 + */ + BlockFormConfig getFirstByConfigCode(String configCode); +} diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/repository/EngineScriptPersistenceHistoryRepository.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/repository/EngineScriptPersistenceHistoryRepository.java new file mode 100644 index 0000000..5b7fd77 --- /dev/null +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/repository/EngineScriptPersistenceHistoryRepository.java @@ -0,0 +1,9 @@ +package cn.estsh.i3plus.pojo.form.repository; + +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import cn.estsh.i3plus.pojo.form.bean.EngineScriptPersistenceHistory; +import org.springframework.stereotype.Repository; + +@Repository +public interface EngineScriptPersistenceHistoryRepository extends BaseRepository { +} diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/repository/IEngineRulePersistenceRepository.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/repository/IEngineRulePersistenceRepository.java new file mode 100644 index 0000000..e8788e0 --- /dev/null +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/repository/IEngineRulePersistenceRepository.java @@ -0,0 +1,23 @@ +package cn.estsh.i3plus.pojo.form.repository; + +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import cn.estsh.i3plus.pojo.form.bean.EngineRulePersistence; +import org.springframework.stereotype.Repository; + +/** + * @Description : 规则引擎持久化类 + * @Reference : + * @Author : Rock.Yu + * @CreateDate : 2019-04-16 09:53 + * @Modify: + **/ +@Repository +public interface IEngineRulePersistenceRepository extends BaseRepository { + /** + * 按照规则编号查询规则实体 + * @param organizeCode 工厂代码 + * @param ruleNo 规则编号 + * @return 规则实体 + */ + EngineRulePersistence findByOrganizeCodeAndRuleNo(String organizeCode, String ruleNo); +} diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/repository/IEngineScriptPersistenceRepository.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/repository/IEngineScriptPersistenceRepository.java new file mode 100644 index 0000000..a66820c --- /dev/null +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/repository/IEngineScriptPersistenceRepository.java @@ -0,0 +1,40 @@ +package cn.estsh.i3plus.pojo.form.repository; + +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import cn.estsh.i3plus.pojo.form.bean.EngineScriptPersistence; +import org.springframework.data.jpa.repository.Query; +import org.springframework.stereotype.Repository; + +import java.util.List; + +/** + * @Description : 脚本引擎持久化类 + * @Reference : + * @Author : Rock.Yu + * @CreateDate : 2019-04-16 09:53 + * @Modify: + **/ +@Repository +public interface IEngineScriptPersistenceRepository extends BaseRepository { + /** + * 按照工厂代码和脚本编号查询脚本实体对象 + * @param organizeCode 工厂代码 + * @param scriptNo 脚本编号 + * @return 脚本实体对象 + */ + EngineScriptPersistence findByOrganizeCodeAndScriptNo(String organizeCode, String scriptNo); + + /** + * 按照脚本编号查询脚本实体对象 + * @param scriptNo 脚本编号 + * @return 脚本实体对象 + */ + EngineScriptPersistence findByScriptNo(String scriptNo); + + /** + * 查找所有的脚本语言类型 + * @return 数据库中已经存在的脚本语言类型 + */ + @Query("select t.languageType from EngineScriptPersistence t group by t.organizeCode, t.languageType") + List findGroupByLanguageType(); +} diff --git a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/sqlpack/FormHqlPack.java b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/sqlpack/FormHqlPack.java index d913912..3c67c4f 100644 --- a/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/sqlpack/FormHqlPack.java +++ b/modules/i3plus-pojo-form/src/main/java/cn/estsh/i3plus/pojo/form/sqlpack/FormHqlPack.java @@ -1,9 +1,11 @@ package cn.estsh.i3plus.pojo.form.sqlpack; +import cn.estsh.i3plus.pojo.base.bean.BaseBean; import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; import cn.estsh.i3plus.pojo.base.tool.HqlPack; +import cn.estsh.i3plus.pojo.base.util.StringUtil; import cn.estsh.i3plus.pojo.form.bean.*; import org.apache.commons.lang3.StringUtils; @@ -421,4 +423,69 @@ public final class FormHqlPack { return ddlPackBean; } + /** + * 查询脚本持久化 查询条件封装 + * + * @return + */ + public static DdlPackBean packEngineScriptPersistence(EngineScriptPersistence scriptPersistence) { + DdlPackBean packBean = new DdlPackBean(); + DdlPreparedPack.getStringLikerPack(scriptPersistence.getScriptNo(), "scriptNo", packBean); + DdlPreparedPack.getStringRightLikerPack(scriptPersistence.getScriptName(), "scriptName", packBean); + DdlPreparedPack.getNumEqualPack(scriptPersistence.getScriptType(), "scriptType", packBean); + DdlPreparedPack.getNumEqualPack(scriptPersistence.getLanguageType(), "languageType", packBean); + + getStringBuilderPack(scriptPersistence, packBean); + + DdlPreparedPack.getOrderByPack(new Object[]{2}, new String[]{"createDatetime"}, packBean); + return packBean; + } + + /** + * 封装公用查询参数 + * + * @param bean 实体对象 + * @param hqlStr 查询语句 + * @return 封装完成的查询语句 + */ + public static DdlPackBean getStringBuilderPack(BaseBean bean, DdlPackBean hqlStr) { + + // 判断工厂代码是否为空 + if (StringUtils.isNotBlank(bean.getOrganizeCode())) { + DdlPreparedPack.getStringEqualPack(bean.getOrganizeCode(), "organizeCode", hqlStr); + } + + DdlPreparedPack.getStringEqualPack(bean.getCreateUser(), "createUser", hqlStr); + if (StringUtils.isNotBlank(bean.getCreateDateTimeStart()) && StringUtils.isNotBlank(bean.getCreateDateTimeEnd())) { + DdlPreparedPack.timeBuilder(bean.getCreateDateTimeStart(), bean.getCreateDateTimeEnd(), "createDatetime", hqlStr, true); + } + // 封装有效状态、删除状态、创建人和创建时间 + if (StringUtil.isEmpty(bean.getIsValid())) { + DdlPreparedPack.getNumEqualPack(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isValid", hqlStr); + } else { + DdlPreparedPack.getNumEqualPack(bean.getIsValid(), "isValid", hqlStr); + } + DdlPreparedPack.getNumEqualPack(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), "isDeleted", hqlStr); + + return hqlStr; + } + + public static DdlPackBean packHqlScriptHistory(EngineScriptPersistenceHistory history) { + DdlPackBean packBean = new DdlPackBean(); + DdlPreparedPack.getStringEqualPack(history.getScriptNo(), "scriptNo", packBean); + getStringBuilderPack(history, packBean); + + return packBean; + } + + public static DdlPackBean packHqlConfig(BlockFormConfig blockFormConfig) { + DdlPackBean result = new DdlPackBean(); + DdlPreparedPack.getStringLikerPack(blockFormConfig.getConfigCode(), "configCode", result); + DdlPreparedPack.getStringLikerPack(blockFormConfig.getName(), "name", result); + DdlPreparedPack.getNumEqualPack(blockFormConfig.getConfigType(), "configType", result); + DdlPreparedPack.getStringEqualPack(blockFormConfig.getConfigValue(), "configValue", result); + DdlPreparedPack.getNumEqualPack(blockFormConfig.getConfigValueType(), "configValueType", result); + getStringBuilderPack(blockFormConfig, result); + return result; + } } diff --git a/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/platform/UserDetailModel.java b/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/platform/UserDetailModel.java index c747c11..108ea04 100644 --- a/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/platform/UserDetailModel.java +++ b/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/platform/UserDetailModel.java @@ -179,6 +179,9 @@ public class UserDetailModel extends BaseBean { @ApiParam(value = "账号类型") private String userAccountType; + @ApiParam(value ="密码是否过期(枚举:1是,2否)" , example ="-1") + private Integer userPasswordOverdue; + public SysUser getSysUser(){ SysUser user = new SysUser(); diff --git a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/SysUser.java b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/SysUser.java index 0353f26..fd2f42a 100644 --- a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/SysUser.java +++ b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/SysUser.java @@ -110,6 +110,26 @@ public class SysUser extends BaseBean { @Column(name = "USER_ACCOUNT_TYPE") @ApiParam(value = "用户账号类型") private String userAccountType; + + @Column(name = "LOCK_TYPE") + @ApiParam(value = "锁定状态(枚举:1用户长时间未登录锁定,2登录失败次数过多锁定,3管理员手动锁定)", example = "-1") + private Integer lockType; + + @Column(name = "AUTO_UNLOCK_NUM") + @ApiParam(value = "自动解锁次数(大于三次账号将锁定)", example = "0") + private Integer autoUnlockNum; + + @Column(name = "MODIFY_PWD_NUM") + @ApiParam(value = "修改密码的次数", example = "0") + private Integer modifyPwdNum; + + @Column(name = "USER_PASSWORD_OVERDUE") + @ApiParam(value = "密码是否过期", example = "-1") + private Integer userPasswordOverdue; + + @Column(name = "RESET_PASSWORD_TIME") + @ApiParam(value = "重置密码的时间") + private String resetPasswordTime; /********************************** 关系信息 ********************************/ @Column(name = "DEPARTMENT_ID") diff --git a/modules/i3plus-pojo-ptl/src/main/java/cn/estsh/i3plus/pojo/ptl/bean/PtlControl.java b/modules/i3plus-pojo-ptl/src/main/java/cn/estsh/i3plus/pojo/ptl/bean/PtlControl.java index 8eeef68..ba1c78a 100644 --- a/modules/i3plus-pojo-ptl/src/main/java/cn/estsh/i3plus/pojo/ptl/bean/PtlControl.java +++ b/modules/i3plus-pojo-ptl/src/main/java/cn/estsh/i3plus/pojo/ptl/bean/PtlControl.java @@ -66,6 +66,10 @@ public class PtlControl extends BaseBean implements Serializable { public transient Integer lockVersion; @Column(name = "BACKOFF") - @ApiParam("是否需要回调") + @ApiParam("是否需要回调--废弃,使用不同的策略") private Integer backoff; + + @Column(name = "BACK_NAME") + @ApiParam("回调类--反射获取调用execute方法") + private String backName; } diff --git a/modules/i3plus-pojo-ptl/src/main/java/cn/estsh/i3plus/pojo/ptl/model/WhLightOnModel.java b/modules/i3plus-pojo-ptl/src/main/java/cn/estsh/i3plus/pojo/ptl/model/WhLightOnModel.java new file mode 100644 index 0000000..492f26b --- /dev/null +++ b/modules/i3plus-pojo-ptl/src/main/java/cn/estsh/i3plus/pojo/ptl/model/WhLightOnModel.java @@ -0,0 +1,29 @@ +package cn.estsh.i3plus.pojo.ptl.model; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Description : + * @Reference : + * @Author : Castle + * @CreateDate : 2022/10/12 14:54 + * @Modify: + **/ +@Data +@ApiModel(value = "mes-pcn调用亮灯接口") +public class WhLightOnModel { + + @ApiModelProperty(value = "工厂") + private String organizeCode; + + @ApiModelProperty(value = "总成物料号") + private String partNo; + + @ApiModelProperty(value = "亮灯区域") + private String areaNo; + + @ApiModelProperty(value = "操作员") + private String userName; +} diff --git a/modules/i3plus-pojo-softswitch/src/main/java/cn/estsh/i3plus/pojo/softswitch/sqlpack/SoftSwitchHqlPack.java b/modules/i3plus-pojo-softswitch/src/main/java/cn/estsh/i3plus/pojo/softswitch/sqlpack/SoftSwitchHqlPack.java index 021e734..3f01cd0 100644 --- a/modules/i3plus-pojo-softswitch/src/main/java/cn/estsh/i3plus/pojo/softswitch/sqlpack/SoftSwitchHqlPack.java +++ b/modules/i3plus-pojo-softswitch/src/main/java/cn/estsh/i3plus/pojo/softswitch/sqlpack/SoftSwitchHqlPack.java @@ -403,7 +403,7 @@ public class SoftSwitchHqlPack { DdlPreparedPack.getStringEqualPack(suitCaseCode,"suitCaseCodeRdd",ddlPackBean); DdlPreparedPack.getNumEqualPack(processState,"processState",ddlPackBean); - DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()},new String[]{"getDateTime"},ddlPackBean); + DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()},new String[]{"createDatetime"},ddlPackBean); return ddlPackBean; } diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/BasCustomer.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/BasCustomer.java index cf6566e..bb36b77 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/BasCustomer.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/BasCustomer.java @@ -6,15 +6,11 @@ import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiParam; import lombok.Data; -import javax.persistence.Inheritance; -import javax.persistence.InheritanceType; import lombok.EqualsAndHashCode; import org.hibernate.annotations.DynamicInsert; import org.hibernate.annotations.DynamicUpdate; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Table; +import javax.persistence.*; /** * @Description :客户信息表 @@ -79,6 +75,11 @@ public class BasCustomer extends BaseBean { @DynamicField(webFieldType = CommonEnumUtil.FIELD_TYPE.DATETIME, isRequire = 2) private Double safetyStock; + @Column(name = "CHECK_NUMBER") + @ApiParam(value = "校验次数") + @DynamicField(webFieldType = CommonEnumUtil.FIELD_TYPE.NUMBER, isRequire = 2) + private Integer checkNumber; + public double getSafetyStockVal() { return this.safetyStock == null ? 0.0d : this.safetyStock; } diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/BasVendor.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/BasVendor.java index 037b8ba..ee30504 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/BasVendor.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/BasVendor.java @@ -9,6 +9,7 @@ import lombok.Data; import javax.persistence.Inheritance; import javax.persistence.InheritanceType; import lombok.EqualsAndHashCode; +import org.hibernate.annotations.ColumnDefault; import org.hibernate.annotations.DynamicInsert; import org.hibernate.annotations.DynamicUpdate; @@ -121,6 +122,11 @@ public class BasVendor extends BaseBean{ @DynamicField(webFieldType = CommonEnumUtil.FIELD_TYPE.NUMBER, isRequire = 2) private Integer firstLogin; + @Column(name = "IS_SYNC") + @ApiParam("是否同步 1-是,2-否,3-同步失败") + @ColumnDefault("2") + private Integer isSync; + public BasVendor() { } diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsQCMaster.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsQCMaster.java index a2a82f8..0af9770 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsQCMaster.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsQCMaster.java @@ -12,12 +12,7 @@ import lombok.EqualsAndHashCode; import org.hibernate.annotations.DynamicInsert; import org.hibernate.annotations.DynamicUpdate; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Inheritance; -import javax.persistence.InheritanceType; -import javax.persistence.Table; -import javax.persistence.Transient; +import javax.persistence.*; /** * @Description : 质检单主表信息 @@ -142,6 +137,10 @@ public class WmsQCMaster extends BaseBean { @ApiParam(value = "收货数量") public Double qty; + @Column(name = "FILE_PATH",columnDefinition = "text") + @ApiParam(value = "附件地址") + public String filePath; + public int getOrderStatusVal() { return this.orderStatus == null ? 0 : this.orderStatus; } diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/dto/DetailSumDto.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/dto/DetailSumDto.java new file mode 100644 index 0000000..bdf3545 --- /dev/null +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/dto/DetailSumDto.java @@ -0,0 +1,37 @@ +package cn.estsh.i3plus.pojo.wms.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Description : + * @Reference : + * @Author : Castle + * @CreateDate : 2022/4/13 21:48 + * @Modify: + **/ +@ApiModel(value = "集中对账单明细汇总Dto") +@Data +public class DetailSumDto { + @ApiModelProperty(value = "物料号") + private String partNo; + @ApiModelProperty(value = "库存地") + private String whArea; + @ApiModelProperty(value = "来源存储区") + private String srcStoreArea; + @ApiModelProperty(value = "目标存储区") + private String targetStoreArea; + @ApiModelProperty(value = "业务类型") + private String transType; + @ApiModelProperty(value = "单据状态") + private String orderStatus; + @ApiModelProperty(value = "需求数量") + private Double needNum; + @ApiModelProperty(value = "处理数量") + private Double dealNum; + @ApiModelProperty(value = "创建时间") + private String createTime; + @ApiModelProperty(value = "操作时间") + private String operationTime; +} diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/modelbean/DetailSumModel.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/modelbean/DetailSumModel.java new file mode 100644 index 0000000..906b2fe --- /dev/null +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/modelbean/DetailSumModel.java @@ -0,0 +1,44 @@ +package cn.estsh.i3plus.pojo.wms.modelbean; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import io.swagger.annotations.ApiParam; +import lombok.Data; + +/** + * @Description : + * @Reference : + * @Author : Castle + * @CreateDate : 2022/4/13 21:24 + * @Modify: + **/ +@Data +@ApiModel(value = "对账单明细汇总页面入参") +public class DetailSumModel { + @ApiModelProperty(value = "物料号") + public String partNo; + @ApiModelProperty(value = "仓库号") + public String whNo; + @ApiModelProperty(value = "库存地") + public String whArea; + @ApiModelProperty(value = "差异值") + public Double differenceCount; + @ApiModelProperty(value = "业务类型代码") + public String transTypeCode; + @ApiModelProperty(value = "单号") + public String oderNo; + @ApiModelProperty(value = "单据状态") + public String orderStatus; + @ApiModelProperty(value = "来源存储区") + public String srcStoreArea; + @ApiModelProperty(value = "目标存储区") + public String targetStoreArea; + @ApiModelProperty(value = "开始操作时间") + public String startOperationTime; + @ApiModelProperty(value = "结束操作时间") + public String endOperationTime; + @ApiModelProperty(value = "开始创建时间") + public String startCreateTime; + @ApiModelProperty(value = "结束创建时间") + public String endCreateTime; +} diff --git a/pom.xml b/pom.xml index 9d0cf82..0f6357e 100644 --- a/pom.xml +++ b/pom.xml @@ -166,7 +166,7 @@ org.apache.shiro shiro-core - 1.4.0 + 1.10.1