【工艺路线】删除场景的保存
This commit is contained in:
parent
428b63558a
commit
e7d9cc18d4
|
|
@ -2,6 +2,9 @@ package com.nflg.product.technology.mapper.master;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.nflg.product.technology.pojo.entity.ProcessRouteTaskAssemblyEntity;
|
import com.nflg.product.technology.pojo.entity.ProcessRouteTaskAssemblyEntity;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
|
|
@ -13,4 +16,5 @@ import com.nflg.product.technology.pojo.entity.ProcessRouteTaskAssemblyEntity;
|
||||||
*/
|
*/
|
||||||
public interface ProcessRouteTaskAssemblyMapper extends BaseMapper<ProcessRouteTaskAssemblyEntity> {
|
public interface ProcessRouteTaskAssemblyMapper extends BaseMapper<ProcessRouteTaskAssemblyEntity> {
|
||||||
|
|
||||||
|
void deleteBatchByIdList(@Param("rowIdList") List<Long> rowIdList);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,9 @@ package com.nflg.product.technology.mapper.master;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.nflg.product.technology.pojo.entity.ProcessRouteTaskProcessesEntity;
|
import com.nflg.product.technology.pojo.entity.ProcessRouteTaskProcessesEntity;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
|
|
@ -13,4 +16,5 @@ import com.nflg.product.technology.pojo.entity.ProcessRouteTaskProcessesEntity;
|
||||||
*/
|
*/
|
||||||
public interface ProcessRouteTaskProcessesMapper extends BaseMapper<ProcessRouteTaskProcessesEntity> {
|
public interface ProcessRouteTaskProcessesMapper extends BaseMapper<ProcessRouteTaskProcessesEntity> {
|
||||||
|
|
||||||
|
void deleteBatchByIdList(@Param("rowIdList") List<Long> rowIdList);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -214,7 +214,15 @@ public class ProcessRouteTaskService extends ServiceImpl<ProcessRouteTaskMapper,
|
||||||
this.saveOrUpdate(taskEntity);
|
this.saveOrUpdate(taskEntity);
|
||||||
// 工序列表
|
// 工序列表
|
||||||
List<ProcessRouteTaskProcessesVO> processesVOList = processRouteTaskVO.getProcessesVOList();
|
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)) {
|
if (CollUtil.isNotEmpty(processesVOList)) {
|
||||||
|
Set<String> processeWorkCenterSet = new HashSet<>(); // 工序号_工作中心 唯一标识
|
||||||
List<ProcessRouteTaskProcessesEntity> taskProcessesEntityList = Convert.toList(ProcessRouteTaskProcessesEntity.class, processesVOList);
|
List<ProcessRouteTaskProcessesEntity> taskProcessesEntityList = Convert.toList(ProcessRouteTaskProcessesEntity.class, processesVOList);
|
||||||
taskProcessesEntityList.forEach(taskProcessesEntity -> {
|
taskProcessesEntityList.forEach(taskProcessesEntity -> {
|
||||||
taskProcessesEntity.setUpdatedByName(SessionUtil.getRealName());
|
taskProcessesEntity.setUpdatedByName(SessionUtil.getRealName());
|
||||||
|
|
@ -229,12 +237,29 @@ public class ProcessRouteTaskService extends ServiceImpl<ProcessRouteTaskMapper,
|
||||||
// 修改
|
// 修改
|
||||||
|
|
||||||
}
|
}
|
||||||
|
processeWorkCenterSet.add(taskProcessesEntity.getProcesse() + "_" + taskProcessesEntity.getWorkCenter());
|
||||||
});
|
});
|
||||||
processRouteTaskProcessesService.saveOrUpdateBatch(taskProcessesEntityList);
|
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();
|
List<ProcessRouteTaskAssemblyVO> assemblyVOList = processRouteTaskVO.getAssemblyVOList();
|
||||||
if (CollUtil.isNotEmpty(assemblyVOList)) {
|
if (CollUtil.isNotEmpty(assemblyVOList)) {
|
||||||
|
Set<String> materialNoLevelSet = new HashSet<>(); // 物料号_层 唯一标识
|
||||||
List<ProcessRouteTaskAssemblyEntity> taskAssemblyEntityList = Convert.toList(ProcessRouteTaskAssemblyEntity.class, assemblyVOList);
|
List<ProcessRouteTaskAssemblyEntity> taskAssemblyEntityList = Convert.toList(ProcessRouteTaskAssemblyEntity.class, assemblyVOList);
|
||||||
taskAssemblyEntityList.forEach(taskAssemblyEntity -> {
|
taskAssemblyEntityList.forEach(taskAssemblyEntity -> {
|
||||||
taskAssemblyEntity.setUpdatedByName(SessionUtil.getRealName());
|
taskAssemblyEntity.setUpdatedByName(SessionUtil.getRealName());
|
||||||
|
|
@ -249,8 +274,17 @@ public class ProcessRouteTaskService extends ServiceImpl<ProcessRouteTaskMapper,
|
||||||
// 修改
|
// 修改
|
||||||
|
|
||||||
}
|
}
|
||||||
|
materialNoLevelSet.add(taskAssemblyEntity.getMaterialNo() + "_" + taskAssemblyEntity.getLevel());
|
||||||
});
|
});
|
||||||
processRouteTaskAssemblyService.saveOrUpdateBatch(taskAssemblyEntityList);
|
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);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,4 +2,11 @@
|
||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<!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">
|
<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>
|
</mapper>
|
||||||
|
|
|
||||||
|
|
@ -2,4 +2,11 @@
|
||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<!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">
|
<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>
|
</mapper>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue