From 6138318ebe15d251d6ae6e3e1ec57c8af94216d7 Mon Sep 17 00:00:00 2001
From: ludc <pUXmgxCf6A>
Date: 星期四, 18 五月 2023 10:53:27 +0800
Subject: [PATCH] 以及发布webservice接口功能搭建,将通通用接口移植过来
---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java | 81 ++++---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java | 307 +++++++++++++--------------
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 178 +++++++++-------
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeClassifyService.java | 16 +
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml | 37 +++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java | 22 ++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java | 11 +
7 files changed, 381 insertions(+), 271 deletions(-)
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 49e31bd..ea1d998 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
@@ -88,4 +88,15 @@
@MapKey("OID")
List<Map<String,Object>> selectByFieldPath(@Param("fieldPath") String fieldPath);
+
+ /**
+ * 鏌ユ牴鎹甶d灞傜骇鑾峰彇瀵硅薄
+ *
+ * @param fieldPath 鍒嗙被鐨勪富閿�
+ * @param fieldName 鍒嗙被鐨勪富閿�
+ * @return 鏁版嵁闆嗗悎
+ */
+ List<CodeClassify> selectByFieldNamePath(@Param("fieldPath") String fieldPath,@Param("fieldName") String fieldName);
+
+
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeClassifyService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeClassifyService.java
index ac972bf..68ccf7a 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeClassifyService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeClassifyService.java
@@ -228,4 +228,20 @@
* @return 鍒嗙被涓婄骇锛屼笅绾х殑淇℃伅
*/
CodeClassifyFullInfoBO getClassifyFullInfo(String codeClassifyOid);
+
+
+ /**
+ * 浣跨敤缂栧彿鐨勮矾寰勮幏鍙栧璞�
+ * @param clsfNamePath 鍒嗙被鍚嶇О鐨勮矾寰勶紝涓�瀹氳浠庢渶椤跺眰鑺傜偣寮�濮嬶紝鏍煎紡涓簒xx/yyy/zz 杩欐牱
+ * @return 鍒嗙被鐨勬樉绀哄璞�
+ */
+ CodeClassifyVO getObjectByClsfNamePath(String clsfNamePath);
+
+ /***
+ * 鏍规嵁涓婄骇鑺傜偣鑾峰彇涓嬬骇鑺傜偣浠e彿璺緞鍜屽悕绉拌矾寰�
+ * @param classifyId
+ * @param enable
+ * @return
+ */
+ public List<CodeClassifyVO> getIdPathToNamePathByParentId(String classifyId,boolean enable);
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java
index 76250db..908dc2f 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java
@@ -1,39 +1,46 @@
-//package com.vci.ubcs.code.service;
-//
-//
-//import com.baomidou.mybatisplus.extension.service.IService;
-//import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
-//import com.vci.ubcs.code.dto.CodeOrderDTO;
-//import com.vci.ubcs.code.dto.datapush.BaseModelDTO;
-//import com.vci.ubcs.code.entity.CodeAllCode;
-//import com.vci.ubcs.code.vo.CodeClstemplateVO;
-//import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO;
-//import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateVO;
-//import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
-//import com.vci.ubcs.starter.web.pagemodel.KeyValue;
-//
-//import java.util.List;
-//
-///**
-// * 涓绘暟鎹紩鎿庢湇鍔�
-// * @author weidy
-// * @date 2022-2-21
-// */
-//public interface MdmEngineService extends IService<CodeAllCode> {
-//// /**
-//// * 浣跨敤鍒嗙被鐨勪富閿幏鍙栧彲浠ヤ娇鐢ㄧ殑妯℃澘瀵硅薄
-//// * @param codeClassifyOid 鍒嗙被鐨勪富閿�
-//// * @return 妯℃澘鐨勬樉绀哄璞�
-//// */
-//// CodeClstemplateVO getUsedTemplateByClassifyOid(String codeClassifyOid);
-////
-//// /**
-//// * 浣跨敤鍒嗙被鐨勪富閿幏鍙栧彲浠ヤ娇鐢ㄧ殑妯℃澘瀵硅薄
-//// * @param codeClassifyOid 鍒嗙被鐨勪富閿�
-//// * @param hasAttr 鍖呭惈灞炴��
-//// * @return 妯℃澘鐨勬樉绀哄璞�
-//// */
-//// CodeClstemplateVO getUsedTemplateByClassifyOid(String codeClassifyOid, boolean hasAttr);
+package com.vci.ubcs.code.service;
+
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
+import com.vci.ubcs.code.entity.CodeAllCode;
+import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateVO;
+import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
+
+import java.util.List;
+
+/**
+ * 涓绘暟鎹紩鎿庢湇鍔�
+ * @author weidy
+ * @date 2022-2-21
+ */
+public interface MdmEngineService extends IService<CodeAllCode> {
+
+
+ /**
+ * 浣跨敤鍒嗙被鐨勪富閿幏鍙栧彲浠ヤ娇鐢ㄧ殑妯℃澘瀵硅薄
+ * @param codeClassifyOid 鍒嗙被鐨勪富閿�
+ * @return 妯℃澘鐨勬樉绀哄璞�
+ */
+ CodeClassifyTemplateVO getUsedTemplateByClassifyOid(String codeClassifyOid);
+
+ /**
+ * 浣跨敤鍒嗙被鐨勪富閿幏鍙栧彲浠ヤ娇鐢ㄧ殑妯℃澘瀵硅薄
+ * @param codeClassifyOid 鍒嗙被鐨勪富閿�
+ * @param hasAttr 鍖呭惈灞炴��
+ * @return 妯℃澘鐨勬樉绀哄璞�
+ */
+ CodeClassifyTemplateVO getUsedTemplateByClassifyOid(String codeClassifyOid, boolean hasAttr);
+
+
+
+ /**
+ * 浣跨敤鍒嗙被鐨勫叏閮ㄤ俊鎭幏鍙栫紪鐮佽鍒�
+ * @param fullInfoBO 鍒嗙被鐨勫叏閮ㄤ俊鎭�
+ * @return 瑙勫垯鐨勫唴瀹�
+ */
+ CodeRuleVO getCodeRuleByClassifyFullInfo(CodeClassifyFullInfoBO fullInfoBO);
+
////
//// /**
//// * 鑾峰彇鏋氫妇鐨勪笅鎷夐�夐」
@@ -133,4 +140,4 @@
//// * @param orderDTO 鏁版嵁鐨勫唴瀹癸紝涓嶇敤鍖呭惈鐮佹鐨勫唴瀹逛簡
//// */
//// void editSaveCode(CodeOrderDTO orderDTO);
-//}
+}
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 7533870..5bc3366 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
@@ -468,6 +468,28 @@
}
return tree;
}
+ /**
+ * 浣跨敤缂栧彿鐨勮矾寰勮幏鍙栧璞�
+ *
+ * @param fieldPath 缂栧彿鐨勮矾寰勶紝涓�瀹氳浠庢渶椤跺眰鑺傜偣寮�濮嬶紝鏍煎紡涓簒xx/yyy/zz 杩欐牱
+ * @return 鍒嗙被鐨勬樉绀哄璞�
+ */
+ @Override
+ public CodeClassifyVO getObjectByClsfNamePath(String fieldPath){
+
+ CodeClassify classify = (CodeClassify) codeClassifyMapper.selectByFieldNamePath(fieldPath, "name");
+ return codeClassifyDO2VO(classify);
+ }
+ /***
+ * 鏍规嵁涓婄骇鑺傜偣鑾峰彇涓嬬骇鑺傜偣浠e彿璺緞鍜屽悕绉拌矾寰�
+ * @param classifyId
+ * @param enable
+ * @return
+ */
+ @Override
+ public List<CodeClassifyVO> getIdPathToNamePathByParentId(String classifyId, boolean enable) {
+ return null;
+ }
// /**
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 e63b287..f631260 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
@@ -1,60 +1,34 @@
-//package com.vci.ubcs.code.service.impl;
+package com.vci.ubcs.code.service.impl;
+import com.alibaba.cloud.commons.lang.StringUtils;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
+import com.vci.ubcs.code.entity.CodeAllCode;
+import com.vci.ubcs.code.mapper.CodeAllCodeMapper;
+import com.vci.ubcs.code.service.*;
+import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateVO;
+import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO;
+import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
+import com.vci.ubcs.starter.exception.VciBaseException;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
//
-//import com.alibaba.fastjson.JSONObject;
-//import com.alibaba.nacos.common.utils.StringUtils;
-//import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-//import com.baomidou.mybatisplus.extension.service.IService;
-//import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-//import com.sun.corba.se.impl.orbutil.ObjectUtility;
-//import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
-//import com.vci.ubcs.code.dto.CodeOrderDTO;
-//import com.vci.ubcs.code.dto.datapush.BaseModelDTO;
-//import com.vci.ubcs.code.entity.CodeAllCode;
-//import com.vci.ubcs.code.entity.CodeOsbtmtypeEntity;
-//import com.vci.ubcs.code.entity.CodeRule;
-//import com.vci.ubcs.code.entity.CodeWupinEntity;
-//import com.vci.ubcs.code.enumpack.CodeDefaultLC;
-//import com.vci.ubcs.code.enumpack.CodeLevelTypeEnum;
-//import com.vci.ubcs.code.enumpack.CodeSecTypeEnum;
-//import com.vci.ubcs.code.mapper.CodeAllCodeMapper;
-//import com.vci.ubcs.code.mapper.CodeOsbtmtypeMapper;
-//import com.vci.ubcs.code.mapper.CodeRuleMapper;
-//import com.vci.ubcs.code.service.*;
-//import com.vci.ubcs.code.vo.CodeClstemplateVO;
-//import com.vci.ubcs.code.vo.CodeKeyattrrepeatVO;
-//import com.vci.ubcs.code.vo.pagemodel.CodeBasicSecVO;
-//import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO;
-//import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO;
-//import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
-//import com.vci.ubcs.omd.entity.Dict;
-//import com.vci.ubcs.starter.exception.VciBaseException;
-//import com.vci.ubcs.starter.revision.model.BaseModel;
-//import com.vci.ubcs.starter.web.enumpck.UserSecretEnum;
-//import com.vci.ubcs.starter.web.pagemodel.KeyValue;
-//import com.vci.ubcs.starter.web.toolmodel.DateConverter;
-//import com.vci.ubcs.starter.web.util.VciBaseUtil;
-//import com.vci.ubcs.starter.web.util.VciDateUtil;
-//import com.vci.ubcs.starter.web.util.VciQueryWrapperForDO;
-//import com.vci.ubcs.starter.web.util.WebUtil;
-//import com.vci.ubcs.system.entity.DictBiz;
-//import com.vci.ubcs.system.feign.IDictBizClient;
-//import org.slf4j.Logger;
-//import org.slf4j.LoggerFactory;
-//import org.springblade.core.mp.support.Query;
-//import org.springblade.core.secure.utils.AuthUtil;
-//import org.springblade.core.tool.api.R;
-//import org.springframework.beans.BeanUtils;
-//import org.springframework.beans.factory.annotation.Autowired;
-//import org.springframework.stereotype.Service;
-//
-///**
-// * 涓绘暟鎹紩鎿庢湇鍔�
-// *
-// * @author weidy
-// * @date 2022-2-22
-// */
-//@Service
-//public class MdmEngineServiceImpl extends ServiceImpl<CodeAllCodeMapper, CodeAllCode> implements MdmEngineService {
+
+
+/**
+ * 涓绘暟鎹紩鎿庢湇鍔�
+ *
+ * @author weidy
+ * @date 2022-2-22
+ */
+@Slf4j
+@Service
+public class MdmEngineServiceImpl extends ServiceImpl<CodeAllCodeMapper, CodeAllCode> implements MdmEngineService {
//
//
// /**
@@ -76,29 +50,75 @@
// // @Autowired
// // private CodeOsbtmtypeMapper codeOsbtmtypeMapper;
//
-// /**
-// * 浣跨敤鍒嗙被鐨勪富閿幏鍙栧彲浠ヤ娇鐢ㄧ殑妯℃澘瀵硅薄
-// *
-// * @param codeClassifyOid 鍒嗙被鐨勪富閿�
-// * @return 妯℃澘鐨勬樉绀哄璞�
-// */
-// @Override
-// public CodeClstemplateVO getUsedTemplateByClassifyOid(String codeClassifyOid) {
-// return getUsedTemplateByClassifyOid(codeClassifyOid, true);
-// }
+ /**
+ * 妯℃澘鐨勬湇鍔�
+ */
+ @Autowired(required = false)
+ private ICodeClassifyTemplateAttrService codeClassifyTemplateAttrService;
+
+ /***
+ * 缂栫爜瑙勫垯鏈嶅姟
+ */
+ @Autowired(required = false)
+ private ICodeRuleService codeRuleService;
+ /**
+ * 浣跨敤鍒嗙被鐨勪富閿幏鍙栧彲浠ヤ娇鐢ㄧ殑妯℃澘瀵硅薄
+ *
+ * @param codeClassifyOid 鍒嗙被鐨勪富閿�
+ * @return 妯℃澘鐨勬樉绀哄璞�
+ */
+ @Override
+ public CodeClassifyTemplateVO getUsedTemplateByClassifyOid(String codeClassifyOid) {
+ return getUsedTemplateByClassifyOid(codeClassifyOid, true);
+ }
//
-// /**
-// * 浣跨敤鍒嗙被鐨勪富閿幏鍙栧彲浠ヤ娇鐢ㄧ殑妯℃澘瀵硅薄
-// *
-// * @param codeClassifyOid 鍒嗙被鐨勪富閿�
-// * @param hasAttr 鍖呭惈灞炴��
-// * @return 妯℃澘鐨勬樉绀哄璞�
-// */
-// @Override
-// public CodeClstemplateVO getUsedTemplateByClassifyOid(String codeClassifyOid, boolean hasAttr) {
-// List<CodeClstemplateVO> templateVOs = templateService.listReleaseTemplateByClassifyOid(codeClassifyOid, hasAttr);
-// return templateVOs.get(templateVOs.size() - 1);
-// }
+ /**
+ * 浣跨敤鍒嗙被鐨勪富閿幏鍙栧彲浠ヤ娇鐢ㄧ殑妯℃澘瀵硅薄
+ *
+ * @param codeClassifyOid 鍒嗙被鐨勪富閿�
+ * @param hasAttr 鍖呭惈灞炴��
+ * @return 妯℃澘鐨勬樉绀哄璞�
+ */
+ @Override
+ public CodeClassifyTemplateVO getUsedTemplateByClassifyOid(String codeClassifyOid, boolean hasAttr) {
+ List<CodeClassifyTemplateVO> templateVOs=new ArrayList<>();
+ //templateVOs = codeClassifyTemplateAttrService.listReleaseTemplateByClassifyOid(codeClassifyOid, hasAttr);
+ return templateVOs.get(templateVOs.size() - 1);
+ }
+
+
+ /**
+ * 浣跨敤鍒嗙被鐨勫叏閮ㄤ俊鎭幏鍙栫紪鐮佽鍒�
+ *
+ * @param fullInfoBO 鍒嗙被鐨勫叏閮ㄤ俊鎭�
+ * @return 瑙勫垯鐨勫唴瀹�
+ */
+ @Override
+ public CodeRuleVO getCodeRuleByClassifyFullInfo(CodeClassifyFullInfoBO fullInfoBO) {
+ //寰�涓婃壘
+ String codeRuleOid = "";
+ if (StringUtils.isNotBlank(fullInfoBO.getCurrentClassifyVO().getCoderuleoid())) {
+ codeRuleOid = fullInfoBO.getCurrentClassifyVO().getCoderuleoid();
+ } else {
+ if (CollectionUtils.isEmpty(fullInfoBO.getParentClassifyVOs())) {
+ //璇存槑宸茬粡鏄渶楂樺眰绾�,
+ throw new VciBaseException("褰撳墠涓婚搴撳垎绫伙紝浠ュ強瀹冪殑鎵�鏈夌殑涓婄骇鍒嗙被閮芥病鏈夎缃紪鐮佽鍒�");
+ }
+ List<CodeClassifyVO> parentClassifyVOList = fullInfoBO.getParentClassifyVOs().stream().sorted((o1, o2) -> o1.getDataLevel().compareTo(o2.getDataLevel())).collect(Collectors.toList());
+ //浠庢渶楂樼殑level寮�濮嬭幏鍙�
+ for (int i = 0; i < parentClassifyVOList.size(); i++) {
+ CodeClassifyVO record = parentClassifyVOList.get(i);
+ if (StringUtils.isNotBlank(record.getCoderuleoid())) {
+ codeRuleOid = record.getCoderuleoid();
+ break;
+ }
+ }
+ if (StringUtils.isBlank(codeRuleOid)) {
+ throw new VciBaseException("褰撳墠涓婚搴撳垎绫伙紝浠ュ強瀹冪殑鎵�鏈夌殑涓婄骇鍒嗙被閮芥病鏈夎缃紪鐮佽鍒�");
+ }
+ }
+ return codeRuleService.getObjectHasSecByOid(codeRuleOid);
+ }
//
// /**
// * 鑾峰彇鏋氫妇鐨勪笅鎷夐�夐」
@@ -1788,4 +1808,4 @@
//// batchSaveSelectChar(templateVO, cboList);
//// }
//
-//}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
index 402f6bb..7ee87d7 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
@@ -2,16 +2,13 @@
import com.alibaba.cloud.commons.lang.StringUtils;
import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.io.xml.DomDriver;
import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
import com.vci.ubcs.code.dto.CodeOrderDTO;
import com.vci.ubcs.code.dto.CodeOrderSecDTO;
-import com.vci.ubcs.code.entity.CodeBasicSec;
-import com.vci.ubcs.code.entity.CodeClassify;
-import com.vci.ubcs.code.entity.DockingLog;
+import com.vci.ubcs.code.entity.*;
import com.vci.ubcs.code.enumpack.CodeSecTypeEnum;
import com.vci.ubcs.code.service.*;
import com.vci.ubcs.code.util.gennerAttrMapUtil;
@@ -69,8 +66,8 @@
/**
* 涓绘暟鎹紩鎿庣殑鏈嶅姟
*/
- //@Resource
- //private MdmEngineService engineService;
+ @Resource
+ private MdmEngineService engineService;
/**
* 瀵嗙骇鐨勬湇鍔�
@@ -99,152 +96,152 @@
@Override
public String applyCode(String data, String dataType) throws Throwable {
{
-// String resultStr = "";
-// String errorid="0";
-// msg="鎴愬姛";
-// objerrorCode="0";
-// objerrorMsg="鎴愬姛";
-// logger.info("鐢宠缂栫爜鐨勬暟鎹弬鏁�:->"+data);
-// logger.info("鐢宠缂栫爜鐨勬暟鎹被鍨�:->"+dataType);
-// String systemId="";
-// List<XMLResultClassfyVO> resultClassfyVOList = new ArrayList<>();
-// try {
-// if(StringUtils.isBlank(data)) {
-// errorid="101";
-// throw new Throwable("鎺ュ彛鍙傛暟锛氫紶閫掍负绌�");
-// }
-// InterParameterVO interParameterVO =new InterParameterVO();
-// //濡傛灉dataType鏄痻ml鍒欙紝閫氳繃xml搴忓垪鍖栨垚瀵硅薄褰㈠紡锛屽鏋滄槸json鍒欓�氳繃json杞崲鎴愬璞℃牸寮�
-// try {
-// if ("xml".equals(dataType)) {
-// XStream xStream = new XStream(new DomDriver());
-// xStream.processAnnotations(RootDataVO.class);
-// xStream.autodetectAnnotations(true);
-// RootDataVO rootDataVO = (RootDataVO) xStream.fromXML(data);
-// interParameterVO.setData(rootDataVO);
-// } else {
-// interParameterVO = JSONObject.toJavaObject(JSONObject.parseObject(data), InterParameterVO.class);
-// }
-// }catch (Throwable e){
-// errorid="101";
-// throw new Throwable("鎺ュ彛鍙傛暟锛氫紶鍏ユ暟鎹弬鏁拌В鏋愬け璐�");
-// }
-// ClassfysVO classfysVO = interParameterVO.getData().getClassifys();
-// systemId = interParameterVO.getData().getSystemId();
-// UserVO userVo = interParameterVO.getData().getUser();
-// List<ClassfyVO> classVOList = classfysVO.getClassify();
-// InterParameterVO finalInterParameterVO = interParameterVO;
-//
-// //杩欐槸璐﹀彿淇℃伅
-// SessionInfo sessionInfo = new SessionInfo();
-// sessionInfo.setUserId(userVo.getUserName());
-// sessionInfo.setUserName(userVo.getTrueName());
-// sessionInfo.setIp(userVo.getIp());
-// VciBaseUtil.setCurrentUserSessionInfo(sessionInfo);
-//
-// String finalSystemId = systemId;
-// classVOList.stream().forEach(classVO -> {
-// logger.info("鍙傛暟锛氬垎绫籆Ode:" + classVO.getClassCode());
-// LinkedList<XMLResultDataObjectDetailDO> resultDataObjectDetailDOs = new LinkedList<>();
-// //鑾峰彇鍒嗙被淇℃伅
-// try {
-// String libray = classVO.getLibrary();
-// CodeClassifyVO codeClassifyVO = getClassfy(classVO);
-// logger.info("end锛氬垎绫绘煡璇㈠畬姣�");
-// //鑾峰彇鍒嗙被妯℃澘淇℃伅
-// if(codeClassifyVO==null || StringUtils.isBlank(codeClassifyVO.getOid())){
-// objerrorCode="100";
-// throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栧埌鍒嗙被淇℃伅");
-// }
-// CodeClstemplateVO templateVO = engineService.getUsedTemplateByClassifyOid(codeClassifyVO.getOid());
-// if(templateVO==null||StringUtils.isBlank(templateVO.getOid())){
-// objerrorCode="1";
-// throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙朚DM绯荤粺涓搴旀ā鏉�");
-// }
-// logger.info("end锛氭ā鏉挎煡璇㈠畬姣�");
-// ApplyDatasVO applyDatasVO = classVO.getObjects();
-// DataObjectVO dataObjectVO = new DataObjectVO();
-// List<CodeClassifyTemplateAttrVO> attrVOS = templateVO.getAttributes().stream().filter(s -> !DEFAULT_SYNC_ATTR_LIST.contains(s.getId()) && VciBaseUtil.getBoolean(s.getFormDisplayFlag())
-// ).collect(Collectors.toList());
-// this.getConfigDatas(finalSystemId, libray, applyDatasVO, attrVOS, dataObjectVO);
-// logger.info("end锛氭暟鎹粍缁囧畬姣�");
-// //瑙勫垯鐨勪富閿渶瑕佸幓鑾峰彇
-// CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(codeClassifyVO.getOid());
-// if(classifyFullInfo==null ||classifyFullInfo.getCurrentClassifyVO()==null || StringUtils.isBlank(classifyFullInfo.getCurrentClassifyVO().getOid())){
-// objerrorCode="1";
-// logger.info("classifyFullInfo:"+"鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栧垎绫荤浉鍏充俊鎭�");
-// throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栧垎绫荤浉鍏充俊鎭�");
-// }
-// CodeRuleVO ruleVO = engineService.getCodeRuleByClassifyFullInfo(classifyFullInfo);
-// if(ruleVO==null|| StringUtils.isBlank(ruleVO.getOid())){
-// objerrorCode="102";
-// throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙朚DM绯荤粺涓搴旇鍒�");
-// }
-// logger.info("end锛氳鍒欒幏鍙栧畬姣�");
-// List<CodeOrderSecDTO> codeOrderSecDTOList = getRuleCodeOrderSecDTOs(classVO.getSections().getSection(), ruleVO);
-// logger.info("end锛氱爜娈佃幏鍙栧畬姣�");
-// CodeOrderDTO orderDTO = new CodeOrderDTO();
-// orderDTO.setCodeClassifyOid(codeClassifyVO.getOid());//鍒嗙被涓婚敭
-// orderDTO.setSecDTOList(codeOrderSecDTOList);//鍒嗙被鐮佹
-// mdmIOService.batchSyncApplyCode(orderDTO, dataObjectVO, resultDataObjectDetailDOs);
-// logger.info("end锛氱敵璇疯幏鍙栧畬姣�");
-// } catch (Throwable e) {
-// XMLResultDataObjectDetailDO xmlResultDataObjectDetailDO=new XMLResultDataObjectDetailDO();
-// xmlResultDataObjectDetailDO.setCode("");
-// xmlResultDataObjectDetailDO.setId("");
-// xmlResultDataObjectDetailDO.setErrorid(objerrorCode);
-// xmlResultDataObjectDetailDO.setMsg("缂栫爜鐢宠澶辫触:"+e.getMessage());
-// resultDataObjectDetailDOs.add(xmlResultDataObjectDetailDO);
-// e.printStackTrace();
-// }finally {
-// XMLResultClassfyVO resultClassfyVO = new XMLResultClassfyVO();
-// resultClassfyVO.setClassCode(classVO.getClassCode());
-// resultClassfyVO.setLibrary(classVO.getLibrary());
-// resultClassfyVO.setFullclsfNamePath(classVO.getFullclsfNamePath());
-// resultClassfyVO.setObjects(resultDataObjectDetailDOs);
-// resultClassfyVOList.add(resultClassfyVO);
-// }
-// });
-// XMLResultSystemVO xmlResultSystemVO=new XMLResultSystemVO();
-// xmlResultSystemVO.setClassifys(resultClassfyVOList);
-// xmlResultSystemVO.setMsg(msg);
-// xmlResultSystemVO.setErrorid(errorid);
-// resultStr= transferResultXMl(xmlResultSystemVO,dataType);
-// }catch (Throwable e){
-// e.printStackTrace();;
-// msg="鐢宠缂栫爜澶辫触:"+e.getMessage();
-// }finally {
-// XMLResultSystemVO xmlResultSystemVO=new XMLResultSystemVO();
-// xmlResultSystemVO.setClassifys(resultClassfyVOList);
-// xmlResultSystemVO.setMsg(msg);
-// xmlResultSystemVO.setErrorid(errorid);
-// resultStr= transferResultXMl(xmlResultSystemVO,dataType);
-// final boolean[] issucess = {true};
-// if(!errorid.equals("0")) {
-// issucess[0] = false;
-// }else {
-// if(!CollectionUtils.isEmpty(resultClassfyVOList)) {
-// resultClassfyVOList.stream().forEach(xMLResultClassfyVO -> {
-// xMLResultClassfyVO.getObjects().stream().forEach(objec -> {
-// if (!(objec.getErrorid().equals("0") || objec.getErrorid().equals("204"))) {
-// issucess[0] = false;
-// msg=objec.getMsg();
-// }
-// });
-// });
-// }
-//
-// }
-// try {
-// //璁板綍鏃ュ織
-// this.saveLogs(systemId, systemId, data, resultStr, issucess[0], msg, "applyCode");
-// }catch (Throwable e){
-// e.printStackTrace();
-// }
-// }
-// logger.info("杩斿洖鍙傛暟:"+resultStr);
+ String resultStr = "";
+ String errorid="0";
+ msg="鎴愬姛";
+ objerrorCode="0";
+ objerrorMsg="鎴愬姛";
+ logger.info("鐢宠缂栫爜鐨勬暟鎹弬鏁�:->"+data);
+ logger.info("鐢宠缂栫爜鐨勬暟鎹被鍨�:->"+dataType);
+ String systemId="";
+ List<XMLResultClassfyVO> resultClassfyVOList = new ArrayList<>();
+ try {
+ if(StringUtils.isBlank(data)) {
+ errorid="101";
+ throw new Throwable("鎺ュ彛鍙傛暟锛氫紶閫掍负绌�");
+ }
+ InterParameterVO interParameterVO =new InterParameterVO();
+ //濡傛灉dataType鏄痻ml鍒欙紝閫氳繃xml搴忓垪鍖栨垚瀵硅薄褰㈠紡锛屽鏋滄槸json鍒欓�氳繃json杞崲鎴愬璞℃牸寮�
+ try {
+ if ("xml".equals(dataType)) {
+ XStream xStream = new XStream(new DomDriver());
+ xStream.processAnnotations(RootDataVO.class);
+ xStream.autodetectAnnotations(true);
+ RootDataVO rootDataVO = (RootDataVO) xStream.fromXML(data);
+ interParameterVO.setData(rootDataVO);
+ } else {
+ interParameterVO = JSONObject.toJavaObject(JSONObject.parseObject(data), InterParameterVO.class);
+ }
+ }catch (Throwable e){
+ errorid="101";
+ throw new Throwable("鎺ュ彛鍙傛暟锛氫紶鍏ユ暟鎹弬鏁拌В鏋愬け璐�");
+ }
+ ClassfysVO classfysVO = interParameterVO.getData().getClassifys();
+ systemId = interParameterVO.getData().getSystemId();
+ UserVO userVo = interParameterVO.getData().getUser();
+ List<ClassfyVO> classVOList = classfysVO.getClassify();
+ InterParameterVO finalInterParameterVO = interParameterVO;
- return "";
+ //杩欐槸璐﹀彿淇℃伅
+ SessionInfo sessionInfo = new SessionInfo();
+ sessionInfo.setUserId(userVo.getUserName());
+ sessionInfo.setUserName(userVo.getTrueName());
+ sessionInfo.setIp(userVo.getIp());
+ VciBaseUtil.setCurrentUserSessionInfo(sessionInfo);
+
+ String finalSystemId = systemId;
+ classVOList.stream().forEach(classVO -> {
+ logger.info("鍙傛暟锛氬垎绫籆Ode:" + classVO.getClassCode());
+ LinkedList<XMLResultDataObjectDetailDO> resultDataObjectDetailDOs = new LinkedList<>();
+ //鑾峰彇鍒嗙被淇℃伅
+ try {
+ String libray = classVO.getLibrary();
+ CodeClassifyVO codeClassifyVO = getClassfy(classVO);
+ logger.info("end锛氬垎绫绘煡璇㈠畬姣�");
+ //鑾峰彇鍒嗙被妯℃澘淇℃伅
+ if(codeClassifyVO==null || StringUtils.isBlank(codeClassifyVO.getOid())){
+ objerrorCode="100";
+ throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栧埌鍒嗙被淇℃伅");
+ }
+ CodeClassifyTemplateVO templateVO = engineService.getUsedTemplateByClassifyOid(codeClassifyVO.getOid());
+ if(templateVO==null||StringUtils.isBlank(templateVO.getOid())){
+ objerrorCode="1";
+ throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙朚DM绯荤粺涓搴旀ā鏉�");
+ }
+ logger.info("end锛氭ā鏉挎煡璇㈠畬姣�");
+ ApplyDatasVO applyDatasVO = classVO.getObjects();
+ DataObjectVO dataObjectVO = new DataObjectVO();
+ List<CodeClassifyTemplateAttrVO> attrVOS = templateVO.getAttributes().stream().filter(s -> !DEFAULT_SYNC_ATTR_LIST.contains(s.getId()) && VciBaseUtil.getBoolean(s.getFormDisplayFlag())
+ ).collect(Collectors.toList());
+ this.getConfigDatas(finalSystemId, libray, applyDatasVO, attrVOS, dataObjectVO);
+ logger.info("end锛氭暟鎹粍缁囧畬姣�");
+ //瑙勫垯鐨勪富閿渶瑕佸幓鑾峰彇
+ CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(codeClassifyVO.getOid());
+ if(classifyFullInfo==null ||classifyFullInfo.getCurrentClassifyVO()==null || StringUtils.isBlank(classifyFullInfo.getCurrentClassifyVO().getOid())){
+ objerrorCode="1";
+ logger.info("classifyFullInfo:"+"鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栧垎绫荤浉鍏充俊鎭�");
+ throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栧垎绫荤浉鍏充俊鎭�");
+ }
+ CodeRuleVO ruleVO = engineService.getCodeRuleByClassifyFullInfo(classifyFullInfo);
+ if(ruleVO==null|| StringUtils.isBlank(ruleVO.getOid())){
+ objerrorCode="102";
+ throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙朚DM绯荤粺涓搴旇鍒�");
+ }
+ logger.info("end锛氳鍒欒幏鍙栧畬姣�");
+ List<CodeOrderSecDTO> codeOrderSecDTOList = getRuleCodeOrderSecDTOs(classVO.getSections().getSection(), ruleVO);
+ logger.info("end锛氱爜娈佃幏鍙栧畬姣�");
+ CodeOrderDTO orderDTO = new CodeOrderDTO();
+ orderDTO.setCodeClassifyOid(codeClassifyVO.getOid());//鍒嗙被涓婚敭
+ orderDTO.setSecDTOList(codeOrderSecDTOList);//鍒嗙被鐮佹
+ //mdmIOService.batchSyncApplyCode(orderDTO, dataObjectVO, resultDataObjectDetailDOs);
+ logger.info("end锛氱敵璇疯幏鍙栧畬姣�");
+ } catch (Throwable e) {
+ XMLResultDataObjectDetailDO xmlResultDataObjectDetailDO=new XMLResultDataObjectDetailDO();
+ xmlResultDataObjectDetailDO.setCode("");
+ xmlResultDataObjectDetailDO.setId("");
+ xmlResultDataObjectDetailDO.setErrorid(objerrorCode);
+ xmlResultDataObjectDetailDO.setMsg("缂栫爜鐢宠澶辫触:"+e.getMessage());
+ resultDataObjectDetailDOs.add(xmlResultDataObjectDetailDO);
+ e.printStackTrace();
+ }finally {
+ XMLResultClassfyVO resultClassfyVO = new XMLResultClassfyVO();
+ resultClassfyVO.setClassCode(classVO.getClassCode());
+ resultClassfyVO.setLibrary(classVO.getLibrary());
+ resultClassfyVO.setFullclsfNamePath(classVO.getFullclsfNamePath());
+ resultClassfyVO.setObjects(resultDataObjectDetailDOs);
+ resultClassfyVOList.add(resultClassfyVO);
+ }
+ });
+ XMLResultSystemVO xmlResultSystemVO=new XMLResultSystemVO();
+ xmlResultSystemVO.setClassifys(resultClassfyVOList);
+ xmlResultSystemVO.setMsg(msg);
+ xmlResultSystemVO.setErrorid(errorid);
+ resultStr= transferResultXMl(xmlResultSystemVO,dataType);
+ }catch (Throwable e){
+ e.printStackTrace();;
+ msg="鐢宠缂栫爜澶辫触:"+e.getMessage();
+ }finally {
+ XMLResultSystemVO xmlResultSystemVO=new XMLResultSystemVO();
+ xmlResultSystemVO.setClassifys(resultClassfyVOList);
+ xmlResultSystemVO.setMsg(msg);
+ xmlResultSystemVO.setErrorid(errorid);
+ resultStr= transferResultXMl(xmlResultSystemVO,dataType);
+ final boolean[] issucess = {true};
+ if(!errorid.equals("0")) {
+ issucess[0] = false;
+ }else {
+ if(!CollectionUtils.isEmpty(resultClassfyVOList)) {
+ resultClassfyVOList.stream().forEach(xMLResultClassfyVO -> {
+ xMLResultClassfyVO.getObjects().stream().forEach(objec -> {
+ if (!(objec.getErrorid().equals("0") || objec.getErrorid().equals("204"))) {
+ issucess[0] = false;
+ msg=objec.getMsg();
+ }
+ });
+ });
+ }
+
+ }
+ try {
+ //璁板綍鏃ュ織
+ this.saveLogs(systemId, systemId, data, resultStr, issucess[0], msg, "applyCode");
+ }catch (Throwable e){
+ e.printStackTrace();
+ }
+ }
+ logger.info("杩斿洖鍙傛暟:"+resultStr);
+
+ return resultStr;
}
}
@@ -315,10 +312,10 @@
throw new Throwable("鏍规嵁鍒嗙被浠e彿鏈煡璇㈠埌鐩稿簲鐨勫垎绫讳俊鎭�");
}
} else {
- //classifyVO = classifyService.getObjectByClsfNamePath(className.replace(separator, "/"));
- //if(StringUtils.isBlank(classifyVO.getOid())){
- // throw new Throwable("鏍规嵁鍒嗙被鍚嶇О璺緞鏈煡璇㈠埌鐩稿簲鐨勫垎绫讳俊鎭�");
- //}
+ classifyVO = classifyService.getObjectByClsfNamePath(className.replace(separator, "/"));
+ if(StringUtils.isBlank(classifyVO.getOid())){
+ throw new Throwable("鏍规嵁鍒嗙被鍚嶇О璺緞鏈煡璇㈠埌鐩稿簲鐨勫垎绫讳俊鎭�");
+ }
}
}catch (Throwable e){
objerrorCode="100";
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 f1fa535..0533fb6 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
@@ -144,6 +144,43 @@
select oid,level from pl_code_classify start with oid= #{oid} connect by prior PARENTCODECLASSIFYOID = oid
</select>
+ <select id="selectByFieldNamePath" 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,
+ codeclassify0.paths as paths
+ from (select plcodeclassify.*,
+ <choose>
+ <when test="fieldName=='name'.tostring()">
+ SYS_CONNECT_BY_PATH(name, '##') as paths
+ </when>
+ <otherwise>
+ SYS_CONNECT_BY_PATH(id, '##') as paths
+ </otherwise>
+ </choose>
+
+ from pl_code_classify plcodeclassify
+ START WITH parentCodeClassifyOid is null
+ CONNECT BY PRIOR OID = parentCodeClassifyOid) codeclassify0
+ where codeclassify0.paths =#{fieldPath}
+ </select>
+
<select id="selectByFieldPath" resultType="java.util.HashMap">
select *
from (select oid, SYS_CONNECT_BY_PATH(id, '/') as paths
--
Gitblit v1.9.3