From 88b4f398111e6ca81efa7dee369112020dd38557 Mon Sep 17 00:00:00 2001
From: zhuo <2089219845@qq.com>
Date: 星期六, 22 二月 2025 14:03:26 +0800
Subject: [PATCH] 设备使用记录移植
---
cnas-device/src/main/java/com/ruoyi/device/mapper/DeviceRecordMapper.java | 37 ++++
cnas-device/src/main/java/com/ruoyi/device/pojo/DeviceRecord.java | 70 +++++++
cnas-device/src/main/java/com/ruoyi/device/service/DeviceRecordService.java | 31 +++
cnas-device/src/main/resources/mapper/DeviceTraceabilityManagementDetailsMapper.xml | 4
cnas-device/src/main/resources/mapper/InsOrderDeviceRecordMapper.xml | 50 +++++
cnas-device/src/main/java/com/ruoyi/device/controller/DeviceExternalApplyController.java | 84 +++++++++
cnas-device/src/main/java/com/ruoyi/device/dto/DeviceRecordDto.java | 14 +
cnas-device/src/main/java/com/ruoyi/device/service/impl/DeviceRecordServiceImpl.java | 132 ++++++++++++++
cnas-device/src/main/java/com/ruoyi/device/excel/DeviceRecordExportWord.java | 28 +++
cnas-device/src/main/java/com/ruoyi/device/controller/DeviceRecordController.java | 63 +++++++
10 files changed, 511 insertions(+), 2 deletions(-)
diff --git a/cnas-device/src/main/java/com/ruoyi/device/controller/DeviceExternalApplyController.java b/cnas-device/src/main/java/com/ruoyi/device/controller/DeviceExternalApplyController.java
new file mode 100644
index 0000000..88518a7
--- /dev/null
+++ b/cnas-device/src/main/java/com/ruoyi/device/controller/DeviceExternalApplyController.java
@@ -0,0 +1,84 @@
+package com.ruoyi.device.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.domain.Result;
+import com.ruoyi.device.pojo.DeviceExternalApply;
+import com.ruoyi.device.service.DeviceExternalApplyService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.Map;
+
+/**
+ * <p>
+ * 鍒╃敤澶栭儴璁惧鐢宠琛� 鍓嶇鎺у埗鍣�
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2024-12-17 10:28:43
+ */
+@Api(tags = "鍒╃敤澶栭儴璁惧鐢宠琛�")
+@AllArgsConstructor
+@RestController
+@RequestMapping("/deviceExternalApply")
+public class DeviceExternalApplyController {
+
+ private DeviceExternalApplyService deviceExternalApplyService;
+
+
+ /**
+ * 鍒╃敤澶栭儴璁惧鐢宠鍒楄〃
+ * @return
+ */
+ @ApiOperation(value = "鍒╃敤澶栭儴璁惧鐢宠鍒楄〃")
+ @GetMapping("/pageDeviceExternalApply")
+ public Result<IPage<DeviceExternalApply>> pageDeviceExternalApply(Page page, DeviceExternalApply deviceExternalApply) throws Exception {
+ return Result.success(deviceExternalApplyService.pageDeviceExternalApply(page, deviceExternalApply));
+ }
+
+ /**
+ * 鏌ヨ鍒╃敤澶栭儴璁惧鐢宠
+ * @return
+ */
+ @ApiOperation(value = "鏌ヨ鍒╃敤澶栭儴璁惧鐢宠")
+ @GetMapping("/getDeviceExternalApply")
+ public Result getDeviceExternalApply(Integer externalApplyId){
+ return Result.success(deviceExternalApplyService.getById(externalApplyId));
+ }
+
+ /**
+ * 鍒犻櫎鍒╃敤澶栭儴璁惧鐢宠
+ * @return
+ */
+ @ApiOperation(value = "鍒犻櫎鍒╃敤澶栭儴璁惧鐢宠")
+ @GetMapping("/delDeviceExternalApply")
+ public Result delDeviceExternalApply(Integer externalApplyId){
+ return Result.success(deviceExternalApplyService.removeById(externalApplyId));
+ }
+
+ /**
+ * 鏂板鍒╃敤澶栭儴璁惧鐢宠
+ * @return
+ */
+ @ApiOperation(value = "鏂板鍒╃敤澶栭儴璁惧鐢宠")
+ @PostMapping("/addDeviceExternalApply")
+ public Result addDeviceExternalApply(@RequestBody DeviceExternalApply deviceExternalApply){
+ return Result.success(deviceExternalApplyService.addDeviceExternalApply(deviceExternalApply));
+ }
+
+ /**
+ * 瀵煎嚭鍒╃敤澶栭儴璁惧鐢宠
+ * @param externalApplyId 澶栭儴璁惧鐢宠id
+ * @return
+ */
+ @ApiOperation(value = "瀵煎嚭鍒╃敤澶栭儴璁惧鐢宠")
+ @GetMapping("/exportDeviceExternalApply")
+ public Result exportDeviceExternalApply(Integer externalApplyId, HttpServletResponse response){
+ deviceExternalApplyService.exportDeviceExternalApply(externalApplyId, response);
+ return Result.success();
+ }
+}
diff --git a/cnas-device/src/main/java/com/ruoyi/device/controller/DeviceRecordController.java b/cnas-device/src/main/java/com/ruoyi/device/controller/DeviceRecordController.java
new file mode 100644
index 0000000..250fd42
--- /dev/null
+++ b/cnas-device/src/main/java/com/ruoyi/device/controller/DeviceRecordController.java
@@ -0,0 +1,63 @@
+package com.ruoyi.device.controller;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.domain.Result;
+import com.ruoyi.common.numgen.NumberGenerator;
+import com.ruoyi.device.pojo.DeviceRecord;
+import com.ruoyi.device.service.DeviceRecordService;
+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;
+
+/**
+ * <p>
+ * cnas璁惧浣跨敤璁板綍琛� 鍓嶇鎺у埗鍣�
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2024-09-21 11:06:47
+ */
+@Api(tags = "璁惧浣跨敤璁板綍")
+@RestController
+@RequestMapping("/deviceRecord")
+public class DeviceRecordController {
+ @Autowired
+ private DeviceRecordService deviceRecordService;
+
+ @ApiOperation(value = "澶囦娇鐢ㄨ褰曟煡璇�")
+ @GetMapping("/deviceRecordPage")
+ public Result deviceRecordPage(Integer deviceId, Page page, String sampleCode, String managementNumber) {
+ return Result.success(deviceRecordService.deviceRecordPage(deviceId, page, sampleCode, managementNumber));
+ }
+
+ @ApiOperation(value = "鏂板")
+ @PostMapping("/saveDeviceRecord")
+ public Result saveDeviceRecords(@RequestBody DeviceRecord deviceRecord) {
+ return Result.success(deviceRecordService.save(deviceRecord));
+ }
+
+ /**
+ * 缂栬緫璁惧浣跨敤璁板綍
+ * @param deviceRecord
+ * @return
+ */
+ @ApiOperation(value = "淇敼")
+ @PostMapping("/updateDeviceRecord")
+ public Result updateDeviceRecord(@RequestBody DeviceRecord deviceRecord) {
+ return Result.success(deviceRecordService.updateById(deviceRecord));
+ }
+
+ @DeleteMapping("/deleteDeviceRecord")
+ public Result deleteDeviceRecords(@RequestParam("id") Integer id) {
+ return Result.success(deviceRecordService.removeById(id));
+ }
+
+ @ApiOperation(value = "璁惧浣跨敤璁板綍瀵煎嚭")
+ @GetMapping("/exportUseRecord")
+ public void exportUseRecord(Integer deviceId, String exportDate, HttpServletResponse response){
+ deviceRecordService.exportUseRecord(deviceId, exportDate, response);
+ }
+}
diff --git a/cnas-device/src/main/java/com/ruoyi/device/dto/DeviceRecordDto.java b/cnas-device/src/main/java/com/ruoyi/device/dto/DeviceRecordDto.java
new file mode 100644
index 0000000..1e4226b
--- /dev/null
+++ b/cnas-device/src/main/java/com/ruoyi/device/dto/DeviceRecordDto.java
@@ -0,0 +1,14 @@
+package com.ruoyi.device.dto;
+
+import com.ruoyi.device.pojo.DeviceRecord;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class DeviceRecordDto extends DeviceRecord {
+
+ @ApiModelProperty("璁惧鍚嶇О")
+ private String deviceName;
+ @ApiModelProperty("璁惧缂栧彿")
+ private String managementNumber;
+}
diff --git a/cnas-device/src/main/java/com/ruoyi/device/excel/DeviceRecordExportWord.java b/cnas-device/src/main/java/com/ruoyi/device/excel/DeviceRecordExportWord.java
new file mode 100644
index 0000000..a9505d5
--- /dev/null
+++ b/cnas-device/src/main/java/com/ruoyi/device/excel/DeviceRecordExportWord.java
@@ -0,0 +1,28 @@
+package com.ruoyi.device.excel;
+
+import com.ruoyi.device.pojo.DeviceRecord;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * Author: yuan
+ * Date: 2024-12-10 鏄熸湡浜� 17:19:22
+ * Description:
+ */
+@Data
+public class DeviceRecordExportWord extends DeviceRecord {
+ @ApiModelProperty("浣跨敤鍓�0浠h〃涓嶆甯�1浠h〃姝e父")
+ private String useBeforeString;
+
+ @ApiModelProperty("浣跨敤鍚�0浠h〃涓嶆甯�1浠h〃姝e父")
+ private String useAfterString;
+
+ @ApiModelProperty("鎿嶄綔鏃堕棿 String yyyy-MM-dd")
+ private String operationDate;
+
+ @ApiModelProperty("浣跨敤寮�濮嬫棩鏈� String yyyy-MM-dd \n HH:mm:ss")
+ private String useStartDateString;
+
+ @ApiModelProperty("浣跨敤缁撴潫鏃ユ湡 String yyyy-MM-dd \n HH:mm:ss")
+ private String useEndDateString;
+}
diff --git a/cnas-device/src/main/java/com/ruoyi/device/mapper/DeviceRecordMapper.java b/cnas-device/src/main/java/com/ruoyi/device/mapper/DeviceRecordMapper.java
new file mode 100644
index 0000000..f2a4e58
--- /dev/null
+++ b/cnas-device/src/main/java/com/ruoyi/device/mapper/DeviceRecordMapper.java
@@ -0,0 +1,37 @@
+package com.ruoyi.device.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.device.dto.DeviceRecordDto;
+import com.ruoyi.device.pojo.DeviceRecord;
+
+import java.util.List;
+
+/**
+ * <p>
+ * cnas璁惧浣跨敤璁板綍琛� Mapper 鎺ュ彛
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2024-09-21 11:06:47
+ */
+public interface DeviceRecordMapper extends BaseMapper<DeviceRecord> {
+
+ IPage<DeviceRecordDto> deviceRecordPage(Integer deviceId, Page page, String sampleCode, String managementNumber, Integer userId);
+
+
+ /**
+ * 鏌ヨ鏈~鍐欑殑璁惧
+ * @return
+ */
+ List<DeviceRecordDto> selectNotFilled();
+
+ /**
+ * 鏌ヨ瀵煎嚭璁惧浣跨敤璁板綍
+ * @param deviceId
+ * @param exportDate
+ * @return
+ */
+ List<DeviceRecord> selectExportList(Integer deviceId, String exportDate);
+}
diff --git a/cnas-device/src/main/java/com/ruoyi/device/pojo/DeviceRecord.java b/cnas-device/src/main/java/com/ruoyi/device/pojo/DeviceRecord.java
new file mode 100644
index 0000000..dae2f66
--- /dev/null
+++ b/cnas-device/src/main/java/com/ruoyi/device/pojo/DeviceRecord.java
@@ -0,0 +1,70 @@
+package com.ruoyi.device.pojo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * cnas璁惧浣跨敤璁板綍琛�
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2024-09-21 11:06:47
+ */
+@Getter
+@Setter
+@TableName("device_record")
+@ApiModel(value = "DeviceRecord瀵硅薄", description = "cnas璁惧浣跨敤璁板綍琛�")
+public class DeviceRecord implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
+ private Integer deviceId;
+
+ @ApiModelProperty("璁㈠崟id")
+ private Integer insOrderId;
+
+ @ApiModelProperty("鏍峰搧缂栧彿")
+ private String sampleCode;
+
+ @ApiModelProperty("娓╁害")
+ private String temperature;
+
+ @ApiModelProperty("婀垮害")
+ private String humidity;
+
+ @ApiModelProperty("浣跨敤鍓�0寮傚父1鑹ソ")
+ private Integer useBefore;
+
+ @ApiModelProperty("浣跨敤鍚�0寮傚父1鑹ソ")
+ private Integer useAfter;
+
+ @ApiModelProperty("寮傚父鎯呭喌")
+ private String abnormal;
+
+ @ApiModelProperty("浣跨敤浜篿d")
+ private Integer usePersonId;
+
+ @ApiModelProperty("浣跨敤浜�")
+ private String usePerson;
+
+ @ApiModelProperty("澶囨敞")
+ private String remark;
+
+ @ApiModelProperty("浣跨敤寮�濮嬫棩鏈�")
+ private LocalDateTime useStartDate;
+
+ @ApiModelProperty("浣跨敤缁撴潫鏃ユ湡")
+ private LocalDateTime useEndDate;
+}
diff --git a/cnas-device/src/main/java/com/ruoyi/device/service/DeviceRecordService.java b/cnas-device/src/main/java/com/ruoyi/device/service/DeviceRecordService.java
new file mode 100644
index 0000000..3d91d5a
--- /dev/null
+++ b/cnas-device/src/main/java/com/ruoyi/device/service/DeviceRecordService.java
@@ -0,0 +1,31 @@
+package com.ruoyi.device.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.device.dto.DeviceRecordDto;
+import com.ruoyi.device.pojo.DeviceRecord;
+
+import javax.servlet.http.HttpServletResponse;
+
+/**
+ * <p>
+ * cnas璁惧浣跨敤璁板綍琛� 鏈嶅姟绫�
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2024-09-21 11:06:47
+ */
+public interface DeviceRecordService extends IService<DeviceRecord> {
+
+ IPage<DeviceRecordDto> deviceRecordPage(Integer deviceId, Page page, String sampleCode, String managementNumber);
+
+
+ /**
+ * 瀵煎嚭璁惧浣跨敤璁板綍
+ *
+ * @param deviceId
+ * @param response
+ */
+ void exportUseRecord(Integer deviceId, String exportDate, HttpServletResponse response);
+}
diff --git a/cnas-device/src/main/java/com/ruoyi/device/service/impl/DeviceRecordServiceImpl.java b/cnas-device/src/main/java/com/ruoyi/device/service/impl/DeviceRecordServiceImpl.java
new file mode 100644
index 0000000..f507f30
--- /dev/null
+++ b/cnas-device/src/main/java/com/ruoyi/device/service/impl/DeviceRecordServiceImpl.java
@@ -0,0 +1,132 @@
+package com.ruoyi.device.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.deepoove.poi.XWPFTemplate;
+import com.deepoove.poi.config.Configure;
+import com.ruoyi.device.dto.DeviceRecordDto;
+import com.ruoyi.device.excel.DeviceRecordExportWord;
+import com.ruoyi.device.mapper.DeviceMapper;
+import com.ruoyi.device.mapper.DeviceRecordMapper;
+import com.ruoyi.device.pojo.Device;
+import com.ruoyi.device.pojo.DeviceRecord;
+import com.ruoyi.device.service.DeviceRecordService;
+import com.ruoyi.inspect.util.HackLoopTableRenderPolicy;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.net.URLEncoder;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * cnas璁惧浣跨敤璁板綍琛� 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2024-09-21 11:06:47
+ */
+@Service
+public class DeviceRecordServiceImpl extends ServiceImpl<DeviceRecordMapper, DeviceRecord> implements DeviceRecordService {
+ @Resource
+ private DeviceMapper deviceMapper;
+
+ @Override
+ public IPage<DeviceRecordDto> deviceRecordPage(Integer deviceId, Page page, String sampleCode, String managementNumber) {
+ // todo:浠呯湅鑷繁
+ Integer userId = null;
+
+ return baseMapper.deviceRecordPage(deviceId, page, sampleCode, managementNumber, userId);
+ }
+
+
+ @Override
+ public void exportUseRecord(Integer deviceId, String exportDate, HttpServletResponse response) {
+ // 鏌ヨcnas璁惧浣跨敤璁板綍
+ List<DeviceRecord> deviceList = baseMapper.selectExportList(deviceId, exportDate);
+ // 璁惧淇℃伅
+ Device device = deviceMapper.selectById(deviceId);
+
+
+ // 鏌ヨ璁惧灞炰簬鍝釜瀹為獙瀹�
+ String laboratoryName = "瑁呭绾跨紗瀹為獙瀹�";
+
+ // 瑕佹槧灏勫埌word鏁版嵁
+ List<DeviceRecordExportWord> deviceExportList = new ArrayList<>();
+ // deviceExportList 璧嬪��
+ for (DeviceRecord deviceRecord : deviceList) {
+ // 澶勭悊璁惧 寮�濮嬩娇鐢ㄦ椂闂� 鍜� 缁撴潫鏃堕棿
+ String startTime = "";
+ String endTime = "";
+ String operationDate = "";
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm");
+ if (deviceRecord.getUseStartDate() != null) {
+ startTime = deviceRecord.getUseStartDate().format(formatter);
+ endTime = deviceRecord.getUseEndDate().format(formatter);
+ String[] startTimeSplit = startTime.split(" ");
+ String[] endTimeSplit = endTime.split(" ");
+ startTime = startTimeSplit[1];
+ if (startTimeSplit[0].equals(endTimeSplit[0])) {
+ endTime = endTimeSplit[1];
+ } else {
+ endTime = endTimeSplit[0] + '\n' + endTimeSplit[1];
+ }
+ DateTimeFormatter formatter2 = DateTimeFormatter.ofPattern("yyyy.M.d");
+ operationDate = deviceRecord.getUseStartDate().format(formatter2);
+ }
+ // 澶勭悊浣跨敤鍓嶅拰浣跨敤鍚�
+ String useBeforeString = deviceRecord.getUseBefore() == 0? "寮傚父" : "鑹ソ";
+ String useAfterString = deviceRecord.getUseAfter() == 0 ? "寮傚父" : "鑹ソ";
+
+ DeviceRecordExportWord deviceRecordExportWord = new DeviceRecordExportWord();
+ // 杩涜璧嬪��
+ BeanUtils.copyProperties(deviceRecord, deviceRecordExportWord);
+ deviceRecordExportWord.setUseBeforeString(useBeforeString); // 浣跨敤鍓�
+ deviceRecordExportWord.setUseAfterString(useAfterString); // 浣跨敤鍚�
+ deviceRecordExportWord.setOperationDate(operationDate); // 璁惧鎿嶄綔鏃ユ湡
+ deviceRecordExportWord.setUseStartDateString(startTime); // 寮�濮嬫椂闂�
+ deviceRecordExportWord.setUseEndDateString(endTime); // 缁撴潫鏃堕棿
+ deviceExportList.add(deviceRecordExportWord);
+ }
+
+ // 鑾峰彇璺緞
+ InputStream inputStream = this.getClass().getResourceAsStream("/static/word/use-record.docx");
+ Configure configure = Configure.builder()
+ .bind("useRecord", new HackLoopTableRenderPolicy())
+ .build();
+ String deviceName = device.getDeviceName();
+ String managementNumber = device.getManagementNumber();
+ XWPFTemplate template = XWPFTemplate.compile(inputStream, configure).render(
+ new HashMap<String, Object>() {{
+ put("useRecord", deviceExportList);
+ put("deviceName", deviceName);
+ put("managementNumber", managementNumber);
+ put("laboratory", laboratoryName);
+ }});
+
+ try {
+ response.setContentType("application/msword");
+ String fileName = URLEncoder.encode(
+ "浠櫒浣跨敤璁板綍琛�", "UTF-8");
+ response.setHeader("Content-disposition",
+ "attachment;filename=" + fileName + ".docx");
+ OutputStream os = response.getOutputStream();
+ template.write(os);
+ os.flush();
+ os.close();
+ } catch (Exception e) {
+ e.printStackTrace();
+ throw new RuntimeException("瀵煎嚭澶辫触");
+ }
+ }
+
+}
diff --git a/cnas-device/src/main/resources/mapper/DeviceTraceabilityManagementDetailsMapper.xml b/cnas-device/src/main/resources/mapper/DeviceTraceabilityManagementDetailsMapper.xml
index e689b3b..7de51b3 100644
--- a/cnas-device/src/main/resources/mapper/DeviceTraceabilityManagementDetailsMapper.xml
+++ b/cnas-device/src/main/resources/mapper/DeviceTraceabilityManagementDetailsMapper.xml
@@ -1,9 +1,9 @@
<?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.yuanchu.mom.mapper.DeviceTraceabilityManagementDetailsMapper">
+<mapper namespace="com.ruoyi.device.mapper.DeviceTraceabilityManagementDetailsMapper">
<select id="deviceTraceabilityManagementDetailsList"
- resultType="com.yuanchu.mom.dto.DeviceTraceabilityManagementDetailsDto">
+ resultType="com.ruoyi.device.dto.DeviceTraceabilityManagementDetailsDto">
select
dtmd.*,
d.device_name,
diff --git a/cnas-device/src/main/resources/mapper/InsOrderDeviceRecordMapper.xml b/cnas-device/src/main/resources/mapper/InsOrderDeviceRecordMapper.xml
new file mode 100644
index 0000000..1707e9d
--- /dev/null
+++ b/cnas-device/src/main/resources/mapper/InsOrderDeviceRecordMapper.xml
@@ -0,0 +1,50 @@
+<?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.device.mapper.DeviceRecordMapper">
+
+ <select id="deviceRecordPage" resultType="com.ruoyi.device.dto.DeviceRecordDto">
+ select dr.*,
+ d.device_name,
+ d.management_number
+ from device_record dr
+ left join device d on d.id = dr.device_id
+ where 1=1
+ <if test="deviceId != null">
+ and dr.device_id = #{deviceId}
+ </if>
+ <if test="sampleCode != '' and sampleCode != null">
+ and dr.sample_code like concat('%', #{sampleCode}, '%')
+ </if>
+ <if test="managementNumber != '' and managementNumber != null">
+ and d.management_number like concat('%', #{managementNumber}, '%')
+ </if>
+ <if test="userId != null">
+ and dr.use_person_id = #{userId}
+ and dr.use_start_date is null
+ </if>
+ ORDER BY (dr.use_start_date IS NULL) desc , dr.use_start_date DESC
+ </select>
+
+
+ <select id="selectNotFilled" resultType="com.ruoyi.device.dto.DeviceRecordDto">
+ select dr.*,
+ d.device_name,
+ d.management_number
+ from device_record dr
+ left join device d on d.id = dr.device_id
+ where dr.use_start_date is null
+ </select>
+
+ <!-- 鏌ヨ瀵煎嚭璁惧浣跨敤璁板綍 -->
+ <select id="selectExportList" resultType="com.ruoyi.device.dto.DeviceRecordDto">
+ select dr.*
+ from device_record dr
+ where dr.use_start_date is not null
+ <if test="deviceId != null">
+ and dr.device_id = #{deviceId}
+ </if>
+ <if test="exportDate != '' and exportDate != null">
+ and DATE_FORMAT(dr.use_start_date, '%Y-%m') = #{exportDate};
+ </if>
+ </select>
+</mapper>
--
Gitblit v1.9.3