From 3dda15e00aa6e10ca774f2327229166c4b5bdfe3 Mon Sep 17 00:00:00 2001 From: "joke.wang" Date: Fri, 19 Jun 2020 20:18:20 +0800 Subject: [PATCH 1/4] Finish Task #2153 Cost:24h --- .../i3plus/pojo/base/enumutil/MesPcnEnumUtil.java | 46 +++++++++++++++++++ .../i3plus/pojo/mes/bean/MesDefectRecord.java | 9 ++-- .../i3plus/pojo/mes/bean/MesProduceCategory.java | 6 ++- .../estsh/i3plus/pojo/mes/bean/MesStationBom.java | 8 ++++ .../pojo/mes/bean/template/MesWorkCellDefect.java | 53 ++++++++++++++++++++++ .../i3plus/pojo/mes/model/StepPrintSnModel.java | 7 +++ .../repository/MesWorkCellDefectRepository.java | 15 ++++++ .../estsh/i3plus/pojo/mes/sqlpack/MesHqlPack.java | 23 +++++++++- 8 files changed, 160 insertions(+), 7 deletions(-) create mode 100644 modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/template/MesWorkCellDefect.java create mode 100644 modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesWorkCellDefectRepository.java 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 c9c15e5..604aa39 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 @@ -4164,4 +4164,50 @@ public class MesPcnEnumUtil { 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; + } + } } 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 a3a2cdb..793563e 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 @@ -81,14 +81,13 @@ public class MesDefectRecord extends BaseBean implements Serializable { @ApiParam("备注") private String memo; -// @Column(name = "WORK_ORDER_NO") -// @ApiParam("工单号") -// private String workOrderNo; - - @Transient private List mesDefectList; + @Transient + @ApiParam("后移数量") + private Integer backwardNum; + public int getRepairStatusVal() { return this.repairStatus == null ? 0 : this.repairStatus; } diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesProduceCategory.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesProduceCategory.java index fdf53da..853652c 100644 --- a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesProduceCategory.java +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesProduceCategory.java @@ -26,7 +26,7 @@ import java.io.Serializable; @DynamicUpdate @EqualsAndHashCode(callSuper = true) @Table(name = "MES_PRODUCE_CATEGORY") -@Api("系统业务动作") +@Api("MES_产品位置") public class MesProduceCategory extends BaseBean implements Serializable { private static final long serialVersionUID = -992595557921651448L; @@ -37,4 +37,8 @@ public class MesProduceCategory extends BaseBean implements Serializable { @Column(name = "PRODUCE_CTGY_NAME") @ApiParam("产品类型名称") private String produceCategoryName; + + @Column(name = "WORK_CENTER_CODE") + @ApiParam("工作中心代码") + private String workCenterCode; } diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesStationBom.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesStationBom.java index d2e6a0b..a2cd693 100644 --- a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesStationBom.java +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesStationBom.java @@ -130,6 +130,14 @@ public class MesStationBom extends BaseBean implements Serializable { @ApiParam("主任务编号") private String orderNo; + @Transient + @ApiParam("产品类型代码") + private String produceCategoryCode; + + @Transient + @ApiParam("产品类型名称") + private String produceCategoryName; + public double getQtyVal() { return this.qty == null ? 0.0d : this.qty; } diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/template/MesWorkCellDefect.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/template/MesWorkCellDefect.java new file mode 100644 index 0000000..025ae54 --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/template/MesWorkCellDefect.java @@ -0,0 +1,53 @@ +package cn.estsh.i3plus.pojo.mes.bean.template; + +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: + * @Author: jokelin + * @Date: 2020/6/17 8:39 下午 + * @Modify: + */ +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@EqualsAndHashCode(callSuper = true) +@Table(name = "MES_WORK_CELL_DEFECT") +@Api("MES_工位缺陷") +public class MesWorkCellDefect extends BaseBean implements Serializable { + + private static final long serialVersionUID = -528051790747923632L; + + @Column(name = "WORK_CENTER_CODE") + @ApiParam("工作中心代码") + private String workCenterCode; + + @Column(name = "WORK_CELL_CODE") + @ApiParam("工作单元代码") + private String workCellCode; + + @Column(name = "DEFECT_CODE") + @ApiParam("缺陷代码") + private String defectCode; + + @Column(name = "PART_ASSEMBLE") + @ApiParam("物料集") + private String partAssemble; + + @Transient + @ApiParam("缺陷名称") + private String defectCodeName; +} diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/StepPrintSnModel.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/StepPrintSnModel.java index 5f95f8f..2ac3a02 100644 --- a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/StepPrintSnModel.java +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/StepPrintSnModel.java @@ -101,4 +101,11 @@ public class StepPrintSnModel extends MesProduceSn { @ApiParam("包装数量") private Integer pgCodeNum; + @ApiParam("批次") + private String lotNo; + @ApiParam("备注") + private String memo; + @ApiParam("产品配置名称") + private String prodCfgCodeName; + } diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesWorkCellDefectRepository.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesWorkCellDefectRepository.java new file mode 100644 index 0000000..43b09f2 --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesWorkCellDefectRepository.java @@ -0,0 +1,15 @@ +package cn.estsh.i3plus.pojo.mes.repository; + +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import cn.estsh.i3plus.pojo.mes.bean.template.MesWorkCellDefect; +import org.springframework.stereotype.Repository; + +/** + * @Description: + * @Author: jokelin + * @Date: 2020/6/17 8:46 下午 + * @Modify: + */ +@Repository +public interface MesWorkCellDefectRepository 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 d325b7d..18b47c8 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 @@ -9,6 +9,7 @@ import cn.estsh.i3plus.pojo.base.util.StringUtil; import cn.estsh.i3plus.pojo.mes.bean.*; import cn.estsh.i3plus.pojo.mes.bean.template.BasImportTemplate; import cn.estsh.i3plus.pojo.mes.bean.template.BasImportTemplateDetails; +import cn.estsh.i3plus.pojo.mes.bean.template.MesWorkCellDefect; import cn.estsh.i3plus.pojo.mes.dbinterface.MesInterfaceDataMapper; import org.springframework.util.StringUtils; @@ -1524,7 +1525,6 @@ public class MesHqlPack { } /** - * <<<<<<< Updated upstream * MES 缺陷查询条件封装 * * @param mesDefect @@ -3001,4 +3001,25 @@ public class MesHqlPack { } return packBean; } + + /** + * MES 工位缺陷查询条件封装 + * + * @param workCellDefect + * @param organizeCode + * @return + */ + public static DdlPackBean getMesWorkCellDefect(MesWorkCellDefect workCellDefect, String organizeCode) { + DdlPackBean packBean = getAllBaseDataByNormalPro(workCellDefect, organizeCode); + if (!StringUtils.isEmpty(workCellDefect.getDefectCode())) { + DdlPreparedPack.getStringLikerPack(workCellDefect.getDefectCode(), "defectCode", packBean); + } + if (!StringUtils.isEmpty(workCellDefect.getWorkCellCode())) { + DdlPreparedPack.getStringLikerPack(workCellDefect.getWorkCellCode(), "workCellCode", packBean); + } + if (!StringUtils.isEmpty(workCellDefect.getWorkCenterCode())) { + DdlPreparedPack.getStringLikerPack(workCellDefect.getWorkCenterCode(), "workCenterCode", packBean); + } + return packBean; + } } From 2ef42fdadd4916128df8537e1ae19ce8ad39a1b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E5=86=9B=E8=B6=85?= Date: Fri, 19 Jun 2020 20:53:48 +0800 Subject: [PATCH 2/4] =?UTF-8?q?Finish=20Task:2160,2175.=E5=8C=97=E4=BA=AC?= =?UTF-8?q?=E9=BA=A6=E6=A0=BC=E7=BA=B3=E5=9F=BA=E7=A1=80=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BC=80=E5=8F=91=E3=80=82=20Finish=20Task=20#2160,2175=20Cost?= =?UTF-8?q?:10h?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../i3plus/pojo/base/enumutil/MesEnumUtil.java | 43 ++++++++++- .../estsh/i3plus/pojo/mes/bean/MesPartFormula.java | 8 ++ .../i3plus/pojo/mes/bean/MesPartProdCfgType.java | 37 +++++++++ .../i3plus/pojo/mes/bean/MesScatterBomCfg.java | 88 ++++++++++++++++++++++ .../repository/MesPartProdCfgTypeRepository.java | 15 ++++ .../mes/repository/MesScatterBomCfgRepository.java | 15 ++++ .../repository/MesWorkCellDefectsRepository.java | 14 ++++ .../estsh/i3plus/pojo/mes/sqlpack/MesHqlPack.java | 63 ++++++++++++++++ 8 files changed, 282 insertions(+), 1 deletion(-) create mode 100644 modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesPartProdCfgType.java create mode 100644 modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesScatterBomCfg.java create mode 100644 modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesPartProdCfgTypeRepository.java create mode 100644 modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesScatterBomCfgRepository.java create mode 100644 modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesWorkCellDefectsRepository.java 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 cc97315..2e1287d 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 @@ -1905,7 +1905,9 @@ public class MesEnumUtil { MES_QUEUE_JIT_ACTUAL(420, "queueJitActualExcelService", "客户JIT生产队列"), MES_PART_BOM_IMPORT(430, "partBomExcelService", "散件BOM导入"), MES_PLAN_ORDER_BATCH_COMPILE(440, "planOrderBatchCompileExcelService", "生产计划批量编制,支持编辑"), - MES_WORK_ORDER_PAINT(450, "workOrderPaintExcelService", "生产工单-涂装"); + MES_WORK_ORDER_PAINT(450, "workOrderPaintExcelService", "生产工单-涂装"), + NEW_SCATTER_BOM(460, "ScatterBomCfgExcelService", "新散件BOM导入"), + ENCODE_RULE_MAP(470, "MesEncodeRuleMapExcelService", "编码规则映射导入"); private int value; private String service; @@ -6329,4 +6331,43 @@ public class MesEnumUtil { 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; + } + } } diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesPartFormula.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesPartFormula.java index 63b5871..87bcffe 100644 --- a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesPartFormula.java +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesPartFormula.java @@ -38,6 +38,14 @@ public class MesPartFormula extends BaseBean implements Serializable { @ApiParam("配方内容") private String formulaContent; + @Column(name = "FORMULA_DESC") + @ApiParam("配方描述") + private String formulaDesc; + + @Column(name = "QTY") + @ApiParam("配方零件总数") + private Integer qty; + @Column(name = "FORMULA_TYPE") @ApiParam("配方类型") private Integer formulaType; diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesPartProdCfgType.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesPartProdCfgType.java new file mode 100644 index 0000000..c5c1b75 --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesPartProdCfgType.java @@ -0,0 +1,37 @@ +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 java.io.Serializable; + +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@Table(name = "MES_PART_PROD_CFG_TYPE") +@EqualsAndHashCode(callSuper = true) +@Api("MES_物料项目关系") +public class MesPartProdCfgType extends BaseBean implements Serializable { + private static final long serialVersionUID = -640972198237355570L; + + @Column(name = "PART_NO") + @ApiParam("物料号") + private String partNo; + + @Column(name = "CUST_CODE") + @ApiParam("客户代码") + private String custCode; + + @Column(name = "PROD_CFG_TYPE_CODE") + @ApiParam("项目代码") + private String prodCfgTypeCode; +} diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesScatterBomCfg.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesScatterBomCfg.java new file mode 100644 index 0000000..7642f27 --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesScatterBomCfg.java @@ -0,0 +1,88 @@ +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 java.io.Serializable; + +/** + * @author adair.song + * @date 2020/06/17 13:12 + * @desc + */ + +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@Table(name = "MES_SCATTER_BOM_CFG") +@EqualsAndHashCode(callSuper = true) +@Api("MES_散件BOM配置") +public class MesScatterBomCfg extends BaseBean implements Serializable { + + private static final long serialVersionUID = 521506217898252289L; + + @Column(name = "PART_NO") + @ApiParam("物料号") + private String partNo; + + @Column(name = "CUSTOMER_PART_NO") + @ApiParam("客户零件号") + private String customerPartNo; + + @Column(name = "PART_LOCATION1") + @ApiParam("产品位置1") + private String partLocation1; + + @Column(name = "PART_LOCATION2") + @ApiParam("产品位置2") + private String partLocation2; + + @Column(name = "PART_LOCATION3") + @ApiParam("产品位置3") + private String partLocation3; + + @Column(name = "PART_LOCATION4") + @ApiParam("产品位置4") + private String partLocation4; + + @Column(name = "WORK_CELL_CODE") + @ApiParam("工作单元代码") + private String workCellCode; + + @Column(name = "CATEGORY_CODE2") + @ApiParam("类型2") + private String categoryCode2; + + @Column(name = "CATEGORY_CODE3") + @ApiParam("类型3") + private String categoryCode3; + + @Column(name = "IS_BIND_KEY") + @ApiParam("是否关键件") + private Integer isBindKey = 1; + + @Column(name = "CHECK_GROUP") + @ApiParam("校验分组号") + private String checkGroup; + + @Column(name = "OPTION_CODE") + @ApiParam("选项代码") + private String optionCode; + + @Column(name = "RECIPE_ITEM") + @ApiParam("配方项") + private String recipeItem; + + @Column(name = "RECIPE_SEQ") + @ApiParam("配方序号") + private String recipeSeq; +} diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesPartProdCfgTypeRepository.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesPartProdCfgTypeRepository.java new file mode 100644 index 0000000..9d81a01 --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesPartProdCfgTypeRepository.java @@ -0,0 +1,15 @@ +package cn.estsh.i3plus.pojo.mes.repository; + +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import cn.estsh.i3plus.pojo.mes.bean.MesPartProdCfgType; +import org.springframework.stereotype.Repository; + +/** + * @Description : + * @Reference : + * @Author : adair.song + * @CreateDate: 2020\06\17 14:01 + */ +@Repository +public interface MesPartProdCfgTypeRepository extends BaseRepository { +} diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesScatterBomCfgRepository.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesScatterBomCfgRepository.java new file mode 100644 index 0000000..2ffeac0 --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesScatterBomCfgRepository.java @@ -0,0 +1,15 @@ +package cn.estsh.i3plus.pojo.mes.repository; + +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import cn.estsh.i3plus.pojo.mes.bean.MesScatterBomCfg; +import org.springframework.stereotype.Repository; + +/** + * @Description : + * @Reference : + * @Author : adair.song + * @CreateDate: 2020\06\17 14:01 + */ +@Repository +public interface MesScatterBomCfgRepository extends BaseRepository { +} diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesWorkCellDefectsRepository.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesWorkCellDefectsRepository.java new file mode 100644 index 0000000..be056c0 --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesWorkCellDefectsRepository.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.template.MesWorkCellDefect; +import org.springframework.stereotype.Repository; +/** + * @Description: + * @Author: jokelin + * @Date: 2020/6/17 8:46 下午 + * @Modify: + */ +@Repository +public interface MesWorkCellDefectsRepository 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 18b47c8..4437049 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 @@ -3022,4 +3022,67 @@ public class MesHqlPack { } return packBean; } + + /** + * 散件BOM + * + * @param scatterBomCfg + * @param organizeCode + * @return + */ + public static DdlPackBean getMesScatterBomCfg(MesScatterBomCfg scatterBomCfg, String organizeCode) { + DdlPackBean packBean = getAllBaseDataByNormalPro(scatterBomCfg, organizeCode); + if (!StringUtils.isEmpty(scatterBomCfg.getPartNo())) { + DdlPreparedPack.getStringLikerPack(scatterBomCfg.getPartNo(), "partNo", packBean); + } + if (!StringUtils.isEmpty(scatterBomCfg.getCustomerPartNo())) { + DdlPreparedPack.getStringLikerPack(scatterBomCfg.getCustomerPartNo(), "customerPartNo", packBean); + } + if (!StringUtils.isEmpty(scatterBomCfg.getWorkCellCode())) { + DdlPreparedPack.getStringLikerPack(scatterBomCfg.getWorkCellCode(), "workCellCode", packBean); + } + return packBean; + } + + /** + * 物料项目关系 + * + * @param partProdCfgType + * @param organizeCode + * @return + */ + public static DdlPackBean getMesPartProdCfgType(MesPartProdCfgType partProdCfgType, String organizeCode) { + DdlPackBean packBean = getAllBaseDataByNormalPro(partProdCfgType, organizeCode); + if (!StringUtils.isEmpty(partProdCfgType.getPartNo())) { + DdlPreparedPack.getStringLikerPack(partProdCfgType.getPartNo(), "partNo", packBean); + } + if (!StringUtils.isEmpty(partProdCfgType.getCustCode())) { + DdlPreparedPack.getStringLikerPack(partProdCfgType.getCustCode(), "custCode", packBean); + } + if (!StringUtils.isEmpty(partProdCfgType.getProdCfgTypeCode())) { + DdlPreparedPack.getStringLikerPack(partProdCfgType.getProdCfgTypeCode(), "prodCfgTypeCode", packBean); + } + return packBean; + } + + /** + * 编码规则映射表 + * + * @param encodeRuleMap + * @param organizeCode + * @return + */ + public static DdlPackBean getMesEncodeRuleMap(MesEncodeRuleMap encodeRuleMap, String organizeCode) { + DdlPackBean packBean = getAllBaseDataByNormalPro(encodeRuleMap, organizeCode); + if (!StringUtils.isEmpty(encodeRuleMap.getTypeCode())) { + DdlPreparedPack.getStringLikerPack(encodeRuleMap.getTypeCode(), "typeCode", packBean); + } + if (!StringUtils.isEmpty(encodeRuleMap.getTypeName())) { + DdlPreparedPack.getStringLikerPack(encodeRuleMap.getTypeName(), "typeName", packBean); + } + if (!StringUtils.isEmpty(encodeRuleMap.getBusinessCode())) { + DdlPreparedPack.getStringLikerPack(encodeRuleMap.getBusinessCode(), "businessCode", packBean); + } + return packBean; + } } From 87dc9ab9663c006f79d36243adfd150f7959f469 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E5=86=9B=E8=B6=85?= Date: Sat, 20 Jun 2020 15:43:35 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E4=B8=8E=E5=89=8D=E7=AB=AF=E8=81=94?= =?UTF-8?q?=E8=B0=83=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/cn/estsh/i3plus/pojo/base/enumutil/MesEnumUtil.java | 5 +++-- 1 file changed, 3 insertions(+), 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 2e1287d..fbf2d06 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 @@ -1906,8 +1906,9 @@ public class MesEnumUtil { MES_PART_BOM_IMPORT(430, "partBomExcelService", "散件BOM导入"), MES_PLAN_ORDER_BATCH_COMPILE(440, "planOrderBatchCompileExcelService", "生产计划批量编制,支持编辑"), MES_WORK_ORDER_PAINT(450, "workOrderPaintExcelService", "生产工单-涂装"), - NEW_SCATTER_BOM(460, "ScatterBomCfgExcelService", "新散件BOM导入"), - ENCODE_RULE_MAP(470, "MesEncodeRuleMapExcelService", "编码规则映射导入"); + NEW_SCATTER_BOM(460, "scatterBomCfgExcelService", "新散件BOM导入"), + ENCODE_RULE_MAP(470, "mesEncodeRuleMapExcelService", "编码规则映射导入"), + SCATTER_PART_PROD_CFG(480, "scatterPartProdCfgExcelService", "散件零件生产配置"); private int value; private String service; From 8cf6e99cf6be5aae32feb9026075cd05a6d1ecaa Mon Sep 17 00:00:00 2001 From: "jhforever.wang@estsh.com" Date: Sat, 20 Jun 2020 15:47:23 +0800 Subject: [PATCH 4/4] mes --- .../i3plus/pojo/mes/bean/MesExtendObjectCfg.java | 64 ++++++++ .../estsh/i3plus/pojo/mes/bean/MesWorkOrder.java | 23 ++- .../i3plus/pojo/mes/model/ExcelDataParamModel.java | 181 --------------------- .../repository/MesExtendObjectCfgRepository.java | 14 ++ .../estsh/i3plus/pojo/mes/sqlpack/MesHqlPack.java | 23 +++ 5 files changed, 112 insertions(+), 193 deletions(-) create mode 100644 modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesExtendObjectCfg.java delete mode 100644 modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/ExcelDataParamModel.java create mode 100644 modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesExtendObjectCfgRepository.java diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesExtendObjectCfg.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesExtendObjectCfg.java new file mode 100644 index 0000000..cc8aac2 --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesExtendObjectCfg.java @@ -0,0 +1,64 @@ +package cn.estsh.i3plus.pojo.mes.bean; + +import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn; +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; +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 java.io.Serializable; + +/** + * @Description: + * @Reference: + * @Author: wangjie + * @CreateDate: 2019\11\5 10:47 + * @Modify: + **/ +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@EqualsAndHashCode(callSuper = true) +@Table(name = "MES_EXTEND_OBJECT_CFG") +@Api("扩展对象结构") +public class MesExtendObjectCfg extends BaseBean implements Serializable { + + private static final long serialVersionUID = -6773040095905972250L; + + @Column(name = "OBJECT_CODE") + @ApiParam("对象代码") + private String objectCode; + + @Column(name = "FIELD_CODE") + @ApiParam("扩展字段代码") + private String fieldCode; + + @Column(name = "FIELD_NAME") + @ApiParam("扩展字段名称") + private String fieldName; + + @Column(name = "FIELD_TYPE") + @ApiParam("扩展字段类型") + @AnnoOutputColumn(refClass = MesEnumUtil.DATA_FORMAT.class, refForeignKey = "value", value = "description") + private Integer fieldType; + + @Column(name = "FIELD_LENGTH") + @ApiParam("扩展字段类型") + private String fieldLength; + + @Column(name = "DEFAULT_VALUE") + @ApiParam("默认值") + private String defaultValue; + + @Column(name = "FIELD_DESC") + @ApiParam("扩展字段描述") + private String fieldDesc; +} diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesWorkOrder.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesWorkOrder.java index d09d54d..e46dec6 100644 --- a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesWorkOrder.java +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/bean/MesWorkOrder.java @@ -12,6 +12,7 @@ import org.hibernate.annotations.DynamicUpdate; import javax.persistence.*; import java.io.Serializable; import java.util.List; +import java.util.Map; /** * @Description: @@ -153,6 +154,11 @@ public class MesWorkOrder extends BaseBean implements Serializable { @ApiParam("首检生成数量") private Double fiGenerateQty; + @Lob + @Column(name = "EXTEND") + @ApiParam("扩展数据") + private String extend; + @Column(name = "RESERVED1") @ApiParam("预留字段1") private String reserved1; @@ -169,18 +175,6 @@ public class MesWorkOrder extends BaseBean implements Serializable { @ApiParam("预留字段4") private String reserved4; - @Column(name = "RESERVED5") - @ApiParam("预留字段5") - private String reserved5; - - @Column(name = "RESERVED6") - @ApiParam("预留字段6") - private String reserved6; - - @Column(name = "RESERVED7") - @ApiParam("预留字段7") - private String reserved7; - @Version @Column(name = "LOCK_VERSION") @ApiParam(value = "乐观锁", example = "1") @@ -272,6 +266,11 @@ public class MesWorkOrder extends BaseBean implements Serializable { @ApiParam(value = "完成按钮编号") public String comButtonCode; + @Transient + @ApiParam(value = "扩展数据MAP") + public Map extendMap; + + public double getQtyVal() { return this.qty == null ? 0.0d : this.qty; } diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/ExcelDataParamModel.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/ExcelDataParamModel.java deleted file mode 100644 index f9eeea2..0000000 --- a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/model/ExcelDataParamModel.java +++ /dev/null @@ -1,181 +0,0 @@ -//package cn.estsh.i3plus.pojo.mes.model; -// -//import io.swagger.annotations.Api; -//import io.swagger.annotations.ApiParam; -//import lombok.AllArgsConstructor; -//import lombok.Data; -//import lombok.NoArgsConstructor; -//import org.apache.poi.ss.usermodel.CellStyle; -//import org.springframework.util.StringUtils; -// -//import java.io.Serializable; -//import java.math.BigDecimal; -// -///** -// * @Author: wangjie -// * @CreateDate: 2019/8/21 9:19 AM -// * @Description: -// **/ -//@Data -//@NoArgsConstructor -//@AllArgsConstructor -//@Api("EXCEL参数model") -//public class ExcelDataParamModel implements Serializable { -// -// public ExcelDataParamModel(Class clazz){ -// this.clazz = clazz; -// } -// -// @ApiParam("获取相对应的类,用来映射数据,如果不设置此值,那么整个数据将会用String[]作为数据,不再通过映射拿取数据") -// private Class clazz; -// -// @ApiParam("对应类的映射字段名,String类型") -// private String[] strField; -// -// @ApiParam("对应类的标题,需要一一对应") -// private String[] titleStr; -// -// @ApiParam("大标题") -// private String title; -// -// @ApiParam("文件名,如果传入的ExcelDataParamModel是一个List的时候,以sheetNo = 1为文件名,如果sheetNo为空,则默认随机") -// private String fileName; -// -// @ApiParam("后缀") -// private String sufix; -// -// @ApiParam("大标题样式") -// private CellStyle bigTitleCellStyle; -// -// @ApiParam("标题样式") -// private CellStyle titleCellStyle; -// -// @ApiParam("数据样式") -// private CellStyle cellStyle; -// -// @ApiParam("sheet名") -// private String sheetName; -// -// @ApiParam("每个格子的宽度") -// private BigDecimal[] cellWidth; -// -// @ApiParam("如果传入的ExcelDataParamModel是List的时候,默认以sheetNo排序") -// private Integer sheetNo; -// -// @ApiParam("导出数据转换器") -// private QueryDataInterface queryDataInterface; -// -// public Class getClazz() { -// return clazz; -// } -// -// public String[] getStrField() { -// return strField; -// } -// -// public String[] getTitleStr() { -// return titleStr; -// } -// -// public String getTitle() { -// if(StringUtils.isEmpty(this.title)){ -// return "无效的标题"; -// }else{ -// return title; -// } -// } -// -// public String getFileName() { -// if(StringUtils.isEmpty(this.fileName)){ -// return "未命名"; -// }else{ -// return this.fileName; -// } -// } -// -// public CellStyle getBigTitleCellStyle() { -// return bigTitleCellStyle; -// } -// -// public CellStyle getTitleCellStyle() { -// return titleCellStyle; -// } -// -// public CellStyle getCellStyle() { -// return cellStyle; -// } -// -// public String getSheetName() { -// return sheetName; -// } -// -// public Integer getSheetNo() { -// return sheetNo; -// } -// -// public BigDecimal[] getCellWidth() { -// return cellWidth; -// } -// -// public String getSufix() { -// return sufix; -// } -// -// public QueryDataInterface getQueryDataInterface() { -// return queryDataInterface; -// } -// -// public void setClazz(Class clazz) { -// this.clazz = clazz; -// } -// -// public void setStrField(String[] strField) { -// this.strField = strField; -// } -// -// public void setTitleStr(String[] titleStr) { -// this.titleStr = titleStr; -// } -// -// public void setTitle(String title) { -// this.title = title; -// } -// -// public void setFileName(String fileName) { -// this.fileName = fileName; -// } -// -// public void setSufix(String sufix) { -// this.sufix = sufix; -// } -// -// public void setBigTitleCellStyle(CellStyle bigTitleCellStyle) { -// this.bigTitleCellStyle = bigTitleCellStyle; -// } -// -// public void setTitleCellStyle(CellStyle titleCellStyle) { -// this.titleCellStyle = titleCellStyle; -// } -// -// public void setCellStyle(CellStyle cellStyle) { -// this.cellStyle = cellStyle; -// } -// -// public void setSheetName(String sheetName) { -// this.sheetName = sheetName; -// } -// -// public void setCellWidth(BigDecimal[] cellWidth) { -// this.cellWidth = cellWidth; -// } -// -// -// public void setSheetNo(Integer sheetNo) { -// this.sheetNo = sheetNo; -// } -// -// public void setQueryDataInterface(QueryDataInterface queryDataInterface) { -// this.queryDataInterface = queryDataInterface; -// } -// -//} diff --git a/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesExtendObjectCfgRepository.java b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesExtendObjectCfgRepository.java new file mode 100644 index 0000000..2f6f967 --- /dev/null +++ b/modules/i3plus-pojo-mes/src/main/java/cn/estsh/i3plus/pojo/mes/repository/MesExtendObjectCfgRepository.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.MesExtendObjectCfg; + +/** + * @Description: + * @Reference: + * @Author: wangjie + * @CreateDate: 2019\11\18 10:34 + * @Modify: + **/ +public interface MesExtendObjectCfgRepository 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 4437049..da79ca8 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 @@ -3085,4 +3085,27 @@ public class MesHqlPack { } return packBean; } + + /** + * 扩展对象配置 + * @param extendObjectCfg + * @param organizeCode + * @return + */ + public static DdlPackBean getMesExtendObjectCfg(MesExtendObjectCfg extendObjectCfg, String organizeCode) { + DdlPackBean packBean = getAllBaseDataByNormalPro(extendObjectCfg, organizeCode); + if (!StringUtils.isEmpty(extendObjectCfg.getObjectCode())) { + DdlPreparedPack.getStringLikerPack(extendObjectCfg.getObjectCode(), "objectCode", packBean); + } + if (!StringUtils.isEmpty(extendObjectCfg.getFieldCode())) { + DdlPreparedPack.getStringLikerPack(extendObjectCfg.getFieldCode(), "fieldCode", packBean); + } + if (!StringUtils.isEmpty(extendObjectCfg.getFieldName())) { + DdlPreparedPack.getStringLikerPack(extendObjectCfg.getFieldName(), "fieldName", packBean); + } + if (!StringUtils.isEmpty(extendObjectCfg.getFieldType())) { + DdlPreparedPack.getNumEqualPack(extendObjectCfg.getFieldType(), "fieldType", packBean); + } + return packBean; + } }