已发布选项不能删除提示
This commit is contained in:
parent
e0531ca0e9
commit
4383367efb
|
|
@ -22,7 +22,7 @@ import java.util.List;
|
||||||
public interface OptionalEbomConfigRMapper extends BaseMapper<OptionalEbomConfigREntity> {
|
public interface OptionalEbomConfigRMapper extends BaseMapper<OptionalEbomConfigREntity> {
|
||||||
|
|
||||||
|
|
||||||
public List<OptionalEbomConfigRVO> countPublishList(@Param("optionRowIds")String optionRowIds);
|
public List<Long> countPublishList(@Param("optionRowIds")String optionRowIds);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@ public class OptionalEbomConfigRService extends ServiceImpl<OptionalEbomConfigRM
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public List<OptionalEbomConfigRVO> countPublish(String optionRowIds){
|
public List<Long> countPublish(String optionRowIds){
|
||||||
return this.baseMapper.countPublishList(optionRowIds);
|
return this.baseMapper.countPublishList(optionRowIds);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -72,13 +72,12 @@ public class OptionalEbomImportChildService extends ServiceImpl<OptionalEbomImpo
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
OptionalEbomMainEntity deviceEntity= SpringUtil.getBean(OptionalEbomMainService.class).getById(dto.getRootRowId());
|
OptionalEbomMainEntity deviceEntity = SpringUtil.getBean(OptionalEbomMainService.class).getById(dto.getRootRowId());
|
||||||
if(deviceEntity==null){
|
if (deviceEntity == null) {
|
||||||
throw new NflgBusinessException(STATE.BusinessError, "rootRowId对应设备信息未找到");
|
throw new NflgBusinessException(STATE.BusinessError, "rootRowId对应设备信息未找到");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
String nos = dto.getDrawingNo();
|
String nos = dto.getDrawingNo();
|
||||||
|
|
||||||
List<OptionalEbomImportChildEntity> optionList = null;
|
List<OptionalEbomImportChildEntity> optionList = null;
|
||||||
|
|
@ -92,17 +91,15 @@ public class OptionalEbomImportChildService extends ServiceImpl<OptionalEbomImpo
|
||||||
//先统一后分割
|
//先统一后分割
|
||||||
|
|
||||||
|
|
||||||
String strMaterial= nos.replace(";", ";")
|
String strMaterial = nos.replace(";", ";")
|
||||||
.replace(" ",";")
|
.replace(" ", ";")
|
||||||
.replace(",",";")
|
.replace(",", ";")
|
||||||
.replace(",",";");
|
.replace(",", ";");
|
||||||
strMaterial=strMaterial.replace("\n","");
|
strMaterial = strMaterial.replace("\n", "");
|
||||||
|
|
||||||
|
|
||||||
|
List<String> listNo = StrUtil.splitTrim(strMaterial, ";");
|
||||||
|
listNo = listNo.stream().filter(str -> !str.trim().replace(" ", "").isEmpty()).collect(Collectors.toList());
|
||||||
List<String> listNo = StrUtil.splitTrim(strMaterial,";");
|
|
||||||
listNo = listNo.stream().filter(str -> !str.trim().replace(" ","").isEmpty()).collect(Collectors.toList());
|
|
||||||
|
|
||||||
List<BaseMaterialVO> materialListVo = SpringUtil.getBean(MaterialMainService.class).initMaterialForMaterialNo(listNo);
|
List<BaseMaterialVO> materialListVo = SpringUtil.getBean(MaterialMainService.class).initMaterialForMaterialNo(listNo);
|
||||||
if (CollectionUtil.isEmpty(materialListVo)) {
|
if (CollectionUtil.isEmpty(materialListVo)) {
|
||||||
|
|
@ -113,11 +110,8 @@ public class OptionalEbomImportChildService extends ServiceImpl<OptionalEbomImpo
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (Objects.equals(dto.getPartType(), OptionalBomConstant.PartTypeEnum.PART_TYPE_RADIO.getValue())) {
|
||||||
|
SpringUtil.getBean(OptionalEbomMainHistoryService.class).convertToHistory(dto.getRootRowId());
|
||||||
|
|
||||||
if( Objects.equals(dto.getPartType() , OptionalBomConstant.PartTypeEnum.PART_TYPE_RADIO.getValue())){
|
|
||||||
SpringUtil.getBean(OptionalEbomMainHistoryService.class).convertToHistory(dto.getRootRowId());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -130,7 +124,7 @@ public class OptionalEbomImportChildService extends ServiceImpl<OptionalEbomImpo
|
||||||
item.setPartType(dto.getPartType());
|
item.setPartType(dto.getPartType());
|
||||||
item.setRemak(dto.getRemak());
|
item.setRemak(dto.getRemak());
|
||||||
|
|
||||||
insertOptionAction(item );
|
insertOptionAction(item);
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -139,7 +133,7 @@ public class OptionalEbomImportChildService extends ServiceImpl<OptionalEbomImpo
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void insertOptionAction(OptionalEbomImportChildEntity item) throws NflgBusinessException {
|
public void insertOptionAction(OptionalEbomImportChildEntity item) throws NflgBusinessException {
|
||||||
QueryWrapper<OptionalEbomImportChildEntity> queryWrapper3 = new QueryWrapper<>();
|
QueryWrapper<OptionalEbomImportChildEntity> queryWrapper3 = new QueryWrapper<>();
|
||||||
// 同一个机型下不可以存在相同的物料信息(物料编号),如果是“无”的情况,需同一个机型+同一个选项来做唯一判断
|
// 同一个机型下不可以存在相同的物料信息(物料编号),如果是“无”的情况,需同一个机型+同一个选项来做唯一判断
|
||||||
if (StrUtil.isEmpty(item.getMaterialNo()) && item.getMaterialName().equals("无")) {
|
if (StrUtil.isEmpty(item.getMaterialNo()) && item.getMaterialName().equals("无")) {
|
||||||
|
|
@ -154,39 +148,34 @@ public class OptionalEbomImportChildService extends ServiceImpl<OptionalEbomImpo
|
||||||
queryWrapper3.lambda().eq(OptionalEbomImportChildEntity::getIsDel, 0);
|
queryWrapper3.lambda().eq(OptionalEbomImportChildEntity::getIsDel, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
OptionalEbomImportChildEntity childEntity = getOne(queryWrapper3);
|
OptionalEbomImportChildEntity childEntity = getOne(queryWrapper3);
|
||||||
item.setCreatedBy(SessionUtil.getUserCode());
|
item.setCreatedBy(SessionUtil.getUserCode());
|
||||||
if (childEntity == null) {
|
if (childEntity == null) {
|
||||||
|
|
||||||
item.setCreatedTime(DateUtil.now());
|
item.setCreatedTime(DateUtil.now());
|
||||||
|
|
||||||
save(item);
|
save(item);
|
||||||
} else {
|
} else {
|
||||||
// item.setRowId(childEntity.getRowId());
|
// item.setRowId(childEntity.getRowId());
|
||||||
// this.getBaseMapper().updateById(item);
|
// this.getBaseMapper().updateById(item);
|
||||||
String bizErr=item.getMaterialNo();
|
String bizErr = item.getMaterialNo();
|
||||||
if (StrUtil.isEmpty(bizErr)) {
|
if (StrUtil.isEmpty(bizErr)) {
|
||||||
bizErr=item.getMaterialName();
|
bizErr = item.getMaterialName();
|
||||||
}
|
}
|
||||||
|
|
||||||
throw new NflgBusinessException(STATE.BusinessError, "此项存在相同物料,"+bizErr);
|
throw new NflgBusinessException(STATE.BusinessError, "此项存在相同物料," + bizErr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public Boolean openCloseStatus(OptionalEbomImportChildVO vo) {
|
public Boolean openCloseStatus(OptionalEbomImportChildVO vo) {
|
||||||
|
|
||||||
|
|
||||||
|
OptionalEbomImportChildEntity childEntity = getById(vo.getRowId());
|
||||||
OptionalEbomImportChildEntity childEntity=getById(vo.getRowId());
|
if (childEntity != null) {
|
||||||
if(childEntity!=null){
|
if (Objects.equals(childEntity.getPartType(), OptionalBomConstant.PartTypeEnum.PART_TYPE_RADIO.getValue())) {
|
||||||
if( Objects.equals(childEntity.getPartType() , OptionalBomConstant.PartTypeEnum.PART_TYPE_RADIO.getValue())){
|
|
||||||
SpringUtil.getBean(OptionalEbomMainHistoryService.class).convertToHistory(childEntity.getRootRowId());
|
SpringUtil.getBean(OptionalEbomMainHistoryService.class).convertToHistory(childEntity.getRootRowId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -198,18 +187,18 @@ public class OptionalEbomImportChildService extends ServiceImpl<OptionalEbomImpo
|
||||||
return this.updateById(entity);
|
return this.updateById(entity);
|
||||||
|
|
||||||
}
|
}
|
||||||
public void updateRemark(OptionalEbomSubmitEditDTO.OptionalEbomImportChildSubmitDTO dto) {
|
|
||||||
|
public void updateRemark(OptionalEbomSubmitEditDTO.OptionalEbomImportChildSubmitDTO dto) {
|
||||||
|
|
||||||
OptionalEbomImportChildEntity entity = new OptionalEbomImportChildEntity();
|
OptionalEbomImportChildEntity entity = new OptionalEbomImportChildEntity();
|
||||||
entity.setRowId(dto.getRowId());
|
entity.setRowId(dto.getRowId());
|
||||||
entity.setRemak(dto.getRemak());
|
entity.setRemak(dto.getRemak());
|
||||||
|
|
||||||
this.updateById(entity);
|
this.updateById(entity);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// public Boolean updateBatchChoose(List<OptionalEbomImportChildVO> list){
|
// public Boolean updateBatchChoose(List<OptionalEbomImportChildVO> list){
|
||||||
// List<OptionalEbomImportChildEntity> entityLists= Convert.toList(OptionalEbomImportChildEntity.class,list);
|
// List<OptionalEbomImportChildEntity> entityLists= Convert.toList(OptionalEbomImportChildEntity.class,list);
|
||||||
//
|
//
|
||||||
|
|
@ -236,51 +225,59 @@ public class OptionalEbomImportChildService extends ServiceImpl<OptionalEbomImpo
|
||||||
/**
|
/**
|
||||||
* 相同部分更改isDel标记
|
* 相同部分更改isDel标记
|
||||||
* 不同部分没有发布数据则删除
|
* 不同部分没有发布数据则删除
|
||||||
|
*
|
||||||
* @param longIds
|
* @param longIds
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public Boolean deleteBiz(List<Long> longIds) {
|
public Boolean deleteBiz(List<Long> longIds) {
|
||||||
List<Long> intersectionList=new ArrayList<>(); //交, 更新
|
List<Long> intersectionList = null; //交, 更新
|
||||||
List<Long> subList=new ArrayList<>(); //差, 删除
|
List<Long> subList = null; //差, 删除
|
||||||
if(CollectionUtil.isNotEmpty(longIds)) {
|
if (CollectionUtil.isNotEmpty(longIds)) {
|
||||||
|
|
||||||
String rowIds = longIds.stream().map(Object::toString)
|
String rowIds = longIds.stream().map(Object::toString)
|
||||||
.collect(Collectors.joining(","));
|
.collect(Collectors.joining(","));
|
||||||
List<OptionalEbomConfigRVO> list= SpringUtil.getBean(OptionalEbomConfigRService.class).countPublish(rowIds);
|
List<Long> optionIdList = SpringUtil.getBean(OptionalEbomConfigRService.class).countPublish(rowIds);
|
||||||
List<Long> optionIdList=list.stream().map(OptionalEbomConfigRVO::getOptionRowId).collect(Collectors.toList());
|
if (optionIdList == null) {
|
||||||
|
optionIdList = new ArrayList<>();
|
||||||
|
}
|
||||||
|
|
||||||
//交集 相同
|
//交集 相同 已发布
|
||||||
// List<Long> intersectionList2= CollectionUtil.intersection(longIds, optionIdList).stream().collect(Collectors.toList());
|
intersectionList = CollectionUtil.intersection(longIds, optionIdList).stream().collect(Collectors.toList());
|
||||||
//差 第一个list 不同部分
|
//差 第一个list 不同部分 未发布
|
||||||
List<Long> subList2= CollectionUtil.subtract(longIds, optionIdList).stream().collect(Collectors.toList());
|
subList = CollectionUtil.subtract(longIds, optionIdList).stream().collect(Collectors.toList());
|
||||||
// if(CollectionUtil.isNotEmpty(intersectionList2)){
|
|
||||||
// intersectionList.addAll(intersectionList2);
|
|
||||||
// }
|
|
||||||
if(CollectionUtil.isNotEmpty(subList2)){
|
|
||||||
subList.addAll(subList2);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//已发布提示
|
||||||
|
if (CollectionUtil.isNotEmpty(intersectionList)) {
|
||||||
|
QueryWrapper<OptionalEbomImportChildEntity> queryWrapper = new QueryWrapper();
|
||||||
|
queryWrapper.lambda().in(OptionalEbomImportChildEntity::getRowId, intersectionList);
|
||||||
|
|
||||||
|
List<OptionalEbomImportChildEntity> entityList = getBaseMapper().selectList(queryWrapper);
|
||||||
|
StringBuffer stringBuffer = new StringBuffer();
|
||||||
|
for (OptionalEbomImportChildEntity item :
|
||||||
|
entityList) {
|
||||||
|
stringBuffer.append(StrUtil.format("{}({}) , ", item.getMaterialName(), item.getMaterialNo()));
|
||||||
|
}
|
||||||
|
stringBuffer.append("以上数据已发布不能删除");
|
||||||
|
throw new NflgBusinessException(STATE.Error, stringBuffer.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//删除未发布的选配 及暂存的选配
|
//删除未发布的选配 及暂存的选配
|
||||||
if (CollectionUtil.isNotEmpty(subList)) {
|
if (CollectionUtil.isNotEmpty(subList)) {
|
||||||
deleteByRowId(subList);
|
deleteByRowId(subList);
|
||||||
QueryWrapper<OptionalEbomConfigREntity> delOptionWrapper= new QueryWrapper();
|
QueryWrapper<OptionalEbomConfigREntity> delOptionWrapper = new QueryWrapper();
|
||||||
delOptionWrapper.lambda().in(OptionalEbomConfigREntity::getOptionRowId,subList);
|
delOptionWrapper.lambda().in(OptionalEbomConfigREntity::getOptionRowId, subList);
|
||||||
SpringUtil.getBean(OptionalEbomConfigRService.class).remove(delOptionWrapper);
|
SpringUtil.getBean(OptionalEbomConfigRService.class).remove(delOptionWrapper);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public Boolean updateDelStatusByRowId(List<Long> rowIds) {
|
public Boolean updateDelStatusByRowId(List<Long> rowIds) {
|
||||||
QueryWrapper<OptionalEbomImportChildEntity> queryWrapper = new QueryWrapper();
|
QueryWrapper<OptionalEbomImportChildEntity> queryWrapper = new QueryWrapper();
|
||||||
queryWrapper.lambda().in(OptionalEbomImportChildEntity::getRowId, rowIds);
|
queryWrapper.lambda().in(OptionalEbomImportChildEntity::getRowId, rowIds);
|
||||||
|
|
|
||||||
|
|
@ -16,9 +16,9 @@ row_id,parent_row_id,option_row_id,choose_status,created_time
|
||||||
|
|
||||||
|
|
||||||
<!--是否存在已发布数据-->
|
<!--是否存在已发布数据-->
|
||||||
<select id="countPublishList" resultType="com.nflg.product.bomnew.pojo.vo.OptionalEbomConfigRVO" >
|
<select id="countPublishList" resultType="java.lang.Long" >
|
||||||
SELECT t1.* from t_optional_ebom_config_r as t1 LEFT JOIN t_optional_ebom_config as t2 on t1.parent_row_id=t2.row_id
|
SELECT t1.option_row_id from t_optional_ebom_config_r as t1 LEFT JOIN t_optional_ebom_config as t2 on t1.parent_row_id=t2.row_id
|
||||||
WHERE t1.option_row_id in (${optionRowIds}) and t2.edit_status=1
|
WHERE t1.option_row_id in (${optionRowIds}) and t2.edit_status=1 GROUP BY t1.option_row_id
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue