From 25da36be2318c1247592dce7d499d0b985c80fe0 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期日, 03 十二月 2023 23:07:03 +0800 Subject: [PATCH] 历史数据导入时,赋默认值报空指针异常bug修复 --- Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml | 65 ++++++++++++++++++++++++-------- 1 files changed, 49 insertions(+), 16 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml index 229b39f..049f925 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml @@ -37,6 +37,7 @@ <result column="CODERULEOID" property="codeRuleOid"/> <result column="CODEKEYATTRREPEATOID" property="codeKeyAttrRepeatOid"/> <result column="CODERESEMBLERULEOID" property="codeResembleRuleOid"/> + <result column="ISPARTICIPATECHECK" property="isParticipateCheck"/> <result column="TENANT_ID" property="tenantId"/> <result column="TOTAL" property="total"/> </resultMap> @@ -88,7 +89,8 @@ codeclassify0.TENANT_ID as tenantId , coderuleoid.name as codeRuleOidName, codekeyattrrepeatoid.name as codeKeyAttrRepeatOidName, - coderesembleruleoid.name as codeResembleRuleOidName + coderesembleruleoid.name as codeResembleRuleOidName, + codeclassify0.ISPARTICIPATECHECK as isParticipateCheck from pl_code_classify codeclassify0 left join pl_code_rule coderuleoid on codeclassify0.codeRuleOid = coderuleoid.oid @@ -131,6 +133,7 @@ codeclassify0.CODERESEMBLERULEOID as coderesembleruleoid, codeclassify0.LCSTATUS as lcstatus, codeclassify0.TS as ts, + codeclassify0.ISPARTICIPATECHECK as isParticipateCheck, coderuleoid.name as codeRuleOidName, codekeyattrrepeatoid.name as codeKeyAttrRepeatOidName, coderesembleruleoid.name as codeResembleRuleOidName, @@ -155,10 +158,13 @@ on codeclassify0.codeResembleRuleOid = coderesembleruleoid.oid START WITH <if test="oid != null "> - codeclassify0.parentCodeClassifyOid = '${oid}' + codeclassify0.parentCodeClassifyOid = #{oid} </if> <if test="oid == null "> codeclassify0.parentCodeClassifyOid is null + </if> + <if test="tenantId != null and tenantId != ''"> + and codeclassify0.tenant_id = #{tenantId} </if> CONNECT BY PRIOR codeclassify0.OID = codeclassify0.parentCodeClassifyOid </select> @@ -209,8 +215,9 @@ codeclassify0.CODERESEMBLERULEOID as coderesembleruleoid, codeclassify0.LCSTATUS as lcstatus, codeclassify0.TS as ts, - codeclassify0.namePath as namepath, - codeclassify0.idPath as idpath + codeclassify0.namePath as namepath, + codeclassify0.idPath as idpath, + codeclassify0.ISPARTICIPATECHECK as isParticipateCheck from (select plcodeclassify.*, SYS_CONNECT_BY_PATH(name, '#') as namePath, SYS_CONNECT_BY_PATH(id, '#') as idPath @@ -239,7 +246,8 @@ codeclassify0.CODERESEMBLERULEOID as coderesembleruleoid, codeclassify0.LCSTATUS as lcstatus, codeclassify0.TS as ts, - codeclassify0.paths as paths + codeclassify0.paths as paths, + codeclassify0.ISPARTICIPATECHECK as isParticipateCheck from (select plcodeclassify.*, <choose> <when test='fieldName=="name"'> @@ -292,7 +300,8 @@ codeclassify0.CODERESEMBLERULEOID as coderesembleruleoid, codeclassify0.LCSTATUS as lcstatus, codeclassify0.TS as ts, - codeclassify0.TENANT_ID as tenantId , + codeclassify0.TENANT_ID as tenantId, + codeclassify0.ISPARTICIPATECHECK as isParticipateCheck, coderuleoid.name as codeRuleOidName, codekeyattrrepeatoid.name as codeKeyAttrRepeatOidName, coderesembleruleoid.name as codeResembleRuleOidName @@ -355,7 +364,8 @@ codeclassify0.TENANT_ID as tenantId , coderuleoid.name as codeRuleOidName, codekeyattrrepeatoid.name as codeKeyAttrRepeatOidName, - coderesembleruleoid.name as codeResembleRuleOidName + coderesembleruleoid.name as codeResembleRuleOidName, + codeclassify0.ISPARTICIPATECHECK as isParticipateCheck from pl_code_classify codeclassify0 left join pl_code_rule coderuleoid on codeclassify0.codeRuleOid = coderuleoid.oid @@ -377,7 +387,7 @@ </select> <select id="getRMLibByName" resultMap="plCodeClassifyResultMap"> - select codeclassify0.OWNER as owner, + select codeclassify0.OWNER as owner, codeclassify0.BTMTYPEID as btmtypeid, codeclassify0.CREATOR as creator, codeclassify0.CREATETIME as createtime, @@ -397,6 +407,7 @@ codeclassify0.LCSTATUS as lcstatus, codeclassify0.TS as ts, codeclassify0.TENANT_ID as tenantId , + codeclassify0.ISPARTICIPATECHECK as isParticipateCheck, coderuleoid.name as codeRuleOidName, codekeyattrrepeatoid.name as codeKeyAttrRepeatOidName, coderesembleruleoid.name as codeResembleRuleOidName @@ -442,6 +453,7 @@ codeclassify0.LCSTATUS as lcstatus, codeclassify0.TS as ts, codeclassify0.TENANT_ID as tenantId , + codeclassify0.ISPARTICIPATECHECK as isParticipateCheck, coderuleoid.name as codeRuleOidName, codekeyattrrepeatoid.name as codeKeyAttrRepeatOidName, coderesembleruleoid.name as codeResembleRuleOidName @@ -461,9 +473,10 @@ </if> order by id asc </select> + <!--鑾峰彇鎵�鏈変笅绾ц妭鐐�,涓嶈鍔ㄨ繖涓柟娉晄ql--> <select id="selectAllClassifyByOid" resultMap="plCodeClassifyResultMap"> - select codeclassify0.OWNER as owner, + select codeclassify0.OWNER as owner, codeclassify0.BTMTYPEID as btmtypeid, codeclassify0.CREATOR as creator, codeclassify0.CREATETIME as createtime, @@ -483,6 +496,7 @@ codeclassify0.LCSTATUS as lcstatus, codeclassify0.TS as ts, codeclassify0.TENANT_ID as tenantId , + codeclassify0.ISPARTICIPATECHECK as isParticipateCheck, coderuleoid.name as codeRuleOidName, codekeyattrrepeatoid.name as codeKeyAttrRepeatOidName, coderesembleruleoid.name as codeResembleRuleOidName @@ -526,7 +540,8 @@ codeclassify0.CODERESEMBLERULEOID as coderesembleruleoid, codeclassify0.LCSTATUS as lcstatus, codeclassify0.TS as ts, - codeclassify0.TENANT_ID as tenantId , + codeclassify0.TENANT_ID as tenantId, + codeclassify0.ISPARTICIPATECHECK as isParticipateCheck, coderuleoid.name as codeRuleOidName, codekeyattrrepeatoid.name as codeKeyAttrRepeatOidName, coderesembleruleoid.name as codeResembleRuleOidName @@ -542,12 +557,6 @@ and codeclassify0.tenant_id = #{tenantId} </if> 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"> @@ -569,4 +578,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 < 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> -- Gitblit v1.9.3