解决服务矩阵编排时 izmulti没处理

This commit is contained in:
1378012178@qq.com 2026-04-08 11:29:10 +08:00
parent 4f8d0fe75e
commit 59f2a9f88d
1 changed files with 28 additions and 26 deletions

View File

@ -256,6 +256,8 @@ public class CareDirectivePlanServiceImpl extends ServiceImpl<CareDirectivePlanM
CareDirectivePlan careDirectivePlan = new CareDirectivePlan(); CareDirectivePlan careDirectivePlan = new CareDirectivePlan();
BeanUtils.copyProperties(careDirectiveEntity, careDirectivePlan); BeanUtils.copyProperties(careDirectiveEntity, careDirectivePlan);
CareDirectivePlan entity = baseMapper.selectById(careDirectiveEntity.getId()); CareDirectivePlan entity = baseMapper.selectById(careDirectiveEntity.getId());
boolean cycleTypeChanged = false;
//需要先判断是挪动 还是其它 //需要先判断是挪动 还是其它
//挪动的话会修改 //挪动的话会修改
if (!entity.getPositioning().equals(careDirectiveEntity.getPositioning()) || !entity.getPositioningLong().equals(careDirectiveEntity.getPositioningLong())) { if (!entity.getPositioning().equals(careDirectiveEntity.getPositioning()) || !entity.getPositioningLong().equals(careDirectiveEntity.getPositioningLong())) {
@ -271,6 +273,7 @@ public class CareDirectivePlanServiceImpl extends ServiceImpl<CareDirectivePlanM
baseMapper.update(upData, uw); baseMapper.update(upData, uw);
} else { } else {
cycleTypeChanged = true;
baseMapper.deleteByIdPhysic(careDirectiveEntity.getId()); baseMapper.deleteByIdPhysic(careDirectiveEntity.getId());
if ("5".equals(careDirectivePlan.getCycleTypeId()) && StringUtils.isBlank(careDirectivePlan.getCycleValue())) { if ("5".equals(careDirectivePlan.getCycleTypeId()) && StringUtils.isBlank(careDirectivePlan.getCycleValue())) {
//临时一次 需要处理 执行时间定时更新快照任务处理的服务指令最近时间目前是6分钟 + 5秒 如果当前时间比startTime+执行时间早 则今天执行 否则明天执行 //临时一次 需要处理 执行时间定时更新快照任务处理的服务指令最近时间目前是6分钟 + 5秒 如果当前时间比startTime+执行时间早 则今天执行 否则明天执行
@ -318,10 +321,9 @@ public class CareDirectivePlanServiceImpl extends ServiceImpl<CareDirectivePlanM
baseMapper.insert(careDirectivePlan); baseMapper.insert(careDirectivePlan);
} }
//这个单元格内所有一起挪动 只能挪到空单元格 所以不需要考虑这个逻辑
//如果nuId+分类标签+单元格坐标下是否已有数据 需要将所有数据改为指令集 否则设置为非指令集 //如果nuId+分类标签+单元格坐标下是否已有数据 需要将所有数据改为指令集 否则设置为非指令集
// { if (cycleTypeChanged) {
// //处理旧的单元格 //处理旧的单元格 指令集不存在只挪动其中一个服务 只会整个都挪走
// { // {
// QueryWrapper<CareDirectivePlan> qw = new QueryWrapper<>(); // QueryWrapper<CareDirectivePlan> qw = new QueryWrapper<>();
// qw.eq("nu_id", careDirectivePlan.getNuId()); // qw.eq("nu_id", careDirectivePlan.getNuId());
@ -343,29 +345,29 @@ public class CareDirectivePlanServiceImpl extends ServiceImpl<CareDirectivePlanM
// baseMapper.update(upData, uw); // baseMapper.update(upData, uw);
// } // }
// } // }
// //处理新的单元格 //处理新的单元格
// { {
// QueryWrapper<CareDirectivePlan> qw = new QueryWrapper<>(); QueryWrapper<CareDirectivePlan> qw = new QueryWrapper<>();
// qw.eq("nu_id", careDirectivePlan.getNuId()); qw.eq("nu_id", careDirectivePlan.getNuId());
// qw.eq("instruction_tag_id", careDirectivePlan.getInstructionTagId()); qw.eq("instruction_tag_id", careDirectivePlan.getInstructionTagId());
// qw.eq("positioning", careDirectivePlan.getPositioning()); qw.eq("positioning", careDirectivePlan.getPositioning());
// qw.eq("positioning_long", careDirectivePlan.getPositioningLong()); qw.eq("positioning_long", careDirectivePlan.getPositioningLong());
// List<CareDirectivePlan> list = baseMapper.selectList(qw); List<CareDirectivePlan> list = baseMapper.selectList(qw);
// UpdateWrapper<CareDirectivePlan> uw = new UpdateWrapper<>(); UpdateWrapper<CareDirectivePlan> uw = new UpdateWrapper<>();
// uw.eq("nu_id", careDirectivePlan.getNuId()); uw.eq("nu_id", careDirectivePlan.getNuId());
// uw.eq("instruction_tag_id", careDirectivePlan.getInstructionTagId()); uw.eq("instruction_tag_id", careDirectivePlan.getInstructionTagId());
// uw.eq("positioning", careDirectivePlan.getPositioning()); uw.eq("positioning", careDirectivePlan.getPositioning());
// uw.eq("positioning_long", careDirectivePlan.getPositioningLong()); uw.eq("positioning_long", careDirectivePlan.getPositioningLong());
// CareDirectivePlan upData = new CareDirectivePlan(); CareDirectivePlan upData = new CareDirectivePlan();
// if (CollectionUtils.isEmpty(list) || list.size() == 1) { if (CollectionUtils.isEmpty(list) || list.size() == 1) {
// upData.setIzMulti("N"); upData.setIzMulti("N");
// baseMapper.update(upData, uw); baseMapper.update(upData, uw);
// } else { } else {
// upData.setIzMulti("Y"); upData.setIzMulti("Y");
// baseMapper.update(upData, uw); baseMapper.update(upData, uw);
// } }
// } }
// } }
//调用方法先删除数据池中的数据再生成数据池中的数据 //调用方法先删除数据池中的数据再生成数据池中的数据
// dataPoolServiceImpl.editDataPool(entity); // dataPoolServiceImpl.editDataPool(entity);