ludc
2024-01-25 c7dcb9fb7c644e764e4c50d948119c4c98b20509
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml
@@ -60,6 +60,13 @@
            PRIOR OID = parentCodeClassifyOid
    </select>
    <select id="selectAllParentOid" resultType="java.lang.String">
        SELECT oid
        FROM PL_CODE_CLASSIFY
                 START WITH oid = #{oid}
        CONNECT BY PRIOR PARENTCODECLASSIFYOID = oid
    </select>
    <select id="checkHasChild" resultType="java.lang.Boolean">
        <![CDATA[select count(oid)
        from PL_CODE_CLASSIFY
@@ -113,7 +120,6 @@
        order by lastmodifytime asc
    </select>
    <!--codeclassify0.parentCodeClassifyOid = '${oid}'-->
    <select id="selectAllLevelChildHasPath" resultMap="plCodeClassifyResultMap">
        select codeclassify0.OWNER as owner,
               codeclassify0.BTMTYPEID as btmtypeid,
@@ -305,7 +311,7 @@
        codeclassify0.ISPARTICIPATECHECK   as isParticipateCheck,
        coderuleoid.name                    as codeRuleOidName,
        codekeyattrrepeatoid.name           as codeKeyAttrRepeatOidName,
        coderesembleruleoid.name            as codeResembleRuleOidName,
        coderesembleruleoid.name            as codeResembleRuleOidName
        from pl_code_classify codeclassify0
        left join pl_code_rule coderuleoid
        on codeclassify0.codeRuleOid = coderuleoid.oid
@@ -314,13 +320,17 @@
        left join pl_code_resemblerule coderesembleruleoid
        on codeclassify0.codeResembleRuleOid = coderesembleruleoid.oid
        where codeclassify0.lcstatus = #{lcstatus}
        <if test="parentcodeclassifyoid != null and parentcodeclassifyoid != ''">
            and codeclassify0.parentcodeclassifyoid = #{parentcodeclassifyoid}
        </if>
        <if test="parentcodeclassifyoid == null or parentcodeclassifyoid == ''">
            and codeclassify0.parentcodeclassifyoid is null
            and codeclassify0.id = #{id}
        </if>
        and codeclassify0.parentcodeclassifyoid in (
            SELECT
                OID
            FROM
                PL_CODE_CLASSIFY
            WHERE
                parentcodeclassifyoid IS NULL
                AND id = #{id}
        )
        or codeclassify0.parentcodeclassifyoid IS NULL
        and codeclassify0.id = #{id}
        <if test="tenantId != null and tenantId != ''">
            and codeclassify0.tenant_id = #{tenantId}
        </if>
@@ -411,7 +421,7 @@
        codeclassify0.ISPARTICIPATECHECK   as isParticipateCheck,
        coderuleoid.name                    as codeRuleOidName,
        codekeyattrrepeatoid.name           as codeKeyAttrRepeatOidName,
        coderesembleruleoid.name            as codeResembleRuleOidName,
        coderesembleruleoid.name            as codeResembleRuleOidName
        from pl_code_classify codeclassify0
        left join pl_code_rule coderuleoid
        on codeclassify0.codeRuleOid = coderuleoid.oid
@@ -560,12 +570,6 @@
            connect by prior codeclassify0.PARENTCODECLASSIFYOID = codeclassify0.oid
    </select>
    <select id="selectStartWithCurrentOid" resultMap="plCodeClassifyResultMap">
        select * from <include refid="tableName"/>
                          start with oid = #{oid}
        connect by prior oid = parentcodeclassifyoid;
    </select>
    <update id="batchUpdateLcStatus" parameterType="java.util.List">
        BEGIN
        <foreach collection="records" item="item" index="index" separator=";">
@@ -585,4 +589,28 @@
        connect by p.oid = prior p.PARENTCODECLASSIFYOID
    </select>
    <select id="selectLeafByParentClassifyOid" resultType="com.vci.ubcs.code.entity.CodeClassify">
        select *
            from (
                select
                    oid,
                    name,
                    id,
                    level lvl,
                    isparticipatecheck,
                    nvl((select 'N'
                        from PL_CODE_CLASSIFY pcc1
                        where pcc.oid = pcc1.PARENTCODECLASSIFYOID
                            and rownum &lt; 2),'Y') is_leaf
                from PL_CODE_CLASSIFY pcc
                start with pcc.PARENTCODECLASSIFYOID = #{topOid}
                connect by pcc.PARENTCODECLASSIFYOID = prior oid
            ) plcls
        where
        is_leaf = 'Y'
        and isparticipatecheck = 0
        and oid != #{currentOid}
    </select>
</mapper>