diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/dto/BomNewEBomRevertDTO.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/dto/BomNewEBomRevertDTO.java index 9a415165..0440c307 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/dto/BomNewEBomRevertDTO.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/dto/BomNewEBomRevertDTO.java @@ -23,4 +23,7 @@ public class BomNewEBomRevertDTO { @ApiModelProperty("必填,行id列表") private List rowIdList; + @ApiModelProperty("退回描述") + private String revertDesc; + } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewEbomParentEntity.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewEbomParentEntity.java index 27d56f3e..6c2fab3e 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewEbomParentEntity.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/entity/BomNewEbomParentEntity.java @@ -296,6 +296,11 @@ public class BomNewEbomParentEntity implements Serializable { @ApiModelProperty(value = "退回人") private String revertUserName; + @TableField(value = "revert_desc") + @ApiModelProperty(value = "退回原因") + private String revertDesc; + + /** * 版本过期时间=下个版本的创建时间 */ diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java index 19523798..a685af86 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java @@ -1130,43 +1130,44 @@ public class BomNewEbomParentService extends ServiceImpl u.getBomRowId() > 0 && !Objects.equals(UserJobEnum.ENGINEER.getValue(),u.getCreatedJob())) .map(BomNewEbomParentVO::getBomRowId).collect(Collectors.toList())); - } - if (CollectionUtil.isNotEmpty(revertList)) { - //parent表状态 - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.lambda() - .set(BomNewEbomParentEntity::getRevertTime, LocalDateTime.now()) - .set(BomNewEbomParentEntity::getRevertUserName, SessionUtil.getUserName()) - .set(BomNewEbomParentEntity::getStatus, EBomStatusEnum.RETURNED.getValue()) - .set(BomNewEbomParentEntity::getEditStatus, EbomEditStatusEnum.HANDLER_CREATED.getValue()) - .in(BomNewEbomParentEntity::getRowId, revertList); - //child 表状态 - UpdateWrapper childWrapper = new UpdateWrapper<>(); - childWrapper.lambda() - .set(BomNewEbomChildEntity::getModifyTime, LocalDateTime.now()) - .set(BomNewEbomChildEntity::getEditStatus, EbomEditStatusEnum.HANDLER_CREATED.getValue()) - .in(BomNewEbomChildEntity::getParentRowId, revertList); + if (CollectionUtil.isNotEmpty(revertList)) { + //parent表状态 + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.lambda() + .set(BomNewEbomParentEntity::getRevertTime, LocalDateTime.now()) + .set(BomNewEbomParentEntity::getRevertUserName, SessionUtil.getUserName()) + .set(BomNewEbomParentEntity::getRevertDesc,dto.getRevertDesc()) + .set(BomNewEbomParentEntity::getStatus, EBomStatusEnum.RETURNED.getValue()) + .set(BomNewEbomParentEntity::getEditStatus, EbomEditStatusEnum.HANDLER_CREATED.getValue()) + .in(BomNewEbomParentEntity::getRowId, revertList); + + //child 表状态 + UpdateWrapper childWrapper = new UpdateWrapper<>(); + childWrapper.lambda() + .set(BomNewEbomChildEntity::getModifyTime, LocalDateTime.now()) + .set(BomNewEbomChildEntity::getEditStatus, EbomEditStatusEnum.HANDLER_CREATED.getValue()) + .in(BomNewEbomChildEntity::getParentRowId, revertList); + + this.update(updateWrapper ); + ebomChildService.update(childWrapper) ; - this.update(updateWrapper ); - if (!ebomChildService.update(childWrapper)) { - throw new NflgBusinessException(STATE.Error, "退回设计失败"); } - } else { - VUtils.isTure(true).throwMessage("没有需要退回设计的物料"); + } + } /** @@ -1185,7 +1186,7 @@ public class BomNewEbomParentService extends ServiceImpl rowIds = dto.getRowIdList(); - List bomNewEbomParentEntityList = this.lambdaQuery().in(BomNewEbomParentEntity::getUserRootIs, rowIds).eq(BomNewEbomParentEntity::getUserRootIs, 1).list(); + List bomNewEbomParentEntityList = this.lambdaQuery().in(BomNewEbomParentEntity::getRowId, rowIds).eq(BomNewEbomParentEntity::getUserRootIs, 1).list(); if (CollUtil.isEmpty(bomNewEbomParentEntityList)) { // return ResultVO.error("下级BOM无法进行复核"); @@ -1477,7 +1478,7 @@ public class BomNewEbomParentService extends ServiceImpl delChildQuery=new QueryWrapper<>(); - delChildQuery.lambda().in(BomNewEbomChildEntity::getParentRowId,bomRowIdList); - SpringUtil.getBean(BomNewEbomChildService.class).getBaseMapper().delete(delChildQuery); + } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomDel.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomDel.java index 32b276f5..2358e6e4 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomDel.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomDel.java @@ -43,7 +43,7 @@ public class EBomDel { //设计人员: 自己创建的直接删除 //工艺岗位,只能删除自己在EBOM中创建的数据 - // 原始bom导入过来的只能 设计人员自己删,工艺不能删 + // 原始bom导入过来的只能 设计人员自己删,工艺不能删;双角色可以删自己数据 //设计人员在Ebom中创建的数据 工艺人员可以删除? if(roleList.contains(EBomConstant.DESIGNER)){ delEBom = bomTreeAll.stream().filter(u -> u.getBomRowId() > 0 @@ -62,7 +62,7 @@ public class EBomDel { //借用件不能删除,原始bom转换只能删自己 - if(roleList.contains(EBomConstant.DESIGNER)){ + // if(roleList.contains(EBomConstant.DESIGNER)){ revertOBom = bomTreeAll.stream().filter(u -> u.getBomRowId() > 0 && (u.getSource().equals(EBomSourceEnum.FROM_BOM.getValue()) && u.getCreatedBy().equals(SessionUtil.getUserCode()) @@ -72,7 +72,7 @@ public class EBomDel { if (CollectionUtil.isNotEmpty(revertOBom)) { delEBom.addAll(revertOBom); } - } + // } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomEdit.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomEdit.java index d98822b6..a783e12f 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomEdit.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomEdit.java @@ -81,11 +81,16 @@ public class EBomEdit { parent.setStatus(SpringUtil.getBean(UserRoleService.class).technician() ? EBomStatusEnum.CHECKED.getValue() : EBomStatusEnum.WAIT_CHECK.getValue()); parent.setCreatedJob(SpringUtil.getBean(UserRoleService.class).technician() ? UserJobEnum.ENGINEER.getValue() : UserJobEnum.DESIGNER.getValue()); - + parent.setCreatedTime(LocalDateTime.now()); parent.setModifyTime(LocalDateTime.now()); parent.setExpireEndTime( LocalDateTime.parse("9999-12-31 23:59:59", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss") )); + + Integer rootIs =SpringUtil.getBean(BomNewEbomParentService.class).getBaseMapper().checkIsRoot(parent.getMaterialNo()); + Integer userRootIs = SpringUtil.getBean(BomNewEbomParentService.class).getBaseMapper().checkIsUserRoot(parent.getMaterialNo(), parent.getCreatedBy()); + parent.setRootIs(rootIs); + parent.setUserRootIs(userRootIs); return parent; } @@ -102,13 +107,11 @@ public class EBomEdit { void createRootBom(BomNewEBomParentEditDTO createDTO) { - checkHadBom(createDTO.getParent().getMaterialNo()); + // checkHadBom(createDTO.getParent().getMaterialNo()); parentEntity = createParentBomInfo(createDTO.getParent()); parentEntity.setEditStatus(createDTO.getOpType()); - parentEntity.setRootIs(1); - parentEntity.setUserRootIs(1); createDTO.getDatas().forEach(k -> { k.setParentRowId(parentEntity.getRowId()); }); @@ -288,7 +291,7 @@ public class EBomEdit { //缺bom if (dto.getParent().getBomRowId() == null || dto.getParent().getBomRowId().longValue() == 0) { - checkHadBom(dto.getParent().getMaterialNo()); + // checkHadBom(dto.getParent().getMaterialNo()); dto.getParent().setBomRowId(dto.getParent().getRowId()); parentEntity = createParentBomInfo(dto.getParent()); diff --git a/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewEbomParentMapper.xml b/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewEbomParentMapper.xml index 294ec9fe..9916bd46 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewEbomParentMapper.xml +++ b/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewEbomParentMapper.xml @@ -39,6 +39,8 @@ + + @@ -59,7 +61,7 @@ status, user_root_is, exception_status,virtual_package_is, source_row_id, devise_user_code, devise_name, created_by, created_time, created_job, audit_time, audit_user_name, release_time, release_user_name, revert_time, revert_user_name, expire_end_time, convert_to_ebom_time, remark, dept_name, level_num, change_desc, - notice_nums, modify_time + notice_nums, modify_time,revert_desc