diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/goods/GoodsMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/goods/GoodsMapper.java index 741b8d0e6..5d185759e 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/goods/GoodsMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/goods/GoodsMapper.java @@ -8,6 +8,7 @@ import com.cf.imes.framework.common.pojo.PageResult; import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX; import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.cf.imes.module.executor.controller.admin.goods.vo.GoodsPageReqVO; +import com.cf.imes.module.executor.controller.admin.plan.bo.OrderRoomBodyList; import com.cf.imes.module.executor.controller.admin.plan.saveOptimize.NotPlanGoodsRespVO; import com.cf.imes.module.executor.controller.admin.plan.vo.*; import com.cf.imes.module.executor.dal.dataobject.goods.GoodsDO; @@ -82,16 +83,6 @@ public interface GoodsMapper extends BaseMapperX { IPage selectGoods(@Param("page") IPage page, @Param("goodsIds") List goodsIds, @Param("organId") Long organId); -// default GoodsDO selectId(Long orderId, Long goodsId, Long organId) { -// return selectOne(new LambdaQueryWrapperX() -// } -// default List selectGoodsPlateList(List goodIds, Long organId) { -// return selectList(new LambdaQueryWrapperX() -// .eq(GoodsDO::getOrganId, organId) -// .inIfPresent(GoodsDO::getOrderId, goodIds) -// .select(GoodsDO::getGoodsId,GoodsDO::getGoodsName, GoodsDO::getMaterial, GoodsDO::getColor, GoodsDO::getTexture,GoodsDO::getThickness, GoodsDO::getSpec)); -// } - List selectGoodsPlateList(@Param("goodIds") List goodIds,@Param("organId") Long organId); @@ -187,4 +178,30 @@ public interface GoodsMapper extends BaseMapperX { IPage selectNoPlanOrderList(@Param("page") IPage page, @Param(Constants.WRAPPER) Wrapper wrapper); + + + + default int deletePlanGoods(List ids, Long organId) { + return update(new LambdaUpdateWrapper() + .set(GoodsDO::getPlanId, 0) + .eq(GoodsDO::getOrganId, organId) + .in(GoodsDO::getPlanId, ids)); + } + + + + default List selectPlanGoodsListByPlanIdList(List planIds, Long organId) { + return selectList(new LambdaQueryWrapperX() + .eq(GoodsDO::getOrganId, organId) + .eq(GoodsDO::getDeleted, false) + .in(GoodsDO::getPlanId,planIds) + .select(GoodsDO::getGoodsId,GoodsDO::getId,GoodsDO::getOrderId)); + + } + + + List selectPlateListByPlanId(@Param("planIds") List planIds, @Param("organId") Long organId); + + + List selectNoPlanRoomBody(@Param("orderIds") List orderIds, @Param("organId") Long organId); } \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/order/OrderMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/order/OrderMapper.java index 4048dfcb8..b4fab3faa 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/order/OrderMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/order/OrderMapper.java @@ -251,4 +251,14 @@ public interface OrderMapper extends BaseMapperX { List selectGoodsListByGoodsId(@Param(Constants.WRAPPER) QueryWrapperX queryWrapperX); + + + default List selectNoPlanOrderList(Long organId, List statusList) { + return selectList(new LambdaQueryWrapperX() + .eqIfPresent(OrderDO::getOrganId, organId) + .eq(OrderDO::getDeleted, false) + .in(OrderDO::getStatus,statusList) + .select(OrderDO::getId)); + + } } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderBody/OrderBodyMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderBody/OrderBodyMapper.java index 281e508ec..4223189fe 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderBody/OrderBodyMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderBody/OrderBodyMapper.java @@ -131,10 +131,11 @@ public interface OrderBodyMapper extends BaseMapperX { - default List selectOrderBodyList(List bodyIds, Long organId) { + default List selectOrderBodyList(List bodyIds,List orderIds, Long organId) { return selectList(new LambdaQueryWrapperX() .eq(OrderBodyDO::getOrganId, organId) .eq(OrderBodyDO::getDeleted,false) + .in(OrderBodyDO::getOrderId,orderIds) .in(OrderBodyDO::getId, bodyIds) .select(OrderBodyDO::getId,OrderBodyDO::getName,OrderBodyDO::getRoomName)); } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderItem/OrderItemMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderItem/OrderItemMapper.java index 1d096ca26..d28854a03 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderItem/OrderItemMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderItem/OrderItemMapper.java @@ -5,7 +5,6 @@ import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX; import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.cf.imes.module.executor.controller.admin.order.vo.order.OrderPlatesDetailRespVO; import com.cf.imes.module.executor.controller.admin.orderParts.vo.OrderPartsRespVO; -import com.cf.imes.module.executor.controller.admin.plan.bo.OrderRoomBodyList; import com.cf.imes.module.executor.controller.admin.plan.saveOptimize.PrintOrderPackReqVO; import com.cf.imes.module.executor.controller.admin.plan.vo.OrderRespVOCopy; import com.cf.imes.module.executor.controller.admin.plate.vo.PlateDetailReqVO; @@ -81,8 +80,6 @@ public interface OrderItemMapper extends BaseMapperX { } - List selectRoomBodyByOrderId( @Param("orderIds") List orderIds, @Param("organId") Long organId); - default List selectPlateIdList(List plateIds, Long organId) { diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java index 91fbe697b..a6e0366eb 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java @@ -120,7 +120,6 @@ public interface PlateMapper extends BaseMapperX { List selectPlateIdListByBodyId(@Param("bodyId") Long bodyId, @Param("organId") Long organId); - List selectPlateListByPlanId(@Param("planIds") List planIds, @Param("organId") Long organId); // 根据需要删除的小板id查找具体信息 List selectPlateGoodsListByList(@Param("plates") List goodsIdList, @Param("orderId") Long orderId, @Param("organId") Long organId); diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/RemainPlateMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/RemainPlateMapper.java index 51a56abdb..9c16c2d76 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/RemainPlateMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/remainplaten/RemainPlateMapper.java @@ -62,5 +62,14 @@ public interface RemainPlateMapper extends BaseMapperX { List selectTestSQL(@Param("filed") String filed,@Param("planId") Long planId,@Param("organId") Long organId); + + default int deletePlanRemainPlate(List ids, Long organId) { + return update(new LambdaUpdateWrapper() + .set(RemainPlateDO::getPlanId, 0) + .eq(RemainPlateDO::getOrganId, organId) + .in(RemainPlateDO::getPlanId, ids)); + } + + // List selectTestSQL(@Param("sql") String sql); } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java index 0c4754514..c1fb9f0ba 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/optimizeplan/OptimizePlanServiceImpl.java @@ -743,25 +743,25 @@ public class OptimizePlanServiceImpl implements OptimizePlanService { batchSaveBoardModel(req.getOptimizeBoardModelDOS()); - // 保存余料板的数据 - if (CollectionUtil.isNotEmpty(req.getOptimizeRemainPlates())) { - - List remainPlateDoS = BeanUtils.toBean(req.getOptimizeRemainPlates(), RemainPlateDO.class) - .stream() - .map(m -> m.setUseType(1)) - .map(m -> m.setOutLineJson("")).toList(); - - - List insertPlateDoS = remainPlateDoS.stream().filter(f -> f.getId() == null).toList(); - - List updatePlateDoS = remainPlateDoS.stream().filter(f -> f.getId() != null).toList(); - - Boolean aBoolean = insertPlateDoS.isEmpty() ? null : remainPlateMapper.insertBatch(insertPlateDoS); - - Boolean bBoolean = updatePlateDoS.isEmpty() ? null : remainPlateMapper.updateBatch(updatePlateDoS); - - - } +// // 保存余料板的数据 +// if (CollectionUtil.isNotEmpty(req.getOptimizeRemainPlates())) { +// +// List remainPlateDoS = BeanUtils.toBean(req.getOptimizeRemainPlates(), RemainPlateDO.class) +// .stream() +// .map(m -> m.setUseType(1)) +// .map(m -> m.setOutLineJson("")).toList(); +// +// +// List insertPlateDoS = remainPlateDoS.stream().filter(f -> f.getId() == null).toList(); +// +// List updatePlateDoS = remainPlateDoS.stream().filter(f -> f.getId() != null).toList(); +// +// Boolean aBoolean = insertPlateDoS.isEmpty() ? null : remainPlateMapper.insertBatch(insertPlateDoS); +// +// Boolean bBoolean = updatePlateDoS.isEmpty() ? null : remainPlateMapper.updateBatch(updatePlateDoS); +// +// +// } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java index 881111b4c..d1f238546 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java @@ -42,11 +42,11 @@ import com.cf.imes.module.executor.dal.mysql.orderItem.OrderItemMapper; import com.cf.imes.module.executor.dal.mysql.plan.PlanMapper; import com.cf.imes.module.executor.dal.mysql.planitem.PlanItemMapper; import com.cf.imes.module.executor.dal.mysql.plate.PlateMapper; +import com.cf.imes.module.executor.dal.mysql.remainplaten.RemainPlateMapper; import com.cf.imes.module.executor.enums.OrderStatusEnum; import com.cf.imes.module.executor.service.optimizeplan.OptimizePlanService; import com.cf.imes.module.system.api.machine.MachineApi; import com.cf.imes.module.system.api.machine.dto.CuttingRespDTO; -import com.github.yulichang.wrapper.MPJLambdaWrapper; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -55,7 +55,6 @@ import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; import java.io.IOException; import java.math.BigDecimal; -import java.math.RoundingMode; import java.util.*; import java.util.stream.Collectors; @@ -104,6 +103,9 @@ public class PlanServiceImpl implements PlanService { @Resource private OrderBodyMapper orderBodyMapper; + @Resource + private RemainPlateMapper remainPlateMapper; + @Resource private IdentifierGenerator identifierGenerator; @@ -295,18 +297,23 @@ public class PlanServiceImpl implements PlanService { } - // 删除排单信息,排单明细表信息,ES优化数据 + // 删除排单信息,商品表里的 planId , ES优化数据,更新排单对应的余料板的排单ID为0 planMapper.deleteBatchIds(ids); - planItemMapper.delete(new LambdaQueryWrapperX().in(PlanItemDO::getPlanId, ids)); +// planItemMapper.delete(new LambdaQueryWrapperX().in(PlanItemDO::getPlanId, ids)); + goodsMapper.deletePlanGoods(ids,getUserOrganId()); + remainPlateMapper.deletePlanRemainPlate(ids,getUserOrganId()); + // 排单对应的自增板的删除 todo 目前值解决了非混单的情况 List boardModelDOS = buildBoardByPlanIds(ids, ORDER_REMAIN_PLATE_MODEL, ids.size()); if(!boardModelDOS.isEmpty()) { - List goodsIds = boardModelDOS.stream().map(OptimizeBoardModelDO::getGoodsId).toList(); +// List goodsIds = boardModelDOS.stream().map(OptimizeBoardModelDO::getGoodsId).toList(); - List goodsIdList = goodsMapper.selectListByGoodsIdList(goodsIds, orderIds, getUserOrganId()).stream().map(GoodsDO::getId).toList(); +// List goodsIdList = goodsMapper.selectListByGoodsIdList(goodsIds, orderIds, getUserOrganId()).stream().map(GoodsDO::getId).toList(); + + List goodsIdList = goodsMapper.selectPlanGoodsListByPlanIdList(ids, getUserOrganId()).stream().map(GoodsDO::getId).toList(); List plateDOS = plateMapper.selectPlateIdList(goodsIdList, getUserOrganId()); if(!plateDOS.isEmpty()) { @@ -386,34 +393,41 @@ public class PlanServiceImpl implements PlanService { @Override public PlanRespVO getPlan(Long id) { - PlanDO planDO = planMapper.selectById(id); - MPJLambdaWrapper wrapper = new MPJLambdaWrapperX().select(OrderItemDO::getOrderId) - .rightJoin(PlanItemDO.class, PlanItemDO::getItemId, OrderItemDO::getId) - .isNotNull(OrderItemDO::getId); - Set orderIds = orderItemMapper.selectJoinList(OrderItemDO.class, wrapper).stream().map(OrderItemDO::getOrderId).collect(Collectors.toSet()); - /*Set orderIds = planOrderMapper.selectList(new LambdaQueryWrapperX().eq(PlanOrderDO::getPlanId, planDO.getPlanNo())) - .stream() - .map(e -> e.getOrderId()) - .collect(Collectors.toSet());*/ - PlanRespVO respVO = BeanUtils.toBean(planDO, PlanRespVO.class); - List goodsDOS = goodsMapper.selectList(new LambdaQueryWrapperX() - .eq(GoodsDO::getOrganId,getUserOrganId()) - .in(GoodsDO::getOrderId, orderIds)); - List plateDOS = plateMapper.selectList(new LambdaQueryWrapperX() - .eq(PlateDO::getOrganId,getUserOrganId()) - .in(PlateDO::getGoodsId, goodsDOS.stream().map(GoodsDO::getGoodsId).collect(Collectors.toSet()))); - List plateInfoVOS = goodsDOS.stream().map(e -> PlateInfoVO.builder() - .material(e.getMaterial()) - .width(e.getWidth()) - .height(e.getHeight()) - .thickness(e.getThickness()) - .area(e.getHeight().multiply(e.getWidth()).setScale(2, RoundingMode.HALF_UP)) - .count(plateDOS.stream().filter(f -> Objects.equals(f.getGoodsId(), e.getGoodsId())).collect(Collectors.toSet()).size()) - .build()) - .collect(Collectors.toList()); - respVO.setPlateInfoList(plateInfoVOS); - return respVO; + PlanDO planDO = planMapper.selectById(id); + + if ( planDO== null) { + throw exception(PLAN_NOT_EXISTS); + } + + return BeanUtils.toBean(planDO, PlanRespVO.class); + +// MPJLambdaWrapper wrapper = new MPJLambdaWrapperX().select(OrderItemDO::getOrderId) +// .rightJoin(PlanItemDO.class, PlanItemDO::getItemId, OrderItemDO::getId) +// .isNotNull(OrderItemDO::getId); +// Set orderIds = orderItemMapper.selectJoinList(OrderItemDO.class, wrapper).stream().map(OrderItemDO::getOrderId).collect(Collectors.toSet()); +// +// /*Set orderIds = planOrderMapper.selectList(new LambdaQueryWrapperX().eq(PlanOrderDO::getPlanId, planDO.getPlanNo())) +// .stream() +// .map(e -> e.getOrderId()) +// .collect(Collectors.toSet());*/ +// List goodsDOS = goodsMapper.selectList(new LambdaQueryWrapperX() +// .eq(GoodsDO::getOrganId,getUserOrganId()) +// .in(GoodsDO::getOrderId, orderIds)); +// List plateDOS = plateMapper.selectList(new LambdaQueryWrapperX() +// .eq(PlateDO::getOrganId,getUserOrganId()) +// .in(PlateDO::getGoodsId, goodsDOS.stream().map(GoodsDO::getGoodsId).collect(Collectors.toSet()))); +// List plateInfoVOS = goodsDOS.stream().map(e -> PlateInfoVO.builder() +// .material(e.getMaterial()) +// .width(e.getWidth()) +// .height(e.getHeight()) +// .thickness(e.getThickness()) +// .area(e.getHeight().multiply(e.getWidth()).setScale(2, RoundingMode.HALF_UP)) +// .count(plateDOS.stream().filter(f -> Objects.equals(f.getGoodsId(), e.getGoodsId())).collect(Collectors.toSet()).size()) +// .build()) +// .collect(Collectors.toList()); +// respVO.setPlateInfoList(plateInfoVOS); + } @@ -502,8 +516,8 @@ public class PlanServiceImpl implements PlanService { // 根据排单ID查询ES中的优化数据 todo 目前只解决无混单的情况,混单情况待解决 List optimizeBoardModelDOS = buildBoardByPlanIds(planIds, ORDER_REMAIN_PLATE_MODEL, infoVOList.size()); - for (OptimizeBoardModelDO optimizeBoardModelDO : optimizeBoardModelDOS) { - } +// for (OptimizeBoardModelDO optimizeBoardModelDO : optimizeBoardModelDOS) { +// } // 获取排单对应的生产单的信息 List planOrderRespVOS = planItemMapper.selectOrderList(planIds, getUserOrganId()); @@ -988,6 +1002,7 @@ public class PlanServiceImpl implements PlanService { MPJLambdaWrapperX lambdaWrapperX = new MPJLambdaWrapperX<>(); lambdaWrapperX.leftJoin(GoodsDO.class, GoodsDO::getOrderId, OrderDO::getId) .eq(GoodsDO::getOrganId,getUserOrganId()) + .eq(GoodsDO::getDeleted,false) .eq(GoodsDO::getPlanId, pageReqVO.getPlanId()) .distinct(); @@ -1032,7 +1047,7 @@ public class PlanServiceImpl implements PlanService { public List getPlateList(List planIds) { - List plateResLists = plateMapper.selectPlateListByPlanId(planIds, getUserOrganId()); + List plateResLists = goodsMapper.selectPlateListByPlanId(planIds, getUserOrganId()); Set bodyIds = plateResLists.stream().map(PlateResList::getBodyId).collect(Collectors.toSet()); if (CollectionUtil.isNotEmpty(bodyIds)) { @@ -1052,10 +1067,7 @@ public class PlanServiceImpl implements PlanService { public List getOrderRoomBody(List orderIds) { - List orderRoomBodyLists = orderItemMapper.selectRoomBodyByOrderId(orderIds, getUserOrganId()); - - - return orderRoomBodyLists; + return goodsMapper.selectNoPlanRoomBody(orderIds,getUserOrganId()); } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/goods/GoodsMapper.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/goods/GoodsMapper.xml index 8745eb8b5..d5d8bbc91 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/goods/GoodsMapper.xml +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/goods/GoodsMapper.xml @@ -231,7 +231,7 @@ from order_goods og - left join order_plate op on og.organ_id = op.organ_id and og.id = op.goods_id and og.deleted = op.deleted + left join order_plate op on og.organ_id = op.organ_id and og.order_id = op.order_id and og.id = op.goods_id and og.deleted = op.deleted where og.organ_id = #{organId} @@ -288,8 +288,8 @@ oi.body_id from order_goods og - left join order_plate op on og.organ_id = op.organ_id and og.id = op.goods_id and og.deleted = op.deleted - left join order_item oi on op.organ_id = oi.organ_id and op.id = oi.plate_id + left join order_plate op on og.organ_id = op.organ_id and og.order_id = op.order_id and og.id = op.goods_id and og.deleted = op.deleted + left join order_item oi on op.organ_id = oi.organ_id and op.order_id = oi.order_id and op.id = oi.plate_id ${ew.customSqlSegment} @@ -331,4 +331,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml index d9e67013f..37c1f5ad3 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml @@ -181,11 +181,6 @@ - - - - - - - select distinct - oi.order_id as orderId, - ob.id as bodyId, - ob.name as bodyName, - ob.room_id as roomId, - ob.room_name as roomName - from order_item oi - left join order_plan_item opi on oi.id = opi.item_id and oi.organ_id = opi.organ_id - left join order_body ob on oi.body_id = ob.id and oi.organ_id = ob.organ_id - - where oi.organ_id = #{organId} and opi.item_id is null and oi.order_id in - - - #{orderIds} - - - - - - - - -