diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java index e6f4d11..c44c1cd 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java @@ -41,6 +41,7 @@ String CESIUM_ATOMIC_FREQUENCY = "铯原子频率"; String SIGNAL_GENERATOR = "信号发生器"; + String SIGNAL_GENERATOR_CHECK_DATA = "信号发生器核查数据"; String LOW_FREQUENCY_SIGNAL_SOURCE = "低频信号源"; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java index e6f4d11..c44c1cd 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java @@ -41,6 +41,7 @@ String CESIUM_ATOMIC_FREQUENCY = "铯原子频率"; String SIGNAL_GENERATOR = "信号发生器"; + String SIGNAL_GENERATOR_CHECK_DATA = "信号发生器核查数据"; String LOW_FREQUENCY_SIGNAL_SOURCE = "低频信号源"; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java index 4235710..a54fb06 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java @@ -342,12 +342,16 @@ String FREQUENCY_REPRODUCIBILITY = "5"; String DAILY_AGING_RATE_OF_CRYSTAL_OSCILLATOR = "6"; - /** - *

- * 铯原子结束 - * 微波计数器 - */ + String EFFICIENCY = "功率"; + String RELATIVE_LEVEL_ONE = "相对电平"; + String AMPLITUDE_ADJUSTMENT = "调幅度"; + String FREQUENCY_MODULATION_FREQUENCY_OFFSET = "调频频偏"; + String PHASE_MODULATION_PHASE_DEVIATION = "调相相偏"; + String HARMONIC = "谐波"; + String AC_VOLTAGE = "交流电压"; + String FLATNESS = "平坦度"; + String DISTORTION = "失真"; /** * 结论-合格 diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java index e6f4d11..c44c1cd 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java @@ -41,6 +41,7 @@ String CESIUM_ATOMIC_FREQUENCY = "铯原子频率"; String SIGNAL_GENERATOR = "信号发生器"; + String SIGNAL_GENERATOR_CHECK_DATA = "信号发生器核查数据"; String LOW_FREQUENCY_SIGNAL_SOURCE = "低频信号源"; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java index 4235710..a54fb06 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java @@ -342,12 +342,16 @@ String FREQUENCY_REPRODUCIBILITY = "5"; String DAILY_AGING_RATE_OF_CRYSTAL_OSCILLATOR = "6"; - /** - *

- * 铯原子结束 - * 微波计数器 - */ + String EFFICIENCY = "功率"; + String RELATIVE_LEVEL_ONE = "相对电平"; + String AMPLITUDE_ADJUSTMENT = "调幅度"; + String FREQUENCY_MODULATION_FREQUENCY_OFFSET = "调频频偏"; + String PHASE_MODULATION_PHASE_DEVIATION = "调相相偏"; + String HARMONIC = "谐波"; + String AC_VOLTAGE = "交流电压"; + String FLATNESS = "平坦度"; + String DISTORTION = "失真"; /** * 结论-合格 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java index 4375f48..3ada934 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java @@ -333,6 +333,10 @@ @TableField("less_than") private Integer lessThan; + @ApiModelProperty(value = "结论",dataType = "String") + @TableField(exist = false) + private String lessThanValue; + /** * 稳定性 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java index e6f4d11..c44c1cd 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java @@ -41,6 +41,7 @@ String CESIUM_ATOMIC_FREQUENCY = "铯原子频率"; String SIGNAL_GENERATOR = "信号发生器"; + String SIGNAL_GENERATOR_CHECK_DATA = "信号发生器核查数据"; String LOW_FREQUENCY_SIGNAL_SOURCE = "低频信号源"; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java index 4235710..a54fb06 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java @@ -342,12 +342,16 @@ String FREQUENCY_REPRODUCIBILITY = "5"; String DAILY_AGING_RATE_OF_CRYSTAL_OSCILLATOR = "6"; - /** - *

- * 铯原子结束 - * 微波计数器 - */ + String EFFICIENCY = "功率"; + String RELATIVE_LEVEL_ONE = "相对电平"; + String AMPLITUDE_ADJUSTMENT = "调幅度"; + String FREQUENCY_MODULATION_FREQUENCY_OFFSET = "调频频偏"; + String PHASE_MODULATION_PHASE_DEVIATION = "调相相偏"; + String HARMONIC = "谐波"; + String AC_VOLTAGE = "交流电压"; + String FLATNESS = "平坦度"; + String DISTORTION = "失真"; /** * 结论-合格 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java index 4375f48..3ada934 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java @@ -333,6 +333,10 @@ @TableField("less_than") private Integer lessThan; + @ApiModelProperty(value = "结论",dataType = "String") + @TableField(exist = false) + private String lessThanValue; + /** * 稳定性 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java index 7d042d4..2bcffbf 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java @@ -292,6 +292,10 @@ @TableField("less_than") private Integer lessThan; + @ApiModelProperty(value = "结论(value)",dataType = "String") + @TableField(exist = false) + private String lessThanValue; + /** * 稳定性 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java index e6f4d11..c44c1cd 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java @@ -41,6 +41,7 @@ String CESIUM_ATOMIC_FREQUENCY = "铯原子频率"; String SIGNAL_GENERATOR = "信号发生器"; + String SIGNAL_GENERATOR_CHECK_DATA = "信号发生器核查数据"; String LOW_FREQUENCY_SIGNAL_SOURCE = "低频信号源"; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java index 4235710..a54fb06 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java @@ -342,12 +342,16 @@ String FREQUENCY_REPRODUCIBILITY = "5"; String DAILY_AGING_RATE_OF_CRYSTAL_OSCILLATOR = "6"; - /** - *

- * 铯原子结束 - * 微波计数器 - */ + String EFFICIENCY = "功率"; + String RELATIVE_LEVEL_ONE = "相对电平"; + String AMPLITUDE_ADJUSTMENT = "调幅度"; + String FREQUENCY_MODULATION_FREQUENCY_OFFSET = "调频频偏"; + String PHASE_MODULATION_PHASE_DEVIATION = "调相相偏"; + String HARMONIC = "谐波"; + String AC_VOLTAGE = "交流电压"; + String FLATNESS = "平坦度"; + String DISTORTION = "失真"; /** * 结论-合格 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java index 4375f48..3ada934 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java @@ -333,6 +333,10 @@ @TableField("less_than") private Integer lessThan; + @ApiModelProperty(value = "结论",dataType = "String") + @TableField(exist = false) + private String lessThanValue; + /** * 稳定性 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java index 7d042d4..2bcffbf 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java @@ -292,6 +292,10 @@ @TableField("less_than") private Integer lessThan; + @ApiModelProperty(value = "结论(value)",dataType = "String") + @TableField(exist = false) + private String lessThanValue; + /** * 稳定性 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckRecordApproval.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckRecordApproval.java index 8c73c7f..6dea54d 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckRecordApproval.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckRecordApproval.java @@ -250,6 +250,14 @@ @TableField(exist = false) private List checkDataCesiumAtomList; + @ApiModelProperty(value = "核查数据-信号发生器",dataType = "List") + @TableField(exist = false) + private List checkDataSignalGeneratorList; + + @ApiModelProperty(value = "核查数据-低频信号源",dataType = "List") + @TableField(exist = false) + private List checkDataLowFrequencySignalList; + @ApiModelProperty(value = "温度值结论",dataType = "String") @TableField(exist = false) private String temperatureConclusion; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java index e6f4d11..c44c1cd 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java @@ -41,6 +41,7 @@ String CESIUM_ATOMIC_FREQUENCY = "铯原子频率"; String SIGNAL_GENERATOR = "信号发生器"; + String SIGNAL_GENERATOR_CHECK_DATA = "信号发生器核查数据"; String LOW_FREQUENCY_SIGNAL_SOURCE = "低频信号源"; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java index 4235710..a54fb06 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java @@ -342,12 +342,16 @@ String FREQUENCY_REPRODUCIBILITY = "5"; String DAILY_AGING_RATE_OF_CRYSTAL_OSCILLATOR = "6"; - /** - *

- * 铯原子结束 - * 微波计数器 - */ + String EFFICIENCY = "功率"; + String RELATIVE_LEVEL_ONE = "相对电平"; + String AMPLITUDE_ADJUSTMENT = "调幅度"; + String FREQUENCY_MODULATION_FREQUENCY_OFFSET = "调频频偏"; + String PHASE_MODULATION_PHASE_DEVIATION = "调相相偏"; + String HARMONIC = "谐波"; + String AC_VOLTAGE = "交流电压"; + String FLATNESS = "平坦度"; + String DISTORTION = "失真"; /** * 结论-合格 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java index 4375f48..3ada934 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java @@ -333,6 +333,10 @@ @TableField("less_than") private Integer lessThan; + @ApiModelProperty(value = "结论",dataType = "String") + @TableField(exist = false) + private String lessThanValue; + /** * 稳定性 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java index 7d042d4..2bcffbf 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java @@ -292,6 +292,10 @@ @TableField("less_than") private Integer lessThan; + @ApiModelProperty(value = "结论(value)",dataType = "String") + @TableField(exist = false) + private String lessThanValue; + /** * 稳定性 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckRecordApproval.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckRecordApproval.java index 8c73c7f..6dea54d 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckRecordApproval.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckRecordApproval.java @@ -250,6 +250,14 @@ @TableField(exist = false) private List checkDataCesiumAtomList; + @ApiModelProperty(value = "核查数据-信号发生器",dataType = "List") + @TableField(exist = false) + private List checkDataSignalGeneratorList; + + @ApiModelProperty(value = "核查数据-低频信号源",dataType = "List") + @TableField(exist = false) + private List checkDataLowFrequencySignalList; + @ApiModelProperty(value = "温度值结论",dataType = "String") @TableField(exist = false) private String temperatureConclusion; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/LowFrequencySignalHandler.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/LowFrequencySignalHandler.java index 1901f1f..633116e 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/LowFrequencySignalHandler.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/LowFrequencySignalHandler.java @@ -1,12 +1,16 @@ package com.casic.missiles.service.Impl.eqpt.standard.impl; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.ObjectUtil; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrintFileModuleNameEnum; import com.casic.missiles.enums.business.MeasureItemBelongStandardEquipmentDictEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BizBusinessDeviceMeasureApprovalMapper; import com.casic.missiles.model.business.*; +import com.casic.missiles.model.equipment.BizEquipmentInfo; +import com.casic.missiles.model.equipment.BizEquipmentStandardCheckDataLowFrequencySignal; +import com.casic.missiles.model.equipment.BizEquipmentStandardCheckDataSignalGenerator; import com.casic.missiles.model.equipment.BizEquipmentStandardCheckRecordApproval; import com.casic.missiles.service.Impl.eqpt.standard.StandardEquipmentPrint; import com.casic.missiles.service.Impl.eqpt.standard.StandardEquipmentSupport; @@ -16,6 +20,7 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.beanutils.BeanUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Component; import org.springframework.util.CollectionUtils; @@ -44,7 +49,71 @@ */ @Override public List doCheckCertificateFile(BizEquipmentStandardCheckRecordApproval request) { - return null; + try { + //健壮性判断 + if (ObjectUtil.isEmpty(request)) { + return null; + } + DictCodeUtils.convertDictCodeToName(request.getEquipmentInfo()); + for (BizEquipmentInfo bizEquipmentInfo : request.getCheckEquipmentList()) { + DictCodeUtils.convertDictCodeToName(bizEquipmentInfo); + } + //核查依据文件为空,则设置为无 + if (StringUtils.isBlank(request.getCheckAccord())) { + request.setCheckAccord("无"); + } + Map map = BeanUtil.beanToMap(request); + + readyForCheckParams(map, request.getCheckDataLowFrequencySignalList()); + + replaceSlash(map); + map.put("pdfStatus", 1); + //除了选用的模板不一致,模板配置流程是一致的 + String wordUrl = printFileRegister.registerPrintFile(SIGNAL_GENERATOR_CHECK_DATA, "数据打印", null, map, false, null, null); + List urlList = new ArrayList<>(); + if (StringUtils.isNotEmpty(wordUrl)) { + urlList.add(wordUrl); + } + if (map.containsKey("pdfUrl")) { + urlList.add((String) map.get("pdfUrl")); + } + return urlList; + } catch (Exception ex) { + log.info("-----package data is exception, this is {}", ex); + throw new BusinessException(BusinessExceptionEnum.MEASURE_APPROVAL_UPDATE_FAILED); + } + } + + private void readyForCheckParams(Map map, List frequencySignalList) { + String[] params = {FREQUENCY_CN, AC_VOLTAGE, DC_VOLTAGE, RISE_TIME_CHECK, FLATNESS, DISTORTION}; + String[] checkType = {REPEATABILITY, STABILITY}; + for (int i = 0; i < params.length; i++) { + String param = params[i]; + List rep = frequencySignalList.stream() + .filter(f -> param.equals(f.getParams()) && checkType[0].equals(f.getCheckType())) + .peek(this::appendUnits) + .collect(Collectors.toList()); + map.put(REPEAT_PREFIX + (i + 1), rep); + List sta = frequencySignalList.stream() + .filter(f -> param.equals(f.getParams()) && checkType[1].equals(f.getCheckType())) + .peek(this::appendUnits) + .collect(Collectors.toList()); + map.put(STA_PREFIX + (i + 1), sta); + BizEquipmentStandardCheckDataLowFrequencySignal signal = sta.get(0); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 1, signal.getTestValueOneDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 2, signal.getTestValueTwoDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 3, signal.getTestValueThreeDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 4, signal.getTestValueFourDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 5, signal.getTestValueFiveDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 6, signal.getTestValueSixDate()); + } + } + + private void appendUnits(BizEquipmentStandardCheckDataLowFrequencySignal f) { + f.setNominalValue(f.getNominalValue() + f.getUnit()); + f.setFrequency(f.getFrequency() + f.getFrequency()); + f.setAmplitude(f.getAmplitude() + f.getAmplitudeUnit()); + f.setVoltage(f.getVoltage() + f.getVoltageUnit()); } /** diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java index e6f4d11..c44c1cd 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrintFileModuleNameEnum.java @@ -41,6 +41,7 @@ String CESIUM_ATOMIC_FREQUENCY = "铯原子频率"; String SIGNAL_GENERATOR = "信号发生器"; + String SIGNAL_GENERATOR_CHECK_DATA = "信号发生器核查数据"; String LOW_FREQUENCY_SIGNAL_SOURCE = "低频信号源"; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java index 4235710..a54fb06 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/MeasureCategoryEnum.java @@ -342,12 +342,16 @@ String FREQUENCY_REPRODUCIBILITY = "5"; String DAILY_AGING_RATE_OF_CRYSTAL_OSCILLATOR = "6"; - /** - *

- * 铯原子结束 - * 微波计数器 - */ + String EFFICIENCY = "功率"; + String RELATIVE_LEVEL_ONE = "相对电平"; + String AMPLITUDE_ADJUSTMENT = "调幅度"; + String FREQUENCY_MODULATION_FREQUENCY_OFFSET = "调频频偏"; + String PHASE_MODULATION_PHASE_DEVIATION = "调相相偏"; + String HARMONIC = "谐波"; + String AC_VOLTAGE = "交流电压"; + String FLATNESS = "平坦度"; + String DISTORTION = "失真"; /** * 结论-合格 diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java index 4375f48..3ada934 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataLowFrequencySignal.java @@ -333,6 +333,10 @@ @TableField("less_than") private Integer lessThan; + @ApiModelProperty(value = "结论",dataType = "String") + @TableField(exist = false) + private String lessThanValue; + /** * 稳定性 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java index 7d042d4..2bcffbf 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckDataSignalGenerator.java @@ -292,6 +292,10 @@ @TableField("less_than") private Integer lessThan; + @ApiModelProperty(value = "结论(value)",dataType = "String") + @TableField(exist = false) + private String lessThanValue; + /** * 稳定性 */ diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckRecordApproval.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckRecordApproval.java index 8c73c7f..6dea54d 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckRecordApproval.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/BizEquipmentStandardCheckRecordApproval.java @@ -250,6 +250,14 @@ @TableField(exist = false) private List checkDataCesiumAtomList; + @ApiModelProperty(value = "核查数据-信号发生器",dataType = "List") + @TableField(exist = false) + private List checkDataSignalGeneratorList; + + @ApiModelProperty(value = "核查数据-低频信号源",dataType = "List") + @TableField(exist = false) + private List checkDataLowFrequencySignalList; + @ApiModelProperty(value = "温度值结论",dataType = "String") @TableField(exist = false) private String temperatureConclusion; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/LowFrequencySignalHandler.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/LowFrequencySignalHandler.java index 1901f1f..633116e 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/LowFrequencySignalHandler.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/LowFrequencySignalHandler.java @@ -1,12 +1,16 @@ package com.casic.missiles.service.Impl.eqpt.standard.impl; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.ObjectUtil; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrintFileModuleNameEnum; import com.casic.missiles.enums.business.MeasureItemBelongStandardEquipmentDictEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BizBusinessDeviceMeasureApprovalMapper; import com.casic.missiles.model.business.*; +import com.casic.missiles.model.equipment.BizEquipmentInfo; +import com.casic.missiles.model.equipment.BizEquipmentStandardCheckDataLowFrequencySignal; +import com.casic.missiles.model.equipment.BizEquipmentStandardCheckDataSignalGenerator; import com.casic.missiles.model.equipment.BizEquipmentStandardCheckRecordApproval; import com.casic.missiles.service.Impl.eqpt.standard.StandardEquipmentPrint; import com.casic.missiles.service.Impl.eqpt.standard.StandardEquipmentSupport; @@ -16,6 +20,7 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.beanutils.BeanUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Component; import org.springframework.util.CollectionUtils; @@ -44,7 +49,71 @@ */ @Override public List doCheckCertificateFile(BizEquipmentStandardCheckRecordApproval request) { - return null; + try { + //健壮性判断 + if (ObjectUtil.isEmpty(request)) { + return null; + } + DictCodeUtils.convertDictCodeToName(request.getEquipmentInfo()); + for (BizEquipmentInfo bizEquipmentInfo : request.getCheckEquipmentList()) { + DictCodeUtils.convertDictCodeToName(bizEquipmentInfo); + } + //核查依据文件为空,则设置为无 + if (StringUtils.isBlank(request.getCheckAccord())) { + request.setCheckAccord("无"); + } + Map map = BeanUtil.beanToMap(request); + + readyForCheckParams(map, request.getCheckDataLowFrequencySignalList()); + + replaceSlash(map); + map.put("pdfStatus", 1); + //除了选用的模板不一致,模板配置流程是一致的 + String wordUrl = printFileRegister.registerPrintFile(SIGNAL_GENERATOR_CHECK_DATA, "数据打印", null, map, false, null, null); + List urlList = new ArrayList<>(); + if (StringUtils.isNotEmpty(wordUrl)) { + urlList.add(wordUrl); + } + if (map.containsKey("pdfUrl")) { + urlList.add((String) map.get("pdfUrl")); + } + return urlList; + } catch (Exception ex) { + log.info("-----package data is exception, this is {}", ex); + throw new BusinessException(BusinessExceptionEnum.MEASURE_APPROVAL_UPDATE_FAILED); + } + } + + private void readyForCheckParams(Map map, List frequencySignalList) { + String[] params = {FREQUENCY_CN, AC_VOLTAGE, DC_VOLTAGE, RISE_TIME_CHECK, FLATNESS, DISTORTION}; + String[] checkType = {REPEATABILITY, STABILITY}; + for (int i = 0; i < params.length; i++) { + String param = params[i]; + List rep = frequencySignalList.stream() + .filter(f -> param.equals(f.getParams()) && checkType[0].equals(f.getCheckType())) + .peek(this::appendUnits) + .collect(Collectors.toList()); + map.put(REPEAT_PREFIX + (i + 1), rep); + List sta = frequencySignalList.stream() + .filter(f -> param.equals(f.getParams()) && checkType[1].equals(f.getCheckType())) + .peek(this::appendUnits) + .collect(Collectors.toList()); + map.put(STA_PREFIX + (i + 1), sta); + BizEquipmentStandardCheckDataLowFrequencySignal signal = sta.get(0); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 1, signal.getTestValueOneDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 2, signal.getTestValueTwoDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 3, signal.getTestValueThreeDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 4, signal.getTestValueFourDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 5, signal.getTestValueFiveDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 6, signal.getTestValueSixDate()); + } + } + + private void appendUnits(BizEquipmentStandardCheckDataLowFrequencySignal f) { + f.setNominalValue(f.getNominalValue() + f.getUnit()); + f.setFrequency(f.getFrequency() + f.getFrequency()); + f.setAmplitude(f.getAmplitude() + f.getAmplitudeUnit()); + f.setVoltage(f.getVoltage() + f.getVoltageUnit()); } /** diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/SignalGeneratorHandler.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/SignalGeneratorHandler.java index f273efd..ac60d78 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/SignalGeneratorHandler.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/SignalGeneratorHandler.java @@ -1,6 +1,8 @@ package com.casic.missiles.service.Impl.eqpt.standard.impl; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrintFileModuleNameEnum; import com.casic.missiles.enums.business.MeasureItemBelongStandardEquipmentDictEnum; @@ -10,6 +12,8 @@ import com.casic.missiles.model.business.BizBusinessDeviceMeasureDataCesiumAtom; import com.casic.missiles.model.business.BizBusinessDeviceMeasureDataResistanceThermometer; import com.casic.missiles.model.business.BizBusinessDeviceMeasureDataSignalGenerator; +import com.casic.missiles.model.equipment.BizEquipmentInfo; +import com.casic.missiles.model.equipment.BizEquipmentStandardCheckDataSignalGenerator; import com.casic.missiles.model.equipment.BizEquipmentStandardCheckRecordApproval; import com.casic.missiles.service.Impl.eqpt.standard.StandardEquipmentPrint; import com.casic.missiles.service.Impl.eqpt.standard.StandardEquipmentSupport; @@ -19,13 +23,11 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.beanutils.BeanUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Component; import org.springframework.util.CollectionUtils; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -47,7 +49,123 @@ */ @Override public List doCheckCertificateFile(BizEquipmentStandardCheckRecordApproval request) { - return null; + try { + //健壮性判断 + if (ObjectUtil.isEmpty(request)) { + return null; + } + DictCodeUtils.convertDictCodeToName(request.getEquipmentInfo()); + for (BizEquipmentInfo bizEquipmentInfo : request.getCheckEquipmentList()) { + DictCodeUtils.convertDictCodeToName(bizEquipmentInfo); + } + //核查依据文件为空,则设置为无 + if (StringUtils.isBlank(request.getCheckAccord())) { + request.setCheckAccord("无"); + } + Map map = BeanUtil.beanToMap(request); + + readyForCheckParams(map, request.getCheckDataSignalGeneratorList()); + + replaceSlash(map); + map.put("pdfStatus", 1); + //除了选用的模板不一致,模板配置流程是一致的 + String wordUrl = printFileRegister.registerPrintFile(SIGNAL_GENERATOR_CHECK_DATA, "数据打印", null, map, false, null, null); + List urlList = new ArrayList<>(); + if (StringUtils.isNotEmpty(wordUrl)) { + urlList.add(wordUrl); + } + if (map.containsKey("pdfUrl")) { + urlList.add((String) map.get("pdfUrl")); + } + return urlList; + } catch (Exception ex) { + log.info("-----package data is exception, this is {}", ex); + throw new BusinessException(BusinessExceptionEnum.MEASURE_APPROVAL_UPDATE_FAILED); + } + } + + private void readyForCheckParams(Map map, List signalGeneratorList) { + String[] params = {FREQUENCY_CN, EFFICIENCY, RELATIVE_LEVEL_ONE, + AMPLITUDE_ADJUSTMENT, FREQUENCY_MODULATION_FREQUENCY_OFFSET + , PHASE_MODULATION_PHASE_DEVIATION, HARMONIC}; + String[] checkType = {REPEATABILITY, STABILITY}; + for (int i = 0; i < params.length; i++) { + String param = params[i]; + List rep = signalGeneratorList.stream() + .filter(signalGenerator -> checkType[0].equals(signalGenerator.getCheckType()) + && param.equals(signalGenerator.getParams())) + .peek(this::appendUnits) + .collect(Collectors.toList()); + map.put(REPEAT_PREFIX + (i + 1), rep); + + List sta = signalGeneratorList.stream() + .filter(s -> checkType[1].equals(s.getCheckType()) && param.equals(s.getParams())) + .peek(this::appendUnits).collect(Collectors.toList()); + map.put(STA_PREFIX + (i + 1), sta); + + BizEquipmentStandardCheckDataSignalGenerator signalGenerator = sta.get(0); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 1, signalGenerator.getTestValueOneDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 2, signalGenerator.getTestValueTwoDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 3, signalGenerator.getTestValueThreeDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 4, signalGenerator.getTestValueFourDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 5, signalGenerator.getTestValueFiveDate()); + map.put(STA_PREFIX + (i + 1) + DATE_PREFIX + 6, signalGenerator.getTestValueSixDate()); + } + } + + public void appendUnits(BizEquipmentStandardCheckDataSignalGenerator s) { + s.setCheckPoint(s.getCheckPoint() + s.getUnit()); + s.setPower(s.getPower() + s.getPowerUnit()); + s.setRelativeLevel(s.getRelativeLevel() + s.getRelativeLevelUnit()); +// s.setModulation(s.getModulation() + "%"); + s.setFrequencyDeviation(s.getFrequencyDeviation() + s.getFrequencyDeviationUnit()); + s.setPhaseDeviation(s.getPhaseDeviation() + s.getPhaseDeviationUnit()); + switch (s.getParams()) { + case FREQUENCY_CN: + appendTestValueUnit(s, s.getUnit()); + break; + case EFFICIENCY: + appendTestValueUnit(s, s.getPowerUnit()); + break; + case RELATIVE_LEVEL_ONE: + appendTestValueUnit(s, s.getRelativeLevelUnit()); + break; + case AMPLITUDE_ADJUSTMENT: + appendTestValueUnit(s, "%"); + break; + case FREQUENCY_MODULATION_FREQUENCY_OFFSET: + appendTestValueUnit(s, s.getFrequencyDeviationUnit()); + break; + case PHASE_MODULATION_PHASE_DEVIATION: + appendTestValueUnit(s, s.getPhaseDeviationUnit()); + break; + case HARMONIC: + appendTestValueUnit(s, "dBc"); + break; + default: + } + } + + private void appendTestValueUnit(BizEquipmentStandardCheckDataSignalGenerator s, String unit) { + s.setTestValueOne(StringUtils.isNotBlank(s.getTestValueOne()) ? s.getTestValueOne() + unit : s.getTestValueOne()); + s.setTestValueTwo(StringUtils.isNotBlank(s.getTestValueTwo()) ? s.getTestValueTwo() + unit : s.getTestValueTwo()); + s.setTestValueThree(StringUtils.isNotBlank(s.getTestValueThree()) ? s.getTestValueThree() + unit : s.getTestValueThree()); + s.setTestValueFour(StringUtils.isNotBlank(s.getTestValueFour()) ? s.getTestValueFour() + unit : s.getTestValueFour()); + s.setTestValueFive(StringUtils.isNotBlank(s.getTestValueFive()) ? s.getTestValueFive() + unit : s.getTestValueFive()); + s.setTestValueSix(StringUtils.isNotBlank(s.getTestValueSix()) ? s.getTestValueSix() + unit : s.getTestValueSix()); + s.setTestValueSeven(StringUtils.isNotBlank(s.getTestValueSeven()) ? s.getTestValueSeven() + unit : s.getTestValueSeven()); + s.setTestValueEight(StringUtils.isNotBlank(s.getTestValueEight()) ? s.getTestValueEight() + unit : s.getTestValueEight()); + s.setTestValueNine(StringUtils.isNotBlank(s.getTestValueNine()) ? s.getTestValueNine() + unit : s.getTestValueNine()); + s.setTestValueTen(StringUtils.isNotBlank(s.getTestValueTen()) ? s.getTestValueTen() + unit : s.getTestValueTen()); + s.setAverageValue(StringUtils.isNotBlank(s.getAverageValue()) ? s.getAverageValue() + unit : s.getAverageValue()); + s.setTestValueOneDate(StringUtils.isNotBlank(s.getTestValueOneDate()) ? DateUtil.formatChineseDate(DateUtil.parseDate(s.getTestValueOneDate()), false, false) : s.getTestValueOneDate()); + s.setTestValueTwoDate(StringUtils.isNotBlank(s.getTestValueTwoDate()) ? DateUtil.formatChineseDate(DateUtil.parseDate(s.getTestValueTwoDate()), false, false) : s.getTestValueTwoDate()); + s.setTestValueThreeDate(StringUtils.isNotBlank(s.getTestValueThreeDate()) ? DateUtil.formatChineseDate(DateUtil.parseDate(s.getTestValueThreeDate()), false, false) : s.getTestValueThreeDate()); + s.setTestValueFourDate(StringUtils.isNotBlank(s.getTestValueFourDate()) ? DateUtil.formatChineseDate(DateUtil.parseDate(s.getTestValueFourDate()), false, false) : s.getTestValueFourDate()); + s.setTestValueFourDate(StringUtils.isNotBlank(s.getTestValueFourDate()) ? DateUtil.formatChineseDate(DateUtil.parseDate(s.getTestValueFourDate()), false, false) : s.getTestValueFourDate()); + s.setTestValueFiveDate(StringUtils.isNotBlank(s.getTestValueFiveDate()) ? DateUtil.formatChineseDate(DateUtil.parseDate(s.getTestValueFiveDate()), false, false) : s.getTestValueFiveDate()); + s.setTestValueSixDate(StringUtils.isNotBlank(s.getTestValueSixDate()) ? DateUtil.formatChineseDate(DateUtil.parseDate(s.getTestValueSixDate()), false, false) : s.getTestValueSixDate()); + s.setLessThanValue(s.getLessThan() == 1 ? "合格" : "不合格"); } /** @@ -155,11 +273,11 @@ List list = new ArrayList<>(); for (BizBusinessDeviceMeasureDataSignalGenerator signalGenerator : request.getMeasureDataSignalGeneratorList()) { - BizBusinessDeviceMeasureDataSignalGenerator generator = (BizBusinessDeviceMeasureDataSignalGenerator) BeanUtils.cloneBean(signalGenerator); + BizBusinessDeviceMeasureDataSignalGenerator generator = (BizBusinessDeviceMeasureDataSignalGenerator) BeanUtils.cloneBean(signalGenerator); generator.applyStrategyBasedOnDataType(); list.add(generator); } - readyForSignalGenerator(map,list); + readyForSignalGenerator(map, list); replaceSlash(map); List customTemplateUrls = new ArrayList<>(); @@ -180,7 +298,7 @@ } log.debug("certificate after------------{}", wordUrl); return urlList; - }catch (Exception ex){ + } catch (Exception ex) { log.debug("doCreateCertificateFile Exception is------------{}", ex); throw new BusinessException(BusinessExceptionEnum.MEASURE_APPROVAL_UPDATE_FAILED); }