From 76293d27f60ca77343e77d35bfbfae97cdc6035f Mon Sep 17 00:00:00 2001
From: lihang <lihang@vci-tech.com>
Date: 星期三, 24 五月 2023 18:34:37 +0800
Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs
---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreMetaAttrServiceImpl.java | 13 +
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrMappingService.java | 25 +++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrRangeService.java | 16 ++
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreAttrMapping.java | 5
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrRangeServiceImpl.java | 19 ++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrMappingWrapper.java | 46 +++++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrMappingServiceImpl.java | 173 +++++++++++++++++++++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreMetaAttrService.java | 13 +
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrRangeWrapper.java | 45 +++++
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingPreApplyCodeController.java | 82 ++++++++++
10 files changed, 429 insertions(+), 8 deletions(-)
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreAttrMapping.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreAttrMapping.java
index 666c20e..1372480 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreAttrMapping.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingPreAttrMapping.java
@@ -67,11 +67,6 @@
*/
@ApiModelProperty(value = "妯℃澘瑙嗗浘鐨刼id")
private String viewModeId;
- /***
- * 妯℃澘鍚嶇О
- */
- @ApiModelProperty(value = "妯℃澘鍚嶇О")
- private String viewModeName;
/***
* 鐩爣灞炴�у唴閮ㄥ悕绉�
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingPreApplyCodeController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingPreApplyCodeController.java
new file mode 100644
index 0000000..6ddef1b
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingPreApplyCodeController.java
@@ -0,0 +1,82 @@
+package com.vci.ubcs.code.controller;
+
+
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import com.vci.ubcs.code.service.IDockingPreAttrMappingService;
+import com.vci.ubcs.code.service.IDockingPreAttrRangeService;
+import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrMappingVO;
+import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrRangeVO;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springblade.core.tool.api.R;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 缂栫爜淇℃伅 鎺у埗鍣�
+ *
+ * @author xiejun
+ * @since 2023-05-23
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("ubcs-code/DockingPreApplyCode")
+@Api(value = "闆嗗洟灞炴�ф槧灏勯厤缃�", tags = "闆嗗洟灞炴�ф槧灏勯厤缃帴鍙�")
+public class DockingPreApplyCodeController {
+ /**
+ * 闆嗗洟灞炴�ф槧灏勯厤缃睘鎬�
+ */
+ private final IDockingPreAttrMappingService dockingPreAttrMappingService;
+ /***
+ * 灞炴�ф灇涓捐寖鍥存湇鍔�
+ */
+
+ private final IDockingPreAttrRangeService dockingPreAttrRangeService;
+
+ /**
+ * 鏍规嵁涓绘暟鎹紪鐮乷id鑾峰彇闆嗗洟灞炴�ф槧灏勪俊鎭�
+ * @param codeClassifyId 涓婚敭
+ * @return 涓绘暟鎹紪鐮佽鍒欐樉绀哄璞�
+ */
+ @GetMapping("/gridAttrMapping")
+ @ApiOperationSupport(order = 8)
+ @ApiOperation(value = "鍒嗙被涓婚敭鑾峰彇涓庨泦鍥㈡ā鍨嬪睘鎬ф槧灏勫叧绯�", notes = "浼犲叆codeClassifyId")
+ public R getDockingAttrMappingsByCodeClassId(String codeClassifyId){
+ List<DockingPreAttrMappingVO> dockingPreAttrMappingVOList=dockingPreAttrMappingService.getdockingAttrMappingsByCodeclassId(codeClassifyId);
+ return R.data(dockingPreAttrMappingVOList);
+ }
+
+ /**
+ * 鏍规嵁闆嗗洟灞炴�d鑾峰彇灞炴�ф灇涓捐寖鍥�
+ * @param meatId 涓婚敭
+ * @return
+ */
+ @GetMapping("/gridAttrRanges")
+ @ApiOperationSupport(order = 8)
+ @ApiOperation(value = "鏍规嵁灞炴�d鑾峰彇灞炴�ф灇涓捐寖鍥�", notes = "浼犲叆")
+ public R getDockingPreAttrRangesByMetaId(String meatId){
+ List<DockingPreAttrRangeVO> dockingPreAttrRangeVOList=dockingPreAttrRangeService.getDockingPreAttrRangesByMetaId(meatId);
+ return R.data(dockingPreAttrRangeVOList);
+ }
+
+ /**
+ * 淇濆瓨灞炴�ф槧灏勯厤缃粍浠�
+ * @param dockingPreAttrMappingVOList 灞炴�ф槧灏勯厤缃暟鎹紶杈撳璞�
+ * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
+ */
+ @PostMapping( "/batchAddSave")
+ public R batchSave(@Valid @RequestBody List<DockingPreAttrMappingVO> dockingPreAttrMappingVOList){
+ List<DockingPreAttrMappingVO> dockingPreAttrRangeVOS=new ArrayList<>();
+ try {
+ dockingPreAttrRangeVOS = dockingPreAttrMappingService.batchAddSave(dockingPreAttrMappingVOList);
+ }catch (Exception e){
+ return R.fail("闆嗗洟闆嗘垚灞炴�ф槧灏勯厤缃繚瀛樺け璐ワ細"+e.getMessage());
+ }
+ return R.data(dockingPreAttrRangeVOS);
+ }
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrMappingService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrMappingService.java
index 10c9951..fd7d7f4 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrMappingService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrMappingService.java
@@ -1,11 +1,36 @@
package com.vci.ubcs.code.service;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vci.ubcs.code.entity.DockingPreAttrMapping;
+import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrMappingVO;
+import java.util.List;
+
/**
* 闆嗗洟闆嗘垚閰嶇疆鏈嶅姟
* @author xiej
* @date 2023-05-17
*/
public interface IDockingPreAttrMappingService extends IService<DockingPreAttrMapping> {
+
+ /***
+ * 鏍规嵁涓绘暟鎹垎绫讳富閿幏鍙栧垎绫讳俊鎭厤缃�
+ * @param codeClassifyId
+ * @return
+ */
+ List<DockingPreAttrMappingVO> getdockingAttrMappingsByCodeclassId(String codeClassifyId);
+
+ /**
+ * 浣跨敤鏌ヨ灏佽鍣ㄦ潵鏌ヨ
+ * @param wrapper 鏌ヨ灏佽鍣�
+ * @return 鏁版嵁瀵硅薄
+ */
+ List<DockingPreAttrMapping> selectByWrapper(Wrapper wrapper);
+
+ /**
+ * 淇濆瓨灞炴�ф槧灏勯厤缃粍浠�
+ * @param dockingPreAttrMappingDTOS 灞炴�ф槧灏勯厤缃暟鎹紶杈撳璞�
+ * @return 鎵ц缁撴灉锛宻uccess涓簍rue琛ㄧず鎴愬姛锛宮sg鏄け璐ョ殑鎻愮ず淇℃伅锛宱bj鏄坊鍔犲畬鎴愬悗鐨勬樉绀哄璞�
+ */
+ public List<DockingPreAttrMappingVO> batchAddSave(List<DockingPreAttrMappingVO> dockingPreAttrMappingDTOS)throws Exception;
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrRangeService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrRangeService.java
index aa5f397..38bc9e8 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrRangeService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreAttrRangeService.java
@@ -1,7 +1,23 @@
package com.vci.ubcs.code.service;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vci.ubcs.code.entity.DockingPreAttrRange;
+import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrRangeVO;
+
+import java.util.List;
public interface IDockingPreAttrRangeService extends IService<DockingPreAttrRange> {
+ /***
+ * 鏍规嵁闆嗗洟灞炴�d鑾峰彇鍙栧�艰寖鍥�
+ * @return
+ */
+ List<DockingPreAttrRangeVO> getDockingPreAttrRangesByMetaId(String meatId);
+
+ /**
+ * 浣跨敤鏌ヨ灏佽鍣ㄦ潵鏌ヨ
+ * @param wrapper 鏌ヨ灏佽鍣�
+ * @return 鏁版嵁瀵硅薄
+ */
+ List<DockingPreAttrRange> selectByWrapper(Wrapper wrapper);
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreMetaAttrService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreMetaAttrService.java
index 1ce7ec9..dd623d1 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreMetaAttrService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingPreMetaAttrService.java
@@ -1,7 +1,10 @@
package com.vci.ubcs.code.service;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vci.ubcs.code.entity.DockingPreMetaAttr;
+
+import java.util.List;
/***
* 闆嗗洟灞炴�ф湇鍔�
@@ -9,4 +12,14 @@
* @date 2023-05-23
*/
public interface IDockingPreMetaAttrService extends IService<DockingPreMetaAttr> {
+
+
+
+ /***
+ * 鏋勯�犲櫒鏌ヨ鏂瑰紡
+ * @param wrapper 鏌ヨ灏佽鍣�
+ * @return
+ */
+
+ public List<DockingPreMetaAttr> selectByWrapper(Wrapper wrapper);
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrMappingServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrMappingServiceImpl.java
index d76f98b..2bff19f 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrMappingServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrMappingServiceImpl.java
@@ -1,10 +1,29 @@
package com.vci.ubcs.code.service.impl;
-
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.vci.ubcs.code.entity.DockingPreAttrMapping;
+import com.vci.ubcs.code.entity.DockingPreAttrRange;
+import com.vci.ubcs.code.entity.DockingPreMetaAttr;
import com.vci.ubcs.code.mapper.DockingPreAttrMappingMapper;
import com.vci.ubcs.code.service.IDockingPreAttrMappingService;
+import com.vci.ubcs.code.service.IDockingPreAttrRangeService;
+import com.vci.ubcs.code.service.IDockingPreMetaAttrService;
+import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrMappingVO;
+import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrRangeVO;
+import com.vci.ubcs.code.wrapper.DockingPreAttrMappingWrapper;
+import com.vci.ubcs.code.wrapper.DockingPreAttrRangeWrapper;
+import com.vci.ubcs.starter.exception.VciBaseException;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
/***
*闆嗗洟灞炴�ф槧灏勬湇鍔�
@@ -13,4 +32,156 @@
*/
@Service
public class DockingPreAttrMappingServiceImpl extends ServiceImpl<DockingPreAttrMappingMapper, DockingPreAttrMapping> implements IDockingPreAttrMappingService {
+ /***
+ * 闆嗗洟鍒嗙被灞炴�у睘鎬ф槧灏勯厤缃湇鍔�
+ */
+ @Autowired(required = false)
+ DockingPreAttrMappingMapper dockingPreAttrMappingMapper;
+ /***
+ * 闆嗗洟灞炴�ф湇鍔�
+ */
+ @Autowired(required = false)
+ IDockingPreMetaAttrService dockingPreMetaAttrService;
+ /***
+ * 灞炴�у彇鍊艰寖鍥存湇鍔�
+ */
+ @Autowired(required = false)
+ IDockingPreAttrRangeService dockingPreAttrRangeService;
+ /***
+ * 鏍规嵁涓绘暟鎹垎绫讳富閿幏鍙栧垎绫讳俊鎭厤缃�
+ * @param codeClassifyId
+ * @return
+ */
+ @Override
+ public List<DockingPreAttrMappingVO> getdockingAttrMappingsByCodeclassId(String codeClassifyId) {
+ //棣栧厛鑾峰彇鍒嗙被妯℃澘灞炴�э紝鐒跺悗涓庡睘鎬ч厤缃潗姣旇緝锛屼互闃茶鏈夊鍒犲睘鎬х殑鍙兘
+ List<DockingPreMetaAttr> dockingPreMetaAttrList= dockingPreMetaAttrService.selectByWrapper(Wrappers.<DockingPreMetaAttr>query().lambda().eq(DockingPreMetaAttr::getSourceClassifyId,codeClassifyId));
+ List<DockingPreAttrMapping> dockingPreAttrMappings=this.selectByWrapper(Wrappers.<DockingPreAttrMapping>query().lambda().eq(DockingPreAttrMapping::getSourceClassifyId, codeClassifyId));
+ Map<String/**灞炴�т富閿�**/, DockingPreAttrMapping> dockingPreAttrMappingMap = dockingPreAttrMappings.stream().filter(cbo -> cbo != null).collect(Collectors.toList()).stream().collect(Collectors.toMap(s -> s.getMetaListId(), t -> t));
+
+ List<DockingPreAttrMapping> newDockingPreAttrMappingList=new ArrayList<>();
+ dockingPreMetaAttrList.stream().forEach(dockingPreMetaAttr -> {
+ String attrOid=dockingPreMetaAttr.getOid();
+ DockingPreAttrMapping dockingPreAttrMapping=new DockingPreAttrMapping();
+ if(dockingPreAttrMappingMap.containsKey(attrOid)){
+ dockingPreAttrMapping= dockingPreAttrMappingMap.get(attrOid);
+ }else{
+ dockingPreAttrMapping.setMetaListId(dockingPreMetaAttr.getOid());//灞炴�т富閿�
+ dockingPreAttrMapping.setSourceAttrKey(dockingPreMetaAttr.getEnglishName());//鑻辨枃鍚嶇О
+ dockingPreAttrMapping.setSourceAttrName(dockingPreMetaAttr.getChineseName());//涓枃鍚嶇О
+ dockingPreAttrMapping.setSourceClassifyId(dockingPreMetaAttr.getSourceClassifyId());//闆嗗洟鍒嗙被oid
+ dockingPreAttrMapping.setSourceClassifyName("");//鍒嗙被鍚嶇О
+ dockingPreAttrMapping.setViewModeId(dockingPreMetaAttr.getViewModelId());//妯″瀷瑙嗗浘id
+ dockingPreAttrMapping.setViewModelName("");//鍒嗙被妯″瀷鍚嶇О
+ dockingPreAttrMapping.setViewName("");//鍒嗙被妯″瀷鍚嶇О
+
+ }
+ newDockingPreAttrMappingList.add(dockingPreAttrMapping);
+ });
+ return dockingPreAttrMappingDO2VOS(dockingPreAttrMappings,false);
+ }
+
+ /***
+ * 鏋勯�犲櫒鏌ヨ鏂瑰紡
+ * @param wrapper 鏌ヨ灏佽鍣�
+ * @return
+ */
+ @Override
+ public List<DockingPreAttrMapping> selectByWrapper(Wrapper wrapper) {
+ return dockingPreAttrMappingMapper.selectList(wrapper);
+ }
+
+ /****
+ * 闆嗗洟灞炴�ф槧灏勯厤缃繚瀛�
+ * @param dockingPreAttrMappingVOList
+ * @return
+ * @throws VciBaseException
+ */
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public List<DockingPreAttrMappingVO> batchAddSave(List<DockingPreAttrMappingVO> dockingPreAttrMappingVOList) throws Exception {
+ if(org.springframework.util.CollectionUtils.isEmpty(dockingPreAttrMappingVOList)){
+ return new ArrayList<>();
+ }
+ /**
+ * 1.浼犻�掕繃鏉ョ殑鏈夊彲鑳戒富鏁版嵁妯℃澘鏂板灞炴�э紝杩欐牱鐨勯渶瑕佹坊鍔狅紝涔熸湁鍙兘鍒犻櫎鐨勫睘鎬э紝杩欐牱鐨勬槧灏勯渶瑕佸垹闄�
+ * 涔熸湁鏇存柊鐨勮繖鏍峰垯鏇存柊
+ */
+ List<DockingPreAttrMapping> newDockingPreAttrMapping=new ArrayList<>();
+ List<String>appingConfigOidList=new ArrayList<>();
+ List<String>attrIdList=new ArrayList<>();
+ List<String> attributeOidList=new ArrayList<>();
+ List<DockingPreAttrRange> newDockingPreAttrRangeList=new ArrayList<>();
+ List<DockingPreAttrRangeVO> newDockingPreAttrRangeVOList=new ArrayList<>();
+ dockingPreAttrMappingVOList.stream().forEach(dockingPreAttrMappingVO -> {
+ List<DockingPreAttrRangeVO>dockingPreAttrRangeVOList=dockingPreAttrMappingVO.getDockingPreAttrRangeVoList();
+ appingConfigOidList.add(dockingPreAttrMappingVO.getOid());
+ if(!CollectionUtils.isEmpty(dockingPreAttrRangeVOList)) {
+ attrIdList.add(dockingPreAttrMappingVO.getMetaListId());
+ newDockingPreAttrRangeVOList.addAll(dockingPreAttrRangeVOList);
+ }
+ });
+ //灏嗗睘鎬у彇鍊艰寖鍥磋浆鎴愭暟鎹寔涔呭眰瀵硅薄
+ newDockingPreAttrRangeList=DockingPreAttrRangeWrapper.build().voentitys(newDockingPreAttrRangeVOList);
+ //灏嗗睘鎬ф槧灏勯厤缃俊鎭浆鎹负闇�瑕佹暟鎹寔涔呭眰淇濆瓨鐨勫璞�
+ newDockingPreAttrMapping=DockingPreAttrMappingWrapper.build().voentitys(dockingPreAttrMappingVOList);
+
+ List<DockingPreAttrRange> oldDockingPreAttrRangeList=new ArrayList<>();
+ if(!org.springframework.util.CollectionUtils.isEmpty(attrIdList)) {
+ //鑾峰彇瀛樺湪鐨勫睘鎬у彇鍊艰寖鍥�.
+ oldDockingPreAttrRangeList = dockingPreAttrRangeService.selectByWrapper(Wrappers.<DockingPreAttrRange>query().lambda().in(DockingPreAttrRange::getMetaListId,attrIdList));
+ }
+ //鑾峰彇瀛樺湪鐨勫睘鎬ф槧灏�.
+ List<DockingPreAttrMapping> oldDataAttrMapping = dockingPreAttrMappingMapper.selectList(Wrappers.<DockingPreAttrMapping>query().lambda().in(DockingPreAttrMapping::getOid,appingConfigOidList));
+
+ Map<String/**oid**/,DockingPreAttrMapping/**灞炴�у璞�**/> allSaveAttrMappingMap = newDockingPreAttrMapping.stream().collect(Collectors.toMap(s -> s.getOid(), t -> t,(o1, o2)->o2));
+ Map<String/**oid**/,DockingPreAttrMapping/**瀵硅薄**/> oldAttrMappingMap =oldDataAttrMapping.stream().collect(Collectors.toMap(s -> s.getOid(), t -> t,(o1, o2)->o2));
+ //闇�瑕佸垹闄ょ殑灞炴�ф槧灏�
+ List<String> deleteIdList=new ArrayList<>();
+ oldDataAttrMapping.stream().forEach(cbo -> {
+ String oid =cbo.getOid();
+ if(!allSaveAttrMappingMap.containsKey(oid)){
+ deleteIdList.add(oid);
+ }
+ });
+ this.removeBatchByIds(deleteIdList);//鍒犻櫎宸茬粡涓㈡帀鐨�
+ this.saveOrUpdateBatch(newDockingPreAttrMapping);//娣诲姞鏇存柊鏂扮殑閰嶇疆淇℃伅
+
+ //鍙栧�艰寖鍥村鐞�
+ if(!CollectionUtils.isEmpty(newDockingPreAttrRangeList)) {
+ Map<String/**oid**/, DockingPreAttrRange/**灞炴�у璞�**/> allSaveAttrAttrRangeDOMap =newDockingPreAttrRangeList.stream().collect(Collectors.toMap(s -> s.getOid(), t -> t, (o1, o2) -> o2));
+ Map<String/**oid**/, DockingPreAttrRange/**瀵硅薄**/> oldSaveAttrAttrRangeDOMap = oldDockingPreAttrRangeList.stream().collect(Collectors.toMap(s -> s.getOid(), t -> t, (o1, o2) -> o2));
+
+ //闇�瑕佸垹闄ょ殑灞炴�у彇鍊艰寖鍥�
+ List<String> deleteRangeIdList = new ArrayList<>();
+ oldDockingPreAttrRangeList.stream().forEach(cbo -> {
+ String oid = cbo.getOid();
+ if (!allSaveAttrAttrRangeDOMap.containsKey(oid)) {
+ deleteRangeIdList.add(oid);
+ }
+ });
+ dockingPreAttrRangeService.removeBatchByIds(deleteIdList);//鍒犻櫎宸茬粡涓㈡帀鐨�
+ dockingPreAttrRangeService.saveOrUpdateBatch(newDockingPreAttrRangeList);//娣诲姞鏇存柊鏂扮殑閰嶇疆淇℃伅
+ }
+ return dockingPreAttrMappingVOList;
+ }
+
+ /***
+ * 瀵硅薄杞崲
+ * @param dockingPreAttrMappings
+ * @return
+ */
+ private List<DockingPreAttrMappingVO> dockingPreAttrMappingDO2VOS(Collection<DockingPreAttrMapping> dockingPreAttrMappings,boolean contain) {
+ List<DockingPreAttrMappingVO> dockingPreAttrMappingVOList=new ArrayList<>();
+ dockingPreAttrMappingVOList=DockingPreAttrMappingWrapper.build().entityVOs(dockingPreAttrMappings);
+ if(CollectionUtils.isEmpty(dockingPreAttrMappingVOList)){
+ dockingPreAttrMappingVOList.stream().distinct().forEach(dockingPreAttrMappingVO -> {
+ if(contain) {
+ List<DockingPreAttrRangeVO> dockingPreAttrRangeVOList= dockingPreAttrRangeService.getDockingPreAttrRangesByMetaId(dockingPreAttrMappingVO.getMetaListId());
+ dockingPreAttrMappingVO.setDockingPreAttrRangeVoList(dockingPreAttrRangeVOList);
+ }
+ });
+ }
+ return dockingPreAttrMappingVOList;
+ }
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrRangeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrRangeServiceImpl.java
index dc062bc..6f67a30 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrRangeServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreAttrRangeServiceImpl.java
@@ -1,11 +1,17 @@
package com.vci.ubcs.code.service.impl;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.vci.ubcs.code.entity.DockingPreAttrRange;
import com.vci.ubcs.code.mapper.DockingPreAttrRangeMapper;
import com.vci.ubcs.code.service.IDockingPreAttrRangeService;
+import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrRangeVO;
+import com.vci.ubcs.code.wrapper.DockingPreAttrRangeWrapper;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.List;
/***
*闆嗗洟灞炴�у彇鍊艰寖鍥存湇鍔�
@@ -14,4 +20,17 @@
*/
@Service
public class DockingPreAttrRangeServiceImpl extends ServiceImpl<DockingPreAttrRangeMapper, DockingPreAttrRange> implements IDockingPreAttrRangeService {
+ @Autowired(required = false)
+ DockingPreAttrRangeMapper dockingPreAttrRangeMapper;
+ @Override
+ public List<DockingPreAttrRangeVO> getDockingPreAttrRangesByMetaId(String meatId) {
+ List<DockingPreAttrRange> dockingPreAttrMappings=this.selectByWrapper(Wrappers.<DockingPreAttrRange>query().lambda().eq(DockingPreAttrRange::getMetaListId, meatId));
+ return DockingPreAttrRangeWrapper.build().entityVOs(dockingPreAttrMappings);
+ }
+
+ @Override
+ public List<DockingPreAttrRange> selectByWrapper(Wrapper wrapper) {
+ return dockingPreAttrRangeMapper.selectList(wrapper);
+ }
+
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreMetaAttrServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreMetaAttrServiceImpl.java
index 71f79a5..167036f 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreMetaAttrServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingPreMetaAttrServiceImpl.java
@@ -1,10 +1,15 @@
package com.vci.ubcs.code.service.impl;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.vci.ubcs.code.entity.DockingPreAttrMapping;
import com.vci.ubcs.code.entity.DockingPreMetaAttr;
import com.vci.ubcs.code.mapper.DockingPreMetaAttrMapper;
import com.vci.ubcs.code.service.IDockingPreMetaAttrService;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+
+import java.util.List;
/***
* 闆嗗洟灞炴�ф湇鍔�
@@ -13,4 +18,12 @@
*/
@Service
public class DockingPreMetaAttrServiceImpl extends ServiceImpl<DockingPreMetaAttrMapper, DockingPreMetaAttr> implements IDockingPreMetaAttrService {
+
+ @Autowired(required = false)
+ DockingPreMetaAttrMapper dockingPreMetaAttrMapper;
+
+ @Override
+ public List<DockingPreMetaAttr> selectByWrapper(Wrapper wrapper) {
+ return dockingPreMetaAttrMapper.selectList(wrapper);
+ }
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrMappingWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrMappingWrapper.java
index e4bb278..4db0b71 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrMappingWrapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrMappingWrapper.java
@@ -1,11 +1,16 @@
package com.vci.ubcs.code.wrapper;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.vci.ubcs.code.entity.DockingPreAttrMapping;
-import com.vci.ubcs.code.vo.pagemodel.DockingLogeVO;
+import com.vci.ubcs.code.entity.DockingPreAttrRange;
import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrMappingVO;
+import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrRangeVO;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
import java.util.Objects;
/**
*闆嗗洟缂栫爜闆嗘垚灞炴�ф槧灏勯厤缃寘瑁呯被
@@ -14,9 +19,48 @@
* @since 2023-05-23
*/
public class DockingPreAttrMappingWrapper extends BaseEntityWrapper<DockingPreAttrMapping, DockingPreAttrMappingVO> {
+ public static DockingPreAttrMappingWrapper build() {
+ return new DockingPreAttrMappingWrapper();
+ }
+
@Override
public DockingPreAttrMappingVO entityVO(DockingPreAttrMapping entity) {
DockingPreAttrMappingVO dockingPreAttrMappingVO = Objects.requireNonNull(BeanUtil.copy(entity, DockingPreAttrMappingVO.class));
return dockingPreAttrMappingVO;
}
+
+ /***
+ * 鏁扮粍瀵硅薄杞崲
+ * @param dockingPreAttrMappings
+ * @return
+ */
+ public List<DockingPreAttrMappingVO> entityVOs(Collection<DockingPreAttrMapping> dockingPreAttrMappings) {
+ List<DockingPreAttrMappingVO> dockingPreAttrMappingVOList=new ArrayList<>();
+ if(!CollectionUtils.isEmpty(dockingPreAttrMappings)) {
+ dockingPreAttrMappings.stream().forEach(dockingPreAttrMapping -> {
+ dockingPreAttrMappingVOList.add(entityVO(dockingPreAttrMapping));
+ });
+ }
+ return dockingPreAttrMappingVOList;
+ }
+
+ /***
+ * 鏁扮粍瀵硅薄杞崲
+ * @param dockingPreAttrMappingVOS
+ * @return
+ */
+ public List<DockingPreAttrMapping> voentitys(Collection<DockingPreAttrMappingVO> dockingPreAttrMappingVOS) {
+ List<DockingPreAttrMapping> dockingPreAttrMappingList=new ArrayList<>();
+ if(!CollectionUtils.isEmpty(dockingPreAttrMappingVOS)) {
+ dockingPreAttrMappingVOS.stream().forEach(dockingPreAttrMappingVO -> {
+ dockingPreAttrMappingList.add(voentity(dockingPreAttrMappingVO));
+ });
+ }
+ return dockingPreAttrMappingList;
+ }
+
+ public DockingPreAttrMapping voentity( DockingPreAttrMappingVO vo) {
+ DockingPreAttrMapping dockingPreAttrMapping = Objects.requireNonNull(BeanUtil.copy(vo, DockingPreAttrMapping.class));
+ return dockingPreAttrMapping;
+ }
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrRangeWrapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrRangeWrapper.java
index 53d00d9..0df3141 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrRangeWrapper.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/DockingPreAttrRangeWrapper.java
@@ -1,5 +1,6 @@
package com.vci.ubcs.code.wrapper;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.vci.ubcs.code.entity.DockingPreAttrMapping;
import com.vci.ubcs.code.entity.DockingPreAttrRange;
import com.vci.ubcs.code.vo.pagemodel.DockingPreAttrMappingVO;
@@ -8,6 +9,9 @@
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
import java.util.Objects;
/**
*闆嗗洟缂栫爜鍒嗙被妯″瀷瑙嗗浘灞炴�у彇鍊艰寖鍥村寘瑁呯被
@@ -16,10 +20,49 @@
* @since 2023-05-23
*/
public class DockingPreAttrRangeWrapper extends BaseEntityWrapper<DockingPreAttrRange, DockingPreAttrRangeVO> {
-
+ public static DockingPreAttrRangeWrapper build() {
+ return new DockingPreAttrRangeWrapper();
+ }
@Override
public DockingPreAttrRangeVO entityVO(DockingPreAttrRange entity) {
DockingPreAttrRangeVO dockingPreAttrRangeVO = Objects.requireNonNull(BeanUtil.copy(entity, DockingPreAttrRangeVO.class));
return dockingPreAttrRangeVO;
}
+
+
+ /***
+ * 鏁扮粍瀵硅薄杞崲
+ * @param dockingPreAttrRanges
+ * @return
+ */
+ public List<DockingPreAttrRangeVO> entityVOs(Collection<DockingPreAttrRange> dockingPreAttrRanges) {
+ List<DockingPreAttrRangeVO> dockingPreAttrRangeVOList=new ArrayList<>();
+ if(!CollectionUtils.isEmpty(dockingPreAttrRanges)) {
+ dockingPreAttrRanges.stream().forEach(dockingPreAttrRange -> {
+ dockingPreAttrRangeVOList.add(entityVO(dockingPreAttrRange));
+ });
+ }
+ return dockingPreAttrRangeVOList;
+ }
+
+ /***
+ * 鏁扮粍瀵硅薄杞崲
+ * @param dockingPreAttrRangeVos
+ * @return
+ */
+ public List<DockingPreAttrRange> voentitys(Collection<DockingPreAttrRangeVO> dockingPreAttrRangeVos) {
+ List<DockingPreAttrRange> dockingPreAttrRangeList=new ArrayList<>();
+ if(!CollectionUtils.isEmpty(dockingPreAttrRangeVos)) {
+ dockingPreAttrRangeVos.stream().forEach(dockingPreAttrRangeVO -> {
+ dockingPreAttrRangeList.add(voentity(dockingPreAttrRangeVO));
+ });
+ }
+ return dockingPreAttrRangeList;
+ }
+
+ public DockingPreAttrRange voentity( DockingPreAttrRangeVO vo) {
+ DockingPreAttrRange dockingPreAttrRange = Objects.requireNonNull(BeanUtil.copy(vo, DockingPreAttrRange.class));
+ return dockingPreAttrRange;
+ }
+
}
--
Gitblit v1.9.3