INSERT INTO m_wbs_tree_contract(p_key_id, id, wbs_id, wbs_type, project_id, contract_id, contract_type,
tenant_id, parent_id, ancestors, node_type, node_name, full_name, sort,
remark, `type`,
table_type, create_time, create_user, create_dept, update_user, update_time,
`STATUS`, is_deleted,
unique_code, partition_code, is_expernode, is_concrete, table_owner,
major_data_type, init_table_name, is_link_table, excel_id, html_url,
is_type_private_pid, is_ele)
VALUES (#{pKeyId}, #{wbsTree.id}, #{wbsTree.wbsId}, #{wbsType}, #{wbsTree.projectId}, #{contractId}, 1,
#{wbsTree.tenantId}, #{wbsTree.parentId}, #{wbsTree.ancestors},
#{wbsTree.nodeType}, #{wbsTree.nodeName}, #{wbsTree.fullName}, #{wbsTree.sort}, #{wbsTree.remark},
#{wbsTree.type},
#{wbsTree.tableType}, #{wbsTree.createTime}, #{wbsTree.createUser}, #{wbsTree.createDept},
#{wbsTree.updateUser}, #{wbsTree.updateTime},
#{wbsTree.status}, #{wbsTree.isDeleted}, #{wbsTree.uniqueCode}, #{wbsTree.partitionCode},
#{wbsTree.isExpernode}, #{wbsTree.isConcrete},
#{wbsTree.tableOwner}, #{wbsTree.majorDataType}, #{wbsTree.initTableName}, #{wbsTree.isLinkTable},
#{wbsTree.excelId}, #{wbsTree.htmlUrl}, #{wbsTree.pKeyId}, 1)
DELETE FROM m_wbs_tree_contract
WHERE (id IN
#{ids}
OR parent_id IN
#{ids}
)
AND wbs_id = #{wbsId}
AND project_id = #{projectId}
AND contract_id = #{contractId}
UPDATE m_wbs_tree_contract
SET is_deleted = 0
WHERE id = #{id}
AND wbs_id = #{wbsId}
AND project_id = #{projectId}
AND contract_id = #{contractId}
UPDATE m_wbs_tree_contract
SET node_type = #{wbsTP.nodeType}
,is_classifition=#{wbsTP.isClassifition},class_name=#{wbsTP.className},unit_name=#{wbsTP.unitName}
WHERE project_id = #{wbsTP.projectId}
AND is_type_private_pid = #{wbsTP.pKeyId}
UPDATE m_wbs_tree_contract
SET is_deleted = 0
WHERE contract_id = #{contractId}
AND contract_id_relation = #{contractIdRelation}
AND status = 1
DELETE FROM m_wbs_tree_contract WHERE p_key_id IN
#{ids}
UPDATE m_wbs_tree_contract SET is_deleted=1 WHERE p_key_id IN
#{ids}
update m_wbs_tree_contract set is_deleted = 0
p_key_id in
#{primaryKeyId}
UPDATE m_wbs_tree_contract
SET node_name = #{wbsTree.nodeName},
full_name = #{wbsTree.nodeName},
node_type = #{wbsTree.nodeType},
major_data_type = #{wbsTree.majorDataType},
unique_code = #{wbsTree.uniqueCode},
partition_code = #{wbsTree.partitionCode},
table_type = #{wbsTree.tableType},
table_owner = #{wbsTree.tableOwner}
, sort = #{wbsTree.sort}
WHERE id = #{wbsTree.id}
AND contract_id = #{id}
AND status = 1
AND is_deleted = 0
UPDATE m_wbs_tree_contract
SET node_name = #{wbsTreePrivate.nodeName},
full_name = #{wbsTreePrivate.nodeName},
node_type = #{wbsTreePrivate.nodeType},
major_data_type = #{wbsTreePrivate.majorDataType},
unique_code = #{wbsTreePrivate.uniqueCode},
partition_code = #{wbsTreePrivate.partitionCode},
table_type = #{wbsTreePrivate.tableType},
table_owner = #{wbsTreePrivate.tableOwner}
, sort = #{wbsTreePrivate.sort}
WHERE id = #{wbsTreePrivate.id}
AND contract_id = #{id}
AND status = 1
AND is_deleted = 0
UPDATE m_wbs_tree_contract
SET
node_name =
CASE
WHEN node_name LIKE '%_PL_%' THEN CONCAT(#{wbsTreePrivate.nodeName}, SUBSTRING(node_name FROM INSTR(node_name,
'_PL_')))
WHEN node_name LIKE '%__%' THEN CONCAT(#{wbsTreePrivate.nodeName}, SUBSTRING(node_name FROM INSTR(node_name,
'__')))
ELSE #{wbsTreePrivate.nodeName}
END,
full_name =
CASE
WHEN full_name LIKE '%_PL_%' THEN CONCAT(#{wbsTreePrivate.nodeName}, SUBSTRING(full_name FROM INSTR(full_name,
'_PL_')))
WHEN full_name LIKE '%__%' THEN CONCAT(#{wbsTreePrivate.nodeName}, SUBSTRING(full_name FROM INSTR(full_name,
'__')))
ELSE #{wbsTreePrivate.nodeName}
END,
table_type = #{wbsTreePrivate.tableType},
table_owner = #{wbsTreePrivate.tableOwner}
,sort = #{wbsTreePrivate.sort}
WHERE
p_key_id in
#{pKeyIds}
UPDATE m_wbs_tree_contract
node_name =
CASE
WHEN node_name LIKE '%_PL_%'
THEN CONCAT(
#{item.nodeName}
,
SUBSTRING(node_name FROM INSTR(node_name, '_PL_'))
)
WHEN node_name LIKE '%__%'
THEN CONCAT(
#{item.nodeName}
,
SUBSTRING(node_name FROM INSTR(node_name, '__'))
)
ELSE
#{item.nodeName}
END,
full_name =
CASE
WHEN full_name LIKE '%_PL_%'
THEN CONCAT(
#{item.nodeName}
,
SUBSTRING(full_name FROM INSTR(full_name, '_PL_'))
)
WHEN full_name LIKE '%__%'
THEN CONCAT(
#{item.nodeName}
,
SUBSTRING(full_name FROM INSTR(full_name, '__'))
)
ELSE
#{item.nodeName}
END,
node_type = #{item.nodeType},
major_data_type = #{item.majorDataType},
table_type = #{item.tableType},
table_owner = #{item.tableOwner},
html_url = #{item.htmlUrl},
excel_id = #{item.excelId},
sort = #{item.sort}
WHERE id = #{item.id}
AND project_id = #{item.projectId}
AND contract_id = #{item.contractId}
AND status = 1
AND is_deleted = 0
UPDATE m_wbs_tree_contract
SET is_deleted = 1
WHERE type = 2
AND p_key_id in
#{ids}
UPDATE m_wbs_tree_contract
SET html_url = #{wbsTreePrivate.htmlUrl},
init_table_name = #{wbsTreePrivate.initTableName},
node_name = #{wbsTreePrivate.nodeName},
full_name = #{wbsTreePrivate.fullName}
WHERE project_id = #{wbsTreePrivate.projectId}
and excel_id = #{wbsTreePrivate.excelId}
UPDATE m_wbs_tree_contract
is_type_private_pid = #{value}
where p_key_id = #{key}
UPDATE m_wbs_tree_contract
sort = #{value}
where p_key_id = #{key}
${item}
UPDATE m_wbs_tree_contract a
LEFT JOIN (
SELECT
tree_p_id,
p_key_id
FROM
m_wbs_tree_contract
WHERE
project_id = #{projectId} and contract_id = #{contractId} ) b ON a.parent_id = b.tree_p_id
SET a.p_id = IFNULL( b.p_key_id, 0 )
WHERE
a.project_id = #{projectId} and contract_id = #{contractId}
UPDATE m_wbs_tree_contract
`ancestors_p_id` = #{item.ancestorsPId}
where p_key_id = #{item.pKeyId}