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 156b353..373ace1 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 @@ -2565,6 +2565,7 @@ public class MesEnumUtil { @JsonFormat(shape = JsonFormat.Shape.OBJECT) public enum MES_QC_CHECK_TYPE { + IN_MATERIAL_CHECK(5, "来料检验"), FIRST_CHECK(10, "首检"), ON_SITE_CHECK(20, "巡检"), END_CHECK(30, "尾检"); @@ -5557,4 +5558,98 @@ public class MesEnumUtil { } } + /** + * MES_检验单 状态 + */ + @JsonFormat(shape = JsonFormat.Shape.OBJECT) + public enum MES_QC_STATUS { + + CREATE(10, "创建"), + IN_EXEC(20, "执行中"), + COMPLETE(30, "完成"); + + private int value; + private String description; + + MES_QC_STATUS(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; + } + } + + /** + * MES_检验单 检测整体结果 + */ + @JsonFormat(shape = JsonFormat.Shape.OBJECT) + public enum MES_QC_CHECK_RESULT { + + PASS(10, "通过"), + NO_PASS(20, "不通过"), + COMPROMISE_PASS(30, "让步通过"); + + private int value; + private String description; + + MES_QC_CHECK_RESULT(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; + } + } + } diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesOee.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesOee.java index 2a3b94c..d40e746 100644 --- a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesOee.java +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesOee.java @@ -68,13 +68,13 @@ public class MesOee extends BaseBean implements Serializable { @ApiParam("结束时段") private String endTime; - @Column(name = "TOTAL_RUN_TIME") + @Column(name = "TOTAL_RUN_TIME", columnDefinition = "decimal(18,3)") @ApiParam("总生产时间") - private String totalRunTime; + private Double totalRunTime; - @Column(name = "TOTAL_STOP_TIME") + @Column(name = "TOTAL_STOP_TIME", columnDefinition = "decimal(18,3)") @ApiParam("总停机时间") - private String totalStopTime; + private Double totalStopTime; @Column(name = "TOTAL_QTY") @ApiParam("总生产数") @@ -92,21 +92,21 @@ public class MesOee extends BaseBean implements Serializable { @ApiParam("实际节拍") private Integer actualTakt; - @Column(name = "TIME_RATE") + @Column(name = "TIME_RATE", columnDefinition = "decimal(18,3)") @ApiParam("时间开动率") - private String timeRate; + private Double timeRate; - @Column(name = "TAKT_RATE") + @Column(name = "TAKT_RATE", columnDefinition = "decimal(18,3)") @ApiParam("性能开动率") - private String taktRate; + private Double taktRate; - @Column(name = "QUALIFIED_RATE") + @Column(name = "QUALIFIED_RATE", columnDefinition = "decimal(18,3)") @ApiParam("良品率") - private String qualifiedRate; + private Double qualifiedRate; - @Column(name = "OEE") + @Column(name = "OEE", columnDefinition = "decimal(18,3)") @ApiParam("OEE") - private String oee; + private Double oee; @Column(name = "BUSI_DATA") @ApiParam("自定义数据") diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQcOrder.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQcOrder.java new file mode 100644 index 0000000..dcc8eed --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQcOrder.java @@ -0,0 +1,90 @@ +package cn.estsh.i3plus.pojo.mes.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.Column; +import javax.persistence.Entity; +import javax.persistence.Table; +import javax.persistence.Transient; +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * @Description :mes系统业务动作 + * @Reference : + * @Author : jack.jia + * @CreateDate : 2019-04-12 + * @Modify: + **/ +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@EqualsAndHashCode(callSuper = true) +@Table(name = "MES_QC_ORDER") +@Api("MES_检验单") +public class MesQcOrder extends BaseBean implements Serializable { + private static final long serialVersionUID = -8961182786427690154L; + @Column(name = "ORDER_NO") + @ApiParam("质检单号") + private String orderNo; + + @Column(name = "CHECK_TYPE") + @ApiParam("检测类型") + private Integer checkType; + + @Column(name = "PART_NO") + @ApiParam("物料号") + private String partNo; + + @Column(name = "PART_NAME") + @ApiParam("物料名称") + private String partName; + + @Column(name = "QTY") + @ApiParam("数量") + private BigDecimal qty; + + @Column(name = "UNIT") + @ApiParam("单位") + private String unit; + + @Column(name = "SUPPLIER_CODE") + @ApiParam("供应商代码") + private String supplierCode; + + @Column(name = "SRC_LOT_NO") + @ApiParam("收货批次") + private String srcLotNo; + + @Column(name = "FIX_LOT_NO") + @ApiParam("特殊批次") + private String fixLotNo; + + @Column(name = "RELATION_ORDER_NO") + @ApiParam("关联单号") + private String relationOrderNo; + + @Column(name = "UUID") + @ApiParam("数据唯一编号") + private String uuId; + + @Column(name = "STATUS") + @ApiParam("状态") + private Integer status; + + @Column(name = "CHECK_RESULT") + @ApiParam("检测整体结果") + private Integer checkResult; + + @Transient + @ApiParam("供应商名称") + private String supplierName; +} diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQcOrderDetail.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQcOrderDetail.java new file mode 100644 index 0000000..599196a --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQcOrderDetail.java @@ -0,0 +1,85 @@ +package cn.estsh.i3plus.pojo.mes.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.Column; +import javax.persistence.Entity; +import javax.persistence.Table; +import javax.persistence.Transient; +import java.io.Serializable; + +/** + * @Description :mes系统业务动作 + * @Reference : + * @Author : jack.jia + * @CreateDate : 2019-04-12 + * @Modify: + **/ +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@EqualsAndHashCode(callSuper = true) +@Table(name = "MES_QC_ORDER_DETAIL") +@Api("MES_检验单明细") +public class MesQcOrderDetail extends BaseBean implements Serializable { + private static final long serialVersionUID = -8961182786786500154L; + @Column(name = "ORDER_NO") + @ApiParam("质检单号") + private String orderNo; + + @Column(name = "CHECK_TYPE") + @ApiParam("检测类型") + private Integer checkType; + + @Column(name = "CHECK_ITEM_TYPE") + @ApiParam("检测项类型") + private String checkItemType; + + @Column(name = "CHECK_ITEM") + @ApiParam("检测项") + private String checkItem; + + @Column(name = "CHECK_STANDARD") + @ApiParam("检测标准") + private String checkStandard; + + @Column(name = "CHECK_GUIDE") + @ApiParam("检测指导") + private String checkGuide; + + @Column(name = "CHECK_FREQUENCY") + @ApiParam("频率") + private String checkFrequency; + + @Column(name = "IS_CONCESSION") + @ApiParam("是否允许让步") + private String isConcession; + + @Column(name = "STATUS") + @ApiParam("状态") + private Integer status; + + @Column(name = "CHECK_RESULT") + @ApiParam("检测整体结果") + private Integer checkResult; + + @Column(name = "CHECK_VALUE") + @ApiParam("检测值") + private String checkValue; + + @Transient + @ApiParam("本批次生产总数") + private Integer currentLotNoSum; + + @Transient + @ApiParam("收货批次") + private String srcLotNo; +} diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/FilterRule.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/FilterRule.java index d38f6c9..21da796 100644 --- a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/FilterRule.java +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/FilterRule.java @@ -6,5 +6,5 @@ import lombok.Data; public class FilterRule { private String field; private String op; - private String value; + private Object value; } 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 e3808fb..de193d7 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 @@ -5,7 +5,6 @@ import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.MesEnumUtil; 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.mes.bean.*; import cn.estsh.i3plus.pojo.mes.dbinterface.MesInterfaceDataMapper; @@ -928,6 +927,56 @@ public class MesHqlPack { } /** + * MES 检验单查询条件封装 + * + * @param qcOrder + * @return + */ + public static DdlPackBean getMesQcOrder(MesQcOrder qcOrder, String organizeCode) { + DdlPackBean packBean = getAllBaseDataByNormalPro(qcOrder, organizeCode); + if (!StringUtils.isEmpty(qcOrder.getOrderNo())) { + DdlPreparedPack.getStringEqualPack(qcOrder.getOrderNo(), "orderNo", packBean); + } + if (!StringUtils.isEmpty(qcOrder.getPartNo())) { + DdlPreparedPack.getStringLikerPack(qcOrder.getPartNo(), "partNo", packBean); + } + if (!StringUtils.isEmpty(qcOrder.getPartName())) { + DdlPreparedPack.getStringLikerPack(qcOrder.getPartName(), "partName", packBean); + } + if (!StringUtils.isEmpty(qcOrder.getSupplierCode())) { + DdlPreparedPack.getStringEqualPack(qcOrder.getSupplierCode(), "supplierCode", packBean); + } + // 时间段查询 + if (!StringUtils.isEmpty(qcOrder.getCreateDateTimeStart()) || !StringUtils.isEmpty(qcOrder.getCreateDateTimeEnd())) { + DdlPreparedPack.timeBuilder( + qcOrder.getCreateDateTimeStart(), + qcOrder.getCreateDateTimeEnd(), + "createDatetime", packBean, true); + } + if (!StringUtils.isEmpty(qcOrder.getModifyDateTimeStart()) || !StringUtils.isEmpty(qcOrder.getModifyDateTimeEnd())) { + DdlPreparedPack.timeBuilder( + qcOrder.getModifyDateTimeStart(), + qcOrder.getModifyDateTimeEnd(), + "modifyDatetime", packBean, true); + } + return packBean; + } + + /** + * MES 检验单查询条件封装 + * + * @param qcOrderDetail + * @return + */ + public static DdlPackBean getMesQcDetailReport(MesQcOrderDetail qcOrderDetail, String organizeCode) { + DdlPackBean packBean = getAllBaseDataByNormalPro(qcOrderDetail, organizeCode); + if (!StringUtils.isEmpty(qcOrderDetail.getOrderNo())) { + DdlPreparedPack.getStringEqualPack(qcOrderDetail.getOrderNo(), "orderNo", packBean); + } + return packBean; + } + + /** * MES 物料信息查询条件封装 * * @param part diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsSnOperateRecord.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsSnOperateRecord.java index 63e33e3..094e240 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsSnOperateRecord.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsSnOperateRecord.java @@ -86,4 +86,8 @@ public class WmsSnOperateRecord extends BaseBean { @DynamicField(webFieldType = CommonEnumUtil.FIELD_TYPE.TEXT) private String refSN; + @Column(name = "REMARK") + @ApiParam(value = "备注") + private String remark; + } diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsThymeleaf.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsThymeleaf.java new file mode 100644 index 0000000..d8b72ec --- /dev/null +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsThymeleaf.java @@ -0,0 +1,46 @@ +package cn.estsh.i3plus.pojo.wms.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.Column; +import javax.persistence.Entity; +import javax.persistence.Lob; +import javax.persistence.Table; + +/** + * @Description : WMS回显模板数据 + * @Reference : + * @Author : siliter + * @CreateDate : 2020-05-11 09:41 + * @Modify: + **/ +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@EqualsAndHashCode(callSuper = true) +@Table(name = "WMS_THYMELEAF") +@Api("WMS回显模板数据") +public class WmsThymeleaf extends BaseBean { + + private static final long serialVersionUID = -5751852067398308165L; + + @Column(name = "TL_CODE") + @ApiParam("模板代码") + private String tlCode; + + @Column(name = "TL_DESC") + @ApiParam("模板描述") + private String tlDesc; + + @Lob + @Column(name = "TL_CONTENT", columnDefinition = "TEXT") + @ApiParam(value = "模板内容") + private String tlContent; +} diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/repository/WmsThymeleafRepository.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/repository/WmsThymeleafRepository.java new file mode 100644 index 0000000..54c1aa5 --- /dev/null +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/repository/WmsThymeleafRepository.java @@ -0,0 +1,16 @@ +package cn.estsh.i3plus.pojo.wms.repository; + +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import cn.estsh.i3plus.pojo.wms.bean.WmsThymeleaf; +import org.springframework.stereotype.Repository; + +/** + * @Description : + * @Reference : + * @Author : siliter + * @CreateDate : 2020-05-11 09:17 + * @Modify: + **/ +@Repository +public interface WmsThymeleafRepository extends BaseRepository { +} diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/sqlpack/WmsHqlPack.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/sqlpack/WmsHqlPack.java index 663b86c..55dd8fd 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/sqlpack/WmsHqlPack.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/sqlpack/WmsHqlPack.java @@ -3229,4 +3229,17 @@ public class WmsHqlPack { getStringBuilderPack(checkType, result); return result; } + + /** + * 模板信息分页查询条件 + * @param thymeleaf + * @return + */ + public static DdlPackBean packHqlWmsThymeleaf(WmsThymeleaf thymeleaf) { + DdlPackBean result = new DdlPackBean(); + DdlPreparedPack.getStringEqualPack(thymeleaf.getTlCode(), "tlCode", result); + DdlPreparedPack.getStringLikerPack(thymeleaf.getTlDesc(), "tlDesc", result); + getStringBuilderPack(thymeleaf, result); + return result; + } }