From 03fc4cfd7abfd125b942417284999a0aea7305d9 Mon Sep 17 00:00:00 2001 From: xiejun <xiejun@vci-tech.com> Date: 星期三, 15 一月 2025 21:35:07 +0800 Subject: [PATCH] 产品型号集成,类型转换,人员组织加日志,申请接口引用码段值校验 --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleCharacterServiceImpl.java | 69 +++++++++++++++++++++++++++------- 1 files changed, 54 insertions(+), 15 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleCharacterServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleCharacterServiceImpl.java index 9284695..bdd4be6 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleCharacterServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleCharacterServiceImpl.java @@ -1,6 +1,5 @@ package com.vci.ubcs.code.service.impl; -import com.alibaba.nacos.common.utils.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -10,14 +9,15 @@ import com.vci.ubcs.code.service.ICodeRuleCharacterService; import com.vci.ubcs.code.vo.pagemodel.CodeRuleCharacterVO; import com.vci.ubcs.starter.exception.VciBaseException; -import com.vci.ubcs.starter.poi.bo.SheetRowData; import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil; import com.vci.ubcs.starter.web.util.VciBaseUtil; +import lombok.AllArgsConstructor; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.rmi.ServerException; import java.util.*; import java.util.stream.Collectors; @@ -27,10 +27,11 @@ * @date 2023-11-30 */ @Service +@AllArgsConstructor public class CodeRuleCharacterServiceImpl extends ServiceImpl<CodeRuleCharacterMapper, CodeRuleCharacter> implements ICodeRuleCharacterService { - @Autowired - private CodeRuleCharacterMapper codeRuleCharacterMapper; + private final CodeRuleCharacterMapper codeRuleCharacterMapper; + /*** * 浣跨敤缂栫爜瑙勫垯oid鑾峰彇鏁版嵁 * @param codeRuleId @@ -42,21 +43,59 @@ public List<Map<String, String>> getDataByRuleId(String codeRuleId,String chartType) throws VciBaseException { List<Map<String,String>> charValueList=new ArrayList<>(); CodeRuleCharacter codeRuleCharacter=codeRuleCharacterMapper.selectOne(Wrappers.<CodeRuleCharacter>query().lambda().eq(CodeRuleCharacter::getCodeRuleId,codeRuleId).eq(CodeRuleCharacter::getChartType,chartType)); - List<Character> characterList=codeRuleCharacter.getChartValue().chars().mapToObj(c -> (char) c).collect(Collectors.toList()); - for (int i = 0; i < characterList.size(); i += 15) { - final int startIndex = i; - final int endIndex = Math.min(i + 15, characterList.size()); - List<Character> subList = characterList.subList(startIndex, endIndex); - Map<String, String> chartMap=new HashMap<>(); - // 璋冪敤鎻掑叆鏁版嵁搴撶殑鏂规硶 - for (int j=1;j<subList.size()+1;j++){ - String characterValue=subList.get(j-1)==null?"":subList.get(j-1).toString(); - chartMap.put(String.valueOf(j),String.valueOf(characterValue)); + if(codeRuleCharacter!=null&&StringUtils.isNotBlank(codeRuleCharacter.getOid())){ + List<Character> characterList=codeRuleCharacter.getChartValue().chars().mapToObj(c -> (char) c).collect(Collectors.toList()); + for (int i = 0; i < characterList.size(); i += 15) { + final int startIndex = i; + final int endIndex = Math.min(i + 15, characterList.size()); + List<Character> subList = characterList.subList(startIndex, endIndex); + Map<String, String> chartMap=new HashMap<>(); + // 璋冪敤鎻掑叆鏁版嵁搴撶殑鏂规硶 + for (int j=1;j<subList.size()+1;j++){ + String characterValue=subList.get(j-1)==null?"":subList.get(j-1).toString(); + chartMap.put(String.valueOf(j),String.valueOf(characterValue)); + } + charValueList.add(chartMap); } - charValueList.add(chartMap); } return charValueList; } + + /*** + * 浣跨敤缂栫爜瑙勫垯oid鑾峰彇鏁版嵁 + * @param codeRuleId + * @param chartType + * @return + * @throws VciBaseException + */ + @Override + public List<Map<String, String>> getSelectListByRuleId(String codeRuleId,String chartType) throws ServerException { + List<Map<String, String>> charValueMap = new ArrayList<>(); + CodeRuleCharacter codeRuleCharacter=codeRuleCharacterMapper.selectOne(Wrappers.<CodeRuleCharacter>query().lambda().eq(CodeRuleCharacter::getCodeRuleId,codeRuleId).eq(CodeRuleCharacter::getChartType,chartType)); + if(codeRuleCharacter!=null&&StringUtils.isNotBlank(codeRuleCharacter.getOid())){ + List<Character> characterList=codeRuleCharacter.getChartValue().chars().mapToObj(c -> (char) c).collect(Collectors.toList()); + characterList.stream().forEach(item->{ + Map<String, String> map = new HashMap<>(); + map.put("lable",item.toString()); + map.put("value",item.toString()); + charValueMap.add(map); + }); + } + return charValueMap; + } + + @Override + public String getRegexStrByCodeRuleId(String codeRuleId, String chartType) throws ServerException { + StringBuilder regexStr = new StringBuilder(); + CodeRuleCharacter codeRuleCharacter=codeRuleCharacterMapper.selectOne(Wrappers.<CodeRuleCharacter>query().lambda().eq(CodeRuleCharacter::getCodeRuleId,codeRuleId).eq(CodeRuleCharacter::getChartType,chartType)); + if(codeRuleCharacter!=null&&StringUtils.isNotBlank(codeRuleCharacter.getOid())){ + regexStr.append("^["); + regexStr.append(codeRuleCharacter.getChartValue()); + regexStr.append("]+$"); + } + return regexStr.toString(); + } + /*** * 瀛楃闆嗘暟鎹繚瀛� * @param codeRuleCharacterVO -- Gitblit v1.9.3