update dj_jdgz_network_level3
set is_delete=1
where id = ${id};
update dj_jdgz_network_level3_list
set is_delete=1
where network_id = ${id};
update dj_jdgz_network_level3_list
set is_delete=1
where network_id in (select id from dj_jdgz_network_level3 where NAME = #{name})
and TEAMGROUP_ID = ${teamGroupId};
update dj_jdgz_network_level3
set is_delete=1
where NAME = ${name};
SELECT
a.*,
b.PROCESS_NAME AS level1NodeName,
c.project_name,
d.PROCESS_NAME AS level2NodeName
FROM `dj_jdgz_network_level3` a
LEFT JOIN dj_jdgz_network_level1 c on c.ID = a.LEVEL1_NETWORK_ID
LEFT JOIN dj_jdgz_network_level1_list b on b.NETWORK_ID = c.ID
LEFT JOIN dj_jdgz_network_level2_list d on d.ID = a.LEVEL2_NODE_ID
where
a.is_delete = 0
and b.is_delete = 0
and c.is_delete = 0
and d.is_delete = 0
and c.ship_id = ${shipId}
and a.dept_id = ${deptId}
and a.TEAMGROUP_ID = ${teamId}
and a.cabin_id = ${cabinId}
and a.iseal_cabin = ${isealCabin}
and a.type = #{type}
and a.name LIKE '%${name}%'
group by a.id
select ID, REQUIRED_COMPLETION_TIME, ACTUAL_COMPLETION, CURRENT_STATUS
from dj_jdgz_network_level3_list
where IS_DELETE = 0
and NETWORK_ID = #{id};
select *
from dj_jdgz_network_level3
where is_delete = 0
and LEVEL2_NODE_ID = ${id}
select *
from dj_jdgz_network_level3
where is_delete = 0
and LEVEL1_network_id = ${level1NetworkId}
SELECT
a.*
FROM `dj_jdgz_network_level3` a
where
a.is_delete = 0
and a.LEVEL1_network_id = ${projectId}
and a.dept_id = ${deptId}
and a.TEAMGROUP_ID = ${teamId}
SELECT
b.name,
a.NETWORK_ID,
a.process_name,
a.ID, a.REQUIRED_COMPLETION_TIME, a.ACTUAL_COMPLETION, a.CURRENT_STATUS
FROM `dj_jdgz_network_level3_list` a
LEFT JOIN dj_jdgz_network_level3 b on b.ID = a.NETWORK_ID
LEFT JOIN dj_jdgz_network_level1 c on c.ID = b.LEVEL1_NETWORK_ID
where
a.is_delete = 0
and b.is_delete = 0
and c.is_delete = 0
and c.ship_id = ${shipId}
and b.dept_id = ${deptId}
and b.TEAMGROUP_ID = ${teamId}
and b.cabin_id = ${cabinId}
and b.type = #{type}
and b.name LIKE '%${name}%'
SELECT
a.id,
CASE WHEN a.pid = 0 THEN a.NAME ELSE ' ' || a.NAME END AS name,
CASE WHEN a.pid = 0 THEN '' || a.id ELSE '' || a.pid || a.SORT END AS sort,
COUNT(DISTINCT CASE WHEN fvp.process_name = '设备拆卸出舱' THEN b.id END) AS cxsl,
COUNT(DISTINCT CASE WHEN fvp.process_name = '设备分交' THEN b.id END) AS fjsl,
COUNT(DISTINCT CASE WHEN fvp.process_name = '拆检鉴定' THEN b.id END) AS jdsl,
COUNT(DISTINCT CASE WHEN fvp.process_name = '设备返厂' THEN b.id END) AS fcsl,
COUNT(DISTINCT CASE WHEN fvp.process_name = '回装' THEN b.id END) AS hzsl,
COUNT(DISTINCT CASE WHEN all_complete.network_id IS NOT NULL THEN b.id END) AS wcsl
FROM
dj_sys_teamgroup_class a
left JOIN
dj_jdgz_network_level3 b ON a.id = b.TEAMGROUP_ID OR a.id = b.DEPT_ID
LEFT JOIN dj_jdgz_network_level1 d on d.ID = b.LEVEL1_NETWORK_ID
LEFT JOIN (
SELECT
network_id,
process_name
FROM (
SELECT
c.network_id,
c.process_name,
c.CURRENT_STATUS,
ROW_NUMBER() OVER (
PARTITION BY c.network_id
ORDER BY c.sort
) AS rn
FROM
dj_jdgz_network_level3_list c
WHERE
(c.CURRENT_STATUS = 0 OR c.CURRENT_STATUS IS NULL) and c.is_delete = 0
) AS ranked_processes
WHERE
ranked_processes.rn = 1
) AS fvp ON b.id = fvp.network_id
LEFT JOIN (
SELECT
network_id
FROM
dj_jdgz_network_level3_list
GROUP BY
network_id
HAVING
COUNT(CASE WHEN CURRENT_STATUS = 1 THEN 1 END) = COUNT(*)
) AS all_complete ON b.id = all_complete.network_id
WHERE
a.AREA = 'hld' AND a.IS_DELETE = 0 and d.ship_id = ${level1Id} and d.is_delete =0 and b.is_delete =0
GROUP BY
a.id, a.name
ORDER BY
sort;