mirror of
http://192.168.1.205:9980/cf_devdept2/cf_imes_server.git
synced 2026-08-12 21:02:08 +08:00
新增 未排贴皮列表获取接口
This commit is contained in:
+2
-2
@@ -186,9 +186,9 @@ public class VeneerPlanController {
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询指定订单中当前贴皮排单可继续加入的未排贴皮板件。
|
||||
* 查询指定订单中未排贴皮板件;传入排单ID时按排单贴皮商品过滤。
|
||||
*
|
||||
* @param req 订单ID列表和目标贴皮排单ID
|
||||
* @param req 订单ID列表和可选的目标贴皮排单ID
|
||||
* @return 未排贴皮板件及原板件造型数据
|
||||
*/
|
||||
@PostMapping("/orders/noplan")
|
||||
|
||||
+1
-3
@@ -2,7 +2,6 @@ package com.cf.imes.module.executor.controller.admin.veneer.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import jakarta.validation.constraints.Size;
|
||||
import lombok.Data;
|
||||
|
||||
@@ -20,7 +19,6 @@ public class VeneerPlanNoPlanPlateReqVO {
|
||||
@Size(max = 200, message = "{veneer.plan.noplan.order.ids.max}")
|
||||
private List<Long> orderIds;
|
||||
|
||||
@Schema(description = "目标贴皮排单ID", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@NotNull(message = "{veneer.plan.id.required}")
|
||||
@Schema(description = "目标贴皮排单ID,不传时查询订单下全部未排贴皮")
|
||||
private Long planId;
|
||||
}
|
||||
|
||||
+1
-1
@@ -46,7 +46,7 @@ public interface VeneerPlanMapper extends BaseMapperX<OrderVeneerPlanDO> {
|
||||
* 查询指定订单中与目标贴皮排单商品匹配的未排贴皮板件。
|
||||
*
|
||||
* @param orderIds 订单ID列表
|
||||
* @param planId 目标贴皮排单ID
|
||||
* @param planId 目标贴皮排单ID,可为空
|
||||
* @param organId 组织ID
|
||||
* @return 未排贴皮板件原始数据
|
||||
*/
|
||||
|
||||
+1
-1
@@ -90,7 +90,7 @@ public interface VeneerPlanService {
|
||||
/**
|
||||
* 查询指定订单中与目标贴皮排单商品匹配的未排贴皮板件。
|
||||
*
|
||||
* @param req 订单ID列表和目标贴皮排单ID
|
||||
* @param req 订单ID列表和可选的目标贴皮排单ID
|
||||
* @return 未排贴皮板件及原板件造型数据
|
||||
*/
|
||||
VeneerPlanNoPlanPlateDataRespVO getNoPlanPlateData(VeneerPlanNoPlanPlateReqVO req);
|
||||
|
||||
+5
-3
@@ -440,13 +440,15 @@ public class VeneerPlanServiceImpl implements VeneerPlanService {
|
||||
@Override
|
||||
public VeneerPlanNoPlanPlateDataRespVO getNoPlanPlateData(
|
||||
VeneerPlanNoPlanPlateReqVO req) {
|
||||
OrderVeneerPlanDO plan = validatePlanExists(req.getPlanId());
|
||||
OrderVeneerPlanDO plan = req.getPlanId() == null
|
||||
? null : validatePlanExists(req.getPlanId());
|
||||
LoginUser loginUser = Objects.requireNonNull(SecurityFrameworkUtils.getLoginUser());
|
||||
|
||||
// 只查询当前排单贴皮商品对应的未排记录,A/B 面保留为独立记录。
|
||||
// 未传排单时查询订单下全部未排贴皮;传入排单时再按贴皮商品过滤。
|
||||
List<UnplannedVeneerPlateRespVO> rawPlates =
|
||||
veneerPlanMapper.selectNoPlanVeneerPlateList(
|
||||
req.getOrderIds(), plan.getId(), loginUser.getOrganId());
|
||||
req.getOrderIds(), plan == null ? null : plan.getId(),
|
||||
loginUser.getOrganId());
|
||||
List<UnplannedVeneerPlateRespVO> plates = mergeNoPlanVeneerPlateDetails(rawPlates);
|
||||
|
||||
// 同一原板的 A/B 面共用一份造型数据,通过 plateId 关联,避免重复返回。
|
||||
|
||||
+7
-5
@@ -242,16 +242,18 @@
|
||||
ob.name AS bodyName,
|
||||
op.model_data AS modelData
|
||||
FROM order_plate_veneer opv
|
||||
JOIN order_veneer_plan ovp
|
||||
ON ovp.id = #{planId}
|
||||
AND ovp.organ_id = #{organId}
|
||||
AND ovp.deleted = false
|
||||
JOIN order_veneer_goods ovg
|
||||
ON ovg.organ_id = opv.organ_id
|
||||
AND ovg.order_id = opv.order_id
|
||||
AND ovg.id = opv.order_veneer_goods_id
|
||||
AND ovg.source_veneer_id = ovp.source_veneer_id
|
||||
AND ovg.deleted = false
|
||||
<if test="planId != null">
|
||||
JOIN order_veneer_plan ovp
|
||||
ON ovp.id = #{planId}
|
||||
AND ovp.organ_id = #{organId}
|
||||
AND ovp.deleted = false
|
||||
AND ovg.source_veneer_id = ovp.source_veneer_id
|
||||
</if>
|
||||
JOIN order_plate op
|
||||
ON op.organ_id = opv.organ_id
|
||||
AND op.order_id = opv.order_id
|
||||
|
||||
Reference in New Issue
Block a user