Files
klp-oa/klp-wms/src/main/resources/mapper/klp/WmsCoilPendingActionMapper.xml
Joshi f84168396c feat(wms): 添加加工后钢卷ID字段支持
- 在WmsCoilPendingAction实体类中新增processedCoilIds字段
- 在WmsCoilPendingActionBo业务对象中添加processedCoilIds属性
- 更新WmsCoilPendingActionMapper.xml映射文件中的结果映射
- 在WmsCoilPendingActionServiceImpl服务实现中添加模糊查询条件
- 在WmsCoilPendingActionVo视图对象中增加processedCoilIds字段
2026-03-16 13:20:40 +08:00

113 lines
5.5 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.klp.mapper.WmsCoilPendingActionMapper">
<resultMap type="com.klp.domain.WmsCoilPendingAction" id="WmsCoilPendingActionResult">
<result property="actionId" column="action_id" />
<result property="coilId" column="coil_id" />
<result property="currentCoilNo" column="current_coil_no" />
<result property="actionType" column="action_type" />
<result property="actionStatus" column="action_status" />
<result property="scanTime" column="scan_time" />
<result property="scanDevice" column="scan_device" />
<result property="priority" column="priority" />
<result property="sourceType" column="source_type" />
<result property="warehouseId" column="warehouse_id" />
<result property="operatorId" column="operator_id" />
<result property="operatorName" column="operator_name" />
<result property="processTime" column="process_time" />
<result property="completeTime" column="complete_time" />
<result property="remark" column="remark" />
<result property="processedCoilIds" column="processed_coil_ids" />
<result property="delFlag" column="del_flag" />
<result property="createTime" column="create_time" />
<result property="createBy" column="create_by" />
<result property="updateTime" column="update_time" />
<result property="updateBy" column="update_by" />
</resultMap>
<select id="selectVoPagePlus" resultType="com.klp.domain.vo.WmsCoilPendingActionVo">
select
wcpa.action_id as actionId,
wcpa.coil_id as coilId,
wcpa.current_coil_no as currentCoilNo,
wcpa.action_type as actionType,
wcpa.action_status as actionStatus,
wcpa.scan_time as scanTime,
wcpa.scan_device as scanDevice,
wcpa.priority as priority,
wcpa.source_type as sourceType,
wcpa.warehouse_id as warehouseId,
wcpa.operator_id as operatorId,
wcpa.operator_name as operatorName,
wcpa.process_time as processTime,
wcpa.complete_time as completeTime,
wcpa.processed_coil_ids as processedCoilIds,
wcpa.remark as remark,
wcpa.del_flag as delFlag,
wcpa.create_time as createTime,
wcpa.create_by as createBy,
wcpa.update_time as updateTime,
wcpa.update_by as updateBy,
wmc.enter_coil_no as enterCoilNo,
wmc.supplier_coil_no as supplierCoilNo,
wmc.item_id as itemId,
wmc.item_type as itemType,
w.warehouse_name AS warehouseName,
aw.actual_warehouse_name AS actualWarehouseName,
CASE WHEN wmc.item_type = 'raw_material' THEN rm.specification
WHEN wmc.item_type = 'product' THEN p.specification
ELSE NULL END AS specification,
CASE WHEN wmc.item_type = 'raw_material' THEN rm.material
WHEN wmc.item_type = 'product' THEN p.material
ELSE NULL END AS material,
CASE WHEN wmc.item_type = 'raw_material' THEN rm.manufacturer
WHEN wmc.item_type = 'product' THEN p.manufacturer
ELSE NULL END AS manufacturer,
CASE WHEN wmc.item_type = 'raw_material' THEN rm.surface_treatment_desc
WHEN wmc.item_type = 'product' THEN p.surface_treatment_desc
ELSE NULL END AS surfaceTreatmentDesc,
CASE WHEN wmc.item_type = 'raw_material' THEN rm.zinc_layer
WHEN wmc.item_type = 'product' THEN p.zinc_layer
ELSE NULL END AS zincLayer,
CASE
WHEN wmc.item_type = 'raw_material' THEN rm.raw_material_name
WHEN wmc.item_type = 'product' THEN p.product_name
ELSE NULL
END as itemName,
CASE
WHEN wmc.item_type = 'raw_material' THEN rm.raw_material_code
WHEN wmc.item_type = 'product' THEN p.product_code
ELSE NULL
END as itemCode
from wms_coil_pending_action wcpa
inner join wms_material_coil wmc ON wcpa.coil_id = wmc.coil_id AND wmc.del_flag = 0
LEFT JOIN wms_warehouse w ON wmc.warehouse_id = w.warehouse_id
LEFT JOIN wms_actual_warehouse aw ON wmc.actual_warehouse_id = aw.actual_warehouse_id
LEFT JOIN wms_raw_material rm ON wmc.item_type = 'raw_material' AND wmc.item_id = rm.raw_material_id
LEFT JOIN wms_product p ON wmc.item_type = 'product' AND wmc.item_id = p.product_id
${ew.customSqlSegment}
</select>
<!-- 根据操作ID和删除标志查询记录(包含已删除记录) -->
<select id="selectByActionIdAndDelFlag" resultType="com.klp.domain.WmsCoilPendingAction">
SELECT *
FROM wms_coil_pending_action
WHERE action_id = #{actionId}
AND del_flag = #{delFlag}
LIMIT 1
</select>
<!-- 更新删除标志(绕过@TableLogic注解限制) -->
<update id="updateDelFlag">
UPDATE wms_coil_pending_action
SET del_flag = #{delFlag}
WHERE action_id = #{actionId}
</update>
</mapper>