From d1e3a87aad6f737394b33852d9496d673472ddbe Mon Sep 17 00:00:00 2001
From: yuxc <653031404@qq.com>
Date: 星期二, 16 五月 2023 18:19:17 +0800
Subject: [PATCH] 主要完成修改Class统一命名,与老平台命名一致,删除多余VOClass等。

---
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java |  138 ++++++++++++++++++++++++++++++++++++---------
 1 files changed, 109 insertions(+), 29 deletions(-)

diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java
index e189b97..8470c1b 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java
@@ -5,45 +5,46 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
-import com.vci.ubcs.code.bo.TreeWrapperOptions;
+import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
 import com.vci.ubcs.code.entity.CodeClassify;
-import com.vci.ubcs.code.entity.CodeClstemplateEntity;
+import com.vci.ubcs.code.entity.CodeClassifyTemplate;
 import com.vci.ubcs.code.entity.CodeOsbtmtypeEntity;
 import com.vci.ubcs.code.entity.CodeOsbtmtypeattributeEntity;
 import com.vci.ubcs.code.enumpack.FrameworkDataLCStatus;
 import com.vci.ubcs.code.mapper.CodeClassifyMapper;
-import com.vci.ubcs.code.mapper.CodeClstemplateMapper;
+import com.vci.ubcs.code.mapper.CodeClassifyTemplateMapper;
 import com.vci.ubcs.code.mapper.CodeOsbtmtypeMapper;
 import com.vci.ubcs.code.mapper.CodeOsbtmtypeattributeMapper;
 import com.vci.ubcs.code.po.CodeClassifyPO;
 import com.vci.ubcs.code.service.ICodeClassifyService;
-import com.vci.ubcs.code.service.ICodeKeyattrrepeatService;
+import com.vci.ubcs.code.service.ICodeKeyAttrRepeatService;
 import com.vci.ubcs.code.service.ICodeRuleService;
 import com.vci.ubcs.code.vo.CodeOsattributeVO;
 import com.vci.ubcs.code.vo.CodeOsbtmtypeVO;
 import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO;
 import com.vci.ubcs.code.vo.pagemodel.CodeKeyAttrRepeatRuleVO;
 import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
-import com.vci.ubcs.code.vo.pagemodel.TreeQueryObject;
-import com.vci.ubcs.com.vci.starter.bo.WriteExcelData;
-import com.vci.ubcs.com.vci.starter.exception.VciBaseException;
-import com.vci.ubcs.com.vci.starter.poi.bo.ReadExcelOption;
-import com.vci.ubcs.com.vci.starter.poi.bo.WriteExcelOption;
-import com.vci.ubcs.com.vci.starter.poi.constant.ExcelLangCodeConstant;
-import com.vci.ubcs.com.vci.starter.poi.util.ExcelUtil;
-import com.vci.ubcs.com.vci.starter.revision.service.RevisionModelUtil;
-import com.vci.ubcs.com.vci.starter.util.LocalFileUtil;
-import com.vci.ubcs.com.vci.starter.web.pagemodel.BaseQueryObject;
-import com.vci.ubcs.com.vci.starter.web.pagemodel.DataGrid;
-import com.vci.ubcs.com.vci.starter.web.pagemodel.Tree;
-import com.vci.ubcs.com.vci.starter.web.util.BeanUtilForVCI;
-import com.vci.ubcs.com.vci.starter.web.util.LangBaseUtil;
-import com.vci.ubcs.com.vci.starter.web.util.VciBaseUtil;
-import com.vci.ubcs.core.log.exception.ServiceException;
+import com.vci.ubcs.starter.bo.WriteExcelData;
+import com.vci.ubcs.starter.exception.VciBaseException;
+import com.vci.ubcs.starter.poi.bo.ReadExcelOption;
+import com.vci.ubcs.starter.poi.bo.WriteExcelOption;
+import com.vci.ubcs.starter.poi.constant.ExcelLangCodeConstant;
+import com.vci.ubcs.starter.poi.util.ExcelUtil;
+import com.vci.ubcs.starter.revision.model.TreeQueryObject;
+import com.vci.ubcs.starter.revision.model.TreeWrapperOptions;
+import com.vci.ubcs.starter.revision.service.RevisionModelUtil;
+import com.vci.ubcs.starter.util.LocalFileUtil;
+import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
+import com.vci.ubcs.starter.web.pagemodel.DataGrid;
+import com.vci.ubcs.starter.web.pagemodel.Tree;
+import com.vci.ubcs.starter.web.util.BeanUtilForVCI;
+import com.vci.ubcs.starter.web.util.LangBaseUtil;
+import com.vci.ubcs.starter.web.util.VciBaseUtil;
 import org.apache.poi.hssf.util.HSSFColor;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springblade.core.cache.utils.CacheUtil;
+import com.vci.ubcs.core.log.exception.ServiceException;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
@@ -65,7 +66,7 @@
 	private CodeClassifyMapper codeClassifyMapper;
 
 	@Resource
-	private CodeClstemplateMapper codeClstemplateMapper;
+	private CodeClassifyTemplateMapper codeClassifyTemplateMapper;
 
 	@Resource
 	private ICodeRuleService codeRuleService;
@@ -74,6 +75,8 @@
 	private CodeOsbtmtypeMapper codeOsbtmtypeMapper;
 	@Resource
 	CodeOsbtmtypeattributeMapper codeOsbtmtypeattributeMapper;
+	@Resource
+	ICodeRuleService ICodeRuleService;
 
 	/**
 	 * 鏃ュ織
@@ -86,7 +89,7 @@
 	private RevisionModelUtil revisionModelUtil;
 
 	@Resource
-	private ICodeKeyattrrepeatService iCodeKeyattrrepeatService;
+	private ICodeKeyAttrRepeatService iCodeKeyattrrepeatService;
 	/**
 	 * 涓婄骇鑺傜偣鐨勫睘鎬у悕绉�
 	 */
@@ -251,7 +254,7 @@
 		if(StringUtils.isBlank(oid)){
 			throw new ServiceException("oid涓嶈兘涓虹┖锛�");
 		}
-		return codeClassifyMapper.checkHasChild(oid.trim());
+		return !codeClassifyMapper.checkHasChild(oid.trim());
 	}
 
 
@@ -273,7 +276,7 @@
 		//鍏堢畝绉版槸鍚︽湁鍏宠仈妯℃澘锛屾湁妯℃澘瑕佸厛鍒犻櫎
 		Map<String,Object> condition = new HashMap<>(2);
 		condition.put("codeClassifyOid",codeClassify.getOid());
-		List<CodeClstemplateEntity> codeClstemplateEntities = codeClstemplateMapper.selectByMap(condition);
+		List<CodeClassifyTemplate> codeClstemplateEntities = codeClassifyTemplateMapper.selectByMap(condition);
 //		VciQueryWrapperForDO queryWrapper = new VciQueryWrapperForDO(CodeClassifyTemplateDO.class);
 //		queryWrapper.addQueryMap("codeClassifyOid",codeClassifyDTO.getOid());
 //		List<CodeClassifyTemplateDO> codeClassifyTemplateDOListHaveTemplate =  codeClassifyTemplateMapper.selectByWrapper(queryWrapper);
@@ -297,7 +300,8 @@
 					//2銆佹煡璇㈣鍒犻櫎鐨勫瓙绫绘暟鎹�
 					List<CodeClassify>  codeClassifyDOList = codeClassifyMapper.selectBatchIds(s);
 					deletes.addAll(codeClassifyDOList);
-					codeClassifyMapper.deleteBatchIds(s);
+//					codeClassifyMapper.deleteBatchIds(s);
+					baseMapper.deleteBatchIds(s);
 				}
 
 			}
@@ -927,9 +931,9 @@
 	 */
 	@Override
 	public List<CodeClassify> selectAllLevelParentByOid(String oid){
-//		String sql = "select oid,level from " + VciBaseUtil.getTableName(MdmBtmTypeConstant.CODE_CLASSIFY) + " start with oid= :oid connect by prior PARENTCODECLASSIFYOID = oid ";
-//		Map< String,String> conditionMap = new HashMap< String,String>();
-//		conditionMap.put("oid",oid);
+		// String sql = "select oid,level from " + VciBaseUtil.getTableName(MdmBtmTypeConstant.CODE_CLASSIFY) + " start with oid= :oid connect by prior PARENTCODECLASSIFYOID = oid ";
+		// Map< String,String> conditionMap = new HashMap< String,String>();
+		// conditionMap.put("oid",oid);
 
 		List<Map<String,Object>> cbos = codeClassifyMapper.selectAllLevelParentByOid(oid);
 		Map<String,String> oidLevelMap = new HashMap<>();
@@ -951,6 +955,17 @@
 	}
 
 	/**
+	 * 涓婚敭鑾峰彇涓婚搴撳垎绫�
+	 * @param oid 涓婚敭
+	 * @return 涓婚搴撳垎绫绘樉绀哄璞�
+	 * @throws VciBaseException 鍙傛暟涓虹┖锛屾暟鎹笉瀛樺湪鏃朵細鎶涘嚭寮傚父
+	 */
+	@Override
+	public  CodeClassifyVO getObjectByOid(String oid) throws VciBaseException{
+		return codeClassifyDO2VO(selectByOid(oid));
+	}
+
+	/**
 	 * 浣跨敤缂栧彿鐨勮矾寰勮幏鍙栧璞�
 	 *
 	 * @param idPath 缂栧彿鐨勮矾寰勶紝涓�瀹氳浠庢渶椤跺眰鑺傜偣寮�濮嬶紝鏍煎紡涓簒xx/yyy/zz 杩欐牱
@@ -965,7 +980,6 @@
 		}
 		return codeClassifyDO2VO(classifyDO);
 	}
-
 
 	/**
 	 * 涓婚搴撶殑鏍�
@@ -984,4 +998,70 @@
 		treeQueryObject.getConditionMap().put(PARENT_FIELD_NAME, "=null");
 		return treeCodeClassify(treeQueryObject);
 	}
+
+	/**
+	 * 鑾峰彇杩欎釜鍒嗙被涓嬬殑涓氬姟绫诲瀷锛屽綋鍓嶆病鏈夊氨鑾峰彇涓婄骇鐨勭涓�涓笟鍔$被鍨�
+	 * @param oid 褰撳墠鍒嗙被鐨刼id
+	 * @return oid,id,name,btmtypeid,btmtypename锛屾病鏈夊氨杩斿洖null
+	 */
+	@Override
+	public CodeClassify selectBtmOrParentBtm(String oid){
+		List<CodeClassify> oidList = selectAllLevelParents(oid);
+		return oidList.size()==0?null:oidList.get(0);
+	}
+
+	/**
+	 * 鑾峰彇鎵�鏈夊眰绾т笂绾у叧鑱斾笟鍔$被鍨嬫暟鎹�
+	 * @param oid 褰撳墠鍒嗙被鐨刼id
+	 * @return oid,id,name,btmtypeid,btmtypename
+	 */
+	@Override
+	public List<CodeClassify> selectAllLevelParents(String oid){
+//		String sql = "select oid,id,name,btmtypeid,btmtypename from " + VciBaseUtil.getTableName(MdmBtmTypeConstant.CODE_CLASSIFY) + " where btmtypeid is not null start with oid= :oid connect by prior PARENTCODECLASSIFYOID=oid ";
+//		Map< String,String> conditionMap = new HashMap< String,String>();
+//		conditionMap.put("oid",oid);
+//		List<Map> dataList = boService.queryBySqlForMap(sql,conditionMap);
+		List<Map<String, Object>> dataList = codeClassifyMapper.selectAllLevelParents(oid);
+		List<CodeClassify> oidList = new ArrayList<CodeClassify>();
+		if(!CollectionUtils.isEmpty(dataList)){
+			for(Map data:dataList){
+				CodeClassify codeClassifyDO = new CodeClassify();
+				codeClassifyDO.setOid(VciBaseUtil.getStringValueFromObject(data.get("OID")));
+				codeClassifyDO.setId(VciBaseUtil.getStringValueFromObject(data.get("ID")));
+				codeClassifyDO.setName(VciBaseUtil.getStringValueFromObject(data.get("NAME")));
+				codeClassifyDO.setBtmTypeId(VciBaseUtil.getStringValueFromObject(data.get("BTMTYPEID")));
+				codeClassifyDO.setBtmTypeName(VciBaseUtil.getStringValueFromObject(data.get("BTMTYPENAME")));
+				oidList.add(codeClassifyDO);
+			}
+		}
+		return oidList;
+	}
+
+	/**
+	 * 浣跨敤鍒嗙被涓婚敭鑾峰彇鍒嗙被鐩稿叧鐨勬墍鏈変俊鎭�
+	 *
+	 * @param codeClassifyOid 鍒嗙被鐨勪富閿�
+	 * @return 鍒嗙被涓婄骇锛屼笅绾х殑淇℃伅
+	 */
+	@Override
+	public CodeClassifyFullInfoBO getClassifyFullInfo(String codeClassifyOid) {
+		VciBaseUtil.alertNotNull(codeClassifyOid,"鍒嗙被鐨勪富閿�");
+		CodeClassifyFullInfoBO fullInfo = new CodeClassifyFullInfoBO();
+		CodeClassify classifyDO = selectByOid(codeClassifyOid);
+		//鏌ヨ涓婄骇
+		fullInfo.setCurrentClassifyVO(codeClassifyDO2VO(classifyDO));
+		List<Map<String, Object>> maps = codeClassifyMapper.selectAllLevelParentByOid(codeClassifyOid);
+		List<CodeClassify> codeClassifyList = new ArrayList<>();
+		for (Map<String, Object> map : maps) {
+			CodeClassify codeClassify = new CodeClassify();
+			codeClassify.setOid(String.valueOf(map.get("OID")));
+			codeClassify.setOid(String.valueOf(map.get("LEVEL")));
+			codeClassifyList.add(codeClassify);
+		}
+		fullInfo.setParentClassifyVOs(codeClassifyDO2VOs(codeClassifyList));
+		if(!CollectionUtils.isEmpty(fullInfo.getParentClassifyVOs())){
+			fullInfo.setTopClassifyVO(fullInfo.getParentClassifyVOs().stream().filter(s->StringUtils.isBlank(s.getParentcodeclassifyoid())).findFirst().orElseGet(()->null));
+		}
+		return fullInfo;
+	}
 }

--
Gitblit v1.9.3