Houjie
2025-05-23 c5daf9399f292e5b21deff9d5a8ac60fb4c377ab
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<?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="org.jeecg.modules.tms.mapper.ToolsStocktakingBoundDetailMapper">
 
    <delete id="deleteByMainId" parameterType="java.lang.String">
        DELETE
        FROM tools_stocktaking_bound_detail
        WHERE goods_shelves_id = #{mainId}
    </delete>
    <select id="getParamaTableNameByMainId" parameterType="string" resultType="string">
        SELECT t1.parama_table_name
        FROM tools_stocktaking_bound_detail t
                 LEFT JOIN tms_base_tools t1 ON t1.tool_id = t.id
        WHERE t.goods_shelves_id = #{mainId}
    </select>
 
    <select id="selectByMainId" resultType="org.jeecg.modules.tms.entity.ToolsStocktakingBoundDetail">
        SELECT
        t.*,
        t2.tool_code AS toolCode,  <!-- 修正:将t1改为t2 -->
        t2.parama_table_name paramaTableName,
        t2.classify_id AS classifyId,
        t3.storage_location AS storageLocation,
        t3.chinese_name AS chineseName,
        t2.tool_model AS toolModel,
        t3.supplier_id AS supplierId,
 
        <choose>
            <when test="ew.paramNameValuePairs.paramaTableName == '1'">
                c.tool_material AS toolMaterial,
                c.part_material AS partMaterial
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '2'">
                h.tool_material AS toolMaterial,
                h.part_material AS partMaterial
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '3'">
                th.tool_material AS toolMaterial,
                th.part_material AS partMaterial
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '4'">
                m.tool_material AS toolMaterial,
                m.part_material AS partMaterial
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '5'">
                tr.tool_material AS toolMaterial,
                tr.part_material AS partMaterial
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '6'">
                b.tool_material AS toolMaterial,
                b.part_material AS partMaterial
            </when>
            <!-- 默认情况:paramaTableName 为空或未传递时,关联 tms_para_common_tool 表 -->
            <otherwise>
                c.tool_material AS toolMaterial,
                c.part_material AS partMaterial
            </otherwise>
        </choose>
        FROM tms_stocktaking_bound_detail t
        LEFT JOIN tms_base_tools t2 on t.tool_id = t2.id
        LEFT JOIN tms_tools_config_property t3 on t3.tool_code = t2.id
 
        <choose>
            <when test="ew.paramNameValuePairs.paramaTableName == '1'">
                LEFT JOIN tms_para_common_tool c ON c.tool_code = t.id
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '2'">
                LEFT JOIN tms_para_hole_tools h ON h.tool_code = t.id
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '3'">
                LEFT JOIN tms_para_threading_tool th ON th.tool_code = t.id
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '4'">
                LEFT JOIN tms_para_mill_tool m ON m.tool_code = t.id
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '5'">
                LEFT JOIN tms_para_turning_tools tr ON tr.tool_code = t.id
            </when>
            <when test="ew.paramNameValuePairs.paramaTableName == '6'">
                LEFT JOIN tms_para_blade b ON b.tool_code = t.id
            </when>
            <!-- 默认情况:添加 LEFT JOIN tms_para_common_tool c -->
            <otherwise>
                LEFT JOIN tms_para_common_tool c ON c.tool_code = t.id
            </otherwise>
        </choose>
 
            ${ew.customSqlSegment}
 
    </select>
</mapper>