diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java index 9568db6..e29b93a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java @@ -3,10 +3,15 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.casic.missiles.strategy.handler.impl.ElectricalStrategyType; +import com.casic.missiles.strategy.handler.impl.ResistanceStrategyType; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import org.apache.commons.lang3.StringUtils; import java.io.Serializable; +import java.util.HashMap; +import java.util.Map; /** *

@@ -351,7 +356,17 @@ @TableField(exist = false) private String dwstDt; - @ApiModelProperty(value = "标准器编号",dataType = "String") + @ApiModelProperty(value = "标准器编号", dataType = "String") @TableField(exist = false) private String standardizerNo; + + public void applyStrategyBasedOnDataType() { + Map resistanceMap = new HashMap<>(); + resistanceMap.put("2", ResistanceStrategyType.THERMAL_RESISTANCE); + + ResistanceStrategyType resistanceStrategyType = resistanceMap.get(dataCategory); + if (resistanceStrategyType != null) { + resistanceStrategyType.appendAsterisksIfNeeded(this); + } + } } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java index 9568db6..e29b93a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java @@ -3,10 +3,15 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.casic.missiles.strategy.handler.impl.ElectricalStrategyType; +import com.casic.missiles.strategy.handler.impl.ResistanceStrategyType; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import org.apache.commons.lang3.StringUtils; import java.io.Serializable; +import java.util.HashMap; +import java.util.Map; /** *

@@ -351,7 +356,17 @@ @TableField(exist = false) private String dwstDt; - @ApiModelProperty(value = "标准器编号",dataType = "String") + @ApiModelProperty(value = "标准器编号", dataType = "String") @TableField(exist = false) private String standardizerNo; + + public void applyStrategyBasedOnDataType() { + Map resistanceMap = new HashMap<>(); + resistanceMap.put("2", ResistanceStrategyType.THERMAL_RESISTANCE); + + ResistanceStrategyType resistanceStrategyType = resistanceMap.get(dataCategory); + if (resistanceStrategyType != null) { + resistanceStrategyType.appendAsterisksIfNeeded(this); + } + } } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/ResistanceStrategy.java b/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/ResistanceStrategy.java new file mode 100644 index 0000000..4437f2d --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/ResistanceStrategy.java @@ -0,0 +1,17 @@ +package com.casic.missiles.strategy.handler; + +import com.casic.missiles.model.business.BizBusinessDeviceMeasureDataElectricalSafety; +import com.casic.missiles.model.business.BizBusinessDeviceMeasureDataResistanceThermometer; + +/** + * @Author: TuT + * @CreateTime: 2024-03-21 19:25 + * @Description: ResistanceStrategy + */ +public interface ResistanceStrategy { + /** + * + * @param resistanceThermometer + */ + void appendAsterisksIfNeeded(BizBusinessDeviceMeasureDataResistanceThermometer resistanceThermometer); +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java index 9568db6..e29b93a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java @@ -3,10 +3,15 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.casic.missiles.strategy.handler.impl.ElectricalStrategyType; +import com.casic.missiles.strategy.handler.impl.ResistanceStrategyType; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import org.apache.commons.lang3.StringUtils; import java.io.Serializable; +import java.util.HashMap; +import java.util.Map; /** *

@@ -351,7 +356,17 @@ @TableField(exist = false) private String dwstDt; - @ApiModelProperty(value = "标准器编号",dataType = "String") + @ApiModelProperty(value = "标准器编号", dataType = "String") @TableField(exist = false) private String standardizerNo; + + public void applyStrategyBasedOnDataType() { + Map resistanceMap = new HashMap<>(); + resistanceMap.put("2", ResistanceStrategyType.THERMAL_RESISTANCE); + + ResistanceStrategyType resistanceStrategyType = resistanceMap.get(dataCategory); + if (resistanceStrategyType != null) { + resistanceStrategyType.appendAsterisksIfNeeded(this); + } + } } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/ResistanceStrategy.java b/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/ResistanceStrategy.java new file mode 100644 index 0000000..4437f2d --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/ResistanceStrategy.java @@ -0,0 +1,17 @@ +package com.casic.missiles.strategy.handler; + +import com.casic.missiles.model.business.BizBusinessDeviceMeasureDataElectricalSafety; +import com.casic.missiles.model.business.BizBusinessDeviceMeasureDataResistanceThermometer; + +/** + * @Author: TuT + * @CreateTime: 2024-03-21 19:25 + * @Description: ResistanceStrategy + */ +public interface ResistanceStrategy { + /** + * + * @param resistanceThermometer + */ + void appendAsterisksIfNeeded(BizBusinessDeviceMeasureDataResistanceThermometer resistanceThermometer); +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/impl/ResistanceStrategyType.java b/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/impl/ResistanceStrategyType.java new file mode 100644 index 0000000..52a8608 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/impl/ResistanceStrategyType.java @@ -0,0 +1,38 @@ +package com.casic.missiles.strategy.handler.impl; + +import com.casic.missiles.model.business.BizBusinessDeviceMeasureDataResistanceThermometer; +import com.casic.missiles.strategy.handler.ResistanceStrategy; +import org.apache.commons.lang3.StringUtils; + +import java.math.BigDecimal; + +/** + * @Author: TuT + * @CreateTime: 2024-03-21 19:25 + * @Description: ResistanceStrategyType + */ +public enum ResistanceStrategyType implements ResistanceStrategy { + /** + * 测量值 + */ + THERMAL_RESISTANCE { + /** + * @param resistanceThermometer + */ + @Override + public void appendAsterisksIfNeeded(BizBusinessDeviceMeasureDataResistanceThermometer resistanceThermometer) { + if (StringUtils.isNotBlank(resistanceThermometer.getMeasureValue()) + && StringUtils.isNotBlank(resistanceThermometer.getAllowErrorLower()) + && StringUtils.isNotBlank(resistanceThermometer.getAllowErrorUpper()) + && !"/".equals(resistanceThermometer.getAllowErrorLower()) + && !"/".equals(resistanceThermometer.getAllowErrorUpper())) { + BigDecimal measureValue = new BigDecimal(resistanceThermometer.getMeasureValue()); + BigDecimal allowErrorLower = new BigDecimal(resistanceThermometer.getAllowErrorLower()); + BigDecimal allowErrorUpper = new BigDecimal(resistanceThermometer.getAllowErrorUpper()); + if (measureValue.compareTo(allowErrorLower) < 0 || measureValue.compareTo(allowErrorUpper) > 0) { + resistanceThermometer.setMeasureValue(resistanceThermometer.getMeasureValue() + "*"); + } + } + } + }, +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java index 9568db6..e29b93a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BizBusinessDeviceMeasureDataResistanceThermometer.java @@ -3,10 +3,15 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.casic.missiles.strategy.handler.impl.ElectricalStrategyType; +import com.casic.missiles.strategy.handler.impl.ResistanceStrategyType; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import org.apache.commons.lang3.StringUtils; import java.io.Serializable; +import java.util.HashMap; +import java.util.Map; /** *

@@ -351,7 +356,17 @@ @TableField(exist = false) private String dwstDt; - @ApiModelProperty(value = "标准器编号",dataType = "String") + @ApiModelProperty(value = "标准器编号", dataType = "String") @TableField(exist = false) private String standardizerNo; + + public void applyStrategyBasedOnDataType() { + Map resistanceMap = new HashMap<>(); + resistanceMap.put("2", ResistanceStrategyType.THERMAL_RESISTANCE); + + ResistanceStrategyType resistanceStrategyType = resistanceMap.get(dataCategory); + if (resistanceStrategyType != null) { + resistanceStrategyType.appendAsterisksIfNeeded(this); + } + } } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/ResistanceStrategy.java b/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/ResistanceStrategy.java new file mode 100644 index 0000000..4437f2d --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/ResistanceStrategy.java @@ -0,0 +1,17 @@ +package com.casic.missiles.strategy.handler; + +import com.casic.missiles.model.business.BizBusinessDeviceMeasureDataElectricalSafety; +import com.casic.missiles.model.business.BizBusinessDeviceMeasureDataResistanceThermometer; + +/** + * @Author: TuT + * @CreateTime: 2024-03-21 19:25 + * @Description: ResistanceStrategy + */ +public interface ResistanceStrategy { + /** + * + * @param resistanceThermometer + */ + void appendAsterisksIfNeeded(BizBusinessDeviceMeasureDataResistanceThermometer resistanceThermometer); +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/impl/ResistanceStrategyType.java b/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/impl/ResistanceStrategyType.java new file mode 100644 index 0000000..52a8608 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/strategy/handler/impl/ResistanceStrategyType.java @@ -0,0 +1,38 @@ +package com.casic.missiles.strategy.handler.impl; + +import com.casic.missiles.model.business.BizBusinessDeviceMeasureDataResistanceThermometer; +import com.casic.missiles.strategy.handler.ResistanceStrategy; +import org.apache.commons.lang3.StringUtils; + +import java.math.BigDecimal; + +/** + * @Author: TuT + * @CreateTime: 2024-03-21 19:25 + * @Description: ResistanceStrategyType + */ +public enum ResistanceStrategyType implements ResistanceStrategy { + /** + * 测量值 + */ + THERMAL_RESISTANCE { + /** + * @param resistanceThermometer + */ + @Override + public void appendAsterisksIfNeeded(BizBusinessDeviceMeasureDataResistanceThermometer resistanceThermometer) { + if (StringUtils.isNotBlank(resistanceThermometer.getMeasureValue()) + && StringUtils.isNotBlank(resistanceThermometer.getAllowErrorLower()) + && StringUtils.isNotBlank(resistanceThermometer.getAllowErrorUpper()) + && !"/".equals(resistanceThermometer.getAllowErrorLower()) + && !"/".equals(resistanceThermometer.getAllowErrorUpper())) { + BigDecimal measureValue = new BigDecimal(resistanceThermometer.getMeasureValue()); + BigDecimal allowErrorLower = new BigDecimal(resistanceThermometer.getAllowErrorLower()); + BigDecimal allowErrorUpper = new BigDecimal(resistanceThermometer.getAllowErrorUpper()); + if (measureValue.compareTo(allowErrorLower) < 0 || measureValue.compareTo(allowErrorUpper) > 0) { + resistanceThermometer.setMeasureValue(resistanceThermometer.getMeasureValue() + "*"); + } + } + } + }, +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/ResistanceThermometerHandler.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/ResistanceThermometerHandler.java index 4afd900..974accb 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/ResistanceThermometerHandler.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/eqpt/standard/impl/ResistanceThermometerHandler.java @@ -193,12 +193,6 @@ DictCodeUtils.convertDictCodeToName(request); Map map = BeanUtil.beanToMap(request); mapReplace(map); - List equipmentList = bizBusinessDeviceMeasureEquipmentMapper.selectEquipmentListByDataId(request.getDataId()); - if (CollectionUtils.isEmpty(equipmentList)) { - equipmentList = new ArrayList<>(); - equipmentList.add(new MeasureEquipmentInfoDTO()); - } - map.put("equipmentList", equipmentList); readyForCoverParams(map,request.getLabCode()); @@ -207,6 +201,9 @@ switch (request.getItemCategoryName()) { case THERMAL_RESISTANCE: //工业铂铜热电阻 + for (BizBusinessDeviceMeasureDataResistanceThermometer thermometer : resistanceThermometerList) { + thermometer.applyStrategyBasedOnDataType(); + } this.assembleThermalTesistanceParams(resistanceThermometerList, map); break; case THERMOSTATIC_BATH: @@ -422,43 +419,6 @@ map.put("deltaAlpha", deltaAlpha); } - /** - * 封面基本信息的定制化参数 - * - * @param map - * @param measureDataResistanceThermometerList - */ - private void prepareCustomCoverParams(Map map, List measureDataResistanceThermometerList) { - //定制参数 - //初始化方框 - map.put("test", "\uF0A3"); - map.put("calibrate", "\uF0A3"); - map.put("measure", "\uF0A3"); - //选择方框 - switch ((String) map.get("measureCategoryName")) { - case TEST_REPORT: - map.put("test", "\uF052"); - break; - case CALIBRATE_REPORT: - map.put("calibrate", "\uF052"); - break; - case MEASURE_REPORT: - map.put("measure", "\uF052"); - break; - default: - return; - } - //填充有效日期 - if (!ObjectUtils.isEmpty(map.get(MEASURE_TRACE_DATE))) { - String traceDate = (String) map.get(MEASURE_TRACE_DATE); - try { - map.put(MEASURE_TRACE_DATE, new SimpleDateFormat("yyyy年MM月dd日").format(new SimpleDateFormat("yyyy-MM-dd").parse(traceDate))); - } catch (Exception e) { - throw new BusinessException(1500, String.format(traceDate, "检定有效日期,格式不正确")); - } - } - } - @Override public List doCreateCertificateFile(BizBusinessDeviceMeasureApproval request) { try { @@ -470,12 +430,6 @@ DictCodeUtils.convertDictCodeToName(request); Map map = BeanUtil.beanToMap(request); - List equipmentList = bizBusinessDeviceMeasureEquipmentMapper.selectEquipmentListByDataId(request.getDataId()); - if (CollectionUtils.isEmpty(equipmentList)) { - equipmentList = new ArrayList<>(); - equipmentList.add(new MeasureEquipmentInfoDTO()); - } - map.put("equipmentList", equipmentList); readyForCoverParams(map,request.getLabCode());