diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index b4d11bd..18a98d9 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -113,6 +113,9 @@ no-login-urls: /user/login,/kaptcha,/config/baseConfig file: dir: D:\cz\203\file + sample: + gather: + amount: 50 # 聚合数量50 getui: app-id: RoW3b4QCWH9EnYYiyaUJz5 #计量appid app-key: fRjRIdibj47mBZV2Ru5Uf7 #app key diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index b4d11bd..18a98d9 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -113,6 +113,9 @@ no-login-urls: /user/login,/kaptcha,/config/baseConfig file: dir: D:\cz\203\file + sample: + gather: + amount: 50 # 聚合数量50 getui: app-id: RoW3b4QCWH9EnYYiyaUJz5 #计量appid app-key: fRjRIdibj47mBZV2Ru5Uf7 #app key diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/interchange/InterchangeSampleListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/interchange/InterchangeSampleListResponse.java index 5ee1cdf..8851ed8 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/interchange/InterchangeSampleListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/interchange/InterchangeSampleListResponse.java @@ -41,6 +41,9 @@ @ApiModelProperty("证书有效期") private String certificateValid; + @ApiModelProperty("数量") + private int amount = 1; + @ApiModelProperty(value = "样品在本次委托中分发的状态(字典code)", dataType = "String") @DictCodeField(message = "样品状态不合法", cacheName = MeterDictCode.SAMPLE_STATUS) private String sampleStatus; @@ -52,13 +55,13 @@ private String measureCompletePercent; public String getMeasureCompletePercent() { - if("1".equals(sampleStatus) || "2".equals(sampleStatus) || "9".equals(sampleStatus)){ + if ("1".equals(sampleStatus) || "2".equals(sampleStatus) || "9".equals(sampleStatus)) { return "未检定"; - } else if("3".equals(sampleStatus) || "4".equals(sampleStatus) || "8".equals(sampleStatus)){ + } else if ("3".equals(sampleStatus) || "4".equals(sampleStatus) || "8".equals(sampleStatus)) { return "检定中"; - } else if("5".equals(sampleStatus) || "6".equals(sampleStatus)){ + } else if ("5".equals(sampleStatus) || "6".equals(sampleStatus)) { return "检定完"; - } else if("10".equals(sampleStatus)){ + } else if ("10".equals(sampleStatus)) { return "已退回"; } return measureCompletePercent; diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index b4d11bd..18a98d9 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -113,6 +113,9 @@ no-login-urls: /user/login,/kaptcha,/config/baseConfig file: dir: D:\cz\203\file + sample: + gather: + amount: 50 # 聚合数量50 getui: app-id: RoW3b4QCWH9EnYYiyaUJz5 #计量appid app-key: fRjRIdibj47mBZV2Ru5Uf7 #app key diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/interchange/InterchangeSampleListResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/interchange/InterchangeSampleListResponse.java index 5ee1cdf..8851ed8 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/interchange/InterchangeSampleListResponse.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/interchange/InterchangeSampleListResponse.java @@ -41,6 +41,9 @@ @ApiModelProperty("证书有效期") private String certificateValid; + @ApiModelProperty("数量") + private int amount = 1; + @ApiModelProperty(value = "样品在本次委托中分发的状态(字典code)", dataType = "String") @DictCodeField(message = "样品状态不合法", cacheName = MeterDictCode.SAMPLE_STATUS) private String sampleStatus; @@ -52,13 +55,13 @@ private String measureCompletePercent; public String getMeasureCompletePercent() { - if("1".equals(sampleStatus) || "2".equals(sampleStatus) || "9".equals(sampleStatus)){ + if ("1".equals(sampleStatus) || "2".equals(sampleStatus) || "9".equals(sampleStatus)) { return "未检定"; - } else if("3".equals(sampleStatus) || "4".equals(sampleStatus) || "8".equals(sampleStatus)){ + } else if ("3".equals(sampleStatus) || "4".equals(sampleStatus) || "8".equals(sampleStatus)) { return "检定中"; - } else if("5".equals(sampleStatus) || "6".equals(sampleStatus)){ + } else if ("5".equals(sampleStatus) || "6".equals(sampleStatus)) { return "检定完"; - } else if("10".equals(sampleStatus)){ + } else if ("10".equals(sampleStatus)) { return "已退回"; } return measureCompletePercent; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BizBusinessInterchangeInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BizBusinessInterchangeInfoServiceImpl.java index bd8d28f..a188fb2 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BizBusinessInterchangeInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BizBusinessInterchangeInfoServiceImpl.java @@ -81,6 +81,10 @@ @Value("${casic.file.dir}") private String localFileDir; + @Value("${casic.sample.gather.amount}") + private int gatherAmount; + + @Override public Page interchangeListPage(Page page, InterchangeListRequest request) throws Exception { QueryWrapper wrapper = new QueryWrapper<>(); @@ -197,6 +201,46 @@ return ReturnUtil.success(existList); } + + /** + * 获取聚合后的列表 + * + * @param sampleList + */ + private List getGatherDataList(List sampleList) { + List gatherSampleList = new ArrayList<>(); + Map> sampleMap = sampleList + .stream() + .collect(Collectors.groupingBy(InterchangeSampleListResponse::getSampleName)); + sampleMap.forEach((String key, List value) -> { + if (value.size() >= gatherAmount) { + gatherSampleList.add(getGatherSample(key, value.size())); + } else { + gatherSampleList.addAll(value); + } + }); + return gatherSampleList; + } + + + /** + * 获取聚合的设备信息 + * @param sampleName 设备名称 + * @param amount 设备数量 + * @return + */ + private InterchangeSampleListResponse getGatherSample(String sampleName, int amount) { + InterchangeSampleListResponse sampleListResponse = new InterchangeSampleListResponse(); + sampleListResponse.setSampleName(sampleName); + sampleListResponse.setSampleModel("/"); + sampleListResponse.setAmount(amount); + sampleListResponse.setManufactureNo("/"); + sampleListResponse.setManufacturer("/"); + sampleListResponse.setAppendixDescn("/"); + return sampleListResponse; + } + + @Override public ReturnDTO updateInterchange(BizBusinessInterchangeInfo interchangeInfo) { Long orderId = interchangeInfo.getOrderId(); @@ -315,10 +359,8 @@ if (ObjectUtil.isNotEmpty(interchangeInfo)) { //关联样品列表 List sampleList = orderSampleRelationMapper.selectSampleListForInterChange(interchangeInfo.getId(), interchangeInfo.getOrderId()); - for (InterchangeSampleListResponse interchangeSampleListResponse : sampleList) { - interchangeSampleListResponse.setMeasureContent("/"); - } - interchangeInfo.setSampleList(sampleList); + List gatherSampleList = getGatherDataList(sampleList); + interchangeInfo.setSampleList(gatherSampleList); User user = permissionContext.getUserService().getById(interchangeInfo.getDeliverer()); interchangeInfo.setDeliverer(ObjectUtils.isEmpty(user) ? "" : user.getName()); if (StringUtils.isNotEmpty(interchangeInfo.getRequireOverTime())) {