From 25cbbb58373c87a048313411d2f4ef72a6a910d7 Mon Sep 17 00:00:00 2001 From: "wei.peng" <123456> Date: Mon, 25 Nov 2019 15:07:10 +0800 Subject: [PATCH 01/15] =?UTF-8?q?=E9=9B=AA=E8=8A=B1ID=20=E7=94=9F=E6=88=90?= =?UTF-8?q?=E5=99=A8=20=E6=94=B9=E4=B8=BAprop=20=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pojo/base/codemaker/SnowflakeIdMaker.java | 53 ++++++++++++-- .../i3plus/pojo/base/enumutil/CommonEnumUtil.java | 82 ++++++++++++++++------ 2 files changed, 107 insertions(+), 28 deletions(-) diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/codemaker/SnowflakeIdMaker.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/codemaker/SnowflakeIdMaker.java index 7b74ecf..7441b96 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/codemaker/SnowflakeIdMaker.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/codemaker/SnowflakeIdMaker.java @@ -1,5 +1,6 @@ package cn.estsh.i3plus.pojo.base.codemaker; +import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import sun.management.VMManagement; @@ -10,6 +11,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.net.InetAddress; import java.net.NetworkInterface; +import java.util.concurrent.ConcurrentHashMap; /** * @Description : 使用SnowFlake,生成分布式ID @@ -20,32 +22,73 @@ import java.net.NetworkInterface; * @CreateDate : 2018-09-11 16:35 * @Modify: **/ -public class SnowflakeIdMaker { +public class SnowflakeIdMaker { public static final Logger LOGGER = LoggerFactory.getLogger(SnowflakeIdMaker.class); + private static final ConcurrentHashMap RAM_CACHE_MAP = new ConcurrentHashMap(); + private long workerId; private long datacenterId; private long sequence = 0L; - public SnowflakeIdMaker(){ + /** + * 禁止私自构建,防止ID重复 + */ + @Deprecated + private SnowflakeIdMaker() { this.workerId = getWorkerMacId(); this.datacenterId = getDatacenterPid(); this.sequence = 0L; } - public SnowflakeIdMaker(long workerId, long datacenterId){ + /** + * 禁止私自构建 防止 ID 生成重复 + * @param workerId 工作区ID + * @param datacenterId 数据区ID + */ + private SnowflakeIdMaker(long workerId, long datacenterId) { if (workerId > maxWorkerId || workerId < 0) { - throw new IllegalArgumentException(String.format("worker Id can't be greater than %d or less than 0",maxWorkerId)); + throw new IllegalArgumentException(String.format("worker Id can't be greater than %d or less than 0", maxWorkerId)); } if (datacenterId > maxDatacenterId || datacenterId < 0) { - throw new IllegalArgumentException(String.format("datacenter Id can't be greater than %d or less than 0",maxDatacenterId)); + throw new IllegalArgumentException(String.format("datacenter Id can't be greater than %d or less than 0", maxDatacenterId)); } this.workerId = workerId; this.datacenterId = datacenterId; } + /** + * 获取雪花生成器 + * @param workerId 工作区ID + * @param softType 产品类型 + * @return + */ + public static SnowflakeIdMaker getSnowflakeIdMaker(long workerId, CommonEnumUtil.SOFT_TYPE softType) { + if(softType == null){ + throw new IllegalArgumentException(String.format("The data warehouse soft type in the data center cannot be empty")); + } + + return getSnowflakeIdMaker(workerId, softType.getSnowflakeId()); + } + + /** + * 获取雪花生成器 + * @param workerId 工作区ID + * @param datacenterId 数据仓ID + * @return + */ + public static SnowflakeIdMaker getSnowflakeIdMaker(long workerId, long datacenterId) { + String cacheKey = workerId + "_" + datacenterId; + SnowflakeIdMaker maker = RAM_CACHE_MAP.get(cacheKey); + if (maker == null) { + maker = new SnowflakeIdMaker(workerId, datacenterId); + RAM_CACHE_MAP.put(cacheKey, maker); + } + return maker; + } + private long twepoch = 1288834974657L; private long workerIdBits = 5L; diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/CommonEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/CommonEnumUtil.java index 709d90a..1600882 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/CommonEnumUtil.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/CommonEnumUtil.java @@ -17,35 +17,54 @@ public class CommonEnumUtil { */ @JsonFormat(shape = JsonFormat.Shape.OBJECT) public enum SOFT_TYPE { - IMPP(1, "impp-platform", "IMPP平台"), - CORE(2, "i3core", "i3业务平台"), - WMS(3, "i3wms", "仓库管理软件"), - MES(4, "i3mes", "生产管理软件"), - QMS(5, "i3qms", "质量管理软件"), - MES_PCN(6, "i3mes-pcn", "生产管理软件-节点中心"), - SWEB(7, "i3sweb", "供应商服务"), - - FORM(20,"block-form","智能表单"), - REPORT(21,"block-report","智能报表"), - WORKFLOW(22,"block-workflow","智能工作流"), - JOBFLOW(23,"block-jobflow","智能作业流"), - SOFTSWITCH(24,"block-softswitch","软件适配器"), - HARDSWITCH(25,"block-hardswitch","硬件适配器"), - LAC(26,"lac","连接适配器"), - ANDON(27,"andon","安灯"), - APS(28,"APS","高级计划与排程"), - CENTER(99,"icloud-server","注册中心"), - SURFACE(98,"i3surface","对外服务"), - CLOUD(97,"i3cloud","微服务"), - GATEWAY(96,"impp-gateway","服务网关"), - CONSOLE(95,"impp-console","服务监控台"); + IMPP(1, 0, 0, "impp-platform", "IMPP平台"), + CORE(2, 8100, 4, "i3core", "i3业务平台"), + WMS(3, 8200, 10, "i3wms", "仓库管理软件"), + MES(4, 8300, 11, "i3mes", "生产管理软件"), + QMS(5, 0, 0, "i3qms", "质量管理软件"), + MES_PCN(6, 8350, 12, "i3mes-pcn", "生产管理软件-节点中心"), + SWEB(7, 8800, 19, "i3sweb", "供应商服务"), + + FORM(20, 8900, 16, "block-form", "智能表单"), + REPORT(21, 8910, 17, "block-report", "智能报表"), + WORKFLOW(22, 0, 0, "block-workflow", "智能工作流"), + JOBFLOW(23, 0, 0, "block-jobflow", "智能作业流"), + SOFTSWITCH(24, 8920, 18, "block-softswitch", "软件适配器"), + HARDSWITCH(25, 0, 0, "block-hardswitch", "硬件适配器"), + LAC(26, 8600, 13, "lac", "连接适配器"), + ANDON(27, 8500, 14, "andon", "安灯"), + APS(28, 8410, 15, "APS", "高级计划与排程"), + CENTER(99, 8000, 1, "icloud-server", "注册中心"), + SURFACE(98, 0, 0, "i3surface", "对外服务"), + CLOUD(97, 0, 0, "i3cloud", "微服务"), + GATEWAY(96, 9000, 3, "impp-gateway", "服务网关"), + CONSOLE(95, 8010, 2, "impp-console", "服务监控台"); + /** + * 产品ID + */ private int value; + /** + * 应用默认端口 + */ + private int prot; + /** + * 应用默认雪花DataBaseId(0-31)共32 个存储区 + */ + private int snowflakeId; + /** + * 产品代码 + */ private String code; + /** + * 产品描述 + */ private String description; - private SOFT_TYPE(int value, String code, String description) { + SOFT_TYPE(int value, int prot, int snowflakeId, String code, String description) { this.value = value; + this.prot = prot; + this.snowflakeId = snowflakeId; this.code = code; this.description = description; } @@ -62,6 +81,14 @@ public class CommonEnumUtil { return description; } + public int getProt() { + return prot; + } + + public int getSnowflakeId() { + return snowflakeId; + } + public static String valueOfCode(int val) { String tmp = null; for (int i = 0; i < values().length; i++) { @@ -82,6 +109,15 @@ public class CommonEnumUtil { return tmp; } + public static SOFT_TYPE codeOf(String code) { + for (int i = 0; i < values().length; i++) { + if (values()[i].code.equals(code)) { + return values()[i]; + } + } + return null; + } + public static String valueOfDescription(int val) { String tmp = null; for (int i = 0; i < values().length; i++) { From af1324e9c7a4f1f4a0d85daad2e2101dfef26ae7 Mon Sep 17 00:00:00 2001 From: gcj Date: Mon, 25 Nov 2019 16:16:46 +0800 Subject: [PATCH 02/15] =?UTF-8?q?=E3=80=90=E9=87=87=E8=B4=AD=E6=94=B6?= =?UTF-8?q?=E8=B4=A7=E3=80=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/cn/estsh/i3plus/pojo/base/enumutil/WmsEnumUtil.java | 1 + 1 file changed, 1 insertion(+) 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 7bafaf6..2dc51c7 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 @@ -950,6 +950,7 @@ public class WmsEnumUtil { INSTOCKED(40, "入库"), PICKED(50, "配料"), OUT_STOCK(60, "出库"), + SCRAP(70, "报废"), COMMING(80, "在途"); private int value; From ed89db8be35d7304a7f2783948c455af97ed5c64 Mon Sep 17 00:00:00 2001 From: WYnneaoapc Date: Mon, 25 Nov 2019 16:58:41 +0800 Subject: [PATCH 03/15] =?UTF-8?q?6565=20=E6=9B=B4=E6=96=B0=20=E5=90=8C?= =?UTF-8?q?=E6=AD=A5=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/cn/estsh/i3plus/pojo/base/enumutil/MesEnumUtil.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) 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 0508600..e42cf1f 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 @@ -2981,9 +2981,8 @@ public class MesEnumUtil { */ @JsonFormat(shape = JsonFormat.Shape.OBJECT) public enum CONFIG_TYPE { - FASTDFS_SAVE_PATH(10, "SAVE_PATH", ""), - NGINX_IP(20, "NGINX_HOST", ""), + NGINX_HOST(20, "NGINX_HOST", ""), MES_STATION_SOCKET(30, "mes_station_socket", ""), GATEWAY_IP(40, "GATEWAY_HOST", ""), UPDATE_SYNC_TIME(50, "SYNC_DATA_URL", "UPDATE_SYNC_TIME"), From 54d3e351be517aefee09f87d2d93917b0496ff58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=80=9D=E6=B4=81?= Date: Mon, 25 Nov 2019 18:01:47 +0800 Subject: [PATCH 04/15] =?UTF-8?q?=E5=90=88=E5=B9=B6=E5=86=B2=E7=AA=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/cn/estsh/i3plus/pojo/base/enumutil/WmsEnumUtil.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 7bafaf6..c2369ee 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 @@ -368,7 +368,7 @@ public class WmsEnumUtil { */ @JsonFormat(shape = JsonFormat.Shape.OBJECT) public enum PRODUCT_INSTOCK_STATUS { - CREATE(10, "创建"), FINISH(20, "已处理"), FAIL(30, "处理出错"); + CREATE(10, "创建"), FINISH(20, "已处理"), FAIL(30, "处理出错"),CREATE_DOCMOVE(40, "生成移库单"),PULL_FAIL(50, "拉动出错"); private int value; private String description; From 42a6f8a02ddcb138b843c75d90829181239fb3a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=80=9D=E6=B4=81?= Date: Mon, 25 Nov 2019 18:38:19 +0800 Subject: [PATCH 05/15] =?UTF-8?q?=E3=80=90#1219=20=E5=9C=A8=E5=AE=81?= =?UTF-8?q?=E5=BE=B7=E7=8E=B0=E6=9C=89=E7=94=9F=E4=BA=A7=E6=89=A3=E5=87=8F?= =?UTF-8?q?JOB=E5=9F=BA=E7=A1=80=E4=B8=8A=E5=A2=9E=E5=8A=A0=E7=94=9F?= =?UTF-8?q?=E6=88=90=E9=A2=86=E6=96=99=E5=8D=95=E5=8A=9F=E8=83=BD=E3=80=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/cn/estsh/i3plus/pojo/model/wms/PrintOrderDataModel.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/wms/PrintOrderDataModel.java b/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/wms/PrintOrderDataModel.java index c9a988d..6af3b68 100644 --- a/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/wms/PrintOrderDataModel.java +++ b/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/wms/PrintOrderDataModel.java @@ -69,6 +69,10 @@ public class PrintOrderDataModel implements Serializable { @Transient public String vendorEmail; + @ApiParam(value = "标题") + @Transient + public String title; + public int getBusiDataType() { if (busiDataType != null) { return busiDataType.intValue(); From a49fdf87b83a6e9ca88637799fba4931013351b9 Mon Sep 17 00:00:00 2001 From: jokelone Date: Mon, 25 Nov 2019 20:47:29 +0800 Subject: [PATCH 06/15] =?UTF-8?q?=E3=80=90=E4=BB=BB=E5=8A=A1=EF=BC=9A1211?= =?UTF-8?q?=E6=8A=A5=E8=A1=A8=E8=B4=A8=E9=87=8F=E6=95=B0=E6=8D=AE=E3=80=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../estsh/i3plus/pojo/base/util/BeanMapUtils.java | 31 +++++++ .../i3plus/pojo/mes/bean/MesDefectRecord.java | 34 ++++++-- .../estsh/i3plus/pojo/mes/bean/MesQcCheckData.java | 97 ++++++++++++++++++++++ .../mes/repository/IMesPartObjectRepository.java | 14 ++++ .../mes/repository/MesQcCheckDataRepository.java | 14 ++++ .../mes/repository/MesRepairRecordRepository.java | 14 ++++ .../estsh/i3plus/pojo/mes/sqlpack/MesHqlPack.java | 66 +++++++++++++++ 7 files changed, 261 insertions(+), 9 deletions(-) create mode 100644 modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQcCheckData.java create mode 100644 modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/IMesPartObjectRepository.java create mode 100644 modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesQcCheckDataRepository.java create mode 100644 modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesRepairRecordRepository.java diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/util/BeanMapUtils.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/util/BeanMapUtils.java index 387ed78..1504765 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/util/BeanMapUtils.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/util/BeanMapUtils.java @@ -1,8 +1,12 @@ package cn.estsh.i3plus.pojo.base.util; +import org.apache.commons.beanutils.BeanUtils; +import org.springframework.cglib.beans.BeanGenerator; import org.springframework.cglib.beans.BeanMap; +import java.util.ArrayList; import java.util.HashMap; +import java.util.List; import java.util.Map; public class BeanMapUtils { @@ -30,4 +34,31 @@ public class BeanMapUtils { return bean; } + + /** + * 键值对转换为对象 + * @param mapList + * @return + */ + public static List generateObjectByField(List> mapList) { + try { + List resultList = new ArrayList<>(); + for (Map propertyMap : mapList) { + BeanGenerator generator = new BeanGenerator(); + for (Map.Entry entry : propertyMap.entrySet()) { + generator.addProperty(entry.getKey(), String.class); + } + // 构建对象 + Object obj = generator.create(); + // 赋值 + for (Map.Entry en : propertyMap.entrySet()) { + BeanUtils.setProperty(obj, en.getKey(), en.getValue()); + } + resultList.add(obj); + } + return resultList; + } catch (Exception e) { + return null; + } + } } diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesDefectRecord.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesDefectRecord.java index 89540d9..9008e5e 100644 --- a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesDefectRecord.java +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesDefectRecord.java @@ -26,33 +26,49 @@ import java.util.Date; @DynamicUpdate @EqualsAndHashCode(callSuper = true) @Table(name = "MES_DEFECT_RECORD") -@Api("生产工单") +@Api("不良信息记录表") public class MesDefectRecord extends BaseBean { - @Column(name = "SERIAL_NUMBER") + @Column(name="SERIAL_NUMBER") @ApiParam("产品条码") private String serialNumber; - @Column(name = "PART_NO") + @Column(name="PART_NO") @ApiParam("物料号") private String partNo; - @Column(name = "DEFECT_CODE") - @ApiParam("不良代码") + @Column(name="PART_NAME") + @ApiParam("物料名称") + private String partName; + + @Column(name="DEFECT_CODE") + @ApiParam("缺陷代码") private String defectCode; - @Column(name = "REPAIR_STATUS") + @Column(name="DEFECT_NAME") + @ApiParam("缺陷名称") + private String defectName; + + @Column(name="DEFECT_LOCATION") + @ApiParam("缺陷位置") + private String defectLocation; + + @Column(name = "SIDE_LOCATION") + @ApiParam("面位") + private String sideLocation; + + @Column(name="REPAIR_STATUS") @ApiParam("维修状态") private Integer repairStatus; - @Column(name = "WORK_CENTER_CODE") + @Column(name="WORK_CENTER_CODE") @ApiParam("工作中心代码") private String workCenterCode; - @Column(name = "WORK_CELL_CODE") + @Column(name="WORK_CELL_CODE") @ApiParam("工作单元代码") private String workCellCode; - @Column(name = "MEMO") + @Column(name="MEMO") @ApiParam("备注") private String memo; diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQcCheckData.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQcCheckData.java new file mode 100644 index 0000000..495fec2 --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesQcCheckData.java @@ -0,0 +1,97 @@ +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.util.List; + +/** + * @Description: + * @Reference: + * @Author: joke.wang + * @CreateDate: 2019\10\12 16:33 + * @Modify: + **/ +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@EqualsAndHashCode(callSuper = true) +@Table(name = "MES_QC_CHECK_DATA") +@Api("质量过程检测数据") +public class MesQcCheckData extends BaseBean { + + @Column(name = "CHECK_ID") + @ApiParam("检测id") + private String checkId; + + @Column(name = "PART_NO") + @ApiParam("物料编码") + private String partNo; + + @Column(name = "WORK_CENTER_CODE") + @ApiParam("工作中心代码") + private String workCenterCode; + + @Column(name = "WORK_CELL_CODE") + @ApiParam("工作单元代码") + private String workCellCode; + + @Column(name = "CHECK_TYPE") + @ApiParam("检测类型") + private Integer checkType; + + @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 = "CHECK_VALUE") + @ApiParam("检测值") + private String checkValue; + + @Column(name = "CHECK_RESULT") + @ApiParam("判定结果") + private String checkResult; + + @Column(name = "SN") + @ApiParam("产品条码") + private String sn; + + @Column(name = "QTY") + @ApiParam("产品数量") + private Integer qty; + + @Column(name = "MEMO") + @ApiParam("备注") + private String memo; + + @Column(name = "ORDER_NO") + @ApiParam("工单号") + private String orderNo; + + @Column(name = "CUST_CODE") + @ApiParam("客户代码") + private String custCode; + +} diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/IMesPartObjectRepository.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/IMesPartObjectRepository.java new file mode 100644 index 0000000..c26afa5 --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/IMesPartObjectRepository.java @@ -0,0 +1,14 @@ +package cn.estsh.i3plus.pojo.mes.repository; + +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import cn.estsh.i3plus.pojo.mes.bean.MesPartObject; + +/** + * @Description: + * @Reference: + * @Author: joke.wang + * @CreateDate: 2019\11\25 15:07 + * @Modify: + **/ +public interface IMesPartObjectRepository extends BaseRepository { +} diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesQcCheckDataRepository.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesQcCheckDataRepository.java new file mode 100644 index 0000000..dba2f1c --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesQcCheckDataRepository.java @@ -0,0 +1,14 @@ +package cn.estsh.i3plus.pojo.mes.repository; + +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import cn.estsh.i3plus.pojo.mes.bean.MesQcCheckData; + +/** + * @Description: + * @Reference: + * @Author: joke.wang + * @CreateDate: 2019\11\25 13:50 + * @Modify: + **/ +public interface MesQcCheckDataRepository extends BaseRepository { +} diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesRepairRecordRepository.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesRepairRecordRepository.java new file mode 100644 index 0000000..ccead63 --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesRepairRecordRepository.java @@ -0,0 +1,14 @@ +package cn.estsh.i3plus.pojo.mes.repository; + +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import cn.estsh.i3plus.pojo.mes.bean.MesRepairRecord; + +/** + * @Description: + * @Reference: + * @Author: joke.wang + * @CreateDate: 2019\11\25 13:39 + * @Modify: + **/ +public interface MesRepairRecordRepository extends BaseRepository { +} 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 70087fd..d614b27 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 @@ -1923,4 +1923,70 @@ public class MesHqlPack { return packBean; } + /** + * 维修记录 + * @param mesRepairRecord + * @param organizeCode + * @return + */ + public static DdlPackBean getMesRepairRecord(MesRepairRecord mesRepairRecord, String organizeCode) { + DdlPackBean packBean = getAllBaseDataByNormalPro(mesRepairRecord, organizeCode); + if (!StringUtils.isEmpty(mesRepairRecord.getPartNo())) { + DdlPreparedPack.getStringLikerPack(mesRepairRecord.getPartNo(), "partNo", packBean); + } + if (!StringUtils.isEmpty(mesRepairRecord.getSerialNumber())) { + DdlPreparedPack.getStringLikerPack(mesRepairRecord.getSerialNumber(), "serialNumber", packBean); + } + if (!StringUtils.isEmpty(mesRepairRecord.getWorkCenterCode())) { + DdlPreparedPack.getStringLikerPack(mesRepairRecord.getWorkCenterCode(), "workCenterCode", packBean); + } + if (!StringUtils.isEmpty(mesRepairRecord.getWorkCellCode())) { + DdlPreparedPack.getStringLikerPack(mesRepairRecord.getWorkCellCode(), "workCellCode", packBean); + } + if (!StringUtils.isEmpty(mesRepairRecord.getDefectCode())) { + DdlPreparedPack.getStringLikerPack(mesRepairRecord.getDefectCode(), "defectCode", packBean); + } + if (!StringUtils.isEmpty(mesRepairRecord.getRepairCode())) { + DdlPreparedPack.getStringLikerPack(mesRepairRecord.getRepairCode(), "repairCode", packBean); + } + if (!StringUtils.isEmpty(mesRepairRecord.getDcCode())) { + DdlPreparedPack.getStringLikerPack(mesRepairRecord.getDcCode(), "dcCode", packBean); + } + DdlPreparedPack.timeBuilder( + mesRepairRecord.getCreateDateTimeStart(), + mesRepairRecord.getCreateDateTimeEnd(), + "createDatetime", packBean, true); + return packBean; + } + + /** + * 过程质量检测数据 + * @param mesQcCheckData + * @param organizeCode + * @return + */ + public static DdlPackBean getMesQcCheckData(MesQcCheckData mesQcCheckData, String organizeCode) { + DdlPackBean packBean = getAllBaseDataByNormalPro(mesQcCheckData, organizeCode); + if (!StringUtils.isEmpty(mesQcCheckData.getPartNo())) { + DdlPreparedPack.getStringLikerPack(mesQcCheckData.getPartNo(), "partNo", packBean); + } + if (!StringUtils.isEmpty(mesQcCheckData.getOrderNo())) { + DdlPreparedPack.getStringLikerPack(mesQcCheckData.getOrderNo(), "orderNo", packBean); + } + if (!StringUtils.isEmpty(mesQcCheckData.getSn())) { + DdlPreparedPack.getStringLikerPack(mesQcCheckData.getSn(), "sn", packBean); + } + if (!StringUtils.isEmpty(mesQcCheckData.getWorkCenterCode())) { + DdlPreparedPack.getStringLikerPack(mesQcCheckData.getWorkCenterCode(), "workCenterCode", packBean); + } + if (!StringUtils.isEmpty(mesQcCheckData.getWorkCellCode())) { + DdlPreparedPack.getStringLikerPack(mesQcCheckData.getWorkCellCode(), "workCellCode", packBean); + } + DdlPreparedPack.timeBuilder( + mesQcCheckData.getCreateDateTimeStart(), + mesQcCheckData.getCreateDateTimeEnd(), + "createDatetime", packBean, true); + return packBean; + } + } From 9e64ee8258543b8d31c2a18feb2835e71bf12044 Mon Sep 17 00:00:00 2001 From: "jhforever.wang@estsh.com" Date: Tue, 26 Nov 2019 09:14:30 +0800 Subject: [PATCH 07/15] =?UTF-8?q?=E3=80=90=E9=9C=80=E6=B1=82=EF=BC=9A1221?= =?UTF-8?q?=EF=BC=8C=E5=AF=BC=E5=85=A5=E3=80=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../i3plus/pojo/base/enumutil/MesEnumUtil.java | 15 ++++++++++++++- .../i3plus/pojo/mes/pcn/sqlpack/MesHqlPack.java | 21 +++++++++++++++++++++ .../estsh/i3plus/pojo/mes/sqlpack/MesHqlPack.java | 3 +++ 3 files changed, 38 insertions(+), 1 deletion(-) 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 bd6cc87..5821577 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 @@ -629,6 +629,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; + } } /** @@ -1285,7 +1295,10 @@ public class MesEnumUtil { MES_PCN_SYNC_CFG(50, "PCN同步配置"), MES_PART(60, "物料表"), MES_PRODUCE_CATEGORY(70, "产品类型"), - MES_PACK_SPEC(80, "包装规格"); + MES_PACK_SPEC(80, "包装规格"), + MES_PROD_PACK(90, "产品包装关系"), + MES_PRODUCT_ENCODE_CFG(100, "产品编码配置"), + MES_BOM(110, "物料清单"); private int value; private String description; diff --git a/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/sqlpack/MesHqlPack.java b/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/sqlpack/MesHqlPack.java index a55e442..8b6ac75 100644 --- a/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/sqlpack/MesHqlPack.java +++ b/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/sqlpack/MesHqlPack.java @@ -350,4 +350,25 @@ public class MesHqlPack { } + /** + * MES班组信息查询条件封装 + * + * @param shiftGroup + * @param organizeCode + * @return + */ + public static DdlPackBean getMesShiftGroup(MesShiftGroup shiftGroup, String organizeCode) { + + DdlPackBean packBean = getAllBaseDataByNormalPro(shiftGroup, organizeCode); + if (!StringUtils.isEmpty(shiftGroup.getGroupCode())) { + DdlPreparedPack.getStringLikerPack(shiftGroup.getGroupCode(), "groupCode", packBean); + } + if (!StringUtils.isEmpty(shiftGroup.getGroupName())) { + DdlPreparedPack.getStringLikerPack(shiftGroup.getGroupName(), "groupName", packBean); + } + if (!StringUtils.isEmpty(shiftGroup.getWorkCenterCode())) { + DdlPreparedPack.getStringLikerPack(shiftGroup.getWorkCenterCode(), "workCenterCode", packBean); + } + return packBean; + } } 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 d614b27..d125255 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 @@ -365,6 +365,9 @@ public class MesHqlPack { if (!StringUtils.isEmpty(shiftGroup.getGroupName())) { DdlPreparedPack.getStringLikerPack(shiftGroup.getGroupName(), "groupName", packBean); } + if (!StringUtils.isEmpty(shiftGroup.getWorkCenterCode())) { + DdlPreparedPack.getStringLikerPack(shiftGroup.getWorkCenterCode(), "workCenterCode", packBean); + } return packBean; } From 74224b20acf9b0a41e4db7ff99dca1fe258fc25c Mon Sep 17 00:00:00 2001 From: crish <570360737@qq.com> Date: Tue, 26 Nov 2019 13:39:18 +0800 Subject: [PATCH 08/15] =?UTF-8?q?=E5=AE=89=E7=81=AF=E4=B8=BB=E7=95=8C?= =?UTF-8?q?=E9=9D=A2=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../i3plus/pojo/andon/bean/AndonCellGroupCfg.java | 18 +++++- .../i3plus/pojo/andon/bean/AndonManageQueue.java | 4 ++ .../i3plus/pojo/andon/model/AndonBoardModel.java | 44 +++++++++++++ .../pojo/andon/model/AndonMenuInterfaceModel.java | 75 ++++++++++++++++++++++ .../pojo/andon/model/CellGroupStatusModel.java | 55 ++++++++++++++++ .../i3plus/pojo/base/enumutil/AndonEnumUtil.java | 46 +++++++++++++ 6 files changed, 241 insertions(+), 1 deletion(-) create mode 100644 modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonMenuInterfaceModel.java create mode 100644 modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/CellGroupStatusModel.java diff --git a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/bean/AndonCellGroupCfg.java b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/bean/AndonCellGroupCfg.java index d9d47c3..c194faf 100644 --- a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/bean/AndonCellGroupCfg.java +++ b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/bean/AndonCellGroupCfg.java @@ -7,6 +7,7 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiParam; import lombok.Data; import lombok.EqualsAndHashCode; +import org.hibernate.Interceptor; import org.hibernate.annotations.DynamicInsert; import org.hibernate.annotations.DynamicUpdate; @@ -41,7 +42,6 @@ public class AndonCellGroupCfg extends BaseBean { @ApiParam(value = "工作单元组") private String cellGroup; - @Column(name = "GROUP_CODE") @ApiParam(value = "分组代码") private String groupCode; @@ -49,4 +49,20 @@ public class AndonCellGroupCfg extends BaseBean { @Column(name = "GROUP_NAME") @ApiParam(value = "分组名称") private String groupName; + + @Column(name = "HORIZONTAL_AXIS") + @ApiParam(value = "横坐标") + private Float horizontalAxis ; + + @Column(name = "VERTICAL_AXIS") + @ApiParam(value = "纵坐标") + private Float verticalAxis; + + @Column(name = "ABNORMAL_SRC") + @ApiParam(value = "异常图片") + private String abnormalSrc; + + @Column(name = "NORMAL_SRC") + @ApiParam(value = "正常图片") + private String normalSrc; } diff --git a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/bean/AndonManageQueue.java b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/bean/AndonManageQueue.java index 82ff8c5..ea05280 100644 --- a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/bean/AndonManageQueue.java +++ b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/bean/AndonManageQueue.java @@ -111,6 +111,10 @@ public class AndonManageQueue extends BaseManageQueue { private Double avgSignTime; @Transient + @ApiParam(value = "解决时长", example = "0") + private Long resolveTime; + + @Transient @ApiParam(value = "平均解决时长", example = "0") private Double avgResolveTime; diff --git a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonBoardModel.java b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonBoardModel.java index cee23af..608849c 100644 --- a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonBoardModel.java +++ b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonBoardModel.java @@ -15,12 +15,30 @@ import java.io.Serializable; @Data public class AndonBoardModel { + @ApiParam("工作单元代码") + private String workCellCode; + + @ApiParam("工作单元名称") + private String workCellName; + + @ApiParam("安灯任务编号") + private String andonOrderNo; + @ApiParam("安灯类型") private String alarmCode; @ApiParam("安灯类型名称") private String alarmName; + @ApiParam("故障时长 单位:分钟") + private Long exceptionTimeCount; + + @ApiParam("响应时长 单位:分钟") + private Long responseTimeCount; + + @ApiParam("解决时长 单位:分钟") + private Long resetTimeCount; + @ApiParam("安灯正常处理的次数") private Integer inTime; @@ -30,6 +48,19 @@ public class AndonBoardModel { @ApiParam("安灯总次数") private Integer totalTime; + @ApiParam("安灯类型百分比") + private float propagation; + + @ApiParam("事件描述代码") + private String acCode; + + @ApiParam("事件描述详情") + private String acDesc; + + @ApiParam("工位运行状态") + private String cellStatus; + + public int getTotalTimeVal() { return totalTime == null ? 0 : totalTime; } @@ -42,5 +73,18 @@ public class AndonBoardModel { return inTime == null ? 0 : inTime; } + public double getExceptionCountVal() { + return exceptionTimeCount == null ? 0 : exceptionTimeCount; + } + + public double getResponseTimeCountVal() { + return responseTimeCount == null ? 0 : responseTimeCount; + } + + public double getResetTimeCountVal() { + return resetTimeCount == null ? 0 : resetTimeCount; + } + + } diff --git a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonMenuInterfaceModel.java b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonMenuInterfaceModel.java new file mode 100644 index 0000000..adaea75 --- /dev/null +++ b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonMenuInterfaceModel.java @@ -0,0 +1,75 @@ +package cn.estsh.i3plus.pojo.andon.model; + +import cn.estsh.i3plus.pojo.andon.bean.AndonManageQueue; +import io.swagger.annotations.ApiParam; +import lombok.Data; + +import java.util.List; + +/** + * @Description: 安灯主界面Model + * @Reference: + * @Author: Crish + * @CreateDate:2019-11-22-13:44 + * @Modify: + **/ +@Data +public class AndonMenuInterfaceModel{ + + @ApiParam("工作中心代码") + private String workCenterCode; + + @ApiParam("工作中心名称") + private String workCenterName; + + @ApiParam("产线运行状态") + private String workCenterStatus; + + @ApiParam("安灯类型") + private String alarmCode; + + @ApiParam("安灯类型名称") + private String alarmName; + + @ApiParam("故障总时长 单位:分钟") + private Long exceptionTime; + + @ApiParam("当前安灯类型故障时长 单位:分钟") + private Long currentExceptionTime; + + @ApiParam("当前安灯类型故障比例") + private Double proportion; + + @ApiParam("当前工厂的产线故障统计") + private List andonWorkcenterList; + + @ApiParam("当前产线的所有故障统计") + private List alarmBrokenInfoList; + + @ApiParam("当前产线的未解决故障统计") + private List pendingSolveBrokenInfoList; + + @ApiParam("当前产线的响应时长top10") + private List responseInfoList; + + @ApiParam("当前产线的解决时长top10") + private List solveInfoList; + + @ApiParam("当前产线的异常时长top10") + private List exceptionInfoList; + + @ApiParam("当前产线的站点状态统计") + private List andonCellGroupStatusList; + + public double getExceptionTimeVal() { + return exceptionTime == null ? 0 : exceptionTime; + } + + public double getCurrentExceptionTimeVal() { + return currentExceptionTime == null ? 0 : currentExceptionTime; + } + + public double getProportionVal() { + return proportion == null ? 0 : proportion; + } +} \ No newline at end of file diff --git a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/CellGroupStatusModel.java b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/CellGroupStatusModel.java new file mode 100644 index 0000000..d5ac0ff --- /dev/null +++ b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/CellGroupStatusModel.java @@ -0,0 +1,55 @@ +package cn.estsh.i3plus.pojo.andon.model; + +/** + * @Description: 站点统计分组model + * @Reference: + * @Author: Crish + * @CreateDate:2019-11-22-16:02 + * @Modify: + **/ + +import io.swagger.annotations.ApiParam; +import lombok.Data; + +import javax.persistence.Column; +import java.util.List; + +/** + * 工位分组配置model + */ +@Data +public class CellGroupStatusModel{ + + @ApiParam("工作中心代码") + private String workCenterCode; + + @ApiParam("安灯类型") + private String groupCode; + + @ApiParam("安灯类型名称") + private String groupName; + + @ApiParam("安灯类型名称") + private String workCellCode; + + @ApiParam("安灯类型名称") + private String workCellName; + + @ApiParam("站点运行状态") + private String cellGroupStatus; + + @ApiParam(value = "横坐标") + private Float horizontalAxis ; + + @ApiParam(value = "纵坐标") + private Float verticalAxis; + + @ApiParam(value = "异常图片") + private String abnormalSrc; + + @ApiParam(value = "正常图片") + private String normalSrc; + + @ApiParam("当前站点下的工位故障统计") + private List andonBoardModelList; +} 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 6b88127..afcbeff 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 @@ -13,6 +13,52 @@ import org.apache.commons.lang3.StringUtils; public class AndonEnumUtil { /** + * 安灯主界面产线或者站点运行状态 + * 正常 = 10,故障 = 20 + */ + @JsonFormat(shape = JsonFormat.Shape.OBJECT) + public enum RUNNING_STATUS{ + RUNNING("10","正常"), + STOP("20","故障"); + + private String value; + private String description; + + RUNNING_STATUS(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 val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (StringUtils.equalsIgnoreCase(values()[i].value,val)) { + tmp = values()[i].description; + } + } + return tmp; + } + + public static String descriptionOfValue(String val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (StringUtils.equalsIgnoreCase(values()[i].description, val)) { + tmp = values()[i].value; + } + } + return tmp; + } + } + + /** * 安灯配置表分组列枚举 * 10-是,20-否 */ From e8274624268191560a9eab0dbe933429417ced06 Mon Sep 17 00:00:00 2001 From: gcj Date: Tue, 26 Nov 2019 15:21:51 +0800 Subject: [PATCH 09/15] =?UTF-8?q?=E3=80=90=E9=87=87=E8=B4=AD=E6=94=B6?= =?UTF-8?q?=E8=B4=A7=E3=80=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/estsh/i3plus/pojo/wms/bean/WmsDocMovementDetails.java | 3 +++ .../src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsVendorPart.java | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsDocMovementDetails.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsDocMovementDetails.java index 591b77b..5703187 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsDocMovementDetails.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsDocMovementDetails.java @@ -147,6 +147,9 @@ public class WmsDocMovementDetails extends BaseBean { @ApiParam("目的库存地代码") public String destAreaNo; + @Column(name = "LOT_NO") + @ApiParam("批次") + public String lotNo; @Transient @ApiParam("实际批次") private String actualLot; diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsVendorPart.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsVendorPart.java index 3d90a3d..042c111 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsVendorPart.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsVendorPart.java @@ -42,6 +42,10 @@ public class WmsVendorPart extends BaseBean { @ApiParam(value = "供应商物料号") private String vendorPartNo; + @Column(name = "MAX_AMOUNT") + @ApiParam(value = "供应商月提供最大数量") + private Double maxAmount; + @Transient @ApiParam("物料名称") private String partName; From d0e6d30a9ebaf7083bfc89a46c95e17a30178607 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=80=9D=E6=B4=81?= Date: Tue, 26 Nov 2019 15:54:42 +0800 Subject: [PATCH 10/15] =?UTF-8?q?#6639=20=E3=80=90VDA=E7=94=9F=E4=BA=A7?= =?UTF-8?q?=E9=A2=86=E6=96=99-FIFO=E8=B7=B3=E8=BF=87-=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E5=BC=82=E5=B8=B8=E3=80=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/cn/estsh/i3plus/pojo/model/wms/PrintOrderDataModel.java | 4 ---- .../main/java/cn/estsh/i3plus/pojo/wms/bean/WmsDocMovementMaster.java | 4 ++++ 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/wms/PrintOrderDataModel.java b/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/wms/PrintOrderDataModel.java index 6af3b68..c9a988d 100644 --- a/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/wms/PrintOrderDataModel.java +++ b/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/wms/PrintOrderDataModel.java @@ -69,10 +69,6 @@ public class PrintOrderDataModel implements Serializable { @Transient public String vendorEmail; - @ApiParam(value = "标题") - @Transient - public String title; - public int getBusiDataType() { if (busiDataType != null) { return busiDataType.intValue(); diff --git a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsDocMovementMaster.java b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsDocMovementMaster.java index 8ea05e4..fc098a8 100644 --- a/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsDocMovementMaster.java +++ b/modules/i3plus-pojo-wms/src/main/java/cn/estsh/i3plus/pojo/wms/bean/WmsDocMovementMaster.java @@ -175,6 +175,10 @@ public class WmsDocMovementMaster extends BaseBean { @ApiParam("物料编号") public String partNo; + @ApiParam(value = "标题") + @Transient + public String title; + public int getOrderStatusVal() { return this.orderStatus == null ? 0 : this.orderStatus; } From d4f963ee70eb10d7e3f1119ac170c35711f10e73 Mon Sep 17 00:00:00 2001 From: Jason Date: Tue, 26 Nov 2019 18:05:05 +0800 Subject: [PATCH 11/15] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=8A=A5=E8=A1=A8?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/estsh/i3plus/pojo/aps/model/ReportPager.java | 12 +++++++++--- .../estsh/i3plus/pojo/aps/model/StatisticReportReponse.java | 13 +++++++++++++ .../cn/estsh/i3plus/pojo/base/enumutil/ApsEnumUtil.java | 1 - 3 files changed, 22 insertions(+), 4 deletions(-) create mode 100644 modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/StatisticReportReponse.java diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/ReportPager.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/ReportPager.java index aa9b938..7116296 100644 --- a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/ReportPager.java +++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/ReportPager.java @@ -1,7 +1,10 @@ package cn.estsh.i3plus.pojo.aps.model; -import cn.estsh.i3plus.pojo.base.common.Pager; +import cn.estsh.i3plus.pojo.aps.converter.CustomDateDeserializer; +import cn.estsh.i3plus.pojo.aps.converter.CustomDateSerializer; import cn.estsh.i3plus.pojo.base.enumutil.ApsEnumUtil; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import io.swagger.annotations.Api; import lombok.Data; @@ -16,9 +19,12 @@ import java.util.Date; **/ @Data @Api("报表分页查询参数") -public class ReportPager extends Pager { - private String filter; // 物料筛选条件 +public class ReportPager extends APSPager { + @JsonSerialize(using = CustomDateSerializer.class) + @JsonDeserialize(using = CustomDateDeserializer.class) private Date begin; // 统计开始时间 + @JsonSerialize(using = CustomDateSerializer.class) + @JsonDeserialize(using = CustomDateDeserializer.class) private Date end; // 统计结束时间 private ApsEnumUtil.MATERIAL_REPORT_TYPE type; private ApsEnumUtil.REPORT_TIME_SPAN span; // 统计时间间隔 diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/StatisticReportReponse.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/StatisticReportReponse.java new file mode 100644 index 0000000..91a36ab --- /dev/null +++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/StatisticReportReponse.java @@ -0,0 +1,13 @@ +package cn.estsh.i3plus.pojo.aps.model; + +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +@Data +public class StatisticReportReponse { + private List headers = new ArrayList<>(); + private List> datas = new ArrayList<>(); +} 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 1f6c237..f1c1054 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 @@ -84,7 +84,6 @@ public class ApsEnumUtil { */ @JsonFormat(shape = JsonFormat.Shape.OBJECT) public enum MATERIAL_REPORT_TYPE { - PRODUCE("PRODUCE", "生产"), PURCHASE("PURCHASE", "采购"), INVENTORY("INVENTORY", "库存"); From 06e969af1b050b3d629aeb0eb64b4f61cbdbd8e1 Mon Sep 17 00:00:00 2001 From: crish <570360737@qq.com> Date: Tue, 26 Nov 2019 18:22:16 +0800 Subject: [PATCH 12/15] =?UTF-8?q?=E5=AE=89=E7=81=AF=E4=B8=BB=E7=95=8C?= =?UTF-8?q?=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../i3plus/pojo/andon/model/AndonMenuInterfaceModel.java | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonMenuInterfaceModel.java b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonMenuInterfaceModel.java index adaea75..7903dc6 100644 --- a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonMenuInterfaceModel.java +++ b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonMenuInterfaceModel.java @@ -47,7 +47,7 @@ public class AndonMenuInterfaceModel{ private List alarmBrokenInfoList; @ApiParam("当前产线的未解决故障统计") - private List pendingSolveBrokenInfoList; + private List pendingSolveBrokenInfoList; @ApiParam("当前产线的响应时长top10") private List responseInfoList; @@ -72,4 +72,18 @@ public class AndonMenuInterfaceModel{ public double getProportionVal() { return proportion == null ? 0 : proportion; } + + @Override + public String toString() { + return "AndonMenuInterfaceModel{" + + "workCenterCode='" + workCenterCode + '\'' + + ", workCenterName='" + workCenterName + '\'' + + ", workCenterStatus='" + workCenterStatus + '\'' + + ", alarmCode='" + alarmCode + '\'' + + ", alarmName='" + alarmName + '\'' + + ", exceptionTime=" + exceptionTime + + ", currentExceptionTime=" + currentExceptionTime + + ", proportion=" + proportion + + '}'; + } } \ No newline at end of file From cba2cda2d4df825453430d7afcb0ffa304c9bd6e Mon Sep 17 00:00:00 2001 From: crish <570360737@qq.com> Date: Tue, 26 Nov 2019 20:08:16 +0800 Subject: [PATCH 13/15] =?UTF-8?q?=E5=AE=89=E7=81=AF=E4=B8=BB=E7=95=8C?= =?UTF-8?q?=E9=9D=A2=E9=83=A8=E5=88=86=E5=AD=97=E6=AE=B5=E8=B5=8B=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/estsh/i3plus/pojo/andon/model/AndonBoardModel.java | 14 +++++++------- .../i3plus/pojo/andon/model/AndonMenuInterfaceModel.java | 6 +++--- .../i3plus/pojo/andon/model/CellGroupStatusModel.java | 4 ++-- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonBoardModel.java b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonBoardModel.java index 608849c..819fdd7 100644 --- a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonBoardModel.java +++ b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonBoardModel.java @@ -31,25 +31,25 @@ public class AndonBoardModel { private String alarmName; @ApiParam("故障时长 单位:分钟") - private Long exceptionTimeCount; + private Long exceptionTimeCount = 0L; @ApiParam("响应时长 单位:分钟") - private Long responseTimeCount; + private Long responseTimeCount = 0L; @ApiParam("解决时长 单位:分钟") - private Long resetTimeCount; + private Long resetTimeCount = 0L; @ApiParam("安灯正常处理的次数") - private Integer inTime; + private Integer inTime = 0; @ApiParam("安灯超时次数") - private Integer overTime; + private Integer overTime = 0; @ApiParam("安灯总次数") - private Integer totalTime; + private Integer totalTime = 0; @ApiParam("安灯类型百分比") - private float propagation; + private float propagation = 0; @ApiParam("事件描述代码") private String acCode; diff --git a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonMenuInterfaceModel.java b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonMenuInterfaceModel.java index 7903dc6..cad9398 100644 --- a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonMenuInterfaceModel.java +++ b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/AndonMenuInterfaceModel.java @@ -32,13 +32,13 @@ public class AndonMenuInterfaceModel{ private String alarmName; @ApiParam("故障总时长 单位:分钟") - private Long exceptionTime; + private Long exceptionTime = 0L; @ApiParam("当前安灯类型故障时长 单位:分钟") - private Long currentExceptionTime; + private Long currentExceptionTime = 0L; @ApiParam("当前安灯类型故障比例") - private Double proportion; + private Double proportion = 0D; @ApiParam("当前工厂的产线故障统计") private List andonWorkcenterList; diff --git a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/CellGroupStatusModel.java b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/CellGroupStatusModel.java index d5ac0ff..42af00f 100644 --- a/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/CellGroupStatusModel.java +++ b/modules/i3plus-pojo-andon/src/main/java/cn/estsh/i3plus/pojo/andon/model/CellGroupStatusModel.java @@ -39,10 +39,10 @@ public class CellGroupStatusModel{ private String cellGroupStatus; @ApiParam(value = "横坐标") - private Float horizontalAxis ; + private Float horizontalAxis = 0f; @ApiParam(value = "纵坐标") - private Float verticalAxis; + private Float verticalAxis = 0f; @ApiParam(value = "异常图片") private String abnormalSrc; From 1d66ce2612827aab73bccbe544c68b184de1c7a4 Mon Sep 17 00:00:00 2001 From: "puxiao.liao" Date: Tue, 26 Nov 2019 20:52:35 +0800 Subject: [PATCH 14/15] =?UTF-8?q?=E3=80=90VDA=E6=8E=A8=E8=8D=90=E5=85=A5?= =?UTF-8?q?=E5=BA=93-=E5=85=A5=E5=BA=93=E6=88=90=E5=8A=9F-=E6=97=A0?= =?UTF-8?q?=E5=BC=95=E5=AF=BC=E4=BF=A1=E6=81=AF=E3=80=91bug6645?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/cn/estsh/i3plus/pojo/wms/sqlpack/WmsHqlPack.java | 1 + 1 file changed, 1 insertion(+) 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 d94d784..9b00052 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 @@ -228,6 +228,7 @@ public class WmsHqlPack { DdlPreparedPack.getStringEqualPack(wmsPOMaster.getVendorNo(), "vendorNo", result); DdlPreparedPack.getStringEqualPack(wmsPOMaster.getSrc(), "src", result); DdlPreparedPack.getStringEqualPack(wmsPOMaster.getIsAsn(), "isAsn", result); + DdlPreparedPack.getStringEqualPack(wmsPOMaster.getContainerNo(), "containerNo", result); if (wmsPOMaster.getPriorRC()!=null&&wmsPOMaster.getPriorRC()==WmsEnumUtil.TRUE_OR_FALSE.FALSE.getValue()){ ArrayList numList = new ArrayList<>(); numList.add(0); From 6959d126a03b686f997cc9a658db05452fc6f51e Mon Sep 17 00:00:00 2001 From: "jhforever.wang@estsh.com" Date: Tue, 26 Nov 2019 20:53:10 +0800 Subject: [PATCH 15/15] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=9E=9A=E4=B8=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../i3plus/pojo/base/enumutil/MesEnumUtil.java | 29 +++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) 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 5821577..23cb6b4 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 @@ -1298,7 +1298,14 @@ public class MesEnumUtil { MES_PACK_SPEC(80, "包装规格"), MES_PROD_PACK(90, "产品包装关系"), MES_PRODUCT_ENCODE_CFG(100, "产品编码配置"), - MES_BOM(110, "物料清单"); + MES_BOM(110, "物料清单"), + MES_PROD_CFG_TYPE(120, "产品配置类型"), + MES_CUSTOMER(130, "客户表"), + MES_CUSTOMER_PART(140, "客户零件关系表"), + MES_WORK_CENTER(150, "生产线"), + MES_WORK_CELL(160, "工位"), + MES_WC_EQUIPMENT(170, "工位设备关系表"), + MES_SHIFT(180, "班次"); private int value; private String description; @@ -1544,6 +1551,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; + } + } /** @@ -3452,6 +3469,16 @@ public class MesEnumUtil { } return tmp; } + + public static String descriptionOfValue(String description) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].description.equals(description)) { + tmp = values()[i].value; + } + } + return tmp; + } } }