From a3c7b3f7a4778a777a78a72c968b0e172488df03 Mon Sep 17 00:00:00 2001
From: yuxc <653031404@qq.com>
Date: 星期二, 06 六月 2023 17:13:05 +0800
Subject: [PATCH] 1、对MDM服务的接口测试改动
---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeClassifyController.java | 2
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java | 65 +++++++++++-
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 42 +++++--
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java | 93 ++++++++++++++----
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml | 43 ++++++++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java | 8 +
6 files changed, 209 insertions(+), 44 deletions(-)
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeClassifyController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeClassifyController.java
index 1ac0859..2f9e561 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeClassifyController.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeClassifyController.java
@@ -223,7 +223,7 @@
* @return 涓婚搴撳垎绫绘樉绀烘爲
*/
@GetMapping("/referTree")
- public List<Tree> referTree(@RequestBody TreeQueryObject treeQueryObject) {
+ public List<Tree> referTree(TreeQueryObject treeQueryObject) {
return codeClassifyService.referTree(treeQueryObject);
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java
index 87aa4dd..ee01f3b 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java
@@ -31,9 +31,7 @@
import java.io.File;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
@RestController
//@AllArgsConstructor
@@ -96,20 +94,20 @@
String excelFileName = LocalFileUtil.getDefaultTempFolder() + File.separator + LocalFileUtil.getFileNameForIE(file.getOriginalFilename());
File file1 = new File(excelFileName);
try {
-// file.transferTo(new File(excelFileName));
-// CodeImProtRusultVO codeImProtRusultVO = mdmIOService.batchImportCode(orderDTO,file1);
-// if(StringUtils.isNotBlank(codeImProtRusultVO.getFilePath())||StringUtils.isNotBlank(codeImProtRusultVO.getRedisUuid())){
-// //鏀惧埌map閲�
-// R result = R.fail("瀵煎叆澶辫触");
-// if(StringUtils.isNotBlank(codeImProtRusultVO.getFilePath())) {
-// String filedUUid = ControllerUtil.putErrorFile(codeImProtRusultVO.getFilePath());
-// codeImProtRusultVO.setFileOid(filedUUid);
-// }
-// result.setData(codeImProtRusultVO);
-// return result;
-// }else {
-// return R.success("鎿嶄綔鎴愬姛锛�");
-// }
+ file.transferTo(new File(excelFileName));
+ CodeImProtRusultVO codeImProtRusultVO = mdmIOService.batchImportCode(orderDTO,file1);
+ if(StringUtils.isNotBlank(codeImProtRusultVO.getFilePath())||StringUtils.isNotBlank(codeImProtRusultVO.getRedisUuid())){
+ //鏀惧埌map閲�
+ R result = R.fail("瀵煎叆澶辫触");
+ if(StringUtils.isNotBlank(codeImProtRusultVO.getFilePath())) {
+ String filedUUid = ControllerUtil.putErrorFile(codeImProtRusultVO.getFilePath());
+ codeImProtRusultVO.setFileOid(filedUUid);
+ }
+ result.setData(codeImProtRusultVO);
+ return result;
+ }else {
+ return R.success("鎿嶄綔鎴愬姛锛�");
+ }
}catch (Throwable e) {
logger.error("瀵煎叆閿欒",e);
String errorFile = LocalFileUtil.getDefaultTempFolder() + File.separator + "閿欒.txt";
@@ -126,7 +124,7 @@
}finally {
file1.delete();
}
- return null;
+// return null;
}
@@ -474,8 +472,63 @@
@GetMapping("/thisistest")
@ResponseBody
- public List<BaseModel> thisistest(String codeClassifyOid, String functionId) throws Exception {
- return engineService.selectByTypeAndOid("wupin", "b1511bb3-a773-43e2-ac85-a7fde7314a0f,3e08970024835e69f6c2b2ecd90c48c3,582ff205-0dfb-43e0-8223-e772ff1851ab,db0400fe-cc90-4d9d-8da7-1edf06b1481b");
+ public Integer thisistest(String codeClassifyOid, String functionId) throws Exception {
+// return engineService.selectByTypeAndOid("wupin", "b1511bb3-a773-43e2-ac85-a7fde7314a0f,3e08970024835e69f6c2b2ecd90c48c3,582ff205-0dfb-43e0-8223-e772ff1851ab,db0400fe-cc90-4d9d-8da7-1edf06b1481b");
+
+ List<BaseModel> models = new ArrayList<>();
+ BaseModel baseModel = new BaseModel();
+ Map<String,String > map = new HashMap<>();
+ map.put("JZL","6789");
+ map.put("JZRXX","67891");
+ map.put("JZXZB","67892");
+ map.put("JSZGL","67893");
+ map.put("JSSXT","67894");
+ baseModel.setBtmname("djii");
+ baseModel.setCreator("fjivis");
+ baseModel.setId("vcia");
+ baseModel.setOid("0d86b1ba-9e9e-4d3d-9ae4-f862c3684e74");
+ baseModel.setCreateTime(new Date());
+ baseModel.setTs(new Date());
+ baseModel.setData(map);
+ models.add(baseModel);
+
+ BaseModel baseModel1 = new BaseModel();
+ Map<String,String > map1 = new HashMap<>();
+ map1.put("JZL","6789z");
+ map1.put("JZRXX","67891z");
+ map1.put("JZXZB","67892z");
+ map1.put("JSZGL","67893z");
+ map1.put("JSSXT","67894z");
+ baseModel1.setBtmname("djiiz");
+ baseModel1.setCreator("fjivisz");
+ baseModel1.setId("vciaz");
+ baseModel1.setTs(new Date());
+ baseModel1.setOid("4a00be07-f5a8-4a9b-88fb-d52a0d9cf546");
+ baseModel1.setCreateTime(new Date());
+ baseModel1.setData(map1);
+ models.add(baseModel1);
+
+ BaseModel baseModel2 = new BaseModel();
+ Map<String,String > map2 = new HashMap<>();
+ map2.put("JZL","67892");
+ map2.put("JZRXX","678912");
+ map2.put("JZXZB","678922");
+ map2.put("JSZGL","678932");
+ map2.put("JSSXT","678942");
+ baseModel2.setBtmname("djii2");
+ baseModel2.setCreator("fjivis2");
+ baseModel2.setTs(new Date());
+ baseModel2.setId("vcia2");
+ baseModel2.setOid("fa430ff9-f141-4dcf-8809-6f87905c1dea");
+ baseModel2.setCreateTime(new Date());
+ baseModel2.setData(map2);
+ models.add(baseModel2);
+
+ return 0;
+
+
+
+// return engineService.updateBatchByBaseModel("wupin", models);
// return engineService.getUIInfoByClassifyOid(codeClassifyOid,functionId);
}
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java
index ea1d998..2dc59a5 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java
@@ -75,6 +75,14 @@
* @param oid 鍒嗙被鐨勪富閿�
* @return 鏁版嵁闆嗗悎
*/
+ List<CodeClassify> selectCodeClassifyDOByTree(@Param("id") String id,@Param("lcstatus") String lcstatus,@Param("parentcodeclassifyoid") String parentcodeclassifyoid);
+
+ /**
+ * 鏌ユ壘鏍戝舰缁撴瀯
+ *
+ * @param oid 鍒嗙被鐨勪富閿�
+ * @return 鏁版嵁闆嗗悎
+ */
List<CodeClassify> selectAllLevelChildHasPath(@Param("oid") String oid);
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
index 3837b3e..81ab0ca 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -50,6 +50,7 @@
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.StringPool;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.cache.Cache;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
@@ -780,6 +781,11 @@
data.put(CODE_TEMPLATE_OID_FIELD,templateVO.getOid());
data.put(CODE_FULL_PATH_FILED,fullPath);
cbo.setData(data);
+ cbo.setOid(VciBaseUtil.getPk());
+ cbo.setCreateTime(new Date());
+ cbo.setLastModifyTime(new Date());
+ cbo.setCreator(AuthUtil.getUser().getUserName());
+ cbo.setLastModifier(AuthUtil.getUser().getUserName());
// cbo.setCodeclsfid(classifyFullInfo.getCurrentClassifyVO().getOid());
// cbo.setTemplateOid(templateVO.getOid());
// cbo.setCodeclsfpath(fullPath);
@@ -801,7 +807,7 @@
}
int secret = VciBaseUtil.getInt(String.valueOf(cbo.getSecretGrade()));
- //鎻掍釜鐐癸紝鍚庣画鐪嬪瘑绾ф湇鍔℃槸鍚﹀彲鐢�
+ //鍚庣画鐪嬪瘑绾ф湇鍔℃槸鍚﹀彲鐢�
// if (secret == 0 || !secretService.checkDataSecret(secret)) {
if (secret == 0 ) {
Integer userSecret = VciBaseUtil.getCurrentUserSecret();
@@ -828,12 +834,14 @@
btmName = btmName.trim().toLowerCase();
}
try {
- String keyPrefix = BTM_NAME.concat(StringPool.DASH).concat(AuthUtil.getTenantId()).concat(StringPool.COLON);
- String finalBtmName = btmName;
- return CacheUtil.get(BTM_INIT_CACHE, keyPrefix, btmName, () -> {
- BaseModel baseModel = createBaseModel(finalBtmName);
- return baseModel;
- });
+ String keyPrefix = BTM_INIT_CACHE.concat(StringPool.COLON).concat(AuthUtil.getTenantId()).concat(StringPool.COLON);
+// String finalBtmName = btmName;
+ Cache.ValueWrapper valueWrapper = CacheUtil.getCache(keyPrefix).get(keyPrefix.concat(String.valueOf(btmName)));
+ if(valueWrapper == null){
+ CacheUtil.getCache(keyPrefix).put(keyPrefix.concat(String.valueOf(btmName)), createBaseModel(btmName));
+ valueWrapper = CacheUtil.getCache(keyPrefix).get(keyPrefix.concat(String.valueOf(btmName)));
+ }
+ return (BaseModel) valueWrapper.get();
} catch (Exception e) {
logger.error("鍒涘缓涓氬姟绫诲瀷瀵硅薄",e);
throw new VciBaseException("initBtmError",new String[]{btmName});
@@ -1561,8 +1569,11 @@
referVO.setTextField("name");
}
//琛ㄩ渶瑕佹敼
+ //浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃
+ R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(referVO.getReferType()));
// String referTable = VciBaseUtil.getTableName(referVO.getReferType());
- String referTable = "pl_code_wupin";
+ String referTable = listR.getData().get(0).getTableName();
+// String referTable = "pl_code_classify";
String referTableNick = attrVO.getId() + "0";
String left = " left join " + referTable + " " + referTableNick + " on " + referTableNick + "." + referVO.getValueField() + " = t." + attrVO.getId();
joinTableList.put(attrVO.getId(), left);
@@ -1653,7 +1664,10 @@
}
//瑕佹敼锛岃〃鏄庤幏鍙栨湁闂
// String tableName = VciBaseUtil.getTableName(btmType);
- String tableName = "pl_code_wupin";
+// String tableName = "pl_code_wupin";
+ R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(btmType));
+// String referTable = VciBaseUtil.getTableName(referVO.getReferType());
+ String tableName = listR.getData().get(0).getTableName();
String sql = "select " + selectFieldList.stream().map(s -> (s.contains(".") ? s : ("t." + s))).collect(Collectors.joining(","))
+ " from " + tableName + SPACE + "t" + SPACE
+ joinTableList.values().stream().collect(Collectors.joining(SPACE))
@@ -2861,11 +2875,11 @@
uiInfoVO.setLeaf(classifyService.countChildrenByClassifyOid(codeClassifyOid) == 0);
if (StringUtils.isNotBlank(functionId) && !"~".equalsIgnoreCase(functionId)) {
//鍔熻兘鎸夐挳鏈嶅姟杩樻湭瀹炵幇锛岀瓑瀹炵幇浜嗭紝鍦ㄨ繘琛岃皟鐢�
- //List<SmOperationVO> operationVOS = operationService.listButtonByFunctionId(functionId);
+// List<SmOperationVO> operationVOS = operationService.listButtonByFunctionId(functionId);
// if (operationVOS == null) {
// operationVOS = new ArrayList<>();
// }
- //鏌ヨ鎵╁睍鎸夐挳
+// //鏌ヨ鎵╁睍鎸夐挳
// List<CodeButtonVO> buttonVOS = listButtonInToolbarByClassifyOid(codeClassifyOid);
// if (!CollectionUtils.isEmpty(buttonVOS)) {
// for (int i = 0; i < buttonVOS.size(); i++) {
@@ -2875,8 +2889,8 @@
// operationVO.setUniqueFlag(buttonVO.getId());
// operationVO.setName(buttonVO.getName());
// operationVO.setAlias(operationVO.getName());
-// operationVO.setExecuteJs(buttonVO.getExecutejs());
-// operationVO.setIconCls(buttonVO.getIconcls());
+// operationVO.setExecuteJs(buttonVO.getExecuteJs());
+// operationVO.setIconCls(buttonVO.getIconCls());
// operationVOS.add(operationVO);
// }
// }
@@ -3013,7 +3027,7 @@
R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(boName));
String userName = AuthUtil.getUser().getUserName();
BaseModel bo = new BaseModel();
- bo.setOid(VciBaseUtil.getPk());
+// bo.setOid(VciBaseUtil.getPk());
// bo.setRevisionid(VciBaseUtil.getPk());
// bo.setNameoid(VciBaseUtil.getPk());
bo.setBtmname(boName);
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
index 689147f..526c013 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
@@ -21,6 +21,7 @@
import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum;
import com.vci.ubcs.starter.web.pagemodel.DataGrid;
import com.vci.ubcs.starter.web.pagemodel.KeyValue;
+import com.vci.ubcs.starter.web.util.LangBaseUtil;
import com.vci.ubcs.starter.web.util.VciBaseUtil;
import com.vci.ubcs.starter.web.util.VciDateUtil;
import lombok.AllArgsConstructor;
@@ -37,6 +38,7 @@
import javax.annotation.Resource;
import java.io.File;
+import java.io.IOException;
import java.util.*;
import java.util.stream.Collectors;
@@ -255,15 +257,60 @@
String redisUUid=batchImportCodes(orderDTO,templateVO,dataSet,errorMap,true);
CodeImProtRusultVO codeImProtRusultVO = new CodeImProtRusultVO();
List<String> needRowIndexList = new ArrayList<>();
-// String filePath = returnErrorToExcel(dataSet.getRowData(), errorMap, needRowIndexList, dataSet.getColName());
-// if(StringUtils.isNotBlank(filePath)) {
-// codeImProtRusultVO.setFilePath(filePath);
-// }
-// if(StringUtils.isNotBlank(redisUUid)){
-// codeImProtRusultVO.setRedisUuid(redisUUid);
-// }
- return null;
-// return codeImProtRusultVO;
+ String filePath = returnErrorToExcel(dataSet.getRowData(), errorMap, needRowIndexList, dataSet.getColName());
+ if(StringUtils.isNotBlank(filePath)) {
+ codeImProtRusultVO.setFilePath(filePath);
+ }
+ if(StringUtils.isNotBlank(redisUUid)){
+ codeImProtRusultVO.setRedisUuid(redisUUid);
+ }
+// return null;
+ return codeImProtRusultVO;
+ }
+
+ /**
+ * 閿欒淇℃伅杩斿洖excel
+ * @param rowDataList 鎵�鏈夌殑瀵煎叆鏁版嵁
+ * @param errorMap 閿欒鐨勪俊鎭�
+ * @param needRowIndexList 闇�瑕佸啓鍏ョ殑鏁版嵁鐨勮鍙�
+ * @param titleRowData 鏍囬琛�
+ *
+ * @return 閿欒鐨別xcel鏂囦欢锛屾病鏈夐敊璇細杩斿洖绌�
+ */
+ private String returnErrorToExcel(Collection<SheetRowData> rowDataList,
+ Map<String,String> errorMap,
+ List<String> needRowIndexList,List<String> titleRowData){
+ if(CollectionUtils.isEmpty(errorMap)){
+ return "";
+ }
+ Map<String, SheetRowData> rowIndexDataMap = rowDataList.stream().filter(s -> !needRowIndexList.contains(s.getRowIndex())).collect(Collectors.toMap(s -> s.getRowIndex(), t -> t));
+ List<WriteExcelData> errorDataList = new ArrayList<>();
+ errorDataList.add(new WriteExcelData(0,0,"閿欒淇℃伅"));
+ for (int i = 0; i < titleRowData.size(); i++) {
+ //閿欒淇℃伅鍦ㄦ渶鍚�
+ errorDataList.add(new WriteExcelData(0,i+1,titleRowData.get(i)));
+ }
+ Integer[] newRowIndex = new Integer[]{1};
+ errorMap.forEach((index,error)->{
+ //閿欒淇℃伅鍏ㄩ儴缁勫悎鍒颁竴璧�
+ SheetRowData rowData = rowIndexDataMap.getOrDefault(index, null);
+ if(rowData!=null){
+ errorDataList.add(new WriteExcelData(newRowIndex[0],0,error));
+ rowData.getData().forEach((colIndex,value)->{
+ errorDataList.add(new WriteExcelData(newRowIndex[0],colIndex+1,value));
+ });
+ newRowIndex[0]++;
+ }
+ });
+ String excelFileName = LocalFileUtil.getDefaultTempFolder() + File.separator + "閿欒淇℃伅.xls";
+ WriteExcelOption eo = new WriteExcelOption(errorDataList);
+ try {
+ new File(excelFileName).createNewFile();
+ } catch (IOException e) {
+ throw new VciBaseException(LangBaseUtil.getErrorMsg(e));
+ }
+ ExcelUtil.writeDataToFile(excelFileName,eo);
+ return excelFileName;
}
/**
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 815a649..a9c5005 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
@@ -199,4 +199,47 @@
connect by prior PARENTCODECLASSIFYOID = oid
</select>
+ <select id="selectCodeClassifyDOByTree" resultMap="plCodeClassifyResultMap">
+ select codeclassify0.OWNER as owner,
+ codeclassify0.BTMTYPEID as btmtypeid,
+ codeclassify0.CREATOR as creator,
+ codeclassify0.CREATETIME as createtime,
+ codeclassify0.LASTMODIFIER as lastmodifier,
+ codeclassify0.DESCRIPTION as description,
+ codeclassify0.ORDERNUM as ordernum,
+ codeclassify0.CODERULEOID as coderuleoid,
+ codeclassify0.OID as oid,
+ codeclassify0.BTMNAME as btmname,
+ codeclassify0.BTMTYPENAME as btmtypename,
+ codeclassify0.CODEKEYATTRREPEATOID as codekeyattrrepeatoid,
+ codeclassify0.PARENTCODECLASSIFYOID as parentcodeclassifyoid,
+ codeclassify0.NAME as name,
+ codeclassify0.LASTMODIFYTIME as lastmodifytime,
+ codeclassify0.ID as id,
+ codeclassify0.CODERESEMBLERULEOID as coderesembleruleoid,
+ codeclassify0.LCSTATUS as lcstatus,
+ codeclassify0.TS as ts,
+ coderuleoid.name as codeRuleOidName,
+ codekeyattrrepeatoid.name as codeKeyAttrRepeatOidName,
+ coderesembleruleoid.name as codeResembleRuleOidName
+ from pl_code_classify codeclassify0
+ left join pl_code_rule coderuleoid
+ on codeclassify0.codeRuleOid = coderuleoid.oid
+ left join pl_code_keyattrrepeat codekeyattrrepeatoid
+ on codeclassify0.codeKeyAttrRepeatOid = codekeyattrrepeatoid.oid
+ left join pl_code_resemblerule coderesembleruleoid
+ on codeclassify0.codeResembleRuleOid = coderesembleruleoid.oid
+ where codeclassify0.lcstatus = #{lcstatus}
+-- and codeclassify0.parentcodeclassifyoid is null
+-- and codeclassify0.id = 'wupin'
+ <if test="parentcodeclassifyoid != null and parentcodeclassifyoid != ''">
+ codeclassify0.parentcodeclassifyoid = '${parentcodeclassifyoid}'
+ </if>
+ <if test="parentcodeclassifyoid == null or parentcodeclassifyoid == ''">
+ and codeclassify0.parentcodeclassifyoid is null
+ and codeclassify0.id = #{id}
+ </if>
+ order by id asc
+ </select>
+
</mapper>
--
Gitblit v1.9.3