|
|
@@ -21,6 +21,7 @@ import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
+import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@@ -87,8 +88,8 @@ public class IsMarsSopServiceImpl extends ServiceImpl<IsSopMapper, IsSop> implem
|
|
|
// 1.判断工艺必选
|
|
|
Assert.notNull(dto.getWorkstationId(), "岗位id不可为空!");
|
|
|
// Assert.notNull(dto.getMachineryId(), "设备工艺id不可为空!");
|
|
|
- List<IsSop> list = list(Wrappers.<IsSop>lambdaQuery().eq(IsSop::getSopCode, dto.getSopCode()));
|
|
|
- Assert.isTrue(list.isEmpty(), "该SOP编号已被使用!");
|
|
|
+ // List<IsSop> list = list(Wrappers.<IsSop>lambdaQuery().eq(IsSop::getSopCode, dto.getSopCode()));
|
|
|
+ // Assert.isTrue(list.isEmpty(), "该SOP编号已被使用!");
|
|
|
// 1.1开始生成默认名称
|
|
|
String sopName = generateName(dto.getWorkstationId(), dto.getMachineryId(), dto.getSopType(), dto.getSopId());
|
|
|
dto.setSopName(sopName);
|
|
|
@@ -113,10 +114,10 @@ public class IsMarsSopServiceImpl extends ServiceImpl<IsSopMapper, IsSop> implem
|
|
|
Assert.notNull(dto.getSopId(), "sopId不可为空!");
|
|
|
Assert.isTrue(StringUtils.isNotBlank(dto.getSopName()), "SOP名称不可为空!");
|
|
|
// Assert.isTrue(StringUtils.isNotBlank(dto.getSopCode()), "SOP编号名称不可为空!");
|
|
|
- List<IsSop> list = list(Wrappers.<IsSop>lambdaQuery()
|
|
|
+ /*List<IsSop> list = list(Wrappers.<IsSop>lambdaQuery()
|
|
|
.eq(IsSop::getSopCode, dto.getSopCode())
|
|
|
.ne(IsSop::getSopId, dto.getSopId()));
|
|
|
- Assert.isTrue(list.isEmpty(), "该SOP编号已被使用!");
|
|
|
+ Assert.isTrue(list.isEmpty(), "该SOP编号已被使用!");*/
|
|
|
// 1.判断工艺必选
|
|
|
Assert.notNull(dto.getMachineryId(), "设备工艺id不可为空!");
|
|
|
// 1.1开始生成默认名称
|
|
|
@@ -144,8 +145,24 @@ public class IsMarsSopServiceImpl extends ServiceImpl<IsSopMapper, IsSop> implem
|
|
|
Assert.notNull(workstation, "岗位信息不存在!");
|
|
|
IsMachinery machinery = isMachineryService.getById(machineryId);
|
|
|
Assert.notNull(machinery, "设备工艺信息不存在!");
|
|
|
+ // 如果岗位是多级
|
|
|
+ Assert.notNull(workstation, "岗位信息不存在!");
|
|
|
+ String workstationName = workstation.getWorkstationName();
|
|
|
+ // 2.1如果岗位是有父级的,则处理
|
|
|
+ if (!"0".equals(workstation.getAncestors())) {
|
|
|
+ // 使用 split 方法按逗号分隔字符串
|
|
|
+ String[] items = workstation.getAncestors().split(",");
|
|
|
+ // 将数组转换为 List
|
|
|
+ List<String> list = Arrays.asList(items);
|
|
|
+ List<IsWorkstation> isWorkstationList = iIsWorkstationService.list(Wrappers.<IsWorkstation>lambdaQuery()
|
|
|
+ .in(IsWorkstation::getWorkstationId, list));
|
|
|
+ if (!isWorkstationList.isEmpty()) {
|
|
|
+ List<String> collect = isWorkstationList.stream().map(IsWorkstation::getWorkstationName).collect(Collectors.toList());
|
|
|
+ workstationName = String.join("-", collect);
|
|
|
+ }
|
|
|
+ }
|
|
|
String sopTypeValue = DictUtils.getDictLabel("sop_type", sopType);
|
|
|
- String sopName = workstation.getWorkstationName() + machinery.getMachineryName() + sopTypeValue;
|
|
|
+ String sopName = workstationName + "-" + workstation.getWorkstationName() + "-" + machinery.getMachineryName() + "-" + sopTypeValue;
|
|
|
List<IsSop> listName = list(Wrappers.<IsSop>lambdaQuery()
|
|
|
.eq(IsSop::getSopName, sopName)
|
|
|
.ne(sopId != null, IsSop::getSopId, sopId));
|