jar
jinlin
2025-03-04 23f02e6b45dd7cf0ab2e7827144913ca59575ea4
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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
<?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.example.server.progressTrack.dao.DjJdgzNetworkLevel2Dao">
    <delete id="deleteLevel2">
        update dj_jdgz_network_level2 set is_delete=1
        where id = ${id};
    </delete>
    <delete id="deleteLevel2List">
        update dj_jdgz_network_level2_list set is_delete=1
        where network_id = ${id};
 
    </delete>
    <delete id="deleteLevel3List">
        update dj_jdgz_network_level3_list set is_delete=1
        where network_id in (select id from dj_jdgz_network_level3 where LEVEL2_NETWORK_ID = ${id});
    </delete>
    <delete id="deleteLevel3">
         update dj_jdgz_network_level3 set is_delete=1
        where LEVEL2_NETWORK_ID = ${id};
    </delete>
 
    <select id="getList" resultType="com.example.server.progressTrack.model.DjJdgzNetworkLevel2">
        select a.id,b.project_name,c.process_name,a.content,
        CASE WHEN
        a.diagram_width IS NOT NULL THEN
        a.diagram_width ELSE 5000
        END AS diagramWidth,
        CASE WHEN
        a.line_node_num IS NOT NULL THEN
        a.line_node_num ELSE 10
        END AS lineNodeNum,
        CASE WHEN
        a.start_date IS NOT NULL THEN
        a.start_date ELSE b.start_date
        END AS startDate
        from dj_jdgz_network_level2 a
        left join dj_jdgz_network_level1 b on b.id = a.level1_Network_Id
        left join dj_jdgz_network_level1_list c on c.id = a.level1_Node_Id
        <where>
            a.is_delete = 0
            and b.is_delete = 0
            and c.is_delete = 0
            <if test="shipId!=null">
                and b.ship_id = ${shipId}
            </if>
        </where>
        <if test="orderBySql!=null">
            ORDER BY ${orderBySql}
        </if>
    </select>
    <select id="getLevel2List" resultType="com.example.client.dto.JComboBoxItem">
        select a.id,c.process_name as `name`
        from dj_jdgz_network_level2 a
        left join dj_jdgz_network_level1 b on b.id = a.level1_Network_Id
        left join dj_jdgz_network_level1_list c on c.id = a.level1_Node_Id
        where a.is_delete=0
          and b.is_delete = 0
          and c.is_delete = 0
          and c.network_id = ${networkId}
        ORDER BY c.sort
    </select>
    <update id="setStatusNull">
        update dj_jdgz_network_level2_list
        set CURRENT_STATUS=null,
            ACTUAL_COMPLETION=null,
            manual_set_flag=null
        where is_delete = 0
          and (ifnull(manual_set_flag, 0) = 0 or ifnull(current_status, 0) = 0)
    </update>
    <update id="setStatus">
        update dj_jdgz_network_level2_list
        set CURRENT_STATUS=1,
            ACTUAL_COMPLETION=(select max(b.ACTUAL_COMPLETION)
                               from dj_jdgz_network_level3_list b,
                                    dj_jdgz_network_level3 c
                               where b.NETWORK_ID = c.id
                                 and c.LEVEL2_NODE_ID = dj_jdgz_network_level2_list.id
                                 and b.is_delete = 0
                                 and c.is_delete = 0)
        where is_delete = 0
          and (ifnull(manual_set_flag, 0) = 0 or ifnull(current_status, 0) = 0)
          and exists(select b.*
                     from dj_jdgz_network_level3_list b,
                          dj_jdgz_network_level3 c
                     where b.NETWORK_ID = c.id
                       and c.LEVEL2_NODE_ID = dj_jdgz_network_level2_list.id
                       and b.is_delete = 0
                       and c.is_delete = 0)
          and not exists(select b.*
                         from dj_jdgz_network_level3_list b,
                              dj_jdgz_network_level3 c
                         where b.NETWORK_ID = c.id
                           and c.LEVEL2_NODE_ID = dj_jdgz_network_level2_list.id
                           and b.is_delete = 0
                           and c.is_delete = 0
                           and (b.CURRENT_STATUS is null or b.CURRENT_STATUS = 0))
    </update>
    <select id="getNodeStatusData" resultType="com.example.server.progressTrack.Dto.NetworkNodeStatusDto">
        select ID, REQUIRED_COMPLETION_TIME, ACTUAL_COMPLETION, CURRENT_STATUS
        from dj_jdgz_network_level2_list
        where IS_DELETE = 0
          and NETWORK_ID = ${id}
    </select>
    <select id="getByNodeId" resultType="java.lang.String">
        select content from dj_jdgz_network_level2 where is_delete=0 and LEVEL1_NODE_ID = ${id}
    </select>
 
</mapper>