From 0007e14cccd0df9c08a71037cc2803894a530c86 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期三, 12 三月 2025 15:17:26 +0800
Subject: [PATCH] 设备完善2.0
---
cnas-require/src/main/java/com/ruoyi/requier/pojo/DeviceMetricsCopy.java | 73 ++++++++
cnas-require/src/main/java/com/ruoyi/requier/service/impl/DeviceMetricRecordServiceImpl.java | 20 ++
cnas-require/src/main/java/com/ruoyi/requier/pojo/DeviceMetric.java | 29 +++
cnas-require/src/main/java/com/ruoyi/requier/service/DeviceMetricsCopyService.java | 16 +
cnas-require/src/main/java/com/ruoyi/requier/pojo/DeviceMetricRecord.java | 4
cnas-require/src/main/java/com/ruoyi/requier/service/IDeviceMetricService.java | 7
cnas-device/pom.xml | 37 ++++
cnas-require/src/main/java/com/ruoyi/requier/service/impl/DeviceMetricServiceImpl.java | 11 +
cnas-require/src/main/java/com/ruoyi/requier/controller/DeviceMetricController.java | 35 +++
cnas-require/src/main/java/com/ruoyi/requier/dto/DeviceMetricRecordDto.java | 13 +
cnas-require/src/main/java/com/ruoyi/requier/mapper/DeviceMetricMapper.java | 9 +
cnas-require/src/main/resources/mapper/DeviceMetricRecordMapper.xml | 22 ++
pom.xml | 2
cnas-require/src/main/java/com/ruoyi/requier/service/DeviceMetricRecordService.java | 16 +
cnas-require/src/main/java/com/ruoyi/requier/mapper/DeviceMetricsCopyMapper.java | 16 +
cnas-require/src/main/java/com/ruoyi/requier/service/impl/DeviceMetricsCopyServiceImpl.java | 20 ++
cnas-require/src/main/resources/mapper/DeviceMetricsCopyMapper.xml | 19 ++
cnas-require/src/main/java/com/ruoyi/requier/controller/DeviceMetricRecordController.java | 134 ++++++++++++++
18 files changed, 480 insertions(+), 3 deletions(-)
diff --git a/cnas-device/pom.xml b/cnas-device/pom.xml
new file mode 100644
index 0000000..d3aade0
--- /dev/null
+++ b/cnas-device/pom.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <artifactId>ruoyi</artifactId>
+ <groupId>com.ruoyi</groupId>
+ <version>3.8.9</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>cnas-device</artifactId>
+
+ <dependencies>
+
+ <!--涓氬姟妯″潡-->
+ <dependency>
+ <groupId>com.ruoyi</groupId>
+ <artifactId>inspect-server</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.ruoyi</groupId>
+ <artifactId>ruoyi-system</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>com.ruoyi</groupId>
+ <artifactId>ruoyi-framework</artifactId>
+ </dependency>
+ </dependencies>
+
+ <properties>
+ <maven.compiler.source>8</maven.compiler.source>
+ <maven.compiler.target>8</maven.compiler.target>
+ </properties>
+
+</project>
diff --git a/cnas-require/src/main/java/com/ruoyi/requier/controller/DeviceMetricController.java b/cnas-require/src/main/java/com/ruoyi/requier/controller/DeviceMetricController.java
new file mode 100644
index 0000000..32fc8df
--- /dev/null
+++ b/cnas-require/src/main/java/com/ruoyi/requier/controller/DeviceMetricController.java
@@ -0,0 +1,35 @@
+package com.ruoyi.requier.controller;
+
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.common.core.domain.Result;
+import com.ruoyi.requier.pojo.DeviceMetric;
+import com.ruoyi.requier.service.IDeviceMetricService;
+import lombok.AllArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+@RestController
+@AllArgsConstructor
+@RequestMapping("/deviceMetrics")
+public class DeviceMetricController {
+
+ @Autowired
+ private IDeviceMetricService deviceMetricService;
+
+ @PostMapping("/saveOrUpdateDeviceMetric")
+ public Result create(@RequestBody DeviceMetric deviceMetric) {
+ return Result.success(deviceMetricService.saveOrUpdate(deviceMetric));
+ }
+
+ @GetMapping("/selectDeviceMetric")
+ public Result read(@RequestParam("deviceId") Integer deviceId, @RequestParam("type") String type) {
+ return Result.success(deviceMetricService.list(Wrappers.<DeviceMetric>lambdaQuery()
+ .eq(DeviceMetric::getDeviceId,deviceId)
+ .eq(DeviceMetric::getType,type)));
+ }
+
+ @DeleteMapping("/deleteDeviceMetrics")
+ public Result delete(@RequestParam("id") Integer id) {
+ return Result.success(deviceMetricService.removeById(id));
+ }
+}
diff --git a/cnas-require/src/main/java/com/ruoyi/requier/controller/DeviceMetricRecordController.java b/cnas-require/src/main/java/com/ruoyi/requier/controller/DeviceMetricRecordController.java
new file mode 100644
index 0000000..aac5dae
--- /dev/null
+++ b/cnas-require/src/main/java/com/ruoyi/requier/controller/DeviceMetricRecordController.java
@@ -0,0 +1,134 @@
+package com.ruoyi.requier.controller;
+
+import com.alibaba.excel.EasyExcel;
+import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.domain.Result;
+import com.ruoyi.common.numgen.NumberGenerator;
+import com.ruoyi.common.utils.FileSaveUtil;
+import com.ruoyi.requier.dto.DeviceMetricRecordDto;
+import com.ruoyi.requier.pojo.Device;
+import com.ruoyi.requier.pojo.DeviceMetricRecord;
+import com.ruoyi.requier.pojo.DeviceMetricsCopy;
+import com.ruoyi.requier.service.DeviceMetricRecordService;
+import com.ruoyi.requier.service.DeviceMetricsCopyService;
+import com.ruoyi.requier.service.DeviceService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.List;
+import java.util.Locale;
+
+/**
+ * <p>
+ * 璁惧鏍″噯 - 鏍″噯璁板綍 鍓嶇鎺у埗鍣�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2024-09-27 10:20:01
+ */
+@Api(tags = "璁惧 - 璁惧鏍″噯")
+@RestController
+@RequestMapping("/deviceMetricRecord")
+public class DeviceMetricRecordController {
+
+ @Autowired
+ private DeviceMetricRecordService deviceMetricRecordService;
+
+ @Autowired
+ private DeviceMetricsCopyService deviceMetricsCopyService;
+
+ @Autowired
+ private NumberGenerator<DeviceMetricRecord> numberGenerator;
+
+ @Autowired
+ private DeviceService deviceService;
+
+ @ApiOperation("璁惧鏍″噯鍒嗛〉鏌ヨ")
+ @GetMapping("/deviceMetricRecordPage")
+ public Result deviceMetricRecordPage(@RequestParam("deviceId") Integer deviceId, Page page, @RequestParam("type") String type) {
+ return Result.success(deviceMetricRecordService.page(page, Wrappers.<DeviceMetricRecord>lambdaQuery()
+ .eq(DeviceMetricRecord::getDeviceId, deviceId)
+ .eq(DeviceMetricRecord::getType, type)));
+ }
+
+ @ApiOperation("璁惧鏍″噯 鏂板 鏇存柊")
+ @PostMapping("/addOrUpdateDeviceMetricRecord")
+ public Result addOrUpdateDeviceMetricRecord(@RequestBody DeviceMetricRecordDto deviceMetricRecordDto) {
+ if (ObjectUtils.isEmpty(deviceMetricRecordDto.getProcessNumber())) {
+ String year = new SimpleDateFormat("yy", Locale.CHINESE).format(new Date());
+ String month = new SimpleDateFormat("MM", Locale.CHINESE).format(new Date());
+ String processNumber = numberGenerator.generateNumberWithPrefix(5, "SBJZ" + year + month, DeviceMetricRecord::getProcessNumber);
+ deviceMetricRecordDto.setProcessNumber(processNumber);
+ }
+ deviceMetricRecordService.saveOrUpdate(deviceMetricRecordDto);
+ if (deviceMetricRecordDto.getType().equals("calibrate")) {
+ deviceService.update(Wrappers.<Device>lambdaUpdate()
+ .set(Device::getCalibrationServices,deviceMetricRecordDto.getUnitOfMeasure())
+ .eq(Device::getId,deviceMetricRecordDto.getDeviceId()));
+ }
+ if (CollectionUtils.isNotEmpty(deviceMetricRecordDto.getDeviceMetricsCopyList())) {
+ deviceMetricRecordDto.getDeviceMetricsCopyList().forEach(i -> i.setDeviceMetricsId(deviceMetricRecordDto.getId()));
+ deviceMetricsCopyService.saveOrUpdateBatch(deviceMetricRecordDto.getDeviceMetricsCopyList());
+ }
+ return Result.success();
+ }
+
+ @ApiOperation("璁惧鏍″噯 鍒犻櫎")
+ @DeleteMapping("/deleteDeviceMetricRecord")
+ public Result deleteDeviceMetricRecord(@RequestParam("id") Integer id) {
+ DeviceMetricRecord deviceMetricRecord = deviceMetricRecordService.getById(id);
+ deviceMetricsCopyService.remove(Wrappers.<DeviceMetricsCopy>lambdaQuery()
+ .eq(DeviceMetricsCopy::getDeviceMetricsId, id));
+ // 鍒犻櫎鏂囦欢
+ FileSaveUtil.DeleteFile(deviceMetricRecord.getSystemFileName());
+ boolean b = deviceMetricRecordService.removeById(id);
+ // 淇敼璁惧鐨勬牎鍑嗘満鏋�
+ if (deviceMetricRecord.getType().equals("calibrate")) {
+ List<DeviceMetricRecord> list = deviceMetricRecordService.list(Wrappers.<DeviceMetricRecord>lambdaQuery()
+ .eq(DeviceMetricRecord::getType,"calibrate")
+ .eq(DeviceMetricRecord::getDeviceId, deviceMetricRecord.getDeviceId()));
+ int size = list.size();
+ // 璁剧疆璁惧涓殑鏍″噯鏈烘瀯涓轰笂娆$殑鏈烘瀯
+ deviceService.update(Wrappers.<Device>lambdaUpdate()
+ .set(Device::getCalibrationServices,size == 0 ? null : list.get(size - 1).getUnitOfMeasure())
+ .eq(Device::getId,deviceMetricRecord.getDeviceId()));
+ }
+ return Result.success(b);
+ }
+
+ @ApiOperation("璁惧鏍″噯 鏍″噯鏉$洰鏌ヨ")
+ @GetMapping("/showDeviceMetricsCopy")
+ public Result showDeviceMetricsCopy(@RequestParam("id") Integer id, @RequestParam("type") String type) {
+ return Result.success(deviceMetricsCopyService.list(Wrappers.<DeviceMetricsCopy>lambdaQuery()
+ .eq(DeviceMetricsCopy::getDeviceMetricsId, id)
+ .eq(DeviceMetricsCopy::getType, type)));
+ }
+
+ @GetMapping("/deviceMetricRecordExport")
+ public Result deviceMetricRecordExport(@RequestParam("deviceId") Integer deviceId, @RequestParam("type") String type, HttpServletResponse response) throws IOException {
+ List<DeviceMetricRecord> list = deviceMetricRecordService.page(new Page<>(-1,-1), Wrappers.<DeviceMetricRecord>lambdaQuery()
+ .eq(DeviceMetricRecord::getDeviceId, deviceId)
+ .eq(DeviceMetricRecord::getType, type)).getRecords();
+ list.forEach(i -> i.setStatus(i.getStatus().equals("0yes") ? "鍚堟牸" : "涓嶅悎鏍�"));
+ response.setHeader("requestType", "excel");
+ response.setHeader("Access-Control-Expose-Headers", "requestType");
+ // 璁剧疆鍗曞厓鏍兼牱寮�
+ // 淇濆瓨鍒扮涓�涓猻heet涓�
+ EasyExcel.write(response.getOutputStream())
+ .head(DeviceMetricRecord.class)
+ .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) // 鑷�傚簲鍒楀
+ .sheet()
+ .doWrite(list);
+ return Result.success();
+ }
+}
diff --git a/cnas-require/src/main/java/com/ruoyi/requier/dto/DeviceMetricRecordDto.java b/cnas-require/src/main/java/com/ruoyi/requier/dto/DeviceMetricRecordDto.java
new file mode 100644
index 0000000..1f8493d
--- /dev/null
+++ b/cnas-require/src/main/java/com/ruoyi/requier/dto/DeviceMetricRecordDto.java
@@ -0,0 +1,13 @@
+package com.ruoyi.requier.dto;
+
+import com.ruoyi.requier.pojo.DeviceMetricRecord;
+import com.ruoyi.requier.pojo.DeviceMetricsCopy;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class DeviceMetricRecordDto extends DeviceMetricRecord {
+
+ private List<DeviceMetricsCopy> deviceMetricsCopyList;
+}
diff --git a/cnas-require/src/main/java/com/ruoyi/requier/mapper/DeviceMetricMapper.java b/cnas-require/src/main/java/com/ruoyi/requier/mapper/DeviceMetricMapper.java
new file mode 100644
index 0000000..a3d97e7
--- /dev/null
+++ b/cnas-require/src/main/java/com/ruoyi/requier/mapper/DeviceMetricMapper.java
@@ -0,0 +1,9 @@
+package com.ruoyi.requier.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.requier.pojo.DeviceMetric;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface DeviceMetricMapper extends BaseMapper<DeviceMetric> {
+}
diff --git a/cnas-require/src/main/java/com/ruoyi/requier/mapper/DeviceMetricsCopyMapper.java b/cnas-require/src/main/java/com/ruoyi/requier/mapper/DeviceMetricsCopyMapper.java
new file mode 100644
index 0000000..df794ca
--- /dev/null
+++ b/cnas-require/src/main/java/com/ruoyi/requier/mapper/DeviceMetricsCopyMapper.java
@@ -0,0 +1,16 @@
+package com.ruoyi.requier.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.requier.pojo.DeviceMetricsCopy;
+
+/**
+ * <p>
+ * 璁惧鏍″噯 - 鏍″噯璁板綍 - 鏍″噯鏉$洰 Mapper 鎺ュ彛
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2024-09-27 10:20:11
+ */
+public interface DeviceMetricsCopyMapper extends BaseMapper<DeviceMetricsCopy> {
+
+}
diff --git a/cnas-require/src/main/java/com/ruoyi/requier/pojo/DeviceMetric.java b/cnas-require/src/main/java/com/ruoyi/requier/pojo/DeviceMetric.java
new file mode 100644
index 0000000..d3cfcde
--- /dev/null
+++ b/cnas-require/src/main/java/com/ruoyi/requier/pojo/DeviceMetric.java
@@ -0,0 +1,29 @@
+package com.ruoyi.requier.pojo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+@Data
+@TableName("device_metrics")
+public class DeviceMetric implements Serializable {
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id; //id
+ private Integer deviceId; // 璁惧ID
+ private String measurementParameter; // 璁¢噺鍙傛暟
+ private String rangeOfMeasurement; // 閲忕▼鑼冨洿
+ private String maxPermissibleError; // 鏈�澶у厑璁歌宸�
+ private String judgmentCriteria; // 鍒ゅ畾鏍囧噯
+ private String createdBy; // 鍒涘缓浜�
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime creationTime; // 鍒涘缓鏃堕棿
+
+ @ApiModelProperty("calibrate锛氭牎鍑嗭紱examine锛氭牳鏌�")
+ private String type; // 绫诲瀷
+}
diff --git a/cnas-require/src/main/java/com/ruoyi/requier/pojo/DeviceMetricRecord.java b/cnas-require/src/main/java/com/ruoyi/requier/pojo/DeviceMetricRecord.java
index 2475ec9..c655959 100644
--- a/cnas-require/src/main/java/com/ruoyi/requier/pojo/DeviceMetricRecord.java
+++ b/cnas-require/src/main/java/com/ruoyi/requier/pojo/DeviceMetricRecord.java
@@ -94,8 +94,8 @@
@ApiModelProperty("鍒涘缓鏃堕棿 / 鐧昏鏃ユ湡")
@TableField(fill = FieldFill.INSERT)
@ExcelProperty(value = "鐧昏鏃ユ湡",index = 9)
- @JsonFormat(pattern = "yyyy-MM-dd")
- @DateTimeFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ColumnWidth(20)
private LocalDateTime createTime;
diff --git a/cnas-require/src/main/java/com/ruoyi/requier/pojo/DeviceMetricsCopy.java b/cnas-require/src/main/java/com/ruoyi/requier/pojo/DeviceMetricsCopy.java
new file mode 100644
index 0000000..a1e813c
--- /dev/null
+++ b/cnas-require/src/main/java/com/ruoyi/requier/pojo/DeviceMetricsCopy.java
@@ -0,0 +1,73 @@
+package com.ruoyi.requier.pojo;
+
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 璁惧鏍″噯 - 鏍″噯璁板綍 - 鏍″噯鏉$洰
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2024-09-27 10:20:11
+ */
+@Getter
+@Setter
+@TableName("device_metrics_copy")
+@ApiModel(value = "DeviceMetricsCopy瀵硅薄", description = "璁惧鏍″噯 - 鏍″噯璁板綍 - 鏍″噯鏉$洰")
+@ExcelIgnoreUnannotated
+public class DeviceMetricsCopy implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
+ @ApiModelProperty("璁惧鏍″噯 - 鏍″噯璁板綍id")
+ private Integer deviceMetricsId;
+
+ @ApiModelProperty("璁¢噺鍙傛暟")
+
+ private String measurementParameter;
+
+ @ApiModelProperty("閲忕▼鑼冨洿")
+ private String rangeOfMeasurement;
+
+ @ApiModelProperty("鏈�澶у厑璁歌宸�")
+ private String maxPermissibleError;
+
+ @ApiModelProperty("鍒ゅ畾鏍囧噯")
+ private String judgmentCriteria;
+
+ @ApiModelProperty("鍒涘缓浜�")
+ private String createdBy;
+
+ @ApiModelProperty("鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private LocalDateTime creationTime;
+
+ @ApiModelProperty("鏄惁鏍″噯")
+ private String isCalibration;
+
+ @ApiModelProperty("鍒ゅ畾缁撴灉")
+ private String result;
+
+ @ApiModelProperty("鍗曢」缁撴灉璇存槑")
+ private String singleResultStatement;
+
+ @ApiModelProperty("calibrate锛氭牎鍑嗭紱examine锛氭牳鏌�")
+ private String type;
+}
diff --git a/cnas-require/src/main/java/com/ruoyi/requier/service/DeviceMetricRecordService.java b/cnas-require/src/main/java/com/ruoyi/requier/service/DeviceMetricRecordService.java
new file mode 100644
index 0000000..39d4060
--- /dev/null
+++ b/cnas-require/src/main/java/com/ruoyi/requier/service/DeviceMetricRecordService.java
@@ -0,0 +1,16 @@
+package com.ruoyi.requier.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.requier.pojo.DeviceMetricRecord;
+
+/**
+ * <p>
+ * 璁惧鏍″噯 - 鏍″噯璁板綍 鏈嶅姟绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2024-09-27 10:20:01
+ */
+public interface DeviceMetricRecordService extends IService<DeviceMetricRecord> {
+
+}
diff --git a/cnas-require/src/main/java/com/ruoyi/requier/service/DeviceMetricsCopyService.java b/cnas-require/src/main/java/com/ruoyi/requier/service/DeviceMetricsCopyService.java
new file mode 100644
index 0000000..88d2215
--- /dev/null
+++ b/cnas-require/src/main/java/com/ruoyi/requier/service/DeviceMetricsCopyService.java
@@ -0,0 +1,16 @@
+package com.ruoyi.requier.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.requier.pojo.DeviceMetricsCopy;
+
+/**
+ * <p>
+ * 璁惧鏍″噯 - 鏍″噯璁板綍 - 鏍″噯鏉$洰 鏈嶅姟绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2024-09-27 10:20:11
+ */
+public interface DeviceMetricsCopyService extends IService<DeviceMetricsCopy> {
+
+}
diff --git a/cnas-require/src/main/java/com/ruoyi/requier/service/IDeviceMetricService.java b/cnas-require/src/main/java/com/ruoyi/requier/service/IDeviceMetricService.java
new file mode 100644
index 0000000..c8bb349
--- /dev/null
+++ b/cnas-require/src/main/java/com/ruoyi/requier/service/IDeviceMetricService.java
@@ -0,0 +1,7 @@
+package com.ruoyi.requier.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.requier.pojo.DeviceMetric;
+
+public interface IDeviceMetricService extends IService<DeviceMetric> {
+}
diff --git a/cnas-require/src/main/java/com/ruoyi/requier/service/impl/DeviceMetricRecordServiceImpl.java b/cnas-require/src/main/java/com/ruoyi/requier/service/impl/DeviceMetricRecordServiceImpl.java
new file mode 100644
index 0000000..3e211aa
--- /dev/null
+++ b/cnas-require/src/main/java/com/ruoyi/requier/service/impl/DeviceMetricRecordServiceImpl.java
@@ -0,0 +1,20 @@
+package com.ruoyi.requier.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.requier.mapper.DeviceMetricRecordMapper;
+import com.ruoyi.requier.pojo.DeviceMetricRecord;
+import com.ruoyi.requier.service.DeviceMetricRecordService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 璁惧鏍″噯 - 鏍″噯璁板綍 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2024-09-27 10:20:01
+ */
+@Service
+public class DeviceMetricRecordServiceImpl extends ServiceImpl<DeviceMetricRecordMapper, DeviceMetricRecord> implements DeviceMetricRecordService {
+
+}
diff --git a/cnas-require/src/main/java/com/ruoyi/requier/service/impl/DeviceMetricServiceImpl.java b/cnas-require/src/main/java/com/ruoyi/requier/service/impl/DeviceMetricServiceImpl.java
new file mode 100644
index 0000000..907e618
--- /dev/null
+++ b/cnas-require/src/main/java/com/ruoyi/requier/service/impl/DeviceMetricServiceImpl.java
@@ -0,0 +1,11 @@
+package com.ruoyi.requier.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.requier.mapper.DeviceMetricMapper;
+import com.ruoyi.requier.pojo.DeviceMetric;
+import com.ruoyi.requier.service.IDeviceMetricService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class DeviceMetricServiceImpl extends ServiceImpl<DeviceMetricMapper, DeviceMetric> implements IDeviceMetricService {
+}
diff --git a/cnas-require/src/main/java/com/ruoyi/requier/service/impl/DeviceMetricsCopyServiceImpl.java b/cnas-require/src/main/java/com/ruoyi/requier/service/impl/DeviceMetricsCopyServiceImpl.java
new file mode 100644
index 0000000..1c7f225
--- /dev/null
+++ b/cnas-require/src/main/java/com/ruoyi/requier/service/impl/DeviceMetricsCopyServiceImpl.java
@@ -0,0 +1,20 @@
+package com.ruoyi.requier.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.requier.mapper.DeviceMetricsCopyMapper;
+import com.ruoyi.requier.pojo.DeviceMetricsCopy;
+import com.ruoyi.requier.service.DeviceMetricsCopyService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 璁惧鏍″噯 - 鏍″噯璁板綍 - 鏍″噯鏉$洰 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2024-09-27 10:20:11
+ */
+@Service
+public class DeviceMetricsCopyServiceImpl extends ServiceImpl<DeviceMetricsCopyMapper, DeviceMetricsCopy> implements DeviceMetricsCopyService {
+
+}
diff --git a/cnas-require/src/main/resources/mapper/DeviceMetricRecordMapper.xml b/cnas-require/src/main/resources/mapper/DeviceMetricRecordMapper.xml
new file mode 100644
index 0000000..5b51fbe
--- /dev/null
+++ b/cnas-require/src/main/resources/mapper/DeviceMetricRecordMapper.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.requier.mapper.DeviceMetricRecordMapper">
+
+ <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+ <resultMap id="BaseResultMap" type="com.ruoyi.requier.pojo.DeviceMetricRecord">
+ <id column="id" property="id" />
+ <result column="unit_of_measure" property="unitOfMeasure" />
+ <result column="calibration_date" property="calibrationDate" />
+ <result column="next_calibration_date" property="nextCalibrationDate" />
+ <result column="calculating_apparatus" property="calculatingApparatus" />
+ <result column="standard_range" property="standardRange" />
+ <result column="calibration_standard_uncertainty" property="calibrationStandardUncertainty" />
+ <result column="by_document" property="byDocument" />
+ <result column="certificate_serial_number" property="certificateSerialNumber" />
+ <result column="status" property="status" />
+ <result column="file_name" property="fileName" />
+ <result column="system_file_name" property="systemFileName" />
+ <result column="remark" property="remark" />
+ </resultMap>
+
+</mapper>
diff --git a/cnas-require/src/main/resources/mapper/DeviceMetricsCopyMapper.xml b/cnas-require/src/main/resources/mapper/DeviceMetricsCopyMapper.xml
new file mode 100644
index 0000000..e331c6a
--- /dev/null
+++ b/cnas-require/src/main/resources/mapper/DeviceMetricsCopyMapper.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.requier.mapper.DeviceMetricsCopyMapper">
+
+ <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+ <resultMap id="BaseResultMap" type="com.ruoyi.requier.pojo.DeviceMetricsCopy">
+ <id column="id" property="id" />
+ <result column="measurement_parameter" property="measurementParameter" />
+ <result column="range_of_measurement" property="rangeOfMeasurement" />
+ <result column="max_permissible_error" property="maxPermissibleError" />
+ <result column="judgment_criteria" property="judgmentCriteria" />
+ <result column="created_by" property="createdBy" />
+ <result column="creation_time" property="creationTime" />
+ <result column="is_calibration" property="isCalibration" />
+ <result column="result" property="result" />
+ <result column="single_result_statement" property="singleResultStatement" />
+ </resultMap>
+
+</mapper>
diff --git a/pom.xml b/pom.xml
index e7c41a6..2b980b8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -394,10 +394,10 @@
<module>inspect-server</module>
<module>performance-server</module>
<module>cnas-manage</module>
+ <module>cnas-device</module>
<module>cnas-process</module>
<module>cnas-require</module>
<module>cnas_server</module>
- <module>cnas-device</module>
<module>cnas-personnel</module>
</modules>
<packaging>pom</packaging>
--
Gitblit v1.9.3