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] =?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; + } }