Source/UBCS-WEB/src/views/monitor/log/localLog.vue
@@ -69,7 +69,7 @@ // menuWidth: 300, dialogClickModal: false, highlightCurrentRow: true, //è¡é䏿¶é«äº® rowKey: "logName", //è¡æ°æ®ç Keyï¼ç¨æ¥ä¼å Table çæ¸²æ rowKey: "randomOid", //è¡æ°æ®ç Keyï¼ç¨æ¥ä¼å Table çæ¸²æ column: [ { label: "æå¡åç§°", @@ -121,11 +121,18 @@ }; } }, methods: { methods: { // 夿客æ·ç«¯æå¨çæä½ç³»ç»å¹³å° isWindows() { return navigator.platform.indexOf('Win') !== -1 }, // æ ¹æ®æä½ç³»ç»å¹³å°è¿åç¸åºçè·¯å¾åé符 getPathSeparator() { return this.isWindows() ? '\\' : '/' }, downLoadLogFile(row){ this.downloadLoading = true; let logPath = row.hasChildren ? row.logPath:row.logPath+"\\"+row.logName; let logPath = row.hasChildren ? row.logPath:row.logPath+this.getPathSeparator()+row.logName; downLoadLog(Object.assign({},row,{logFullPaths:logPath})).then(res=>{ func.downloadFileByBlobHandler(res); this.downloadLoading = false; Source/UBCS/ubcs-ops-api/ubcs-log-api/pom.xml
@@ -10,6 +10,14 @@ <modelVersion>4.0.0</modelVersion> <artifactId>ubcs-log-api</artifactId> <dependencies> <dependency> <groupId>com.vci.ubcs</groupId> <artifactId>ubcs-util-api</artifactId> <version>3.0.1.RELEASE</version> <scope>compile</scope> </dependency> </dependencies> <properties> <maven.compiler.source>8</maven.compiler.source> Source/UBCS/ubcs-ops-api/ubcs-log-api/src/main/java/com/vci/ubcs/log/entity/LogOperate.java
@@ -1,10 +1,14 @@ package com.vci.ubcs.log.entity; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; import java.util.Date; /** * æä½æ¥å¿ç®¡ç:(å æ¬ç»å½æ¥å¿ãæä½æ¥å¿ãæææ¥å¿ï¼ä»¥å管çåç以ä¸ä¸ç§æ¥å¿) @@ -14,6 +18,7 @@ @Data @AllArgsConstructor @NoArgsConstructor @TableName("PL_LOG_OPERATE") public class LogOperate implements Serializable { /** @@ -24,6 +29,7 @@ /** * ä¸»é® */ @TableId("OID") private String oid; /** @@ -54,7 +60,7 @@ /** * æ¶é´ */ private String time; private Date time; /** * æä½ç»æ @@ -66,4 +72,9 @@ */ private String description; /** * æ¥å¿ç±»å */ private String logType; } Source/UBCS/ubcs-ops-api/ubcs-log-api/src/main/java/com/vci/ubcs/log/entity/SystemLog.java
ÎļþÒÑɾ³ý Source/UBCS/ubcs-ops-api/ubcs-log-api/src/main/java/com/vci/ubcs/log/enumpack/ServiceNameRoleEnum.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,182 @@ package com.vci.ubcs.log.enumpack; import com.vci.ubcs.starter.web.enumpck.BaseEnum; /** * @author ludc * @date 2023/11/26 18:54 */ public enum ServiceNameRoleEnum implements BaseEnum { /** * ç¼ç æå¡ */ UBCS_CODE("ubcs_code","ç¼ç æå¡"), /** * é´ææå¡ */ UBCS_AUTH("ubcs_auth","é´ææå¡"), /** * æµç¨ç®¡çæå¡ */ UBCS_FLOW("ubcs_flow","æµç¨ç®¡çæå¡"), /** * 对象建模管çæå¡ */ UBCS_OMD("ubcs_omd","对象建模管çæå¡"), /** * æ¥å¿ç®¡çæå¡ */ UBCS_LOG("ubcs_log","æ¥å¿ç®¡çæå¡"), /** * éæç®¡çæå¡ */ UBCS_APPLYJTCODESERVICE("ubcs_applyjtcodeservice","éæç®¡çæå¡"), /** * ç³»ç»ç®¡çæå¡ */ UBCS_SYSTEM("ubcs_system","ç³»ç»ç®¡çæå¡"), /** * é¦é¡µæ¡é¢æå¡ */ UBCS_DESK("ubcs_desk","é¦é¡µæ¡é¢æå¡"), /** * æä»¶ç®¡çæå¡ */ UBCS_RESOURCE("ubcs_resource","æä»¶ç®¡çæå¡"), /** * ç½å ³æå¡ */ UBCS_GATEWAY("ubcs_gateway","ç½å ³æå¡"), /** * æ¥è¡¨æå¡ */ UBCS_REPORT("ubcs_report","æ¥è¡¨æå¡"), /** * ç¨æ·ä¿¡æ¯ç®¡çæå¡ */ UBCS_USER("ubcs_user","ç¨æ·ä¿¡æ¯ç®¡çæå¡"), /** * ç¨æ·ä¿¡æ¯ç®¡çæå¡ */ UBCS_ADMIN("ubcs_user","æå¡æ²»çæå¡") ; /** * æä¸¾çå¼ */ private String value; /** * æä¸¾æ¾ç¤ºææ¬ */ private String text; /** * è·åæä¸¾å¼ * * @return æä¸¾å¼ */ @Override public String getValue() { return value; } /** * 设置æä¸¾å¼ * * @param value æä¸¾å¼ */ public void setValue(String value) { this.value = value; } /** * è·åæä¸¾æ¾ç¤ºææ¬ * * @return æ¾ç¤ºææ¬ */ @Override public String getText() { return text; } /** * 设置æ¾ç¤ºææ¬ * * @param text æ¾ç¤ºææ¬ */ public void setText(String text) { this.text = text; } /** * æé 彿° * * @param value å¼ * @param text æ¾ç¤ºææ¬ */ private ServiceNameRoleEnum(String value, String text) { this.value = value; this.text = text; } /** * æ ¹æ®åç§°è·å对åºçæä¸¾å¼ * * @param text åç§° * @return æä¸¾å¼ */ public static String getValueByText(String text) { for (ServiceNameRoleEnum wenum : ServiceNameRoleEnum.values()) { if (wenum.getText().equalsIgnoreCase(text)) { return wenum.getValue(); } } return ""; } /** * æ ¹æ®æä¸¾å¼è·ååç§° * * @param value æä¸¾å¼ * @return åç§° */ public static String getTextByValue(String value) { for (ServiceNameRoleEnum wenum : ServiceNameRoleEnum.values()) { if (wenum.getValue().equalsIgnoreCase(value)) { return wenum.getText(); } } return ""; } /** * æ ¹æ®æä¸¾å¼è·åæä¸¾å¯¹è±¡ * * @param value æä¸¾å¼ * @return æä¸¾å¯¹è±¡ï¼ä¸å卿¶åè¿ånull */ public static ServiceNameRoleEnum forValue(String value) { for (ServiceNameRoleEnum wenum : ServiceNameRoleEnum.values()) { if (wenum.getValue().equalsIgnoreCase(value)) { return wenum; } } return null; } } Source/UBCS/ubcs-ops-api/ubcs-log-api/src/main/java/com/vci/ubcs/log/vo/LocalLogVO.java
ÎļþÃû´Ó Source/UBCS/ubcs-ops-api/ubcs-log-api/src/main/java/com/vci/ubcs/log/dto/LocalLogVO.java ÐÞ¸Ä @@ -1,6 +1,7 @@ package com.vci.ubcs.log.dto; package com.vci.ubcs.log.vo; import com.vci.ubcs.log.entity.LocalLog; import com.vci.ubcs.starter.web.util.VciBaseUtil; import javafx.scene.Parent; import lombok.AllArgsConstructor; import lombok.Data; @@ -28,4 +29,9 @@ */ private String logFullPaths; /** * éæºçoidï¼ä¸ºäºè§£å³è¡¨æ ¼æ¸²ærowkeyéå¤çé®é¢ */ private String randomOid = VciBaseUtil.getPk(); } Source/UBCS/ubcs-ops/ubcs-log/src/main/java/com/vci/ubcs/log/controller/LogLocalController.java
@@ -1,28 +1,23 @@ package com.vci.ubcs.log.controller; import com.alibaba.fastjson.JSON; import com.alibaba.nacos.common.utils.StringUtils; import com.vci.ubcs.log.dto.LocalLogVO; import com.vci.ubcs.log.vo.LocalLogVO; import com.vci.ubcs.log.service.ILogLocalService; import com.vci.ubcs.log.entity.LocalLog; import com.vci.ubcs.resource.utils.FileDownloadUtil; import com.vci.ubcs.starter.web.util.ControllerUtil; import com.vci.ubcs.starter.web.util.LangBaseUtil; import com.vci.ubcs.starter.web.util.VciBaseUtil; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springblade.core.tenant.annotation.NonDS; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.StringUtil; import org.springframework.web.bind.annotation.*; import springfox.documentation.annotations.ApiIgnore; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.nio.charset.StandardCharsets; import java.rmi.ServerException; import java.util.List; import java.util.Map; /** * æ¬å°ç³»ç»æ¥å¿ @@ -44,7 +39,7 @@ * @return */ @PostMapping("/lazy-list") public R<List<LocalLog>> getSystemLogList(@RequestBody LocalLog localLog){ public R<List<LocalLogVO>> getSystemLogList(@RequestBody LocalLog localLog){ return R.data(logLocalService.getSystemLogList(localLog.getLogPath())); } Source/UBCS/ubcs-ops/ubcs-log/src/main/java/com/vci/ubcs/log/controller/LogSystemController.java
ÎļþÒÑɾ³ý Source/UBCS/ubcs-ops/ubcs-log/src/main/java/com/vci/ubcs/log/feign/LogClient.java
@@ -67,4 +67,7 @@ log.setParams(log.getParams().replace("&", "&")); return R.data(errorLogService.save(log)); } } Source/UBCS/ubcs-ops/ubcs-log/src/main/java/com/vci/ubcs/log/service/ILogLocalService.java
@@ -1,13 +1,12 @@ package com.vci.ubcs.log.service; import com.vci.ubcs.log.dto.LocalLogVO; import com.vci.ubcs.log.vo.LocalLogVO; import com.vci.ubcs.log.entity.LocalLog; import com.vci.ubcs.resource.bo.FileObjectBO; import org.springblade.core.tool.api.R; import java.rmi.ServerException; import java.util.List; import java.util.Map; /** * æ¬å°ç³»ç»æ¥å¿ @@ -21,7 +20,7 @@ * @param logParentPath * @return */ List<LocalLog> getSystemLogList(String logParentPath); List<LocalLogVO> getSystemLogList(String logParentPath); /** * ä¸è½½ï¼æ ¹æ®æå¡åæå¨æä»¶ååæä»¶åä¸è½½æä»¶ Source/UBCS/ubcs-ops/ubcs-log/src/main/java/com/vci/ubcs/log/service/ILogOperateService.java
@@ -2,6 +2,8 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.vci.ubcs.log.entity.LogOperate; import com.vci.ubcs.starter.web.pagemodel.BladeQueryObject; import org.springblade.core.log.exception.ServiceException; import java.util.List; @@ -17,13 +19,13 @@ * @param logOperate * @return */ boolean saveLogOperate(LogOperate logOperate); boolean saveLogOperate(LogOperate logOperate) throws ServiceException; /** * æ¡ä»¶æ¥è¯¢è·åæ¥å¿å表 * @param logOperate * @param bladeQueryObject * @return */ List<LogOperate> listByCondition(LogOperate logOperate); List<LogOperate> listByCondition(BladeQueryObject bladeQueryObject) throws ServiceException; } Source/UBCS/ubcs-ops/ubcs-log/src/main/java/com/vci/ubcs/log/service/ILogSystemService.java
ÎļþÒÑɾ³ý Source/UBCS/ubcs-ops/ubcs-log/src/main/java/com/vci/ubcs/log/service/impl/LogLocalServiceImpl.java
@@ -1,14 +1,12 @@ package com.vci.ubcs.log.service.impl; import com.vci.ubcs.log.dto.LocalLogVO; import com.vci.ubcs.log.enumpack.ServiceNameRoleEnum; import com.vci.ubcs.log.vo.LocalLogVO; import com.vci.ubcs.log.service.ILogLocalService; import com.vci.ubcs.log.entity.LocalLog; import com.vci.ubcs.resource.utils.FileUtil; import com.vci.ubcs.resource.utils.ZipUtil; import com.vci.ubcs.resource.vo.FileObjectVO; import com.vci.ubcs.starter.exception.VciBaseException; import com.vci.ubcs.starter.web.util.BeanUtil; import com.vci.ubcs.starter.web.util.VciBaseUtil; import lombok.extern.slf4j.Slf4j; import org.apache.commons.io.IOUtils; import org.springblade.core.log.exception.ServiceException; @@ -17,16 +15,13 @@ import com.vci.ubcs.resource.bo.FileObjectBO; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Configuration; import org.springframework.context.EnvironmentAware; import org.springframework.core.env.Environment; import org.springframework.stereotype.Service; import org.springframework.util.StringUtils; import javax.annotation.Resource; import java.io.*; import java.net.MalformedURLException; import java.net.URL; import java.nio.file.FileSystems; import java.nio.file.Files; import java.nio.file.Path; @@ -43,7 +38,7 @@ */ @Service @Slf4j public class LogLocalServiceImpl implements ILogLocalService{ public class LogLocalServiceImpl implements ILogLocalService, EnvironmentAware { /** * å个æå¡åæ¾ççç¶è·¯å¾ @@ -62,9 +57,13 @@ */ private Boolean isWindows = true; { String os = System.getProperty("os.name").toLowerCase(); //é»è®¤å°±é 置为windowsçï¼å¦æä¸æ¯å½åç³»ç»ä¸æ¯windowså°±éè¦å¯¹å ¶è½¬æ¢ä¸ºlinuxçæä»¶è·¯å¾æ ¼å¼ /** * æ ¹æ®å½åè¿è¡çç¯å¢ï¼å¯¹é ç½®çæ¥å¿è·¯å¾æ ¼å¼è¿è¡è°æ´ * @param environment */ @Override public void setEnvironment(Environment environment) { String os = environment.getProperty("os.name").toLowerCase(); if (!os.contains("win")) { this.PARENTPATH = this.PARENTPATH.substring(this.PARENTPATH.lastIndexOf(":") + 1).replace("\\", "/"); this.LOGPATH = this.LOGPATH.replace("\\", "/"); @@ -84,8 +83,8 @@ * @return */ //@Override public List<LocalLog> getSystemLogList(String logParentPath) { List<LocalLog> localLogs = new ArrayList<>(); public List<LocalLogVO> getSystemLogList(String logParentPath) { List<LocalLogVO> localLogsVO = new ArrayList<>(); // ä¸ä¸ºç©ºè¯´ææ¯å è½½å½åè¿ä¸ªæå¡è·¯å¾ä¸çæ¥å¿æä»¶ if(Func.isNotEmpty(logParentPath)){ File file = new File(logParentPath); @@ -93,7 +92,7 @@ File[] files = file.listFiles(); Arrays.stream(files).forEach(item->{ // ç»å»ºæ¥å¿æä»¶å¯¹è±¡ LocalLog localLog = new LocalLog(); LocalLogVO localLog = new LocalLogVO(); localLog.setLogName(item.getName()); localLog.setLogType(getLogType(item.getName())); localLog.setCreateTime(getLastModifiedOrCreatTime(false,logParentPath)); @@ -103,7 +102,7 @@ localLog.setServiceId(serviceId); localLog.setServiceName(getServiceName(serviceId)); localLog.setHasChildren(false); localLogs.add(localLog); localLogsVO.add(localLog); }); } }else { @@ -113,22 +112,24 @@ if(dir.getName().contains("ubcs_")){ String fullPath = dir.getPath() + LOGPATH; File file = new File(fullPath); LocalLog localLog = new LocalLog(); localLog.setLastModifier(getLastModifiedOrCreatTime(true,fullPath)); localLog.setCreateTime(getLastModifiedOrCreatTime(false,fullPath)); localLog.setLogPath(fullPath); String serviceId = getServiceId(file.getPath()); localLog.setServiceId(serviceId); String serviceName = getServiceName(serviceId); localLog.setServiceName(serviceName); localLog.setLogType(serviceName+"æ¥å¿ç¶ç®å½"); localLog.setLogName(serviceName+"æ¥å¿ç¶ç®å½"); localLog.setHasChildren(true); localLogs.add(localLog); if(file.exists()){ LocalLogVO localLogVO = new LocalLogVO(); localLogVO.setLastModifier(getLastModifiedOrCreatTime(true,fullPath)); localLogVO.setCreateTime(getLastModifiedOrCreatTime(false,fullPath)); localLogVO.setLogPath(fullPath); String serviceId = getServiceId(file.getPath()); localLogVO.setServiceId(serviceId); String serviceName = getServiceName(serviceId); localLogVO.setServiceName(serviceName); localLogVO.setLogType(serviceName+"æ¥å¿ç¶ç®å½"); localLogVO.setLogName(serviceName+"æ¥å¿ç¶ç®å½"); localLogVO.setHasChildren(true); localLogsVO.add(localLogVO); } } }); } return localLogs; return localLogsVO; } /** @@ -193,7 +194,8 @@ * @return */ private String getServiceName(String serViceId){ return EnumCache.getValue(EnumEnum.SERCIVE_NAME_ROLE, serViceId); // EnumCache.getValue(EnumEnum.SERCIVE_NAME_ROLE, serViceId) return ServiceNameRoleEnum.getTextByValue(serViceId); } /** @@ -223,7 +225,7 @@ throw new ServerException("æªè·åå°è¯¥æ¥å¿è·¯å¾ï¼"); } FileObjectBO fileObjectBO = new FileObjectBO(); String logFullPaths = localLogVO.getLogFullPaths(); String logFullPaths = this.convertWindows2Linux(localLogVO.getLogFullPaths()); // 夿æ¯å¦æ¯ç¶ç®å½ if(!localLogVO.getHasChildren()){ //åªä¸è½½ä¸ä¸ªæ¥å¿æä»¶ @@ -281,6 +283,19 @@ } /** * ä¸è½½ä¹åå°windowsçè·¯å¾æ ¼å¼è½¬æ¢ä¸ºlinux * @param fullPath * @return */ private String convertWindows2Linux(String fullPath){ String os = System.getProperty("os.name").toLowerCase(); if (!os.contains("win")) { fullPath = fullPath.replace("\\", "/"); } return fullPath; } /** * å 餿¥å¿æä»¶ * @param localLogVO æä»¶å ¨è·¯å¾éå * @throws ServerException Source/UBCS/ubcs-ops/ubcs-log/src/main/java/com/vci/ubcs/log/service/impl/LogOperateServiceImpl.java
@@ -6,12 +6,15 @@ import com.vci.ubcs.log.entity.LogOperate; import com.vci.ubcs.log.mapper.LogOperateMapper; import com.vci.ubcs.log.service.ILogOperateService; import com.vci.ubcs.starter.web.pagemodel.BladeQueryObject; import org.springblade.core.log.exception.ServiceException; import org.springblade.core.mp.support.Condition; import org.springblade.core.tool.utils.Func; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; import java.util.Map; /** * æä½æ¥å¿ç®¡ç:(å æ¬ç»å½æ¥å¿ãæä½æ¥å¿ãæææ¥å¿ï¼ä»¥å管çåç以ä¸ä¸ç§æ¥å¿) @@ -30,7 +33,7 @@ * @return */ @Override public boolean saveLogOperate(LogOperate logOperate) { public boolean saveLogOperate(LogOperate logOperate)throws ServiceException { if(Func.isEmpty(logOperate)){ return false; } @@ -39,13 +42,17 @@ /** * æ¡ä»¶æ¥è¯¢è·åæ¥å¿å表 * @param logOperate * @param bladeQueryObject * @return */ @Override public List<LogOperate> listByCondition(LogOperate logOperate) { QueryWrapper<LogOperate> queryWrapper = Condition.getQueryWrapper(logOperate); this.list(queryWrapper); public List<LogOperate> listByCondition(BladeQueryObject bladeQueryObject) throws ServiceException{ Map<String, Object> conditionMap = bladeQueryObject.getConditionMap(); if(conditionMap.isEmpty() || Func.isBlank(conditionMap.get("logType").toString())){ throw new ServiceException("æ¥å¿æ¥è¯¢å¿ ä¼ åæ°ãæ¥å¿ç±»åãä¸è½ä¸ºç©ºï¼"); } // map对象转æ¢ä¸ºæ¥è¯¢å¯¹è±¡ QueryWrapper<LogOperate> queryWrapper = Condition.getQueryWrapper(bladeQueryObject.getConditionMap(),LogOperate.class); return this.list(queryWrapper); } Source/UBCS/ubcs-ops/ubcs-log/src/main/java/com/vci/ubcs/log/service/impl/LogSystemServiceImpl.java
ÎļþÒÑɾ³ý Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/DefaultAttrAssimtUtil.java
@@ -144,7 +144,6 @@ baseModel.setLastV(dataMap.getOrDefault("LASTV","")); Object revisionseq =dataMap.getOrDefault("REVISIONSEQ",""); if(revisionseq!=null){ baseModel.setRevisionSeq(chageStringToInt(revisionseq.toString())); } @@ -157,7 +156,15 @@ baseModel.setVersionValue(dataMap.getOrDefault("VERSIONVALUE","")); baseModel.setRevisionOid(dataMap.getOrDefault("REVISIONOID","")); baseModel.setLastModifier(AuthUtil.getUser().getAccount()); baseModel.setLcStatus(dataMap.getOrDefault("LCSTATUS","")); baseModel.setName(dataMap.getOrDefault("NAME","")); baseModel.setTenantId(dataMap.getOrDefault("TENADTID","")); baseModel.setDescription(dataMap.getOrDefault("DESCRIOTION","")); baseModel.setCopyFromVersion(dataMap.getOrDefault("COPYFROMVERSION","")); Object secretgrade=dataMap.get("SECRETGRADE"); if(secretgrade!=null){ baseModel.setSecretGrade(chageStringToInt(secretgrade.toString())); } }catch (VciBaseException e){ e.printStackTrace(); } Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -873,13 +873,13 @@ //ä¸å¿½ç¥å¤§å°åãä¸å»ç©ºãä¸å¿½ç¥å ¨åè§ temp = "%s"; } queryKey = String.format(temp, "t." + attrId); queryKey = String.format(temp, "nvl("+ "t." + attrId +",'/')"); queryValue = String.format(temp, "'" + (trim ? value.trim() : value) + "'"); conditionMap.put(queryKey, queryValue); } else { if(StringUtils.isNotBlank(value)) { //ä¸ºç©ºçæ¶åä¸ä»£è¡¨ä¸æ ¡éªï¼åªæ¯ä¸å»é¤ç¸å ³çä¿¡æ¯ conditionMap.put("t." + attrId, "'" + value + "'"); conditionMap.put("nvl("+ "t." + attrId+",'/')", "'" + value + "'"); }else{ conditionMap.put("t." + attrId, QueryOptionConstant.ISNULL); } Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
@@ -2102,50 +2102,54 @@ Map<String, List<BaseModel>> indexTodataMap = keyResultVO.getIndexTODataMap(); cboList.stream().forEach(cbo -> { String rowIndex = cbo.getAttributeValue(IMPORT_ROW_INDEX); String msg = errorKeyMap.get(rowIndex); if (indexTodataMap.containsKey(rowIndex)) { String oid = cbo.getOid(); String sourceOid = oid; String code = ""; String groupCode=""; String errorid = "201"; if(codeOidToSystemOidMap.containsKey(oid)){ sourceOid=codeOidToSystemOidMap.get(oid); } List<BaseModel> newCboList = indexTodataMap.get(rowIndex); if (!CollectionUtils.isEmpty(newCboList)) { BaseModel newCbo= newCboList.get(0); String lcstatus =newCbo.getLcStatus(); String newOid =newCbo.getOid(); Date ts =newCbo.getTs(); code = StringUtils.isBlank(newCbo.getId())?"":newCbo.getId(); groupCode=newCbo.getData().getOrDefault("GROUPCODE",""); String lastmodifier=newCbo.getLastModifier(); if (lcstatus!=null&&!lcstatus.equals(CodeDefaultLC.RELEASED.getValue())) { newCbo.setOid(newOid); newCbo.setLastModifier(lastmodifier); /*if(isCodeOrGroupCode) { newCbo.setId(code); }else{ newCbo.getData().put("groupcode",groupCode); }*/ newCbo.setTs(ts); cbo.setLastModifier(cbo.getLastModifier()); editBoList.add(newCbo); } String mes = errorKeyMap.get(rowIndex); XMLResultDataObjectDetailDO resultDataObjectDetailDO = new XMLResultDataObjectDetailDO(); if(isCodeOrGroupCode) { if(StringUtils.isBlank(groupCode)){ errorid="1"; mes+="ï¼ç³è¯·çç¼ç ç±»å为éå¢ç ï¼çå¾ éå¢ç¼ç èµå¼"; //å¤çå ³é®å±æ§æ¥åºå¤æ¡çè¯ï¼æ ¹æ®éæè°ç¨çå½åå类代å·åå½ååç±»çç å¼ã Map<String/**ç¼ç **/, BaseModel/**éå¤ç¼ç æ°æ®**/> classOidTOBaseModelMap = new HashMap<>(); newCboList.stream().forEach(baseModel->{ String codeclsfid=baseModel.getData().get(CODE_CLASSIFY_OID_FIELD.toUpperCase(Locale.ROOT)); classOidTOBaseModelMap.put(codeclsfid,baseModel); }); String codeclsfid= classifyFullInfo.getCurrentClassifyVO().getOid(); if(classOidTOBaseModelMap.containsKey(codeclsfid)){ BaseModel newCbo= classOidTOBaseModelMap.get(codeclsfid); String lcstatus =newCbo.getLcStatus(); String newOid =newCbo.getOid(); Date ts =newCbo.getTs(); code = StringUtils.isBlank(newCbo.getId())?"":newCbo.getId(); if(isCodeOrGroupCode) { code=newCbo.getData().getOrDefault("GROUPCODE",""); if(StringUtils.isBlank(code)){ errorid="1"; msg="ï¼ç³è¯·çç¼ç ç±»å为éå¢ç ï¼çå¾ éå¢ç¼ç èµå¼"; } } resultDataObjectDetailDO.setCode(groupCode); String lastmodifier=newCbo.getLastModifier(); if (lcstatus!=null&&!lcstatus.equals(CodeDefaultLC.RELEASED.getValue())) { newCbo.setOid(newOid); newCbo.setLastModifier(lastmodifier); newCbo.setTs(ts); cbo.setLastModifier(cbo.getLastModifier()); editBoList.add(newCbo); } }else{ resultDataObjectDetailDO.setCode(code); errorid="205"; msg+="ï¼ç¼ç åå±äºå ¶ä»åç±»ã"; } XMLResultDataObjectDetailDO resultDataObjectDetailDO = new XMLResultDataObjectDetailDO(); resultDataObjectDetailDO.setCode(code); resultDataObjectDetailDO.setId(sourceOid); resultDataObjectDetailDO.setErrorid(errorid); resultDataObjectDetailDO.setMsg(mes); resultDataObjectDetailDO.setMsg(msg); resultDataObjectDetailDOs.add(resultDataObjectDetailDO); } @@ -3904,6 +3908,7 @@ newDataList.stream().forEach(stringStringMap -> { BaseModel baseModel=new BaseModel(); DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(stringStringMap,baseModel); baseModel.setData(stringStringMap); newCboList.add(baseModel); }); // æ·»å éè¯¯å¼ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java
@@ -104,7 +104,6 @@ // && StringUtils.isNotBlank(cbo.getAttributeValue(CODE_SEC_LENGTH_FIELD)) ){ //æ¯å岿°æ®å¯¼å ¥ //å岿°æ®æ§è¡çæ¶åï¼è¿ä¸ªç³»ç»ä¼å¾å¡ //ä¸»è¦æ¯ä¸ºäºå½å ¥æå¤§æµæ°´å·åallcode //SessionInfo sessionInfo = VciBaseUtil.getCurrentUserSessionInfo(); List<CodeAllCode> allCodeDOList = new CopyOnWriteArrayList<>(); @@ -419,7 +418,6 @@ allCodeDOList.stream().filter(s -> StringUtils.equalsIgnoreCase("codeallcode",s.getBtmname())).forEach(s -> { s.setLcStatus(statusMap.get(s.getOid())); }); //éè¿IDæ¥è¿è¡å»é List<CodeAllCode> distinctCodeAllCOdes = allCodeDOList.stream().collect(Collectors @@ -772,20 +770,20 @@ /** * æ¼æ¥ååç¼ * @param secVO * @param secValue * @param secVO ç æ®µ * @param secValue ç å¼ * @return */ private String joinPreffixAndSuffix(CodeBasicSecVO secVO, String secValue){ StringBuilder joinSecValue = new StringBuilder(); // æ¼æ¥åç¼ if (Func.isNotEmpty(secVO.getPrefixCode())) { if (Func.isNotEmpty(secVO.getPrefixCode()) && Func.isNotEmpty(secValue)) { joinSecValue = joinSecValue.append(secVO.getPrefixCode()); } // å¨ä¸é´æ¼æ¥å¼ joinSecValue.append(secValue); // æ¼æ¥åç¼ if(Func.isNotEmpty(secVO.getSuffixCode())){ if(Func.isNotEmpty(secVO.getSuffixCode()) && Func.isNotEmpty(secValue)){ joinSecValue = joinSecValue.append(secVO.getSuffixCode()); } return joinSecValue.toString();