diff --git a/modules/i3plus-pojo-andon/pom.xml b/modules/i3plus-pojo-andon/pom.xml
index 11691be..697131c 100644
--- a/modules/i3plus-pojo-andon/pom.xml
+++ b/modules/i3plus-pojo-andon/pom.xml
@@ -5,7 +5,7 @@
i3plus-pojo
i3plus.pojo
- 1.0-PROD-SNAPSHOT
+ 1.0-TEST-SNAPSHOT
../../pom.xml
4.0.0
diff --git a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/bean/AndonCellAlarmCause.java b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/bean/AndonCellAlarmCause.java
index 2e8c77e..edaab1e 100644
--- a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/bean/AndonCellAlarmCause.java
+++ b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/bean/AndonCellAlarmCause.java
@@ -51,10 +51,12 @@ public class AndonCellAlarmCause extends BaseBean implements Serializable {
@ApiParam(value = "事件描述")
private String acCode;
+ @AnnoOutputColumn(hidden = true)
@Transient
@ApiParam(value = "安灯类型名称")
private String alarmCodeName;
+ @AnnoOutputColumn(hidden = true)
@Transient
@ApiParam(value = "呼叫原因描述")
private String acName;
diff --git a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/CommonMsgModel.java b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/CommonMsgModel.java
index c677396..47588b4 100644
--- a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/CommonMsgModel.java
+++ b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/CommonMsgModel.java
@@ -45,4 +45,7 @@ public class CommonMsgModel implements Serializable {
@ApiModelProperty("默认非异常内部处理,内部异常处理是设置为true")
private boolean errorInnerAction = false;
+ @ApiModelProperty("默认异常入库")
+ private boolean errorInsertFlag = true;
+
}
diff --git a/modules/i3plus-pojo-aps/pom.xml b/modules/i3plus-pojo-aps/pom.xml
index 8ef99a3..f902a7c 100644
--- a/modules/i3plus-pojo-aps/pom.xml
+++ b/modules/i3plus-pojo-aps/pom.xml
@@ -5,7 +5,7 @@
i3plus-pojo
i3plus.pojo
- 1.0-PROD-SNAPSHOT
+ 1.0-TEST-SNAPSHOT
../../pom.xml
4.0.0
diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/Material.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/Material.java
index e597af8..0b1ec28 100644
--- a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/Material.java
+++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/Material.java
@@ -65,10 +65,10 @@ public class Material extends BaseAPS {
@FieldAnnotation(editType = ApsEnumUtil.EDIT_TYPE.DURATION)
private String purchaseLeadTime;
- @Column(name="MANUF_LEAD_TIME")
+ @Column(name="PRODUCT_LEAD_TIME")
@ApiParam(value ="生产提前期")
@FieldAnnotation(editType = ApsEnumUtil.EDIT_TYPE.DURATION)
- private String manufLeadTime;
+ private String productLeadTime;
@Column(name="SHIPMENT_LEAD_TIME")
@ApiParam(value ="配送提前期")
@@ -79,9 +79,9 @@ public class Material extends BaseAPS {
@ApiParam(value ="单位采购量")
private Integer unitPurchase;
- @Column(name="UNIT_MANUF")
+ @Column(name="UNIT_PRODUCT")
@ApiParam(value ="单位生产量")
- private Integer unitManuf;
+ private Integer unitProduct;
@Column(name="UNIT_SHIPMENT")
@ApiParam(value ="单位配送量")
@@ -109,7 +109,7 @@ public class Material extends BaseAPS {
@Column(name="UNIT_PRODUCT_BATCH", columnDefinition = "decimal(18,8)")
@ApiParam(value ="生产批量单位")
- private Double UnitProductBatch;
+ private Double unitProductBatch;
@Column(name="MAX_PUR_BATCH", columnDefinition = "decimal(18,8)")
@ApiParam(value ="最大采购批量")
@@ -143,6 +143,14 @@ public class Material extends BaseAPS {
@FieldAnnotation(editType = ApsEnumUtil.EDIT_TYPE.DURATION)
private String orderBatchPeriod;
+ @Column(name="LABEL_NAME")
+ @ApiParam(value ="标签名称")
+ private String labelName;
+
+ @Column(name="LABEL_COLOR")
+ @ApiParam(value ="标签颜色")
+ private String labelColor;
+
@JsonBackReference
public List getProductRoutings() {
return BeanRelation.list(this, EMaterial.ProductRoutings);
diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/MaterialDeliveryPromise.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/MaterialDeliveryPromise.java
new file mode 100644
index 0000000..dcb7f0b
--- /dev/null
+++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/MaterialDeliveryPromise.java
@@ -0,0 +1,52 @@
+package cn.estsh.i3plus.pojo.aps.bean;
+
+import cn.estsh.i3plus.pojo.aps.annotation.FieldAnnotation;
+import cn.estsh.i3plus.pojo.aps.common.BeanRelation;
+import cn.estsh.i3plus.pojo.aps.holders.EBaseOrder;
+import cn.estsh.i3plus.pojo.aps.holders.EMaterialDeliveryPromise;
+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 javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Table;
+import java.util.Date;
+
+/**
+ * @Description :物料交期承诺
+ * @Reference :
+ * @Author : jason.niu
+ * @CreateDate : 2020-06-11
+ * @Modify:
+ **/
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Entity
+@Table(name = "APS_MATERIAL_DELIVERY_PROMISE")
+@Api("物料")
+public class MaterialDeliveryPromise extends BaseBean {
+ @Column(name="QTY")
+ @ApiParam(value ="到货数量")
+ private Double count;
+
+ @Column(name="DATE_TIME")
+ @ApiParam(value ="到货日期")
+ private Date dateTime;
+
+ @Column(name="MATERIAL_ID")
+ @ApiParam(value ="物料")
+ @FieldAnnotation(relation = "Material", notEmpty = true)
+ private Long materialId;
+
+ public Material getMaterial() {
+ return BeanRelation.get(this, EMaterialDeliveryPromise.Material);
+ }
+
+ public void setMaterial(Material material) {
+ this.materialId = material != null ? material.getId() : 0l;
+ BeanRelation.set(this, EMaterialDeliveryPromise.Material, material);
+ }
+}
diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/SalesOrder.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/SalesOrder.java
index 7baa32a..bd8679a 100644
--- a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/SalesOrder.java
+++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/SalesOrder.java
@@ -51,6 +51,11 @@ public class SalesOrder extends BaseOrder {
@FieldAnnotation(modify = false)
private String calcLeadTime;
+ @Column(name="ALLOW_DELAY_TIME")
+ @ApiParam(value ="允许延期时间")
+ @FieldAnnotation(editType = ApsEnumUtil.EDIT_TYPE.DURATION)
+ private String allowDelayTime;
+
@JsonIgnore
public Work getWork() {
return BeanRelation.get(this, EBaseOrder.Works);
diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/Work.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/Work.java
index 9b898b5..619bbf8 100644
--- a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/Work.java
+++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/Work.java
@@ -84,7 +84,7 @@ public class Work extends BaseAPS {
private Long specifyResourceId;
@Column(name="SPECIFY_PRODUCE_TIME")
- @ApiParam(value ="指定制造时间")
+ @ApiParam(value ="指定生产时间")
private String specifyProduceTime;
@Column(name="SPECIFY_PREV_TIME")
diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/common/BeanRelation.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/common/BeanRelation.java
index 0cd8116..a440ae8 100644
--- a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/common/BeanRelation.java
+++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/common/BeanRelation.java
@@ -388,7 +388,9 @@ public class BeanRelation {
List relaBeans = list(bean, holders[index]);
for (BaseBean relaBean : relaBeans) {
- recursionImpl(relaBean, fun, holders, index + 1);
+ if (relaBean.getId() != bean.getId()) {
+ recursionImpl(relaBean, fun, holders, index + 1);
+ }
}
}
diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/common/DateDuration.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/common/DateDuration.java
index 0e529ea..6d1814a 100644
--- a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/common/DateDuration.java
+++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/common/DateDuration.java
@@ -29,6 +29,10 @@ public class DateDuration {
private double rate = 0.0;
private boolean bValid = false;
+ public DateDuration(int value) {
+ this.time = value;
+ }
+
public DateDuration(String value) {
setValue(value);
}
diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/holders/EMaterialDeliveryPromise.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/holders/EMaterialDeliveryPromise.java
new file mode 100644
index 0000000..abc6ec5
--- /dev/null
+++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/holders/EMaterialDeliveryPromise.java
@@ -0,0 +1,5 @@
+package cn.estsh.i3plus.pojo.aps.holders;
+
+public enum EMaterialDeliveryPromise {
+ Material,
+}
diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/DelaySalesOrder.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/DelaySalesOrder.java
new file mode 100644
index 0000000..540a328
--- /dev/null
+++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/DelaySalesOrder.java
@@ -0,0 +1,70 @@
+package cn.estsh.i3plus.pojo.aps.model;
+
+import cn.estsh.i3plus.pojo.aps.converter.CustomDateDeserializer;
+import cn.estsh.i3plus.pojo.aps.converter.CustomDateSerializer;
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import io.swagger.annotations.ApiParam;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @Description : 延期订单
+ * @Reference :
+ * @Author : jason.niu
+ * @CreateDate : 2020-06-11
+ * @Modify:
+ **/
+@Data
+public class DelaySalesOrder {
+
+ @ApiParam(value ="订单ID")
+ private Long orderId;
+
+ @ApiParam(value ="订单编码")
+ private String orderCode;
+
+ @ApiParam(value ="订单名称")
+ private String orderName;
+
+ @ApiParam(value ="物料编码")
+ private String materialCode;
+
+ @ApiParam(value ="物料名称")
+ private String materialName;
+
+ @ApiParam(value ="订单数量")
+ private Double count;
+
+ @ApiParam(value ="最晚结束时间")
+ @JsonSerialize(using = CustomDateSerializer.class)
+ @JsonDeserialize(using = CustomDateDeserializer.class)
+ private Date let;
+
+ @ApiParam(value ="计划开始时间")
+ @JsonSerialize(using = CustomDateSerializer.class)
+ @JsonDeserialize(using = CustomDateDeserializer.class)
+ private Date planStart;
+
+ @ApiParam(value ="计划结束时间")
+ @JsonSerialize(using = CustomDateSerializer.class)
+ @JsonDeserialize(using = CustomDateDeserializer.class)
+ private Date planEnd;
+
+ @ApiParam(value ="总跨度时间")
+ private String overTime;
+
+ @ApiParam(value ="总生产时间")
+ private String productTime;
+
+ @ApiParam(value ="延期时间")
+ private String delayTime;
+
+ @ApiParam(value ="允许的最大延期时间")
+ private String allowDelayTime;
+
+ // 0正常显示,1显示黄色,2显示红色
+ @ApiParam(value ="背景显示颜色")
+ private Integer backgroundColor;
+}
diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/LargeSpanOrder.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/LargeSpanOrder.java
new file mode 100644
index 0000000..5ddc2dd
--- /dev/null
+++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/LargeSpanOrder.java
@@ -0,0 +1,66 @@
+package cn.estsh.i3plus.pojo.aps.model;
+
+import cn.estsh.i3plus.pojo.aps.converter.CustomDateDeserializer;
+import cn.estsh.i3plus.pojo.aps.converter.CustomDateSerializer;
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import io.swagger.annotations.ApiParam;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @Description : 大跨度订单
+ * @Reference :
+ * @Author : jason.niu
+ * @CreateDate : 2020-06-11
+ * @Modify:
+ **/
+@Data
+public class LargeSpanOrder {
+ @ApiParam(value ="订单ID")
+ private Long orderId;
+
+ @ApiParam(value ="订单编码")
+ private String orderCode;
+
+ @ApiParam(value ="订单名称")
+ private String orderName;
+
+ @ApiParam(value ="物料编码")
+ private String materialCode;
+
+ @ApiParam(value ="物料名称")
+ private String materialName;
+
+ @ApiParam(value ="订单数量")
+ private Double count;
+
+ @ApiParam(value ="最晚结束时间")
+ @JsonSerialize(using = CustomDateSerializer.class)
+ @JsonDeserialize(using = CustomDateDeserializer.class)
+ private Date let;
+
+ @ApiParam(value ="计划开始时间")
+ @JsonSerialize(using = CustomDateSerializer.class)
+ @JsonDeserialize(using = CustomDateDeserializer.class)
+ private Date planStart;
+
+ @ApiParam(value ="计划结束时间")
+ @JsonSerialize(using = CustomDateSerializer.class)
+ @JsonDeserialize(using = CustomDateDeserializer.class)
+ private Date planEnd;
+
+ @ApiParam(value ="总跨度时间")
+ private String overTime;
+
+ @ApiParam(value ="总生产时间")
+ private String productTime;
+
+ @ApiParam(value ="跨度时间")
+ private String spanTime;
+
+ // 0正常显示,1显示黄色,2显示红色
+ @ApiParam(value ="背景显示颜色")
+ private Integer backgroundColor;
+}
diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/MaterialDeliveryAnalyze.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/MaterialDeliveryAnalyze.java
new file mode 100644
index 0000000..c7a0500
--- /dev/null
+++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/MaterialDeliveryAnalyze.java
@@ -0,0 +1,60 @@
+package cn.estsh.i3plus.pojo.aps.model;
+
+import cn.estsh.i3plus.pojo.aps.converter.CustomDateDeserializer;
+import cn.estsh.i3plus.pojo.aps.converter.CustomDateSerializer;
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import io.swagger.annotations.ApiParam;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @Description : 物料交期分析表
+ * @Reference :
+ * @Author : jason.niu
+ * @CreateDate : 2020-06-11
+ * @Modify:
+ **/
+@Data
+public class MaterialDeliveryAnalyze {
+ @ApiParam(value ="订单ID")
+ private Long orderId;
+
+ @ApiParam(value ="订单编码")
+ private String orderCode;
+
+ @ApiParam(value ="订单名称")
+ private String orderName;
+
+ @ApiParam(value ="物料编码")
+ private String materialCode;
+
+ @ApiParam(value ="物料名称")
+ private String materialName;
+
+ @ApiParam(value ="标签名称")
+ private String labelName;
+
+ @ApiParam(value ="标签颜色")
+ private String labelColor;
+
+ @ApiParam(value ="需求数量")
+ private Double requireCount;
+
+ @ApiParam(value ="需求日期")
+ @JsonSerialize(using = CustomDateSerializer.class)
+ @JsonDeserialize(using = CustomDateDeserializer.class)
+ private Date requireDate;
+
+ @ApiParam(value ="最早到货日期")
+ @JsonSerialize(using = CustomDateSerializer.class)
+ @JsonDeserialize(using = CustomDateDeserializer.class)
+ private Date arrivalDate;
+
+ // 0正常显示,1显示红色
+ @ApiParam(value ="背景显示颜色")
+ private Integer backgroundColor;
+
+ private Double count;
+}
diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/PrematureProduct.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/PrematureProduct.java
new file mode 100644
index 0000000..4080aa9
--- /dev/null
+++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/PrematureProduct.java
@@ -0,0 +1,61 @@
+package cn.estsh.i3plus.pojo.aps.model;
+
+import cn.estsh.i3plus.pojo.aps.converter.CustomDateDeserializer;
+import cn.estsh.i3plus.pojo.aps.converter.CustomDateSerializer;
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import io.swagger.annotations.ApiParam;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @Description : 过早生产
+ * @Reference :
+ * @Author : jason.niu
+ * @CreateDate : 2020-06-11
+ * @Modify:
+ **/
+@Data
+public class PrematureProduct {
+ @ApiParam(value ="订单ID")
+ private Long orderId;
+
+ @ApiParam(value ="订单编码")
+ private String orderCode;
+
+ @ApiParam(value ="订单名称")
+ private String orderName;
+
+ @ApiParam(value ="物料编码")
+ private String materialCode;
+
+ @ApiParam(value ="物料名称")
+ private String materialName;
+
+ @ApiParam(value ="订单编码")
+ private Double count;
+
+ @ApiParam(value ="最晚结束时间")
+ @JsonSerialize(using = CustomDateSerializer.class)
+ @JsonDeserialize(using = CustomDateDeserializer.class)
+ private Date let;
+
+ @ApiParam(value ="计划开始时间")
+ @JsonSerialize(using = CustomDateSerializer.class)
+ @JsonDeserialize(using = CustomDateDeserializer.class)
+ private Date planStart;
+
+ @ApiParam(value ="计划结束时间")
+ @JsonSerialize(using = CustomDateSerializer.class)
+ @JsonDeserialize(using = CustomDateDeserializer.class)
+ private Date planEnd;
+
+ @ApiParam(value ="提前完成时间")
+ private String times;
+
+ // 0正常显示,1显示红色
+ @ApiParam(value ="背景显示颜色")
+ private Integer backgroundColor;
+
+}
diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/ScheduleAnalyze.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/ScheduleAnalyze.java
new file mode 100644
index 0000000..7692b3d
--- /dev/null
+++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/ScheduleAnalyze.java
@@ -0,0 +1,43 @@
+package cn.estsh.i3plus.pojo.aps.model;
+
+import cn.estsh.i3plus.pojo.aps.converter.CustomDateDeserializer;
+import cn.estsh.i3plus.pojo.aps.converter.CustomDateSerializer;
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import io.swagger.annotations.ApiParam;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @Description : 排程结果分析及建议
+ * @Reference :
+ * @Author : jason.niu
+ * @CreateDate : 2020-06-11
+ * @Modify:
+ **/
+@Data
+public class ScheduleAnalyze {
+
+ @ApiParam(value ="工作编码")
+ private String workCode;
+
+ @ApiParam(value ="数量")
+ private Double count;
+
+ @ApiParam(value ="计划开始时间")
+ @JsonSerialize(using = CustomDateSerializer.class)
+ @JsonDeserialize(using = CustomDateDeserializer.class)
+ private Date planStart;
+
+ @ApiParam(value ="计划结束时间")
+ @JsonSerialize(using = CustomDateSerializer.class)
+ @JsonDeserialize(using = CustomDateDeserializer.class)
+ private Date planEnd;
+
+ @ApiParam(value ="问题描述")
+ private String describe;
+
+ @ApiParam(value ="解决方案")
+ private String solution;
+}
diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/repository/MaterialDeliveryPromiseRepository.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/repository/MaterialDeliveryPromiseRepository.java
new file mode 100644
index 0000000..afe26b8
--- /dev/null
+++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/repository/MaterialDeliveryPromiseRepository.java
@@ -0,0 +1,9 @@
+package cn.estsh.i3plus.pojo.aps.repository;
+
+import cn.estsh.i3plus.pojo.aps.bean.MaterialDeliveryPromise;
+import org.springframework.data.repository.CrudRepository;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public interface MaterialDeliveryPromiseRepository extends CrudRepository {
+}
diff --git a/modules/i3plus-pojo-aps/src/main/resources/relations/MaterialDeliveryPromise.xml b/modules/i3plus-pojo-aps/src/main/resources/relations/MaterialDeliveryPromise.xml
new file mode 100644
index 0000000..310c255
--- /dev/null
+++ b/modules/i3plus-pojo-aps/src/main/resources/relations/MaterialDeliveryPromise.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/modules/i3plus-pojo-base/pom.xml b/modules/i3plus-pojo-base/pom.xml
index 577686d..d2521de 100644
--- a/modules/i3plus-pojo-base/pom.xml
+++ b/modules/i3plus-pojo-base/pom.xml
@@ -5,7 +5,7 @@
i3plus-pojo
i3plus.pojo
- 1.0-PROD-SNAPSHOT
+ 1.0-TEST-SNAPSHOT
../../pom.xml
4.0.0
diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/common/Pager.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/common/Pager.java
index b961226..0a90b00 100644
--- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/common/Pager.java
+++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/common/Pager.java
@@ -31,6 +31,27 @@ public class Pager {
@ApiParam("翻页操作")
private String pageMethod;
+ /* 默认最小数量分页 */
+ private static final Pager min;
+ /* 默认最大数量分页 */
+ private static final Pager max;
+ /* 默认数量分页 */
+ private static final Pager defaultPager;
+
+ static {
+ min = new Pager();
+ min.setCurrentPage(1);
+ min.setPageSize(10);
+
+ max = new Pager();
+ max.setCurrentPage(1);
+ max.setPageSize(65535);
+
+ defaultPager = new Pager();
+ defaultPager.setCurrentPage(1);
+ defaultPager.setPageSize(100);
+ }
+
public Pager() {
}
@@ -231,6 +252,30 @@ public class Pager {
return currentPage > 1;
}
+ /**
+ * 获取默认最小分页数量
+ * @return
+ */
+ public static Pager defaultMinPager(){
+ return min;
+ }
+
+ /**
+ * 默认最大分页数量
+ * @return
+ */
+ public static Pager defaultMaxPager(){
+ return max;
+ }
+
+ /**
+ * 默认分页数量
+ * @return
+ */
+ public static Pager defaultPager(){
+ return defaultPager;
+ }
+
@Override
public String toString() {
return "Pager{" +
diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/common/XStreamFactory.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/common/XStreamFactory.java
index b1738c3..a5c3a42 100644
--- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/common/XStreamFactory.java
+++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/common/XStreamFactory.java
@@ -1,22 +1,33 @@
package cn.estsh.i3plus.pojo.base.common;
import cn.estsh.i3plus.pojo.base.annotation.XStreamCDATA;
+import com.alibaba.fastjson.JSON;
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.annotations.XStreamAlias;
+import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
import com.thoughtworks.xstream.core.util.QuickWriter;
import com.thoughtworks.xstream.io.HierarchicalStreamWriter;
import com.thoughtworks.xstream.io.naming.NameCoder;
import com.thoughtworks.xstream.io.naming.NoNameCoder;
import com.thoughtworks.xstream.io.xml.PrettyPrintWriter;
import com.thoughtworks.xstream.io.xml.XppDomDriver;
+import lombok.Data;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+
+import java.io.Serializable;
import java.io.Writer;
import java.lang.reflect.Field;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.UUID;
+
+import static cn.estsh.i3plus.pojo.base.common.XStreamFactory.toJavaBean;
+import static cn.estsh.i3plus.pojo.base.common.XStreamFactory.toXml;
/**
* @Description : Xml 工厂
- * 官方DOC: https://www.tutorialspoint.com/xstream/xstream_discussion.htm
+ * 官方DOC: https://www.tutorialspoint.com/xstream/xstream_discussion.htm
* @Reference :
* @Author : wei.peng
* @CreateDate : 19-7-23 下午5:58
@@ -120,9 +131,9 @@ public class XStreamFactory {
}
-
/**
* Javabean 转XML
+ *
* @param
* @return xml字符串
*/
@@ -132,8 +143,8 @@ public class XStreamFactory {
for (int i = 1; i < RETRY_NUM; i++) {
try {
return headLine + xStream.toXML(t);
- }catch (Exception e){
- LOGGER.error("Bean To Xml Error Message:{} Number:{}",e.getMessage(),i);
+ } catch (Exception e) {
+ LOGGER.error("Bean To Xml Error Message:{} Number:{}", e.getMessage(), i);
}
}
return null;
@@ -141,6 +152,7 @@ public class XStreamFactory {
/**
* Javabean 转XML
+ *
* @param
* @return xml字符串
*/
@@ -159,101 +171,108 @@ public class XStreamFactory {
public static T toJavaBean(String xmlStr) {
return (T) xStream.fromXML(xmlStr);
}
-//
-// public static void main(String[] args) {
-// User u = new User(0, "zhangsan0", "zhangsanpwd0");
-// User u1 = new User(1, "zhangsan1", "zhangsanpwd");
-// User u2 = new User(2, "zhangsan2", "zhangsanpwd");
-// User u3 = new User(3, "zhangsan3", "zhangsanpwd");
-//
-// Role r1 = new Role(1, "Admin", "Admin1");
-// Role r2 = new Role(2, "Admin", "Admin2");
-// Role r3 = new Role(3, "Admin", "Admin3");
-//
-// DataAdapter ad = new DataAdapter(10086L,UUID.randomUUID().toString(),"sssfwef",u1);
-// u1.setRole(r1);
-//
-// u2.getRoleList().add(r1);
-// u2.getRoleList().add(r2);
-// u2.getRoleList().add(r3);
-//
-// u3.setRole(r1);
-// u3.getRoleList().add(r2);
-// u3.getRoleList().add(r3);
-//
-// System.out.println(toXml(u) + "\n\n ");
-// System.out.println(toXml(u1) + "\n\n ");
-// System.out.println(toXml(u2) + "\n\n ");
-// System.out.println(toXml(u3) + "\n\n ");
-// System.out.println(toXml(ad) + "\n\n ");
-//
-// System.out.println(JSON.toJSONString(toJavaBean(toXml(ad))));
-//
-// }
}
+
//
-//@Data
-//@XStreamAlias("DataAdapter")
-////对应carInfos元素
-//class DataAdapter implements Serializable {
-//
-// @XStreamAsAttribute
-// private Long scId;
-// private String key;
-// @XStreamCDATA
-// private String resultData;
-//
-// private Object auth;
-//
-// public DataAdapter(Long scId, String key, String resultData, Object auth) {
-// this.scId = scId;
-// this.key = key;
-// this.resultData = resultData;
-// this.auth = auth;
-// }
-//}
-//
-//@Data
-//@XStreamAlias("user")
-////对应carInfos元素
-//class User implements Serializable {
-// private static final long serialVersionUID = -7554548655397869156L;
-//
-// @XStreamAsAttribute
-// private Integer id;
-// private String loginName;
-// private String loginPwd;
-//
-// private Role role;
-// private List roleList = new ArrayList();
-// private List roleArray;
-//
-// public User() {
-// }
-//
-// public User(Integer id, String loginName, String loginPwd) {
-// this.id = id;
-// this.loginName = loginName;
-// this.loginPwd = loginPwd;
-// }
-//}
-//
-//@Data
-//@XStreamAlias("role")
-////对应carInfos元素
-//class Role implements Serializable {
-// private static final long serialVersionUID = -3134157833696958743L;
-// @XStreamAsAttribute
-// private Integer id;
-// private String roleName;
-// private String roleCode;
-//
-// public Role() {
-// }
-//
-// public Role(Integer id, String roleName, String roleCode) {
-// this.id = id;
-// this.roleName = roleName;
-// this.roleCode = roleCode;
-// }
-//}
\ No newline at end of file
+class Test {
+ public static void main(String[] args) {
+ User u = new User(0, "zhangsan0", "zhangsanpwd0");
+ User u1 = new User(1, "zhangsan1", "zhangsanpwd");
+ User u2 = new User(2, "zhangsan2", "zhangsanpwd");
+ User u3 = new User(3, "zhangsan3", "zhangsanpwd");
+
+ Role r1 = new Role(1, "Admin", "Admin1");
+ Role r2 = new Role(2, "Admin", "Admin2");
+ Role r3 = new Role(3, "Admin", "Admin3");
+
+ DataAdapter ad = new DataAdapter(10086L, UUID.randomUUID().toString(), "sssfwef", u1);
+ u1.setRole(r1);
+
+ u2.getRoleList().add(r1);
+ u2.getRoleList().add(r2);
+ u2.getRoleList().add(r3);
+
+ u3.setRole(r1);
+ u3.getRoleList().add(r2);
+ u3.getRoleList().add(r3);
+
+ System.out.println(toXml(u) + "\n\n ");
+ System.out.println(toXml(u1) + "\n\n ");
+ System.out.println(toXml(u2) + "\n\n ");
+ System.out.println(toXml(u3) + "\n\n ");
+ System.out.println(toXml(ad) + "\n\n ");
+
+ System.out.println(JSON.toJSONString(toJavaBean(toXml(ad))));
+
+ }
+
+
+ @Data
+ @XStreamAlias("DataAdapter")
+ static
+//对应carInfos元素
+ class DataAdapter implements Serializable {
+
+ @XStreamAsAttribute
+ private Long scId;
+ private String key;
+ @XStreamCDATA
+ private String resultData;
+
+ private Object auth;
+
+ public DataAdapter(Long scId, String key, String resultData, Object auth) {
+ this.scId = scId;
+ this.key = key;
+ this.resultData = resultData;
+ this.auth = auth;
+ }
+ }
+
+ @Data
+ @XStreamAlias("user")
+ static
+//对应carInfos元素
+ class User implements Serializable {
+ private static final long serialVersionUID = -7554548655397869156L;
+
+ @XStreamAsAttribute
+ private Integer id;
+ private String loginName;
+ private String loginPwd;
+
+ private Role role;
+ private List roleList = new ArrayList();
+ private List roleArray;
+
+ public User() {
+ }
+
+ public User(Integer id, String loginName, String loginPwd) {
+ this.id = id;
+ this.loginName = loginName;
+ this.loginPwd = loginPwd;
+ }
+ }
+
+ @Data
+ @XStreamAlias("role")
+ static
+//对应carInfos元素
+ class Role implements Serializable {
+ private static final long serialVersionUID = -3134157833696958743L;
+ @XStreamAsAttribute
+ private Integer id;
+ private String roleName;
+ private String roleCode;
+
+ public Role() {
+ }
+
+ public Role(Integer id, String roleName, String roleCode) {
+ this.id = id;
+ this.roleName = roleName;
+ this.roleCode = roleCode;
+ }
+ }
+}
\ No newline at end of file
diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/ApsEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/ApsEnumUtil.java
index 88ac5be..23def74 100644
--- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/ApsEnumUtil.java
+++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/ApsEnumUtil.java
@@ -1110,4 +1110,33 @@ public class ApsEnumUtil {
return description;
}
}
+
+ /**
+ * 订单状态
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum ORDER_STATUS {
+ NOPLAN("NOPLAN", "未计划"),
+ PLANDONE("PLANDONE", "计划完毕"),
+ INDICATIONDONE("INDICATIONDONE", "指示完毕"),
+ CONFIRM("CONFIRM", "确认"),
+ STARTPRODUCT("STARTPRODUCT", "开始生产"),
+ FINISH("FINISH", "完成");
+
+ private String value;
+ private String description;
+
+ ORDER_STATUS(String value, String description) {
+ this.value = value;
+ this.description = description;
+ }
+
+ public String getValue() {
+ return value;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+ }
}
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 241e028..14ef7d8 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
@@ -1069,6 +1069,88 @@ public class BlockFormEnumUtil {
/**
+ * 元素编辑信息
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum PROPERTY_EDIT_STATUS {
+ ON(1, "ON", "开启"),
+ OFF(2, "OFF", "关闭"),
+ READONLY(3, "READONLY", "只读");
+
+ private int value;
+ private String code;
+ private String description;
+
+ private PROPERTY_EDIT_STATUS(int value, String code, String description) {
+ this.value = value;
+ this.code = code;
+ this.description = description;
+ }
+
+ public int getValue() {
+ return value;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ 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].code;
+ }
+ }
+ return tmp;
+ }
+
+ public static int codeOfValue(String code) {
+ int tmp = 1;
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].code.equals(code)) {
+ 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 PROPERTY_EDIT_STATUS 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].code.equals(code)) {
+ tmp = values()[i].description;
+ }
+ }
+ return tmp;
+ }
+ }
+
+ /**
* 属性字段排序规则
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/BlockSoftSwitchEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/BlockSoftSwitchEnumUtil.java
index 0b8c98b..dd4bd75 100644
--- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/BlockSoftSwitchEnumUtil.java
+++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/BlockSoftSwitchEnumUtil.java
@@ -689,8 +689,9 @@ public class BlockSoftSwitchEnumUtil {
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum FTP_ENCODE {
- CONN_SUCCESS(10, "UTF-8", "UTF-8"),
- CONN_FAILURE(20, "GBK", "GBK");
+ UTF8(10, "UTF-8", "UTF-8"),
+ GBK(20, "GBK", "GBK"),
+ ISO88591(30, "ISO-8859-1", "ISO-8859-1");
private int value;
private String encode;
diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/ImppEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/ImppEnumUtil.java
index 0574e44..64a9161 100644
--- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/ImppEnumUtil.java
+++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/ImppEnumUtil.java
@@ -1234,4 +1234,47 @@ public class ImppEnumUtil {
return null;
}
}
+
+ /**
+ * 密码策略
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum CHECK_TEXT {
+ PASSWORD_VERIFY(1, "保存策略"),
+ PASSWORD_LOGIN(2, "登录策略");
+ private int value;
+ private String description;
+
+ public int getValue() {
+ return value;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ private CHECK_TEXT(int value, String description) {
+ this.value = value;
+ this.description = 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;
+ }
+
+ public static CHECK_TEXT valueOfEnum(int val) {
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value == val) {
+ return values()[i];
+ }
+ }
+ return null;
+ }
+ }
}
diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/MdmEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/MdmEnumUtil.java
index e8c5618..84e7427 100644
--- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/MdmEnumUtil.java
+++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/MdmEnumUtil.java
@@ -123,7 +123,7 @@ public class MdmEnumUtil {
public enum MDM_SYNC_TYPE{
INSERT(1, "新增"),
UPDATE(2, "修改"),
- DELETE(2, "删除");
+ DELETE(3, "删除");
private int value;
private String description;
diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/MesEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/MesEnumUtil.java
index b39e8ce..4eaace4 100644
--- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/MesEnumUtil.java
+++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/MesEnumUtil.java
@@ -70,8 +70,9 @@ public class MesEnumUtil {
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum WORK_MODULE_TYPE {
MONITOR_MODULE(10, "监听组件"),
- REVEAL_MODULE(10, "展示组件"),
- BUTTON_MODULE(30, "按钮组件");
+ REVEAL_MODULE(20, "展示组件"),
+ BUTTON_MODULE(30, "按钮组件"),
+ TIMING_MODULE(40, "定时组件");
private int value;
private String description;
@@ -1143,6 +1144,16 @@ public class MesEnumUtil {
return tmp;
}
+ 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 Integer descriptionOfValue(String description) {
Integer tmp = null;
for (int i = 0; i < values().length; i++) {
@@ -1903,7 +1914,13 @@ public class MesEnumUtil {
MES_KPSN_RULE(410, "kpsnRuleExcelService", "关键件条码校验规则,支持编辑"),
MES_QUEUE_JIT_ACTUAL(420, "queueJitActualExcelService", "客户JIT生产队列"),
MES_PART_BOM_IMPORT(430, "partBomExcelService", "散件BOM导入"),
- MES_PLAN_ORDER_BATCH_COMPILE(440, "planOrderBatchCompileExcelService", "生产计划批量编制,支持编辑");
+ MES_PLAN_ORDER_BATCH_COMPILE(440, "planOrderBatchCompileExcelService", "生产计划批量编制,支持编辑"),
+ MES_WORK_ORDER_PAINT(450, "workOrderPaintExcelService", "生产工单-涂装"),
+ NEW_SCATTER_BOM(460, "scatterBomCfgExcelService", "新散件BOM导入"),
+ ENCODE_RULE_MAP(470, "mesEncodeRuleMapExcelService", "编码规则映射导入"),
+ SCATTER_PART_PROD_CFG(480, "scatterPartProdCfgExcelService", "散件零件生产配置"),
+ MES_WORK_ORDER_PAINT_ZS(490, "planZSOrderExcelService", "生产工单-注塑"),
+ MES_KP_DATA(500, "kpDataExcelService", "物料关键数据关系");
private int value;
private String service;
@@ -3246,7 +3263,8 @@ public class MesEnumUtil {
BH_ORDER(40, "B&H工单"),
JIT_ORDER(50, "JIT工单"),
STOCK_ORDER(60, "库存工单"),
- REPAIR(70, "返修插单");
+ REPAIR(70, "返修插单"),
+ FICTIVE(80, "虚拟工单");
private int value;
private String description;
@@ -3273,6 +3291,16 @@ public class MesEnumUtil {
}
return tmp;
}
+
+ public static Integer descriptionOfValue(String description) {
+ Integer tmp = null;
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].description.equals(description)) {
+ tmp = values()[i].value;
+ }
+ }
+ return tmp;
+ }
}
/**
@@ -3482,6 +3510,7 @@ public class MesEnumUtil {
PACKAGE_SCAN(35, "打包扫描"),
INSTOCKED(40, "入库"),
SHIPING(50, "发运"),
+ REDO(60, "重做"),
CLOSE(90, "关闭"),
;
@@ -3632,7 +3661,8 @@ public class MesEnumUtil {
QUALIFIED(10, "合格"),
DEFECTED(20, "不合格"),
SCRAPED(30, "报废"),
- DISMANTLED(40, "已拆解");
+ DISMANTLED(40, "已拆解"),
+ PRE_CHECK(50, "待检测");
private int value;
private String description;
@@ -3829,7 +3859,8 @@ public class MesEnumUtil {
QUALIFIED(10, "number", "数字"),
DEFECTED(20, "text", "字符串"),
SCRAPED(30, "select", "可选值"),
- BUTTON(40, "button", "按钮");
+ BUTTON(40, "button", "按钮"),
+ WINDOW(50, "window", "开窗");
private int value;
private String code;
@@ -4893,7 +4924,8 @@ public class MesEnumUtil {
public enum PART_TRAIT {
NORMAL(10, "正常件"),
FICTITIOUS_ASSEMBLY(20, "虚拟散件总成"),
- FICTITIOUS_HALF_ASSEMBLY(30, "虚拟散件半总成");
+ FICTITIOUS_HALF_ASSEMBLY(30, "虚拟散件半总成"),
+ FICTIVE(40, "虚拟件");
private int value;
private String description;
@@ -5082,6 +5114,16 @@ public class MesEnumUtil {
}
return tmp;
}
+
+ public static Integer descriptionOfValue(String description) {
+ Integer tmp = null;
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].description.equals(description)) {
+ tmp = values()[i].value;
+ }
+ }
+ return tmp;
+ }
}
/**
@@ -5774,6 +5816,15 @@ public class MesEnumUtil {
}
return tmp;
}
+ public static String codeOfValue(String code) {
+ String tmp = null;
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].code.equals(code)) {
+ tmp = values()[i].value;
+ }
+ }
+ return tmp;
+ }
}
/**
@@ -6277,4 +6328,196 @@ public class MesEnumUtil {
return tmp;
}
}
+
+ /**
+ * 停机类型
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum STOP_MACHINE_TYPE {
+ TIMER_TIME_OUT(10, "计时器超时停机"),
+ DELAY_HELP(20, "延时帮助停机"),
+ URGENT_STOP(30, "急停停机");
+
+ private int value;
+ private String description;
+
+ STOP_MACHINE_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;
+ }
+
+ 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;
+ }
+ }
+
+
+ /**
+ * 选项代码
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum OPTION_CODE {
+ EXISTENCE("+", "存在"),
+ NON_EXISTENCE("-", "不存在"),
+ BRACKET_OPERATION("()", "括号运算"),
+ AND("&", " 与"),
+ OR("|", "或");
+
+ private String value;
+ private String description;
+
+ OPTION_CODE(String value, String description) {
+ this.value = value;
+ this.description = description;
+ }
+
+ public String getValue() {
+ return value;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public static String valueOfDescription(String value) {
+ String tmp = null;
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value.equals(value)) {
+ tmp = values()[i].description;
+ }
+ }
+ return tmp;
+ }
+ }
+
+ /**
+ * 条码生成模式
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum GENERATE_TYPE {
+ RELEASE_GENERATION(10, "下达生成"),
+ STATION_GENERATION(20, "工位生成");
+
+ private Integer value;
+ private String description;
+
+ GENERATE_TYPE(Integer value, String description) {
+ this.value = value;
+ this.description = description;
+ }
+
+ public Integer getValue() {
+ return value;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public static String valueOfDescription(Integer value) {
+ String tmp = null;
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value.equals(value)) {
+ tmp = values()[i].description;
+ }
+ }
+ return tmp;
+ }
+ }
+
+ /**
+ * 客户JIT预装队列状态
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum QUEUE_JIT_PLAN_STATUS {
+ CREATE(10, "创建"),
+ RELEASED(20, "已释放"),
+ ERROR(999, "异常");
+
+ private Integer value;
+ private String description;
+
+ QUEUE_JIT_PLAN_STATUS(Integer value, String description) {
+ this.value = value;
+ this.description = description;
+ }
+
+ public Integer getValue() {
+ return value;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public static String valueOfDescription(Integer value) {
+ String tmp = null;
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value.equals(value)) {
+ tmp = values()[i].description;
+ }
+ }
+ return tmp;
+ }
+ }
+
+ /**
+ * 客户JIT预装队列 工单类型
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum QUEUE_JIT_PLAN_WORK_ORDER_TYPE {
+ SPARE_PART_PRODUCTION(10, "备件生产"),
+ REPRODUCTION_RMS(20, "重新生产-报功"),
+ REPRODUCTION_NOT_RMS(30, "重新生产-不报功");
+
+ private Integer value;
+ private String description;
+
+ QUEUE_JIT_PLAN_WORK_ORDER_TYPE(Integer value, String description) {
+ this.value = value;
+ this.description = description;
+ }
+
+ public Integer getValue() {
+ return value;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public static String valueOfDescription(Integer value) {
+ String tmp = null;
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value.equals(value)) {
+ tmp = values()[i].description;
+ }
+ }
+ return tmp;
+ }
+ }
}
diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/MesPcnEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/MesPcnEnumUtil.java
index 9493cae..358e5d0 100644
--- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/MesPcnEnumUtil.java
+++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/MesPcnEnumUtil.java
@@ -18,8 +18,9 @@ public class MesPcnEnumUtil {
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum WORK_MODULE_TYPE {
MONITOR_MODULE(10, "监听组件"),
- REVEAL_MODULE(10, "展示组件"),
- BUTTON_MODULE(30, "按钮组件");
+ REVEAL_MODULE(20, "展示组件"),
+ BUTTON_MODULE(30, "按钮组件"),
+ TIMING_MODULE(40, "定时组件");
private int value;
private String description;
@@ -716,7 +717,8 @@ public class MesPcnEnumUtil {
QUALIFIED(10, "合格"),
DEFECTED(20, "不合格"),
SCRAPED(30, "报废"),
- DISMANTLED(40, "已拆解");
+ DISMANTLED(40, "已拆解"),
+ PRE_CHECK(50, "待检测");
private int value;
private String description;
@@ -2023,7 +2025,8 @@ public class MesPcnEnumUtil {
NORMAL(10, "正常"),
CLOSE(20, "关闭"),
- FINISH(30, "完成");
+ FINISH(30, "完成"),
+ OFF_LINE_REWORK(40, "线下返修");
private int value;
private String description;
@@ -2376,6 +2379,7 @@ public class MesPcnEnumUtil {
PACKAGE_SCAN(35, "打包扫描"),
INSTOCKED(40, "入库"),
SHIPPING(50, "发运"),
+ REDO(60, "重做"),
CLOSE(90, "关闭");
private int value;
@@ -2403,6 +2407,16 @@ public class MesPcnEnumUtil {
}
return tmp;
}
+
+ 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;
+ }
}
@@ -2476,7 +2490,7 @@ public class MesPcnEnumUtil {
public enum PACKAGE_PRINT_STATUS {
UNPRINTED(10, "未打印"),
- PRINTED(20, "打印");
+ PRINTED(20, "已打印");
private int value;
private String description;
@@ -3398,6 +3412,7 @@ public class MesPcnEnumUtil {
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum FSM_STATE_TYPE {
BEGIN(10, "begin", "开始状态点"),
+ BACK(20, "back", "回退状态点"),
END(40, "end", "结束状态点");
private int value;
@@ -3600,7 +3615,8 @@ public class MesPcnEnumUtil {
START(10, "START", "开始状态"),
EXECUTING(20, "EXECUTING", "执行中状态"),
TERMINATE(30, "TERMINATE", "中断状态"),
- FINISH(40, "FINISH", "完成状态");
+ FINISH(40, "FINISH", "完成状态"),
+ BACK(99, "BACK", "回退状态");
private int value;
private String code;
@@ -4114,4 +4130,199 @@ public class MesPcnEnumUtil {
return tmp;
}
}
+
+ /**
+ * plc状态
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum MES_PLC_STATUS {
+
+ UN_CONNECT(0, "断开"),
+ CONNECT(1, "连接");
+
+ private int value;
+ private String description;
+
+ MES_PLC_STATUS(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;
+ }
+
+ 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;
+ }
+ }
+
+ /**
+ * MES_生产队列散件清单 选配类型
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum MES_OPTION_TYPE {
+
+ OPTION_PART(1, "选配件"),
+ BOM_DISASSEMBLY(2, "BOM拆解");
+
+ private int value;
+ private String description;
+
+ MES_OPTION_TYPE(int value, String description) {
+ this.value = value;
+ this.description = description;
+ }
+
+ public int getValue() {
+ return value;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ 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 Integer descriptionOfValue(String description) {
+ Integer tmp = null;
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].description.equals(description)) {
+ tmp = values()[i].value;
+ }
+ }
+ return tmp;
+ }
+ }
+
+ /**
+ * 绑定模式
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum KEY_BIND_MODE {
+
+ PRODUCE_BOM_BIND(10, "产品BOM绑定"),
+ SCATTER_BOM_BIND(20, "散件BOM绑定");
+
+ private int value;
+ private String description;
+
+ KEY_BIND_MODE(int value, String description) {
+ this.value = value;
+ this.description = description;
+ }
+
+ public int getValue() {
+ return value;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ 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 Integer descriptionOfValue(String description) {
+ Integer tmp = null;
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].description.equals(description)) {
+ tmp = values()[i].value;
+ }
+ }
+ return tmp;
+ }
+ }
+
+ /**
+ * 不良品处理类型
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum BAD_HANDLE_TYPE {
+ BACK_SPRAY(10, "BACK_SPRAY", "返喷"),
+ SCRAPPED(20, "SCRAPPED", "报废"),
+ POLISHING(30, "POLISHING", "抛光"),
+ DETERMIND(40, "DETERMIND", "待定");
+
+ private int value;
+ private String code;
+ private String description;
+
+ BAD_HANDLE_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 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;
+ }
+
+ public static String valueOfDescription(int val) {
+ return valueOf(val);
+ }
+ }
}
diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/PtlPcnEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/PtlPcnEnumUtil.java
index 3d1fc0d..d29b37b 100644
--- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/PtlPcnEnumUtil.java
+++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/PtlPcnEnumUtil.java
@@ -1281,7 +1281,7 @@ public class PtlPcnEnumUtil {
}
/**
- * mes-pcn定时任务同步结果状态
+ * ptl-pcn定时任务同步结果状态
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum PTL_PCN_TASK_SYNC_STATUS {
@@ -1583,4 +1583,40 @@ public class PtlPcnEnumUtil {
return tmp;
}
}
+
+ /**
+ * 同步标识
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum SYNC_FLAG {
+
+ UNSYNC(1, "未同步"),
+ SYNCED(2, "已同步");
+
+ private int value;
+ private String description;
+
+ SYNC_FLAG(int value, String description) {
+ this.value = value;
+ this.description = description;
+ }
+
+ public int getValue() {
+ return value;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ 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;
+ }
+ }
}
diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/WmsEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/WmsEnumUtil.java
index 077e388..d298220 100644
--- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/WmsEnumUtil.java
+++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/WmsEnumUtil.java
@@ -514,7 +514,8 @@ public class WmsEnumUtil {
NC_LOCATE(60, "N", "NC库"),
SPILLAGE_LOCATE(70, "Y", "溢料库"),
TRANSIT_LOCATE(80, "T", "在途库"),
- UTENSIL_LOCATE(90, "U", "器具库");
+ UTENSIL_LOCATE(90, "U", "器具库"),
+ OPERATION_PALTFORM(100, "W", "工作台");
private int value;
private String code;
@@ -726,7 +727,12 @@ public class WmsEnumUtil {
TG_PICKING_GOODS(510, "TG_PICKING_GOODS", "TG生产领料"),
EXTERNAL_PULL(520, "EXTERNAL_PULL", "外部拉动"),
LOADING_ORDER(530, "LOADING_ORDER", "装车单"),
- SALE_ON_WAY(540, "SALE_ON_WAY", "销售在途");
+ SALE_ON_WAY(540, "SALE_ON_WAY", "销售在途"),
+ FORK_INSTORE(550, "FORK_INSTORE", "叉车入库"),
+ CONTAINER_OUTSTORE(560, "CONTAINER_OUTSTORE", "AGV料车出库"),
+ CONTAINER_INSTORE(570, "CONTAINER_INSTORE", "AGV料车入库"),
+ AGV_PART_NO_OUT(580, "AGV_PART_NO_OUT", "AGV物料出库"),
+ FORKLIFT_PART_NO_OUT(590, "FORKLIFT_PART_NO_OUT", "PAD物料出库");
private int value;
private String code;
private String description;
@@ -769,6 +775,19 @@ public class WmsEnumUtil {
return tmp;
}
+ public static OUT_MOVEMENT_BUSI_TYPE codeOfs(Integer value) {
+ if (value == null) {
+ return null;
+ } else {
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value == value) {
+ return values()[i];
+ }
+ }
+ }
+ return null;
+ }
+
public static int descOf(String desc) {
int tmp = 1;
for (int i = 0; i < values().length; i++) {
@@ -921,7 +940,8 @@ public class WmsEnumUtil {
VDA_PACKAGE_MANAGE("VDA_PACKAGE_MANAGE", "VDA编组管理"),
KT_PICK_RC("KT_PICK_RC", "坤泰拣货"),
UTENSIL_CONSUMING("UTENSIL_CONSUMING", "器具领用"),
- TG_PICKING_GOODS("TG_PICKING_GOODS", "TG生产领料");
+ TG_PICKING_GOODS("TG_PICKING_GOODS", "TG生产领料"),
+ INTELLIGENT("INTELLIGENT", "智能化");
private String value;
private String description;
@@ -1347,7 +1367,8 @@ public class WmsEnumUtil {
PART_COVERAGE(110, "物料分类覆盖"),
TOUCH(120, "动碰"),
ZORE_STOCK(130, "零库存"),
- MATERIAL_COVERAGE(140, "物料覆盖");
+ MATERIAL_COVERAGE(140, "物料覆盖"),
+ CHECK(150, "点检");
private int value;
private String description;
@@ -3361,6 +3382,7 @@ public class WmsEnumUtil {
public enum SRC_STATUS {
ZMMES("ZMMES", "知明MES"),
TBMES("TBMES", "MES接口"),
+ TGMES("TGMES", "泰国MES"),
AMP("AMP", "AMP系统"),
DR("DR", "直送拉动");
@@ -3379,6 +3401,16 @@ public class WmsEnumUtil {
public String getDescription() {
return description;
}
+
+ public static String descriptionOfValue(String value) {
+ String tmp = null;
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value.equals(value)) {
+ tmp = values()[i].value;
+ }
+ }
+ return tmp;
+ }
}
public static Map getEnumByName(String enumName) throws Exception {
@@ -4133,7 +4165,8 @@ public class WmsEnumUtil {
MENU_OPT(30, "MENU_OPT", "手工操作"),
AUTO_OPT_NON_TRANS(40, "AUTO_OPT_NON_TRANS", "自动操作无交易"),
CREATE_DOCMOVE(50, "CREATE_DOCMOVE", "生成移库单"),
- UPDATE_TASK(60, "UPDATE_TASK", "复用任务");
+ UPDATE_TASK(60, "UPDATE_TASK", "复用任务"),
+ AUTO_INSTORE_DOCMOVE(70, "AUTO_INSTORE", "自动入库移库单");
private int value;
private String code;
private String description;
@@ -7550,16 +7583,16 @@ public class WmsEnumUtil {
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum SCAN_CATEGORY {
- ASN(10, "wmsDoMovementMasterRepository", "ASN"),
- PO(20, "wmsDoMovementMasterRepository", "PO"),
- SO(30, "wmsDoMovementMasterRepository", "SO"),
- MOVE(40, "wmsDoMovementMasterRepository", "移库单"),
- IN_STOCK(50, "wmsDoMovementMasterRepository", "入库单"),
- SHIPPING(60, "wmsDoMovementMasterRepository", "发运单"),
- QC(70, "wmsDoMovementMasterRepository", "质检单"),
+ ASN(10, "wmsDocMovementMasterRepository", "ASN"),
+ PO(20, "wmsDocMovementMasterRepository", "PO"),
+ SO(30, "wmsDocMovementMasterRepository", "SO"),
+ MOVE(40, "wmsDocMovementMasterRepository", "移库单"),
+ IN_STOCK(50, "wmsDocMovementMasterRepository", "入库单"),
+ SHIPPING(60, "wmsDocMovementMasterRepository", "发运单"),
+ QC(70, "wmsQCMasterRepository", "质检单"),
CS(80, "wmsCSOrderMasterRepository", "盘点单"),
SN(90, "wmsStockSnRepository", "条码"),
- PO_SN(100, "wmsPoSnRepository", "收货条码");
+ PO_SN(100, "wmsPoSnRepository,wmsASNMasterDetailsRepository", "收货条码");
private int value;
private String code;
@@ -7635,4 +7668,790 @@ public class WmsEnumUtil {
return null;
}
}
+
+ /**
+ * 策略等级
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum TRACTICS_GRADE {
+ ONE_TRACTICS_GRADE(10, "ONE_TRACTICS_GRADE", "1级策略"),
+ TWO_TRACTICS_GRADE(20, "TWO_TRACTICS_GRADE", "2级策略"),
+ THREE_TRACTICS_GRADE(30, "THREE_TRACTICS_GRADE", "3级策略");
+
+ private int value;
+ private String code;
+ private String description;
+
+ TRACTICS_GRADE(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 descriptionOfValue(String desc) {
+ return descOf(desc);
+ }
+
+
+ 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;
+ }
+
+ public static TRACTICS_GRADE codeOf(Integer value) {
+ if (value == null) {
+ return null;
+ } else {
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value == value) {
+ return values()[i];
+ }
+ }
+ }
+ return null;
+ }
+ }
+
+ /**
+ * 策略组
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum TRACTICS_GROUP {
+ INSTOCK(10, "INSTOCK", "上架"),
+ PICKING(20, "PICKING", "拣货");
+
+ private int value;
+ private String code;
+ private String description;
+
+ TRACTICS_GROUP(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 descriptionOfValue(String desc) {
+ return descOf(desc);
+ }
+
+
+ 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;
+ }
+
+ public static TRACTICS_GROUP codeOf(Integer value) {
+ if (value == null) {
+ return null;
+ } else {
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value == value) {
+ return values()[i];
+ }
+ }
+ }
+ return null;
+ }
+ }
+
+ /**
+ * 上架:策略项:1级策略
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum INSTOCK_TRACTICS_ITEM_ONE {
+ COI_RECOMMEND(10, "COI_RECOMMEND", "COI推荐"),
+ ADJACENT_RECOMMEND(20, "ADJACENT_RECOMMEND", "高频推荐(相邻)"),
+ AREA_RECOMMEND(30, "AREA_RECOMMEND", "区域随机推荐"),
+ INERTIA_RECOMMEND(40, "INERTIA_RECOMMEND", "惯性推荐"),
+ ARTIFICIAL_RECOMMEND(50, "ARTIFICIAL_RECOMMEND", "人工指定");
+
+ private int value;
+ private String code;
+ private String description;
+
+ INSTOCK_TRACTICS_ITEM_ONE(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 descriptionOfValue(String desc) {
+ return descOf(desc);
+ }
+
+
+ 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;
+ }
+
+ public static INSTOCK_TRACTICS_ITEM_ONE codeOf(Integer value) {
+ if (value == null) {
+ return null;
+ } else {
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value == value) {
+ return values()[i];
+ }
+ }
+ }
+ return null;
+ }
+ }
+
+ /**
+ * 上架:策略项:2级策略
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum INSTOCK_TRACTICS_ITEM_TWO {
+ FULL_RECOMMEND(10, "FULL_RECOMMEND", "放满推荐"),
+ EMPTY_RECOMMEND(20, "EMPTY_RECOMMEND", "空位推荐");
+
+ private int value;
+ private String code;
+ private String description;
+
+ INSTOCK_TRACTICS_ITEM_TWO(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 descriptionOfValue(String desc) {
+ return descOf(desc);
+ }
+
+
+ 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;
+ }
+
+ public static INSTOCK_TRACTICS_ITEM_TWO codeOf(Integer value) {
+ if (value == null) {
+ return null;
+ } else {
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value == value) {
+ return values()[i];
+ }
+ }
+ }
+ return null;
+ }
+ }
+
+ /**
+ * 上架:策略项:3级策略
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum INSTOCK_TRACTICS_ITEM_THREE {
+ FCL_RECOMMEND(10, "FCL_RECOMMEND", "整箱推荐"),
+ EMPTY_BOX_RECOMMEND(20, "EMPTY_BOX_RECOMMEND", "零箱推荐"),
+ WHOLE_BOX_RECOMMEND(30, "WHOLE_BOX_RECOMMEND", "整零箱推荐");
+
+ private int value;
+ private String code;
+ private String description;
+
+ INSTOCK_TRACTICS_ITEM_THREE(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 descriptionOfValue(String desc) {
+ return descOf(desc);
+ }
+
+
+ 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;
+ }
+
+ public static INSTOCK_TRACTICS_ITEM_THREE codeOf(Integer value) {
+ if (value == null) {
+ return null;
+ } else {
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value == value) {
+ return values()[i];
+ }
+ }
+ }
+ return null;
+ }
+ }
+
+ /**
+ * 拣货:策略项:1级策略
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum PICKING_TRACTICS_ITEM_ONE {
+ ABSOLUTE_PATH(10, "ABSOLUTE_PATH", "绝对路径"),
+ RELATIVE_PATH(20, "RELATIVE_PATH", "相对路径"),
+ LOCATE_ORDER_BY(30, "LOCATE_ORDER_BY", "库位编号排序");
+
+ private int value;
+ private String code;
+ private String description;
+
+ PICKING_TRACTICS_ITEM_ONE(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 descriptionOfValue(String desc) {
+ return descOf(desc);
+ }
+
+
+ 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;
+ }
+
+ public static PICKING_TRACTICS_ITEM_ONE codeOf(Integer value) {
+ if (value == null) {
+ return null;
+ } else {
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value == value) {
+ return values()[i];
+ }
+ }
+ }
+ return null;
+ }
+ }
+
+ /**
+ * 库位坐标是否允许偏移
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum DOWN_OR_UP {
+
+ IS_TRUE(10, "IS_TRUE", "允许"),
+ IS_FALSE(20, "IS_FALSE", "不允许");
+
+ private int value;
+ private String codeValue;
+ private String description;
+
+ DOWN_OR_UP(int value, String codeValue, String description) {
+ this.value = value;
+ this.codeValue = codeValue;
+ this.description = description;
+ }
+
+ public int getValue() {
+ return value;
+ }
+
+ public String getCodeValue() {
+ return codeValue;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+ }
+
+ /**
+ * 动作类型
+ * 10-锁定库位,20-锁定库存、30-锁定料车、40-解锁库存、50-解锁库位、60-解锁料车、70-生成任务、
+ * 80-取消任务、90-递进交换
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum STRATEGY_ACTION_TYPE {
+ LOCKING_LOCATE(10, "LOCKING_LOCATE", "锁定库位"),
+ LOCKING_IN_STOCK(20, "LOCKING_IN_STOCK", "锁定库存"),
+ LOCKING_FEED_CAR(30, "LOCKING_FEED_CAR", "锁定料车"),
+ UNLOCK_IN_STOCK(40, "UNLOCK_IN_STOCK", "解锁库存"),
+ UNLOCK_LOCATE(50, "UNLOCK_LOCATE", "解锁库位"),
+ UNLOCK_FEED_CAR(60, "UNLOCK_FEED_CAR", "解锁料车"),
+ GENERATE_TASK(70, "GENERATE_TASK", "生成任务"),
+ CANCEL_TASK(80, "CANCEL_TASK", "取消任务"),
+ PROGRESSIVE_EXCHANGE(90, "PROGRESSIVE_EXCHANGE", "递进交换");
+
+ private int value;
+ private String code;
+ private String description;
+
+ STRATEGY_ACTION_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 descriptionOfValue(String desc) {
+ return descOf(desc);
+ }
+
+
+ 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;
+ }
+
+ public static STRATEGY_ACTION_TYPE codeOf(Integer value) {
+ if (value == null) {
+ return null;
+ } else {
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value == value) {
+ return values()[i];
+ }
+ }
+ }
+ return null;
+ }
+ }
+
+ /**
+ * 自动化策略 数量控制
+ * 默认为 10
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum AUTO_STRATEGY_QTY_CONTROL {
+ LESS_SEND(10, "少发"),
+ MANY_SEND(20, "多发"),
+ CONSISTENT(30, "一致");
+
+ private int value;
+ private String description;
+
+ AUTO_STRATEGY_QTY_CONTROL(int value, String description) {
+ this.value = value;
+ this.description = description;
+ }
+
+ public int getValue() {
+ return value;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public static AUTO_STRATEGY_QTY_CONTROL codeOf(int value) {
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value == value) {
+ return values()[i];
+ }
+ }
+ return null;
+ }
+
+ 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;
+ }
+ }
+
+
+ /**
+ * 自动入库任务
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum AUTO_FORK_TASK_TYPE {
+ START(10, "start", "start"),
+ END(20, "end", "end");
+
+ private int value;
+ private String code;
+ private String description;
+
+ AUTO_FORK_TASK_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 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;
+ }
+
+ public static String valueOfDescription(int val) {
+ return valueOf(val);
+ }
+ }
+
+
+ /**
+ * AUTO 命令状态
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum AUTO_FORK_TASK_STATUS {
+ CREATE(10, "新建"),
+ PROCESSING(20, "处理中"),
+ COMPLETE(30, "已完成"),
+ ERROR(40, "处理异常");
+
+ private int value;
+ private String description;
+
+ AUTO_FORK_TASK_STATUS(int value, String description) {
+ this.value = value;
+ this.description = description;
+ }
+
+ public int getValue() {
+ return value;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public static AUTO_FORK_TASK_STATUS codeOf(int value) {
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value == value) {
+ return values()[i];
+ }
+ }
+ return null;
+ }
+
+ 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;
+ }
+ }
+
+ /**
+ * 自动化日志记录-操作类型
+ * 10-单据生成,20-策略动作、30-任务生成、40-START、50-END、60-其它
+ *
+ */
+ @JsonFormat(shape = JsonFormat.Shape.OBJECT)
+ public enum OPERATE_TYPE {
+ ORDER_GENERATE(10, "ORDER_GENERATE", "单据生成"),
+ STRATEGIC_ACTION(20, "STRATEGIC_ACTION", "策略动作"),
+ TASK_GENERATE(30, "TASK_GENERATE", "任务生成"),
+ START(40, "START", "START"),
+ END(50, "END", "END"),
+ OTHER(60, "OTHER", "其它");
+
+ private int value;
+ private String code;
+ private String description;
+
+ OPERATE_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 descriptionOfValue(String desc) {
+ return descOf(desc);
+ }
+
+
+ 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;
+ }
+
+ public static OPERATE_TYPE codeOf(Integer value) {
+ if (value == null) {
+ return null;
+ } else {
+ for (int i = 0; i < values().length; i++) {
+ if (values()[i].value == value) {
+ return values()[i];
+ }
+ }
+ }
+ return null;
+ }
+ }
}
diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseRepositoryImpl.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseRepositoryImpl.java
index c0874d6..afd81eb 100644
--- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseRepositoryImpl.java
+++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseRepositoryImpl.java
@@ -392,7 +392,7 @@ public class BaseRepositoryImpl extends SimpleJpaRep
@Override
public List listPager(Pager pager) {
- if (pager.getTotalRows() > 0) {
+ if (pager != null) {
return entityManager.createQuery("from " + persistentClass.getName())
.setFirstResult(pager.getStartRow())
.setMaxResults(pager.getPageSize())
@@ -649,7 +649,7 @@ public class BaseRepositoryImpl extends SimpleJpaRep
@Override
public List findByPropertyPage(String propertyName, Object value, String orderByStuff, Pager pager) {
- if(pager.getTotalRows() > 0){
+ if(pager != null){
String queryString = "from " + persistentClass.getSimpleName() + " as model where model." + propertyName + "= :" + propertyName + " " + orderByStuff;
return entityManager.createQuery(queryString)
.setParameter(propertyName, value)
@@ -661,7 +661,7 @@ public class BaseRepositoryImpl extends SimpleJpaRep
@Override
public List findByPropertyPage(String[] propertyNames, Object[] values, String orderByStuff, Pager pager) {
- if(pager.getTotalRows() > 0){
+ if(pager != null){
if(propertyNames.length != values.length){
throw new IllegalArgumentException("参数名的数量和参数值不匹配!propertyNames:" + propertyNames.length + ",values:" + values.length);
}
@@ -792,7 +792,7 @@ public class BaseRepositoryImpl extends SimpleJpaRep
@Override
public List findByHqlWherePage(String hqlWhere, Pager pager, String[] propertyNames, Object[] values, String orderByStuff) {
- if(pager.getTotalRows() > 0){
+ if(pager != null){
if(propertyNames.length != values.length){
throw new IllegalArgumentException("参数名的数量和参数值不匹配!propertyNames:" + propertyNames.length + ",values:" + values.length);
}
@@ -827,7 +827,7 @@ public class BaseRepositoryImpl extends SimpleJpaRep
@Deprecated
@Override
public List findByHqlWherePage(String hqlWhere, Pager pager) {
- if(pager.getTotalRows() > 0) {
+ if(pager != null) {
StringBuffer queryString = new StringBuffer();
queryString.append("from " + persistentClass.getSimpleName() + " as model where 1=1 ");
@@ -846,7 +846,7 @@ public class BaseRepositoryImpl extends SimpleJpaRep
@Override
public List findByHqlWherePage(DdlPackBean packBean, Pager pager) {
- if(pager.getTotalRows() > 0) {
+ if(pager != null) {
Query query = entityManager.createQuery("from " + persistentClass.getSimpleName()
+ " as model where 1=1 " + packBean.getPackedHql());
@@ -924,7 +924,7 @@ public class BaseRepositoryImpl extends SimpleJpaRep
@Override
public List findByHqlPage(String hqlWhere, Pager pager) {
- if(pager.getTotalRows() > 0){
+ if(pager != null){
StringBuffer queryString = new StringBuffer();
queryString.append("from " + persistentClass.getSimpleName() + " as model where 1=1 ");
@@ -943,7 +943,7 @@ public class BaseRepositoryImpl extends SimpleJpaRep
@Override
public List findByHqlPage(DdlPackBean packBean, Pager pager) {
- if(pager.getTotalRows() > 0){
+ if(pager != null){
Query query = entityManager.createQuery("from " + persistentClass.getSimpleName()
+ " as model where 1=1 " + packBean.getPackedHql());
@@ -961,7 +961,7 @@ public class BaseRepositoryImpl extends SimpleJpaRep
@Override
public List findByHqlPage(String hql, Pager pager, String[] paramName, Object[] paramValue) {
- if(pager.getTotalRows() > 0) {
+ if(pager != null) {
Query queryObject = entityManager.createQuery(hql);
for (int i = 0; i < paramName.length; i++) {
if (paramValue[i] != null) {
@@ -989,7 +989,7 @@ public class BaseRepositoryImpl extends SimpleJpaRep
@Override
public List findBySqlPage(String sql, Pager pager) {
- if(pager.getTotalRows() > 0) {
+ if(pager != null) {
return entityManager.createNativeQuery(sql)
.setFirstResult(pager.getStartRow())
.setMaxResults(pager.getPageSize())
@@ -1001,7 +1001,7 @@ public class BaseRepositoryImpl extends SimpleJpaRep
@Override
public List> findBySqlPage(String sql, Class entity, Pager pager) {
- if(pager.getTotalRows() > 0){
+ if(pager != null){
return entityManager.createNativeQuery(sql,entity)
.setFirstResult(pager.getStartRow())
.setMaxResults(pager.getPageSize())
@@ -1114,7 +1114,7 @@ public class BaseRepositoryImpl extends SimpleJpaRep
@Override
public List findColumnsByHql(String hql, String hqlWhere, String orderByStuff, Pager pager) {
- if(pager.getTotalRows() > 0) {
+ if(pager != null) {
StringBuffer queryString = new StringBuffer();
queryString.append(hql + " as model where 1=1 ");
@@ -1153,7 +1153,7 @@ public class BaseRepositoryImpl extends SimpleJpaRep
@Override
public List