diff --git a/cf-module-prod-plan/cf-module-prod-plan-biz/src/main/java/com/cf/imes/module/plan/service/orderImport/factory/WebCadOrderImportFactory.java b/cf-module-prod-plan/cf-module-prod-plan-biz/src/main/java/com/cf/imes/module/plan/service/orderImport/factory/WebCadOrderImportFactory.java index 95b46e5f4..08d84b0b2 100644 --- a/cf-module-prod-plan/cf-module-prod-plan-biz/src/main/java/com/cf/imes/module/plan/service/orderImport/factory/WebCadOrderImportFactory.java +++ b/cf-module-prod-plan/cf-module-prod-plan-biz/src/main/java/com/cf/imes/module/plan/service/orderImport/factory/WebCadOrderImportFactory.java @@ -9,6 +9,7 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.cf.imes.framework.common.exception.ErrorCode; import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil; import com.cf.imes.framework.common.pojo.CommonResult; @@ -334,13 +335,13 @@ public class WebCadOrderImportFactory { // 检查生产单下是否已经有goodsId下的order_goods,有不再创建 materialMap = goodsMapper.selectMaps( - new LambdaQueryWrapper() - .select(GoodsDO::getGoodsId, GoodsDO::getId) - .eq(GoodsDO::getOrderId, orderId) - .eq(GoodsDO::getOrganId, organId) - .eq(GoodsDO::getDeleted, false) - .in(GoodsDO::getGoodsId, materialReqVOS.stream().map(WebCadDataMaterialReqVO::getGoodsId).collect(Collectors.toList())) - .groupBy(GoodsDO::getGoodsId)).stream() + new QueryWrapper() + .select("goods_id,MIN(id) as id") + .eq("order_id", orderId) + .eq("organ_id", organId) + .eq("deleted", false) + .in("goods_id", materialReqVOS.stream().map(WebCadDataMaterialReqVO::getGoodsId).collect(Collectors.toList())) + .groupBy("goods_id")).stream() .collect(Collectors.toMap( m -> String.valueOf(m.get("goods_id")), m -> ((Number) m.get("id")).longValue() @@ -470,13 +471,13 @@ public class WebCadOrderImportFactory { // 查询当前生产单的所有房间 existRoomIdMap = orderBodyMapper.selectMaps( - new LambdaQueryWrapper() - .select(OrderBodyDO::getRoomName, OrderBodyDO::getRoomId) - .eq(OrderBodyDO::getOrderId, orderId) - .eq(OrderBodyDO::getOrganId, organId) - .eq(OrderBodyDO::getDeleted, false) - .in(OrderBodyDO::getRoomName, roomNames) - .groupBy(OrderBodyDO::getRoomName)).stream() + new QueryWrapper() + .select("room_name,MIN(room_id) as room_id") + .eq("order_id", orderId) + .eq("organ_id", organId) + .eq("deleted", false) + .in("room_name", roomNames) + .groupBy("room_name")).stream() .collect(Collectors.toMap( m -> String.valueOf(m.get("room_name")), m -> ((Number) m.get("room_id")).longValue() @@ -1219,13 +1220,13 @@ public class WebCadOrderImportFactory { List roomNames = parts.stream().map(WebCadDataDoubleRoomTreeReqVO::getName).collect(Collectors.toList()); Map existPartsRoomIdMap = orderBodyMapper.selectMaps( - new LambdaQueryWrapper() - .select(OrderBodyDO::getRoomName, OrderBodyDO::getRoomId) - .eq(OrderBodyDO::getOrderId, orderId) - .eq(OrderBodyDO::getOrganId, organId) - .eq(OrderBodyDO::getDeleted, false) - .in(OrderBodyDO::getRoomName, roomNames) - .groupBy(OrderBodyDO::getRoomName)).stream() + new QueryWrapper() + .select("room_name,MIN(room_id) as room_id") + .eq("order_id", orderId) + .eq("organ_id", organId) + .eq("deleted", false) + .in("room_name", roomNames) + .groupBy("room_name")).stream() .collect(Collectors.toMap( m -> String.valueOf(m.get("room_name")), m -> ((Number) m.get("room_id")).longValue()