浏览代码

完善opc

hfxc226 2 年之前
父节点
当前提交
c7586473be

+ 1 - 1
platform-dao/src/main/java/com/platform/dao/dto/sb/SbPositionDTO.java

@@ -53,7 +53,7 @@ public class SbPositionDTO extends BaseDTO implements Serializable {
     private String id;
 
     /**
-     * 编码
+     * 编码:位号
      */
     private String no;
 

+ 14 - 2
platform-service/src/main/java/com/platform/service/sb/impl/SbPositionServiceImpl.java

@@ -81,6 +81,13 @@ public class SbPositionServiceImpl extends BaseServiceImpl<SbPositionMapper, SbP
             String code = IdGeneratorUtils.getStrNum("", ++i);
             model.setCode(code);
         }*/
+        Weekend<SbPosition> weekend = new Weekend<>(SbPosition.class);
+        WeekendCriteria<SbPosition, Object> weekendCriteria = weekend.weekendCriteria();
+        weekendCriteria.andEqualTo(SbPosition::getNo, model.getNo());
+        SbPosition example = mapper.selectOneByExample(weekend);
+        if(example !=null){
+            throw new BusinessException("位号重复,请重新设置位号");
+        }
         SbPosition sbPosition = super.saveModelByDTO(model);
         if (parent != null) {
             mapper.updateByPrimaryKeySelective(new SbPosition().setId(parentId).setUpdateTime(LocalDateTime.now()));
@@ -90,9 +97,14 @@ public class SbPositionServiceImpl extends BaseServiceImpl<SbPositionMapper, SbP
 
     @Override
     public void modModelByDTO(SbPositionDTO model) {
-        SbPosition entity = mapper.selectByPrimaryKey(model.getId());
+        Weekend<SbPosition> weekend = new Weekend<>(SbPosition.class);
+        WeekendCriteria<SbPosition, Object> weekendCriteria = weekend.weekendCriteria();
+        weekendCriteria.andEqualTo(SbPosition::getNo, model.getNo());
+        SbPosition example = mapper.selectOneByExample(weekend);
+        if(example !=null && !example.getId().equals(model.getId())){
+            throw new BusinessException("位号重复,请重新设置位号");
+        }
         String parentId = model.getParentId();
-        SbPosition parent = mapper.selectByPrimaryKeyForUpdate(parentId);
 
         // 之前没有编码,则设置编码
        /* if(StringUtils.isBlank(model.getCode())){