From ab234e8b6a7cc2a52be8dbe04c7b731105f6a030 Mon Sep 17 00:00:00 2001
From: xiejun <xj@2023>
Date: 星期五, 01 十二月 2023 10:42:27 +0800
Subject: [PATCH] 字符集修改,删除接口完善
---
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeRuleCharacterVO.java | 4 ++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeRuleCharacterService.java | 3 +
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleCharacterServiceImpl.java | 45 ++++++++++++++++++----
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java | 22 +++++++++++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeRuleCharacterController.java | 6 +-
5 files changed, 68 insertions(+), 12 deletions(-)
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeRuleCharacterVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeRuleCharacterVO.java
index 74ce347..bad7da2 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeRuleCharacterVO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeRuleCharacterVO.java
@@ -23,6 +23,10 @@
* 瀛楃闆�
*/
private String chartValue;
+ /**
+ * 闇�鏇挎崲鐨勫瓧绗�
+ */
+ private String oldChartValue;
/***
* 瀛楃绫诲瀷
*/
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeRuleCharacterController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeRuleCharacterController.java
index a7f08a7..5d6b29a 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeRuleCharacterController.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeRuleCharacterController.java
@@ -35,7 +35,7 @@
*/
@PostMapping("/addSave")
public R addSave(@RequestBody CodeRuleCharacterVO codeRuleCharacterVO){
- return iCodeRuleCharacterService.saveOrUpdate(codeRuleCharacterVO);
+ return iCodeRuleCharacterService.saveOrUpdate(codeRuleCharacterVO,1);
}
/**
* 淇敼瑙勫垯瀵硅薄
@@ -44,7 +44,7 @@
*/
@PostMapping("/editSave")
public R editSave(@RequestBody CodeRuleCharacterVO codeRuleCharacterVO){
- return iCodeRuleCharacterService.saveOrUpdate(codeRuleCharacterVO);
+ return iCodeRuleCharacterService.saveOrUpdate(codeRuleCharacterVO,2);
}
/**
@@ -54,6 +54,6 @@
*/
@PostMapping("/delete")
public R delete(@RequestBody CodeRuleCharacterVO codeRuleCharacterVO){
- return iCodeRuleCharacterService.saveOrUpdate(codeRuleCharacterVO);
+ return iCodeRuleCharacterService.saveOrUpdate(codeRuleCharacterVO,3);
}
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java
index 97cb6df..a323935 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java
@@ -754,4 +754,26 @@
public R addSaveBZ (@RequestBody CodeBZApplyDTO codeBZApplyDTO) throws Exception {
return R.success(engineService.addSaveBZ(codeBZApplyDTO));
}
+
+ /**
+ * 涓嬭浇鎵归噺鐢宠鐨勫鍏ユā鏉�
+ * @param codeClassifyOid 鍒嗙被鐨勪富閿�
+ * @param response 鍝嶅簲瀵硅薄
+ * @throws IOException 鎶涘嚭寮傚父
+ */
+ @GetMapping("/exportGroupCodeExcel")
+ @VciBusinessLog(operateName = "瀵煎嚭闆嗗洟鐮�")
+ public void exportGroupCodeExcel(String codeClassifyOid, HttpServletResponse response) throws IOException{
+ String excelName = mdmIOService.createImportExcel(codeClassifyOid,false);
+ try {
+ ControllerUtil.writeFileToResponse(response,excelName);
+ } catch (Throwable e) {
+ //濡傛灉鍑洪敊,鎶婇敊璇俊鎭啓鍒皌ext
+ String msg = LangBaseUtil.getErrorMsg(e);
+ if(StringUtils.isBlank(msg)){
+ msg = "鏈煡閿欒";
+ }
+ ControllerUtil.writeDataToResponse(response,msg.getBytes(StandardCharsets.UTF_8),null);
+ }
+ }
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeRuleCharacterService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeRuleCharacterService.java
index f96aada..f91c7cd 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeRuleCharacterService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeRuleCharacterService.java
@@ -32,8 +32,9 @@
/***
* 淇濆瓨缂栫爜瑙勫垯瀛楃闆�
* @param codeRuleCharacterVO
+ * @param operationType
* @return
*/
- R saveOrUpdate(CodeRuleCharacterVO codeRuleCharacterVO)throws VciBaseException;
+ R saveOrUpdate(CodeRuleCharacterVO codeRuleCharacterVO,int operationType)throws VciBaseException;
}
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 aaabd6f..9284695 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
@@ -10,6 +10,7 @@
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 org.springblade.core.tool.api.R;
@@ -63,20 +64,48 @@
* @throws VciBaseException
*/
@Override
- public R saveOrUpdate(CodeRuleCharacterVO codeRuleCharacterVO) throws VciBaseException {
+ public R saveOrUpdate(CodeRuleCharacterVO codeRuleCharacterVO,int operation) throws VciBaseException {
VciBaseUtil.alertNotNull(codeRuleCharacterVO.getCodeRuleId(),"缂栫爜瑙勫垯id",codeRuleCharacterVO.getChartType(),"瀛楃闆嗙被鍨�");
CodeRuleCharacter codeRuleCharacter=codeRuleCharacterMapper.selectOne(Wrappers.<CodeRuleCharacter>query().lambda().eq(CodeRuleCharacter::getCodeRuleId,codeRuleCharacterVO.getCodeRuleId()).eq(CodeRuleCharacter::getChartType,codeRuleCharacterVO.getChartType()));
if(codeRuleCharacter!=null&& StringUtils.isNotBlank(codeRuleCharacter.getOid())) {
List<Character> oldCharacterList = StringUtils.isBlank(codeRuleCharacter.getChartValue())?new ArrayList<>():codeRuleCharacter.getChartValue().chars().mapToObj(c -> (char) c).collect(Collectors.toList());
List<Character> newCharacterList = StringUtils.isBlank(codeRuleCharacterVO.getChartValue())?new ArrayList<>():codeRuleCharacterVO.getChartValue().chars().mapToObj(c -> (char) c).collect(Collectors.toList());
- List<Character> intersectList = intersect(oldCharacterList, newCharacterList);
- if (intersectList.size() > 0) {
- String ss = Joiner.on(",").join(intersectList);
- throw new VciBaseException("绯荤粺涓瓨鍦ㄧ浉搴旂殑瀛楃:銆�" + ss + "銆�");
+ if(operation==1) {//鏂板鏃跺��
+ List<Character> intersectList = intersect(oldCharacterList, newCharacterList);
+ if (intersectList.size() > 0) {
+ String ss = Joiner.on(",").join(intersectList);
+ throw new VciBaseException("绯荤粺涓瓨鍦ㄧ浉搴旂殑瀛楃:銆�" + ss + "銆�");
+ }
+ List<Character> allCharacterList = union(oldCharacterList, newCharacterList);
+ String str = allCharacterList.stream().map(integer -> Func.isNotEmpty(integer) ? integer.toString() : "").collect(Collectors.joining());
+ codeRuleCharacter.setChartValue(str);
+ }else if(operation==2){//淇敼
+ String oldChartValue= codeRuleCharacterVO.getOldChartValue();
+ String chartValue= codeRuleCharacterVO.getChartValue();
+ Map<String,String> oldChartNewChartMap=new HashMap<>();
+ List<Character> chartValueList = StringUtils.isBlank(chartValue)?new ArrayList<>():chartValue.chars().mapToObj(c -> (char) c).collect(Collectors.toList());
+ List<Character> oldChartValueList = StringUtils.isBlank(oldChartValue)?new ArrayList<>():oldChartValue.chars().mapToObj(c -> (char) c).collect(Collectors.toList());
+
+ if(chartValueList.size()!=oldChartValueList.size()){
+ throw new VciBaseException("鏇挎崲鐨勫�间釜鏁颁笌閫変腑鍊肩殑涓暟涓嶇浉绛�");
+ }
+ /***
+ * id
+ */
+ for (int i=0;i<oldChartValueList.size();i++){
+ Character oldValue=oldChartValueList.get(i);
+ if(oldCharacterList.contains(oldValue)){
+ int index =oldCharacterList.indexOf(oldValue);
+ oldCharacterList.set(index,chartValueList.get(i));
+ }
+ }
+ String str = oldCharacterList.stream().map(integer -> Func.isNotEmpty(integer) ? integer.toString() : "").collect(Collectors.joining());
+ codeRuleCharacter.setChartValue(str);
+ }else{//鍒犻櫎
+ oldCharacterList.removeAll(newCharacterList);
+ String str = oldCharacterList.stream().map(integer -> Func.isNotEmpty(integer) ? integer.toString() : "").collect(Collectors.joining());
+ codeRuleCharacter.setChartValue(str);
}
- List<Character> allCharacterList = union(oldCharacterList, newCharacterList);
- String str = allCharacterList.stream().map(integer -> Func.isNotEmpty(integer)?integer.toString():"").collect(Collectors.joining());
- codeRuleCharacter.setChartValue(str);
codeRuleCharacterMapper.updateById(codeRuleCharacter);
}else{
codeRuleCharacter=new CodeRuleCharacter();
--
Gitblit v1.9.3