From 5c487e8208311bfd93a904bfdae2cfab0e9b2cd7 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期三, 07 六月 2023 18:10:35 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java | 541 ++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 368 insertions(+), 173 deletions(-)
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..f43debb 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,40 +2,35 @@
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;
import com.vci.ubcs.code.vo.pagemodel.*;
import com.vci.ubcs.code.vo.webserviceModel.apply.*;
import com.vci.ubcs.code.vo.webserviceModel.attrmap.*;
+import com.vci.ubcs.code.vo.webserviceModel.classify.*;
import com.vci.ubcs.code.vo.webserviceModel.result.json.*;
import com.vci.ubcs.code.vo.webserviceModel.result.xml.XMLResultClassfyVO;
import com.vci.ubcs.code.vo.webserviceModel.result.xml.XMLResultDataObjectDetailDO;
import com.vci.ubcs.code.vo.webserviceModel.result.xml.XMLResultSystemVO;
+import com.vci.ubcs.code.webService.annotation.VciWebservice;
+import com.vci.ubcs.code.webService.config.AttributeMapConfig;
+import com.vci.ubcs.starter.revision.model.TreeQueryObject;
import com.vci.ubcs.starter.web.pagemodel.SessionInfo;
import com.vci.ubcs.starter.web.util.BeanUtilForVCI;
import com.vci.ubcs.starter.web.util.VciBaseUtil;
-import com.vci.ubcs.webservice.annotation.VciWebservice;
-import com.vci.ubcs.webservice.config.AttributeMapConfig;
import lombok.extern.slf4j.Slf4j;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
-
import javax.annotation.Resource;
-import javax.jws.WebService;
import java.util.*;
import java.util.stream.Collectors;
@@ -48,11 +43,6 @@
@Slf4j
@VciWebservice(path = "/universalInterface")
public class UniversalInterfaceImpl<IDockingLogeServiceing> implements UniversalInterfaceI {
-
- /**
- * 鏃ュ織
- */
- private Logger logger = LoggerFactory.getLogger(getClass());
@Autowired(required = false)
private AttributeMapConfig attributeMapConfig;
@@ -69,8 +59,8 @@
/**
* 涓绘暟鎹紩鎿庣殑鏈嶅姟
*/
- //@Resource
- //private MdmEngineService engineService;
+ @Resource
+ private MdmEngineService engineService;
/**
* 瀵嗙骇鐨勬湇鍔�
@@ -99,152 +89,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="鎴愬姛";
+ log.info("鐢宠缂栫爜鐨勬暟鎹弬鏁�:->"+data);
+ log.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 -> {
+ log.info("鍙傛暟锛氬垎绫籆Ode:" + classVO.getClassCode());
+ LinkedList<XMLResultDataObjectDetailDO> resultDataObjectDetailDOs = new LinkedList<>();
+ //鑾峰彇鍒嗙被淇℃伅
+ try {
+ String libray = classVO.getLibrary();
+ CodeClassifyVO codeClassifyVO = getClassfy(classVO);
+ log.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绯荤粺涓搴旀ā鏉�");
+ }
+ log.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);
+ log.info("end锛氭暟鎹粍缁囧畬姣�");
+ //瑙勫垯鐨勪富閿渶瑕佸幓鑾峰彇
+ CodeClassifyFullInfoBO classifyFullInfo = classifyService.getClassifyFullInfo(codeClassifyVO.getOid());
+ if(classifyFullInfo==null ||classifyFullInfo.getCurrentClassifyVO()==null || StringUtils.isBlank(classifyFullInfo.getCurrentClassifyVO().getOid())){
+ objerrorCode="1";
+ log.info("classifyFullInfo:"+"鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栧垎绫荤浉鍏充俊鎭�");
+ throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙栧垎绫荤浉鍏充俊鎭�");
+ }
+ CodeRuleVO ruleVO = engineService.getCodeRuleByClassifyFullInfo(classifyFullInfo);
+ if(ruleVO==null|| StringUtils.isBlank(ruleVO.getOid())){
+ objerrorCode="102";
+ throw new Throwable ("鏍规嵁浼犺緭鐨勫垎绫伙紝鏈幏鍙朚DM绯荤粺涓搴旇鍒�");
+ }
+ log.info("end锛氳鍒欒幏鍙栧畬姣�");
+ List<CodeOrderSecDTO> codeOrderSecDTOList = getRuleCodeOrderSecDTOs(classVO.getSections().getSection(), ruleVO);
+ log.info("end锛氱爜娈佃幏鍙栧畬姣�");
+ CodeOrderDTO orderDTO = new CodeOrderDTO();
+ orderDTO.setCodeClassifyOid(codeClassifyVO.getOid());//鍒嗙被涓婚敭
+ orderDTO.setSecDTOList(codeOrderSecDTOList);//鍒嗙被鐮佹
+ mdmIOService.batchSyncApplyCode(orderDTO, dataObjectVO, resultDataObjectDetailDOs);
+ log.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();
+ }
+ }
+ log.info("杩斿洖鍙傛暟:"+resultStr);
+
+ return resultStr;
}
}
@@ -270,7 +260,121 @@
*/
@Override
public String queryClassify(String data, String dataType) throws Throwable {
- return null;
+ boolean issucess=false;
+ String resultStr = "";
+ String errorid="0";
+ msg="鎴愬姛";
+ String systemId="";
+ log.info("鏌ヨ鍒嗙被鐨勬暟鎹弬鏁�:->"+data);
+ log.info("鏌ヨ鍒嗙被鐨勬暟鎹被鍨�:->"+dataType);
+ ResultClassifyVO resultClassifyVO =new ResultClassifyVO();
+ List<ClassifyVO> classifyVOList=new ArrayList<>();
+ ResultData resultData=new ResultData();
+ try {
+ if (StringUtils.isBlank(data)) {
+ errorid = "101";
+ throw new Throwable("鎺ュ彛鍙傛暟锛氫紶閫掍负绌�");
+ }
+ QueryClassifyVO queryClassifyVO = new QueryClassifyVO();
+ //濡傛灉dataType鏄痻ml鍒欙紝閫氳繃xml搴忓垪鍖栨垚瀵硅薄褰㈠紡锛屽鏋滄槸json鍒欓�氳繃json杞崲鎴愬璞℃牸寮�
+ try {
+ if ("xml".equals(dataType)) {
+ XStream xStream = new XStream(new DomDriver());
+ xStream.processAnnotations(QueryData.class);
+ xStream.autodetectAnnotations(true);
+ QueryData queryData = (QueryData) xStream.fromXML(data);
+ queryClassifyVO.setData(queryData);
+ } else {
+ queryClassifyVO = JSONObject.toJavaObject(JSONObject.parseObject(data), QueryClassifyVO.class);
+ }
+ } catch (Throwable e) {
+ errorid = "101";
+ msg="鎺ュ彛鍙傛暟锛氫紶鍏ユ暟鎹弬鏁拌В鏋愬け璐�";
+ e.printStackTrace();
+ throw new Throwable("鎺ュ彛鍙傛暟锛氫紶鍏ユ暟鎹弬鏁拌В鏋愬け璐�");
+ }
+ QueryData queryData=queryClassifyVO.getData();
+ UserVO userVo=queryData.getUser();
+ systemId=queryData.getSystemId();
+ QueryLibraryVO libraryVO= queryData.getLibrary();
+ String libId= libraryVO.getId();
+ List<String> classifyIdList= libraryVO.getClassifyid();
+ List<CodeClassifyVO> codeClassifyVOS =new ArrayList<>();
+ //杩欐槸璐﹀彿淇℃伅
+ //杩欐槸璐﹀彿淇℃伅
+ if(userVo!=null) {
+ SessionInfo sessionInfo = new SessionInfo();
+ sessionInfo.setUserId(userVo.getUserName());
+ sessionInfo.setUserName(userVo.getTrueName());
+ sessionInfo.setIp(userVo.getIp());
+ VciBaseUtil.setCurrentUserSessionInfo(sessionInfo);
+ }else{
+ errorid = "101";
+ throw new Throwable("鎺ュ彛鍙傛暟锛氳处鍙蜂俊鎭幏鍙栧け璐�");
+ }
+ if(!CollectionUtils.isEmpty(classifyIdList)){
+ //鍏堢畝绉版槸鍚︽湁鍏宠仈妯℃澘锛屾湁妯℃澘瑕佸厛鍒犻櫎
+ List<CodeClassify> libIdDos = classifyService.selectByWrapper(Wrappers.<CodeClassify>query().lambda().in(CodeClassify::getId, classifyIdList));
+ codeClassifyVOS=classifyService.codeClassifyDO2VOs(libIdDos);
+ }else {
+ List<CodeClassify> libIdDos = classifyService.selectByWrapper(Wrappers.<CodeClassify>query().lambda().eq(CodeClassify::getId, libId));
+ String oid= libIdDos.get(0).getOid();
+ TreeQueryObject treeQueryObject=new TreeQueryObject();
+ treeQueryObject.setParentOid(oid);
+ treeQueryObject.setQueryAllLevel(true);
+ codeClassifyVOS=classifyService.selectCodeClassifyDOByTree(treeQueryObject);
+ }
+ LibraryVO libraryVo=new LibraryVO();
+ libraryVo.setId(libId);
+ libraryVo.setName("");
+ if(!CollectionUtils.isEmpty(codeClassifyVOS)){
+ errorid = "0";
+ msg="鎴愬姛!";
+ codeClassifyVOS.stream().forEach(codeClassifyDO -> {
+ ClassifyVO classifyVO=new ClassifyVO();
+ classifyVO.setId(codeClassifyDO.getOid());
+ classifyVO.setLcStatus(codeClassifyDO.getLcStatus());
+ classifyVO.setClassCode(codeClassifyDO.getId());
+ classifyVO.setDescription(codeClassifyDO.getDescription());
+ classifyVO.setName(codeClassifyDO.getName());
+ classifyVO.setPid(codeClassifyDO.getParentcodeclassifyoid());
+ classifyVO.setFullPathName(codeClassifyDO.getPath());
+ classifyVOList.add(classifyVO);
+ });
+ libraryVo.setClassify(classifyVOList);
+ }else{
+ errorid = "100";
+ msg="鏈煡璇㈠埌鐩稿叧鐨勫垎绫讳俊鎭�";
+ }
+ issucess=true;
+ resultData.setLibrary(libraryVo);
+ }catch (Throwable e){
+ e.printStackTrace();;
+ msg="鏌ヨ鍒嗙被澶辫触:"+e.getMessage();
+ }finally {
+ resultData.setErrorid(errorid);
+ resultData.setMsg(msg);
+ resultClassifyVO.setResultData(resultData);
+ }
+ if(dataType.equals("xml")){
+ //缁勭粐杩斿洖鎺ュ彛淇℃伅
+ XStream xStream = new XStream(new DomDriver());
+ xStream.processAnnotations(XMLResultSystemVO.class);
+ xStream.autodetectAnnotations(true);
+ resultStr = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n" + xStream.toXML(resultData);
+
+ }else{
+ Object object = JSONObject.toJSON(resultClassifyVO);
+ resultStr = object.toString();
+ }
+ try {
+ //璁板綍鏃ュ織
+ this.saveLogs(systemId, systemId, data, resultStr, issucess, msg, "queryClassify");
+ }catch (Throwable e){
+ e.printStackTrace();
+ }
+ log.info("杩斿洖鍙傛暟:"+resultStr);
+ return resultStr;
}
/***
@@ -286,8 +390,99 @@
}
@Override
- public String queryClassifyRule(String data, String datatype) throws Throwable {
- return null;
+ public String queryClassifyRule(String data, String dataType) throws Throwable {
+
+ boolean issucess=false;
+ String resultStr = "";
+ String errorid="0";
+ msg="鎴愬姛";
+ String systemId="";
+ log.info("鏌ヨ鍒嗙被鐨勬暟鎹弬鏁�:->"+data);
+ log.info("鏌ヨ鍒嗙被鐨勬暟鎹被鍨�:->"+dataType);
+ ResultClassifyVO resultClassifyVO =new ResultClassifyVO();
+ List<ClassifyVO> classifyVOList=new ArrayList<>();
+ try {
+ if (StringUtils.isBlank(data)) {
+ errorid = "101";
+ throw new Throwable("鎺ュ彛鍙傛暟锛氫紶閫掍负绌�");
+ }
+ QueryClassifyVO queryClassifyVO = new QueryClassifyVO();
+ //濡傛灉dataType鏄痻ml鍒欙紝閫氳繃xml搴忓垪鍖栨垚瀵硅薄褰㈠紡锛屽鏋滄槸json鍒欓�氳繃json杞崲鎴愬璞℃牸寮�
+ try {
+ if ("xml".equals(dataType)) {
+ XStream xStream = new XStream(new DomDriver());
+ xStream.processAnnotations(QueryData.class);
+ xStream.autodetectAnnotations(true);
+ QueryData queryData = (QueryData) xStream.fromXML(data);
+ queryClassifyVO.setData(queryData);
+ } else {
+ queryClassifyVO = JSONObject.toJavaObject(JSONObject.parseObject(data), QueryClassifyVO.class);
+ }
+ } catch (Throwable e) {
+ errorid = "101";
+ msg = "鎺ュ彛鍙傛暟锛氫紶鍏ユ暟鎹弬鏁拌В鏋愬け璐�";
+ e.printStackTrace();
+ throw new Throwable("鎺ュ彛鍙傛暟锛氫紶鍏ユ暟鎹弬鏁拌В鏋愬け璐�");
+ }
+ QueryData queryData=queryClassifyVO.getData();
+ UserVO userVo=queryData.getUser();
+ systemId=queryData.getSystemId();
+ QueryLibraryVO libraryVO= queryData.getLibrary();
+ String libId= libraryVO.getId();
+ List<String> classifyIdList= libraryVO.getClassifyid();
+ List<CodeClassifyVO> codeClassifyVOS =new ArrayList<>();
+ //杩欐槸璐﹀彿淇℃伅
+ //杩欐槸璐﹀彿淇℃伅
+ if(userVo!=null) {
+ SessionInfo sessionInfo = new SessionInfo();
+ sessionInfo.setUserId(userVo.getUserName());
+ sessionInfo.setUserName(userVo.getTrueName());
+ sessionInfo.setIp(userVo.getIp());
+ VciBaseUtil.setCurrentUserSessionInfo(sessionInfo);
+ }else{
+ errorid = "101";
+ throw new Throwable("鎺ュ彛鍙傛暟锛氳处鍙蜂俊鎭幏鍙栧け璐�");
+ }
+ if(!CollectionUtils.isEmpty(classifyIdList)){
+ //鍏堢畝绉版槸鍚︽湁鍏宠仈妯℃澘锛屾湁妯℃澘瑕佸厛鍒犻櫎
+ List<CodeClassify> libIdDos = classifyService.selectByWrapper(Wrappers.<CodeClassify>query().lambda().in(CodeClassify::getId, classifyIdList));
+ codeClassifyVOS=classifyService.codeClassifyDO2VOs(libIdDos);
+ }else {
+ List<CodeClassify> libIdDos = classifyService.selectByWrapper(Wrappers.<CodeClassify>query().lambda().eq(CodeClassify::getId, libId));
+ String oid= libIdDos.get(0).getOid();
+ TreeQueryObject treeQueryObject=new TreeQueryObject();
+ treeQueryObject.setParentOid(oid);
+ treeQueryObject.setQueryAllLevel(true);
+ codeClassifyVOS=classifyService.selectCodeClassifyDOByTree(treeQueryObject);
+ }
+
+ }catch (Throwable e){
+ e.printStackTrace();;
+ msg="鏌ヨ鍒嗙被澶辫触:"+e.getMessage();
+ }finally {
+ // resultData.setErrorid(errorid);
+ // resultData.setMsg(msg);
+ // resultClassifyVO.setResultData(resultData);
+ }
+ if(dataType.equals("xml")){
+ //缁勭粐杩斿洖鎺ュ彛淇℃伅
+ XStream xStream = new XStream(new DomDriver());
+ xStream.processAnnotations(XMLResultSystemVO.class);
+ xStream.autodetectAnnotations(true);
+ //resultStr = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n" + xStream.toXML(resultData);
+
+ }else{
+ Object object = JSONObject.toJSON(resultClassifyVO);
+ resultStr = object.toString();
+ }
+ try {
+ //璁板綍鏃ュ織
+ this.saveLogs(systemId, systemId, data, resultStr, issucess, msg, "queryClassify");
+ }catch (Throwable e){
+ e.printStackTrace();
+ }
+ log.info("杩斿洖鍙傛暟:"+resultStr);
+ return resultStr;
}
/***
@@ -315,10 +510,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";
@@ -341,13 +536,13 @@
if (!sectype.equals(CodeSecTypeEnum.CODE_SERIAL_SEC.getValue())) {
String name = codeBasicSecVO.getName();
String sectypeText = codeBasicSecVO.getSecTypeText();
- logger.info("鐮佹鍚嶇О:"+name);
- logger.info("鎻忚堪:"+sectypeText);
+ log.info("鐮佹鍚嶇О:"+name);
+ log.info("鎻忚堪:"+sectypeText);
CodeOrderSecDTO CodeOrderSecDTO = new CodeOrderSecDTO();
if (sectionVOMap.containsKey(name)) {
CodeOrderSecDTO.setSecOid(codeBasicSecVO.getOid());
String sectypeValue = sectionVOMap.get(name);
- logger.info("鐮佹鍊�:"+sectypeValue);
+ log.info("鐮佹鍊�:"+sectypeValue);
CodeOrderSecDTO.setSecValue(sectypeValue);
codeOrderSecDTOList.add(CodeOrderSecDTO);
} else {
@@ -478,7 +673,7 @@
dockingLoge.setInterfaceStatus("false");//鎺ュ彛闆嗘垚鐘舵��
}
dockingLogeService.save(dockingLoge);
- logger.info("闆嗘垚鎺ㄩ�佹暟鎹垚鍔�,systemId:"+systemId+",systemname:"+systemName+",operation:"+operation+",param:"+parmaData);
+ log.info("闆嗘垚鎺ㄩ�佹暟鎹垚鍔�,systemId:"+systemId+",systemname:"+systemName+",operation:"+operation+",param:"+parmaData);
}
/***
--
Gitblit v1.9.3