feat(wms/coil): 新增钢卷理论长度字段并优化理论计算逻辑

1. 在钢卷物料实体类、业务对象、值对象及导出VO中新增理论长度(theoreticalLength)字段,并在映射文件中补充数据库映射关系
2. 重构理论计算工具方法,将原有的calculateTheoreticalThickness方法扩展为calculateTheoretical,支持同时计算理论厚度和理论长度
3. 理论长度计算公式:理论长度 = 净重(吨) × 1000 / 7.85 / 规格厚度(mm) / 规格宽度(mm) / 1000
4. 优化规格信息提取逻辑,统一从物品规格中解析厚度和宽度,避免重复代码
5. 在新增、修改、分卷、批量分卷等业务方法中调用新的计算逻辑,确保理论长度字段的自动填充
This commit is contained in:
2026-06-01 16:21:41 +08:00
parent 37b2987279
commit 0cfffcc60d
6 changed files with 71 additions and 30 deletions

View File

@@ -43,6 +43,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="specId" column="spec_id"/>
<result property="versionId" column="version_id"/>
<result property="theoreticalThickness" column="theoretical_thickness"/>
<result property="theoreticalLength" column="theoretical_length"/>
<result property="chromePlateCoilNo" column="chrome_plate_coil_no"/>
</resultMap>
@@ -131,6 +132,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
mc.exclusive_status,
mc.transfer_type,
mc.theoretical_thickness,
mc.theoretical_length,
mc.chrome_plate_coil_no,
mc.sale_name AS saleName,
w.warehouse_name AS warehouseName,
@@ -230,6 +232,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
mc.exclusive_status,
mc.transfer_type,
mc.theoretical_thickness,
mc.theoretical_length,
mc.chrome_plate_coil_no,
mc.sale_name AS saleName,
su.nick_name AS saleNickName,
@@ -562,6 +565,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
mc.transfer_type AS transferType,
-- 理论厚度
mc.theoretical_thickness AS theoreticalThickness,
-- 理论长度
mc.theoretical_length AS theoreticalLength,
-- 镀铬卷号
mc.chrome_plate_coil_no AS chromePlateCoilNo,
-- 库存状态(中文显示)
@@ -652,6 +657,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
mc.sale_name AS saleName,
mc.transfer_type AS transferType,
mc.theoretical_thickness AS theoreticalThickness,
mc.theoretical_length AS theoreticalLength,
mc.chrome_plate_coil_no AS chromePlateCoilNo,
CASE
WHEN mc.status = 0 THEN '在库'
@@ -772,6 +778,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
mc.sale_name AS saleName,
mc.transfer_type AS transferType,
mc.theoretical_thickness AS theoreticalThickness,
mc.theoretical_length AS theoreticalLength,
mc.chrome_plate_coil_no AS chromePlateCoilNo,
CASE
WHEN mc.status = 0 THEN '在库'