diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewDQbomChildEntity.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewDQbomChildEntity.java index 0c4f6718..48b328ea 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewDQbomChildEntity.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewDQbomChildEntity.java @@ -30,6 +30,13 @@ public class BomNewDQbomChildEntity implements Serializable { @ApiModelProperty(value = "主键-雪花") private Long rowId; + /** + * 层次 + */ + @TableField(value = "level") + @ApiModelProperty(value = "层次") + private Integer level; + /** * 父行ID */ @@ -72,6 +79,34 @@ public class BomNewDQbomChildEntity implements Serializable { @ApiModelProperty(value = "物料编码") private String materialNo; + /** + * 物料名称 + */ + @TableField(value = "material_name") + @ApiModelProperty(value = "物料名称") + private String materialName; + + /** + * 材质 + */ + @TableField(value = "material_texture") + @ApiModelProperty(value = "材质") + private String materialTexture; + + /** + * 单位 + */ + @TableField(value = "material_unit") + @ApiModelProperty(value = "单位") + private String materialUnit; + + /** + * 单重 + */ + @TableField(value = "unit_weight") + @ApiModelProperty(value = "单重") + private BigDecimal unitWeight; + /** * 数量 */ @@ -101,6 +136,13 @@ public class BomNewDQbomChildEntity implements Serializable { @ApiModelProperty(value = "异常标记") private String exceptionTag; + /** + * 版本号 + */ + @TableField(value = "current_version") + @ApiModelProperty(value = "版本号") + private String currentVersion; + /** * 备注 */ diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewDQbomParentEntity.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewDQbomParentEntity.java index 4e677588..333b8422 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewDQbomParentEntity.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewDQbomParentEntity.java @@ -30,13 +30,6 @@ public class BomNewDQbomParentEntity implements Serializable { @ApiModelProperty(value = "主键-雪花") private Long rowId; - /** - * 层次 - */ - @TableField(value = "level") - @ApiModelProperty(value = "层次") - private Integer level; - /** * 图号 */ diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/vo/BomNewDQbomSaveVO.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/vo/BomNewDQbomSaveVO.java index 84185384..a7dff5f1 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/vo/BomNewDQbomSaveVO.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/vo/BomNewDQbomSaveVO.java @@ -1,13 +1,13 @@ package com.nflg.product.bomnew.pojo.vo; -import com.nflg.product.bomnew.pojo.entity.BomNewDQbomParentEntity; +import com.nflg.product.bomnew.pojo.entity.BomNewDQbomChildEntity; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.experimental.Accessors; +import javax.validation.constraints.NotNull; import java.io.Serializable; -import java.math.BigDecimal; /** * @author 曹鹏飞 @@ -16,17 +16,12 @@ import java.math.BigDecimal; @Data @Accessors(chain = true) @ApiModel(value = "com-nflg-product-bomnew-pojo-new-vo-BomNewDQbomSaveVO") -public class BomNewDQbomSaveVO extends BomNewDQbomParentEntity implements Serializable { +public class BomNewDQbomSaveVO extends BomNewDQbomChildEntity implements Serializable { - /** - * 排序号 - */ - @ApiModelProperty(value = "排序号") - private String orderNumber; + @ApiModelProperty("物料BOM版本ID") + private Long bomRowId = 0L; - /** - * 数量 - */ - @ApiModelProperty(value = "数量") - private BigDecimal num; + @NotNull + @ApiModelProperty("物料bom行ID") + private Long childBomRowId; } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomService.java index 80fc9d5c..0bcd8b8d 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomService.java @@ -93,8 +93,10 @@ public class DQBomService { @Transactional(rollbackFor = Exception.class) public void save(BomNewDQbomSaveQuery query) { BomNewDQbomParentEntity parent = query.getParent(); + BomNewDQbomChildEntity child; List liParents = new ArrayList<>(); + List liChildren = new ArrayList<>(); if (Objects.isNull(parent.getRowId())) { //新增父级节点 @@ -106,7 +108,6 @@ public class DQBomService { VUtils.isTure(CollUtil.isEmpty(query.getChildren())).throwMessage("新添加的bom必须有子级"); parent.setRowId(IdWorker.getId()); - parent.setLevel(1); parent.setBomExist(1); parent.setCreatedBy(SessionUtil.getUserCode()); parent.setStatus(DQBomStatusEnum.WAIT_CONVERT.getValue()); @@ -131,12 +132,15 @@ public class DQBomService { .collect(Collectors.toList())); parent.setBomExist(1); parent.setModifyTime(LocalDateTime.now()); + + child = } //处理child List children = Convert.toList(BomNewDQbomChildEntity.class, query.getChildren()); for (int index = 0, count = children.size(); index < count; index++) { BomNewDQbomChildEntity c = children.get(index); c.setRowId(IdWorker.getId()); + c.setLevel(parent.getLevel() + 1); c.setParentRowId(parent.getRowId()); c.setIdentityNo(c.getParentRowId() + "_" + c.getRowId()); c.setOrderNumber(StrUtil.padPre(String.valueOf(index + 1), 3, '0')); @@ -144,7 +148,8 @@ public class DQBomService { c.setCreatedBy(SessionUtil.getUserCode()); c.setCreatedName(SessionUtil.getRealName()); } - dQBomChildService.saveBatch(children); + liChildren.addAll(children); + dQBomChildService.saveBatch(liChildren); //处理parent List parents = Convert.toList(BomNewDQbomParentEntity.class, query.getChildren()); List materialNos = dQBomParentService.lambdaQuery() @@ -162,7 +167,6 @@ public class DQBomService { p.setRowId(IdWorker.getId()); p.setCreatedBy(SessionUtil.getUserCode()); p.setStatus(DQBomStatusEnum.WAIT_CONVERT.getValue()); - p.setLevel(parent.getLevel() + 1); p.setRootIs(0); p.setUserRootIs(0); p.setBomExist(0); diff --git a/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewDQbomParentMapper.xml b/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewDQbomParentMapper.xml index 46d6a31c..11fa0c07 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewDQbomParentMapper.xml +++ b/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewDQbomParentMapper.xml @@ -85,16 +85,16 @@