diff --git a/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java b/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java index 7e1967f37..4151ff490 100644 --- a/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java +++ b/src/main/java/com/glxp/api/controller/basic/UdiContrastController.java @@ -160,16 +160,29 @@ public class UdiContrastController { udiRelevanceEntity.setSupName(udiCombineRequest.getSupName()); udiRelevanceEntity.setUpdateUser(customerService.getUserId() + ""); UdiRelevanceResponse temp = udiContrastService.findById(udiRelevanceEntity.getId()); - if (udiContrastService.isExit(temp.getOriginUuid(), udiRelevanceEntity.getMainId(), udiCombineRequest.getThirdSys())) { - return ResultVOUtils.error(500, "已存在相同的对照关系,对照失败!"); - } else { - try { - udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); - } catch (Exception e) { + if (temp.getType() == 2){ + if (udiContrastService.isDrugExit(temp.getOriginUuid(),udiRelevanceEntity.getMainId(), udiCombineRequest.getThirdSys())) { return ResultVOUtils.error(500, "已存在相同的对照关系,对照失败!"); + } else { + try { + udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); + } catch (Exception e) { + return ResultVOUtils.error(500, "已存在相同的对照关系,对照失败!"); + } + } + }else { + if (udiContrastService.isExit(temp.getOriginUuid(), udiRelevanceEntity.getMainId(), udiCombineRequest.getThirdSys())) { + return ResultVOUtils.error(500, "已存在相同的对照关系,对照失败!"); + } else { + try { + udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); + } catch (Exception e) { + return ResultVOUtils.error(500, "已存在相同的对照关系,对照失败!"); + } } } + //关联第三方产品信息若无值则由第三方产品信息带过来 UdiProductEntity udiProductEntity = udiProductService.findByUuid(udiRelevanceEntity.getUuid()); if (StrUtil.isEmpty(udiProductEntity.getManufactory())) { diff --git a/src/main/java/com/glxp/api/entity/collect/IoSplitDesOrder.java b/src/main/java/com/glxp/api/entity/collect/IoSplitDesOrder.java index d41032c19..21d13b9e6 100644 --- a/src/main/java/com/glxp/api/entity/collect/IoSplitDesOrder.java +++ b/src/main/java/com/glxp/api/entity/collect/IoSplitDesOrder.java @@ -24,7 +24,7 @@ public class IoSplitDesOrder implements Serializable { private Integer id; @TableField(value = "billNo") - @ApiModelProperty(value = "") + @ApiModelProperty(value="") private String billNo; @TableField(value = "busType") @@ -64,4 +64,4 @@ public class IoSplitDesOrder implements Serializable { private String updateUser; private static final long serialVersionUID = 1L; -} \ No newline at end of file +} diff --git a/src/main/java/com/glxp/api/req/collect/IoSplitDesOrderRequest.java b/src/main/java/com/glxp/api/req/collect/IoSplitDesOrderRequest.java index 14bc75f06..4366cc015 100644 --- a/src/main/java/com/glxp/api/req/collect/IoSplitDesOrderRequest.java +++ b/src/main/java/com/glxp/api/req/collect/IoSplitDesOrderRequest.java @@ -30,7 +30,15 @@ public class IoSplitDesOrderRequest extends ListPageRequest { private String updateUser; - + /** + * 开始时间 + */ + private String startTime; + + /** + * 结束时间 + */ + private String endTime; } diff --git a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java index a9b5d817b..9308ed69a 100644 --- a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java +++ b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java @@ -257,6 +257,7 @@ public class UdiRelevanceResponse { * 工位预警数量 */ private Integer workPlaceCount; + private Integer type; public int getBhzxxsbzsl() { if (bhzxxsbzsl == null || bhzxxsbzsl == 0) { diff --git a/src/main/java/com/glxp/api/res/collect/IoSplitDesOrderDetailResponse.java b/src/main/java/com/glxp/api/res/collect/IoSplitDesOrderDetailResponse.java index 4af2faaa0..29fa88f5d 100644 --- a/src/main/java/com/glxp/api/res/collect/IoSplitDesOrderDetailResponse.java +++ b/src/main/java/com/glxp/api/res/collect/IoSplitDesOrderDetailResponse.java @@ -82,6 +82,11 @@ public class IoSplitDesOrderDetailResponse { * 赋码错误信息 */ private String tagMsg; + private String coName; + private String measname; + private String zczbhhzbapzbh; + private String manufactory; + private String supName; } diff --git a/src/main/java/com/glxp/api/res/collect/IoSplitDesOrderResponse.java b/src/main/java/com/glxp/api/res/collect/IoSplitDesOrderResponse.java index 3fa43a189..7d566f32b 100644 --- a/src/main/java/com/glxp/api/res/collect/IoSplitDesOrderResponse.java +++ b/src/main/java/com/glxp/api/res/collect/IoSplitDesOrderResponse.java @@ -9,7 +9,7 @@ public class IoSplitDesOrderResponse { private Integer id; - private Integer billNo; + private String billNo; private String busType; @@ -28,6 +28,10 @@ public class IoSplitDesOrderResponse { private Date updateTime; private String updateUser; + private String workplaceName; + private String busTypeName; + + private Integer status; } diff --git a/src/main/java/com/glxp/api/service/basic/UdiContrastService.java b/src/main/java/com/glxp/api/service/basic/UdiContrastService.java index 2b9fb04bb..4dfbd1738 100644 --- a/src/main/java/com/glxp/api/service/basic/UdiContrastService.java +++ b/src/main/java/com/glxp/api/service/basic/UdiContrastService.java @@ -27,6 +27,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.Date; import java.util.List; +import java.util.logging.Logger; /** * 耗材字典对照 @@ -92,6 +93,52 @@ public class UdiContrastService { return false; } + public boolean isDrugExit(String originUuid,String mainId, String thirdSys) { + + String deviceRecordKey = null; + //国家库的key + if (StrUtil.isNotEmpty(originUuid)) { + UdiProductEntity udiProductEntity = udiProductService.findOneByOriginUuid(originUuid); + if (udiProductEntity != null) + deviceRecordKey = udiProductEntity.getDeviceRecordKey(); + } + + if (StrUtil.isNotEmpty(deviceRecordKey) && StrUtil.isNotEmpty(mainId) && StrUtil.isBlank(thirdSys)) { + List udiRelevanceEntities = findDrkByUnion(deviceRecordKey, mainId); + if (CollUtil.isNotEmpty(udiRelevanceEntities)) { + return true; + } else + return false; + } else if (StrUtil.isNotEmpty(deviceRecordKey) && StrUtil.isEmpty(mainId)) { + List udiRelevanceEntities = findByDeviceRecordKey(deviceRecordKey); + if (CollUtil.isNotEmpty(udiRelevanceEntities)) { + for (UdiRelevanceResponse udiRelevanceEntity : udiRelevanceEntities) { + if (StrUtil.isEmpty(udiRelevanceEntity.getMainId()) && StrUtil.isNotEmpty(udiRelevanceEntity.getOriginUuid())) { + return true; + } + } + } + return false; + } else if (StrUtil.isNotEmpty(originUuid) && StrUtil.isNotEmpty(mainId)) { + List udiRelevanceEntities = findByMainId(mainId); + if (CollUtil.isNotEmpty(udiRelevanceEntities)) { + for (UdiRelevanceResponse udiRelevanceEntity : udiRelevanceEntities) { + if (StrUtil.isEmpty(udiRelevanceEntity.getOriginUuid()) && StrUtil.isNotEmpty(udiRelevanceEntity.getMainId())) { + return true; + } + } + } + return false; + } else if (StrUtil.isNotBlank(deviceRecordKey) && StrUtil.isNotBlank(mainId) && StrUtil.isNotBlank(thirdSys)) { + List udiRelevanceEntities = findByUnion2(deviceRecordKey, mainId, thirdSys); + if (CollUtil.isNotEmpty(udiRelevanceEntities)) { + return true; + } else + return false; + } + return false; + } + private List findByUnion2(String deviceRecordKey, String mainId, String thirdSys) { FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest(); filterUdiRelRequest.setMainId(mainId); diff --git a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml index d0efd854d..2e9e0ef26 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml @@ -1138,6 +1138,7 @@ basic_products.sfwwjbz, basic_products.syqsfxyjxmj, basic_products.mjfs, + basic_products.productsType as type, basic_products.categoryName from basic_udirel diff --git a/src/main/resources/mybatis/mapper/collect/IoSplitDesOrderDetailMapper.xml b/src/main/resources/mybatis/mapper/collect/IoSplitDesOrderDetailMapper.xml index eb99f6862..5f1022023 100644 --- a/src/main/resources/mybatis/mapper/collect/IoSplitDesOrderDetailMapper.xml +++ b/src/main/resources/mybatis/mapper/collect/IoSplitDesOrderDetailMapper.xml @@ -3,10 +3,12 @@ - \ No newline at end of file + diff --git a/src/main/resources/mybatis/mapper/collect/IoSplitDesOrderMapper.xml b/src/main/resources/mybatis/mapper/collect/IoSplitDesOrderMapper.xml index cfef50949..27e0d9c4a 100644 --- a/src/main/resources/mybatis/mapper/collect/IoSplitDesOrderMapper.xml +++ b/src/main/resources/mybatis/mapper/collect/IoSplitDesOrderMapper.xml @@ -4,9 +4,11 @@ - \ No newline at end of file +