【工艺路线】删除场景的保存

This commit is contained in:
10001392 2024-12-18 16:10:39 +08:00
parent 428b63558a
commit e7d9cc18d4
5 changed files with 56 additions and 0 deletions

View File

@ -2,6 +2,9 @@ package com.nflg.product.technology.mapper.master;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.nflg.product.technology.pojo.entity.ProcessRouteTaskAssemblyEntity;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
@ -13,4 +16,5 @@ import com.nflg.product.technology.pojo.entity.ProcessRouteTaskAssemblyEntity;
*/
public interface ProcessRouteTaskAssemblyMapper extends BaseMapper<ProcessRouteTaskAssemblyEntity> {
void deleteBatchByIdList(@Param("rowIdList") List<Long> rowIdList);
}

View File

@ -2,6 +2,9 @@ package com.nflg.product.technology.mapper.master;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.nflg.product.technology.pojo.entity.ProcessRouteTaskProcessesEntity;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
@ -13,4 +16,5 @@ import com.nflg.product.technology.pojo.entity.ProcessRouteTaskProcessesEntity;
*/
public interface ProcessRouteTaskProcessesMapper extends BaseMapper<ProcessRouteTaskProcessesEntity> {
void deleteBatchByIdList(@Param("rowIdList") List<Long> rowIdList);
}

View File

@ -214,7 +214,15 @@ public class ProcessRouteTaskService extends ServiceImpl<ProcessRouteTaskMapper,
this.saveOrUpdate(taskEntity);
// 工序列表
List<ProcessRouteTaskProcessesVO> processesVOList = processRouteTaskVO.getProcessesVOList();
// 数据库已有的工序列表
List<ProcessRouteTaskProcessesEntity> existsList = new ArrayList<>();
if (ObjectUtil.isNotEmpty(processRouteTaskVO.getRowId())) {
existsList = processRouteTaskProcessesService.lambdaQuery()
.eq(ProcessRouteTaskProcessesEntity::getTaskRowId, processRouteTaskVO.getRowId())
.list();
}
if (CollUtil.isNotEmpty(processesVOList)) {
Set<String> processeWorkCenterSet = new HashSet<>(); // 工序号_工作中心 唯一标识
List<ProcessRouteTaskProcessesEntity> taskProcessesEntityList = Convert.toList(ProcessRouteTaskProcessesEntity.class, processesVOList);
taskProcessesEntityList.forEach(taskProcessesEntity -> {
taskProcessesEntity.setUpdatedByName(SessionUtil.getRealName());
@ -229,12 +237,29 @@ public class ProcessRouteTaskService extends ServiceImpl<ProcessRouteTaskMapper,
// 修改
}
processeWorkCenterSet.add(taskProcessesEntity.getProcesse() + "_" + taskProcessesEntity.getWorkCenter());
});
processRouteTaskProcessesService.saveOrUpdateBatch(taskProcessesEntityList);
if (CollUtil.isNotEmpty(existsList)) {
existsList = existsList.stream().filter(exists -> !processeWorkCenterSet.contains(exists.getProcesse() + "_" + exists.getWorkCenter())).collect(Collectors.toList());
}
// 删除冗余工序
if (CollUtil.isNotEmpty(existsList)) {
List<Long> deleteRowIdList = existsList.stream().map(ProcessRouteTaskProcessesEntity::getRowId).collect(Collectors.toList());
processRouteTaskProcessesMapper.deleteBatchByIdList(deleteRowIdList);
}
}
// 组件分配列表
// 数据库已有的组件分配列表
List<ProcessRouteTaskAssemblyEntity> existsListAss = new ArrayList<>();
if (ObjectUtil.isNotEmpty(processRouteTaskVO.getRowId())) {
existsListAss = processRouteTaskAssemblyService.lambdaQuery()
.eq(ProcessRouteTaskAssemblyEntity::getTaskRowId, processRouteTaskVO.getRowId())
.list();
}
List<ProcessRouteTaskAssemblyVO> assemblyVOList = processRouteTaskVO.getAssemblyVOList();
if (CollUtil.isNotEmpty(assemblyVOList)) {
Set<String> materialNoLevelSet = new HashSet<>(); // 物料号_层 唯一标识
List<ProcessRouteTaskAssemblyEntity> taskAssemblyEntityList = Convert.toList(ProcessRouteTaskAssemblyEntity.class, assemblyVOList);
taskAssemblyEntityList.forEach(taskAssemblyEntity -> {
taskAssemblyEntity.setUpdatedByName(SessionUtil.getRealName());
@ -249,8 +274,17 @@ public class ProcessRouteTaskService extends ServiceImpl<ProcessRouteTaskMapper,
// 修改
}
materialNoLevelSet.add(taskAssemblyEntity.getMaterialNo() + "_" + taskAssemblyEntity.getLevel());
});
processRouteTaskAssemblyService.saveOrUpdateBatch(taskAssemblyEntityList);
if (CollUtil.isNotEmpty(existsListAss)) {
existsListAss = existsListAss.stream().filter(exists -> !materialNoLevelSet.contains(exists.getMaterialNo() + "_" + exists.getLevel())).collect(Collectors.toList());
}
// 删除冗余组件分配
if (CollUtil.isNotEmpty(existsListAss)) {
List<Long> deleteRowIdList = existsListAss.stream().map(ProcessRouteTaskAssemblyEntity::getRowId).collect(Collectors.toList());
processRouteTaskAssemblyMapper.deleteBatchByIdList(deleteRowIdList);
}
}
}

View File

@ -2,4 +2,11 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.nflg.product.technology.mapper.master.ProcessRouteTaskAssemblyMapper">
<delete id="deleteBatchByIdList">
delete from t_process_route_task_assembly where 1=1
AND row_id IN
<foreach collection="rowIdList" open="(" close=")" separator="," item="item">
#{item}
</foreach>
</delete>
</mapper>

View File

@ -2,4 +2,11 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.nflg.product.technology.mapper.master.ProcessRouteTaskProcessesMapper">
<delete id="deleteBatchByIdList">
delete from t_process_route_task_processes where 1=1
AND row_id IN
<foreach collection="rowIdList" open="(" close=")" separator="," item="item">
#{item}
</foreach>
</delete>
</mapper>