diff --git a/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/repository/IAndonEventMethodRepository.java b/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/repository/IAndonEventMethodRepository.java new file mode 100644 index 0000000..78273af --- /dev/null +++ b/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/repository/IAndonEventMethodRepository.java @@ -0,0 +1,16 @@ +package cn.estsh.i3plus.pojo.andon.repository; + +import cn.estsh.i3plus.pojo.andon.bean.AndonEventMethod; +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import org.springframework.stereotype.Repository; + +/** + * @Description : 对象持久层仓用方法控制(ANDON_事件处理方法) + * @Reference : + * @Author : hansen.ke + * @CreateDate : 2019-05-14 11:34 + * @Modify: + **/ +@Repository +public interface IAndonEventMethodRepository extends BaseRepository { +} diff --git a/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/sqlpack/AndonHqlPack.java b/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/sqlpack/AndonHqlPack.java index c612f1d..60667d8 100644 --- a/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/sqlpack/AndonHqlPack.java +++ b/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/sqlpack/AndonHqlPack.java @@ -3,6 +3,7 @@ package cn.estsh.i3plus.pojo.andon.sqlpack; import cn.estsh.i3plus.pojo.andon.bean.AndonPLC; import cn.estsh.i3plus.pojo.base.bean.BaseBean; import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; +import cn.estsh.i3plus.pojo.base.enumutil.AndonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; import org.apache.commons.lang3.StringUtils; @@ -53,7 +54,7 @@ public class AndonHqlPack { DdlPackBean result = new DdlPackBean(); //查询参数封装 - DdlPreparedPack.getStringEqualPack(andonPLC.getWorkCellCode(), "workCenterCode", result); + DdlPreparedPack.getStringEqualPack(andonPLC.getWorkCenterCode(), "workCenterCode", result); DdlPreparedPack.getStringEqualPack(andonPLC.getWorkCellCode(), "workCellCode", result); DdlPreparedPack.getStringEqualPack(andonPLC.getNodeIP(), "nodeIP", result); DdlPreparedPack.getStringEqualPack(andonPLC.getChannelName(), "channelName", result); @@ -61,6 +62,7 @@ public class AndonHqlPack { DdlPreparedPack.getStringEqualPack(andonPLC.getTagAddress(), "tagAddress", result); DdlPreparedPack.getStringEqualPack(andonPLC.getTagType(), "tagType", result); DdlPreparedPack.getStringEqualPack(andonPLC.getAlarmCode(), "alarmCode", result); + DdlPreparedPack.getStringEqualPack(andonPLC.getGroupNo(), "groupNo", result); getStringBuilderPack(andonPLC, result); return result; @@ -137,6 +139,20 @@ public class AndonHqlPack { } /** + * 按条件查询ANDON事件处理方法 + * @param andonEventMethod + * @return + */ + public static DdlPackBean packHqlAndonAlarmEventMethod(AndonEventMethod andonEventMethod){ + DdlPackBean result = new DdlPackBean(); + + DdlPreparedPack.getStringEqualPack(andonEventMethod.getAlarmCode(), "alarmCode", result); + getStringBuilderPack(andonEventMethod, result); + + return result; + } + + /** * 按条件查询ANDON事件原因 * @param andonEventCause * @return @@ -155,13 +171,15 @@ public class AndonHqlPack { * @param andonManageQueue * @return */ - public static DdlPackBean packHqlAndonManageQueue(AndonManageQueue andonManageQueue){ + public static DdlPackBean packHqlAndonManageQueue(AndonManageQueue andonManageQueue, Object[] obj){ DdlPackBean result = new DdlPackBean(); DdlPreparedPack.getStringEqualPack(andonManageQueue.getWorkCellCode(), "workCellCode", result); DdlPreparedPack.getStringEqualPack(andonManageQueue.getWorkCenterCode(), "workCenterCode", result); DdlPreparedPack.getStringEqualPack(andonManageQueue.getEquipmentCode(), "equipmentCode", result); DdlPreparedPack.getStringEqualPack(andonManageQueue.getAlarmCode(), "alarmCode", result); + DdlPreparedPack.getInPackArray(obj, "statusCode", result); + getStringBuilderPack(andonManageQueue, result); return result; diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/AndonEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/AndonEnumUtil.java index da0802d..a80a65a 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/AndonEnumUtil.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/AndonEnumUtil.java @@ -185,4 +185,33 @@ public class AndonEnumUtil { return tmp; } } + + /** + * ANDON类型:MM=物料 QM=质量 EQ=设备 GY=工艺 JC=检测 + */ + @JsonFormat(shape = JsonFormat.Shape.OBJECT) + public enum ALARM_CODE{ + + PART("MM","物料"), + QUALITY("QM","质量"), + EQUIP("EQ","设备"), + PROCESS("GY","工艺"), + CHECK("JC","检测"); + + private String value; + private String description; + + ALARM_CODE(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/tool/DdlPreparedPack.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/tool/DdlPreparedPack.java index 0f56525..e5c6ecc 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/tool/DdlPreparedPack.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/tool/DdlPreparedPack.java @@ -314,7 +314,7 @@ public class DdlPreparedPack { */ public static void getStringBiggerPack(Object data, String columnName, DdlPackBean packBean) { if (data != null && !StringUtils.isEmpty(String.valueOf(data))) { - packBean.addColumnQuery(columnName," and model." + columnName + " > :m_" + columnName, data); + packBean.addColumnQuery(columnName," and model." + columnName + " >= :m_" + columnName, data); } } @@ -326,7 +326,7 @@ public class DdlPreparedPack { */ public static void getStringSmallerPack(Object data, String columnName, DdlPackBean packBean) { if (data != null && !StringUtils.isEmpty(String.valueOf(data))) { - packBean.addColumnQuery(columnName," and model." + columnName + " < :m_" + columnName, data); + packBean.addColumnQuery("s_"+columnName," and model." + columnName + " <= :m_s_" + columnName, data); } } diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQueueOrder.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQueueOrder.java index f8f1238..4bb5af7 100644 --- a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQueueOrder.java +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQueueOrder.java @@ -1,6 +1,7 @@ package cn.estsh.i3plus.pojo.mes.bean; import cn.estsh.i3plus.pojo.base.bean.BaseBean; +import cn.estsh.i3plus.pojo.base.enumutil.MesEnumUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiParam; import lombok.Data; @@ -12,6 +13,9 @@ import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Table; import javax.persistence.Transient; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; /** * @Description: @@ -79,4 +83,5 @@ public class MesQueueOrder extends BaseBean { public double getSeq() { return this.seq == null ? 0.0d : this.seq; } + } diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQueueOrderDetail.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQueueOrderDetail.java index f6d1fe1..14bb9bb 100644 --- a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQueueOrderDetail.java +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQueueOrderDetail.java @@ -28,7 +28,7 @@ import javax.persistence.Table; @Api("生产队列明细") public class MesQueueOrderDetail extends BaseBean { @Column(name="ORDER_NO") - @ApiParam("工单号") + @ApiParam("主队列编号") private String orderNo; @Column(name="PART_NO") diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/RequestModel.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/RequestModel.java index 5ed8956..91b5e18 100644 --- a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/RequestModel.java +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/RequestModel.java @@ -2,12 +2,13 @@ package cn.estsh.i3plus.pojo.mes.model; import cn.estsh.i3plus.pojo.mes.bean.MesPart; import cn.estsh.i3plus.pojo.mes.bean.MesPlanOrder; +import cn.estsh.i3plus.pojo.mes.bean.MesQueueOrder; import cn.estsh.i3plus.pojo.mes.bean.MesWorkOrder; import java.util.List; /** - * @Description: + * @Description: 生产计划,生产队列,生产工单的复杂请求数据结构的统一请求模型 * @Reference: * @Author: Crish * @CreateDate:2019-04-29-11:58 @@ -15,11 +16,33 @@ import java.util.List; **/ public class RequestModel { - private List workOrderList; + private List workOrderList; // 工单数据集 - private List partList; + private List partList; // 物料数据集 - private List planOrderList; + private List planOrderList; // 生产计划数据集 + + private List queueOrderList; // 生产队列数据集 + + private Double currentSeq; // 生产队列中的当前序列号 + + private Double nextSeq; // 生产队列中的下一个序列号 + + private Integer srcStatus; // 源状态 + + private Integer destStatus; // 目的状态 + + public RequestModel(List queueOrderList, Double currentSeq, Double nextSeq) { + this.queueOrderList = queueOrderList; + this.currentSeq = currentSeq; + this.nextSeq = nextSeq; + } + + public RequestModel(List queueOrderList, Integer srcStatus, Integer destStatus) { + this.queueOrderList = queueOrderList; + this.srcStatus = srcStatus; + this.destStatus = destStatus; + } public RequestModel(List workOrderList, List partList) { this.workOrderList = workOrderList; @@ -52,4 +75,44 @@ public class RequestModel { public void setPlanOrderList(List planOrderList) { this.planOrderList = planOrderList; } + + public List getQueueOrderList() { + return queueOrderList; + } + + public void setQueueOrderList(List queueOrderList) { + this.queueOrderList = queueOrderList; + } + + public Double getCurrentSeq() { + return currentSeq == null ? 0.0d : currentSeq; + } + + public void setCurrentSeq(Double currentSeq) { + this.currentSeq = currentSeq; + } + + public Double getNextSeq() { + return nextSeq == null ? 0.0d : nextSeq; + } + + public void setNextSeq(Double nextSeq) { + this.nextSeq = nextSeq; + } + + public Integer getSrcStatus() { + return srcStatus == null ? 0 : srcStatus; + } + + public void setSrcStatus(Integer srcStatus) { + this.srcStatus = srcStatus; + } + + public Integer getDestStatus() { + return destStatus == null ? 0 : destStatus; + } + + public void setDestStatus(Integer destStatus) { + this.destStatus = destStatus; + } } diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/sqlpack/MesHqlPack.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/sqlpack/MesHqlPack.java index d7242d7..a9f0602 100644 --- a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/sqlpack/MesHqlPack.java +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/sqlpack/MesHqlPack.java @@ -170,6 +170,10 @@ public class MesHqlPack { DdlPreparedPack.getStringSmallerPack(mesQueueOrder.getCustFlagNoEnd(), "custFlagNo", packBean); } + if (StringUtils.isNotEmpty(mesQueueOrder.getOrderNo() + "")) { + DdlPreparedPack.getStringLikerPack(mesQueueOrder.getOrderNo(), "orderNo", packBean); + } + // 只查询创建状态的队列 DdlPreparedPack.getNumEqualPack(MesEnumUtil.QUEUE_ORDER_STATUS.NORMAL.getValue(), "status", packBean); diff --git a/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/andon/AndonResultBean.java b/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/andon/AndonResultBean.java index 8455e8e..984c8a4 100644 --- a/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/andon/AndonResultBean.java +++ b/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/andon/AndonResultBean.java @@ -14,17 +14,4 @@ public class AndonResultBean { @ApiParam("处理结果") private String result; - - public AndonResultBean(boolean success, String msg) { - super(); - this.success = success; - this.msg = msg; - } - - public AndonResultBean(boolean success, String msg, String result) { - super(); - this.success = success; - this.msg = msg; - this.result = result; - } } diff --git a/modules/i3plus-pojo-sweb/src/main/java/cn/estsh/i3plus/pojo/sweb/bean/SwebPurchaseOrderDetails.java b/modules/i3plus-pojo-sweb/src/main/java/cn/estsh/i3plus/pojo/sweb/bean/SwebPurchaseOrderDetails.java index eb78593..d075fdf 100644 --- a/modules/i3plus-pojo-sweb/src/main/java/cn/estsh/i3plus/pojo/sweb/bean/SwebPurchaseOrderDetails.java +++ b/modules/i3plus-pojo-sweb/src/main/java/cn/estsh/i3plus/pojo/sweb/bean/SwebPurchaseOrderDetails.java @@ -66,11 +66,8 @@ public class SwebPurchaseOrderDetails extends BaseBean { @Column(name = "UNIT") private String unit; - /** - * 不冗余主表数据 - */ @ApiParam(value = "行项目状态", example = "1") - @Transient + @Column(name = "ITEM_STATUS") private Integer itemStatus; @Column(name = "BOX_QTY") diff --git a/modules/i3plus-pojo-sweb/src/main/java/cn/estsh/i3plus/pojo/sweb/sqlpack/SwebHqlPack.java b/modules/i3plus-pojo-sweb/src/main/java/cn/estsh/i3plus/pojo/sweb/sqlpack/SwebHqlPack.java index 93f65f4..80c33a0 100644 --- a/modules/i3plus-pojo-sweb/src/main/java/cn/estsh/i3plus/pojo/sweb/sqlpack/SwebHqlPack.java +++ b/modules/i3plus-pojo-sweb/src/main/java/cn/estsh/i3plus/pojo/sweb/sqlpack/SwebHqlPack.java @@ -115,16 +115,15 @@ public class SwebHqlPack { DdlPreparedPack.getStringEqualPack(details.getPartNo(), "partNo", result); DdlPreparedPack.getNumEqualPack(details.getItemStatus(), "itemStatus", result); DdlPreparedPack.getNumEqualPack(details.getOrderType(), "orderType", result); - DdlPreparedPack.getStringEqualPack(details.getExpectedTime(), "expectedTime", result); return buildHql(details, result); } public static DdlPackBean getPurchaseOrderDetailsPublishListStatusWhereHql(SwebPurchaseOrderDetails details) { DdlPackBean result = new DdlPackBean(); + DdlPreparedPack.getStringEqualPack(details.getOrderNo(), "orderNo", result); DdlPreparedPack.getStringEqualPack(details.getVendorCode(), "vendorCode", result); DdlPreparedPack.getStringEqualPack(details.getPartNo(), "partNo", result); DdlPreparedPack.getNumEqualPack(details.getOrderType(), "orderType", result); - DdlPreparedPack.getStringEqualPack(details.getExpectedTime(), "expectedTime", result); return buildHql(details, result); } }