From 44bdc2c95c95d5a9f8751b9a9b25c787b78a12fb Mon Sep 17 00:00:00 2001 From: x_z Date: Wed, 17 Aug 2022 11:06:09 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=A3=80=E6=9F=A5=E4=BA=A7=E5=93=81=EF=BC=8C?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=AC=AC=E4=B8=89=E6=96=B9=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E6=A0=87=E8=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basic/UdiContrastController.java | 14 +++++------ .../service/basic/UdiContrastService.java | 23 +++++++++++++++---- .../mybatis/mapper/basic/UdiRelevanceDao.xml | 17 ++++++++++++++ 3 files changed, 42 insertions(+), 12 deletions(-) diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiContrastController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiContrastController.java index e302c67..3afac47 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiContrastController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiContrastController.java @@ -81,7 +81,7 @@ public class UdiContrastController { //关联添加 if (StrUtil.isEmpty(combineRequest.getRelId()) || combineRequest.isIdSpliUdi()) { if (StrUtil.isNotEmpty(combineRequest.getThirdId())) { - if (udiContrastService.isExit(key, combineRequest.getThirdId())) { + if (udiContrastService.isExit(key, combineRequest.getThirdId(), null)) { return ResultVOUtils.error(500, "已存在相同的对照关系,对照失败!"); } else { createUnionContrast(combineRequest, key); @@ -105,7 +105,7 @@ public class UdiContrastController { } } else { //只添加DI - if (udiContrastService.isExit(key, null)) { + if (udiContrastService.isExit(key, null, null)) { return ResultVOUtils.error(500, "已存在该DI,且未对照!"); } else { createOnlyUuid(combineRequest, key); @@ -113,7 +113,7 @@ public class UdiContrastController { } } else {//修改关联DI UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectById(combineRequest.getRelId()); - if (udiContrastService.isExit(key, udiRelevanceEntity.getMainId())) { + if (udiContrastService.isExit(key, udiRelevanceEntity.getMainId(), null)) { return ResultVOUtils.error(500, "已存在相同的对照关系,对照失败!"); } else { updateDi(udiRelevanceEntity, key); @@ -125,7 +125,7 @@ public class UdiContrastController { StringBuffer buffer = new StringBuffer(); //只添加产品 for (String thirdId : combineRequest.getThirdIds()) { - if (udiContrastService.isExit(null, thirdId)) { + if (udiContrastService.isExit(null, thirdId, null)) { buffer.append(thirdId).append(","); } else { createOnlyMainId(combineRequest, thirdId); @@ -145,7 +145,7 @@ public class UdiContrastController { @PostMapping("/udi/udirel/changeVersion") public BaseResponse changeVersion(@RequestBody CombineRequest combineRequest) { UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectById(combineRequest.getRelId()); - if (udiContrastService.isExit(combineRequest.getKeys().get(0), udiRelevanceEntity.getMainId())) { + if (udiContrastService.isExit(combineRequest.getKeys().get(0), udiRelevanceEntity.getMainId(), null)) { return ResultVOUtils.error(500, "已存在相同的对照关系,无法切换版本"); } List udiInfoEntities = udiDlHttpClient.getUdiByUuid(combineRequest.getKeys().get(0)); @@ -180,7 +180,7 @@ public class UdiContrastController { udiRelevanceEntity.setSupName(combineRequest.getSupName()); udiRelevanceEntity.setPrice(combineRequest.getPrice()); UdiRelevanceEntity temp = udiContrastService.findById(udiRelevanceEntity.getId()); - if (udiContrastService.isExit(temp.getOriginUuid(), udiRelevanceEntity.getMainId())) { + if (udiContrastService.isExit(temp.getOriginUuid(), udiRelevanceEntity.getMainId(), combineRequest.getThirdSys())) { return ResultVOUtils.error(500, "已存在相同的对照关系,对照失败!"); } else { try { @@ -213,7 +213,7 @@ public class UdiContrastController { udiRelevanceEntity.setThirdId(""); udiRelevanceEntity.setThirdName(""); UdiRelevanceEntity temp = udiContrastService.findById(udiRelevanceEntity.getId()); - if (udiContrastService.isExit(temp.getOriginUuid(), null)) { + if (udiContrastService.isExit(temp.getOriginUuid(), null, null)) { return ResultVOUtils.error(500, "解除绑定失败!"); } } else if (removeRelRequest.getThirdSys().equals("thirdId1")) { diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/basic/UdiContrastService.java b/api-admin/src/main/java/com/glxp/sale/admin/service/basic/UdiContrastService.java index dc832d3..e6242aa 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/basic/UdiContrastService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/basic/UdiContrastService.java @@ -7,7 +7,6 @@ import com.glxp.sale.admin.dao.basic.UdiRelevanceDao; import com.glxp.sale.admin.entity.basic.UdiInfoEntity; import com.glxp.sale.admin.entity.basic.UdiRelevanceEntity; import com.glxp.sale.admin.entity.thrsys.ThrProductsEntity; -import com.glxp.sale.admin.req.basic.CombineRequest; import com.glxp.sale.admin.req.basic.FilterUdiInfoRequest; import com.glxp.sale.admin.req.thrsys.FilterThrProductsRequest; import com.glxp.sale.admin.service.thrsys.ThrProductsService; @@ -28,9 +27,9 @@ public class UdiContrastService { UdiRelevanceDao udiRelevanceDao; - public boolean isExit(String originUuid, String mainId) { + public boolean isExit(String originUuid, String mainId, String thirdSys) { - if (StrUtil.isNotEmpty(originUuid) && StrUtil.isNotEmpty(mainId)) { + if (StrUtil.isNotEmpty(originUuid) && StrUtil.isNotEmpty(mainId) && StrUtil.isBlank(thirdSys)) { List udiRelevanceEntities = findByUnion(originUuid, mainId); if (CollUtil.isNotEmpty(udiRelevanceEntities)) { return true; @@ -56,9 +55,23 @@ public class UdiContrastService { } } return false; - } else return false; - + } else if (StrUtil.isNotBlank(originUuid) && StrUtil.isNotBlank(mainId) && StrUtil.isNotBlank(thirdSys)) { + List udiRelevanceEntities = findByUnion2(originUuid, mainId, thirdSys); + if (CollUtil.isNotEmpty(udiRelevanceEntities)) { + return true; + } else + return false; + } + return false; + } + private List findByUnion2(String originUuid, String mainId, String thirdSys) { + FilterUdiInfoRequest filterUdiInfoRequest = new FilterUdiInfoRequest(); + filterUdiInfoRequest.setMainId(mainId); + filterUdiInfoRequest.setOriginUuid(originUuid); + filterUdiInfoRequest.setThirdSys(thirdSys); + List udiRelevanceEntities = udiRelevanceDao.selectByOrigiUuid(filterUdiInfoRequest); + return udiRelevanceEntities; } public List findByUnion(String originUuid, String mainId) { diff --git a/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml b/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml index 18e025b..cf46620 100644 --- a/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml @@ -325,6 +325,23 @@ AND basic_udirel.id = #{id} + + + AND basic_udirel.thirdId = #{mainId} + + + AND basic_udirel.thirdId1 = #{mainId} + + + AND basic_udirel.thirdId2 = #{mainId} + + + AND basic_udirel.thirdId3 = #{mainId} + + + AND basic_udirel.thirdId4 = #{mainId} + +