liding
2025-04-23 bc1b3ee367f7e9aef88fc59647a9631f39eca6b5
cnas-device/src/main/java/com/ruoyi/device/controller/DeviceController.java
@@ -1,11 +1,14 @@
package com.ruoyi.device.controller;
import com.alibaba.excel.EasyExcel;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.domain.Result;
import com.ruoyi.common.utils.LocalDateTimeStringConverters;
import com.ruoyi.device.dto.DataConfigDto;
import com.ruoyi.device.dto.DeviceCollectionDto;
import com.ruoyi.device.dto.DeviceDto;
import com.ruoyi.device.excel.upload.DeviceListener;
import com.ruoyi.device.pojo.DataConfig;
import com.ruoyi.device.pojo.Device;
import com.ruoyi.device.service.DataConfigService;
@@ -21,12 +24,10 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
/**
@@ -52,13 +53,14 @@
    @ApiOperation(value = "查看设备二维码按钮")
    @GetMapping("/showDeviceQrCodeButton")
    public void showDeviceQrCodeButton() { }
    public void showDeviceQrCodeButton() {
    }
    //设备工具明细
    @ApiOperation(value = "查询设备详情列表")
    @GetMapping("/selectDeviceParameter")
    public Result selectDeviceParameter(Page page, DeviceDto itemParameter, Boolean laboratoryNameIsNull){
    public Result selectDeviceParameter(Page page, DeviceDto itemParameter, Boolean laboratoryNameIsNull) {
        return Result.success(deviceService.selectDeviceParameter(page, itemParameter, laboratoryNameIsNull));
    }
@@ -136,8 +138,8 @@
    @ApiOperation(value = "通过项目获取设备列表")
    @GetMapping("/selectDeviceByCategory")
    public Result selectDeviceByCategory(String inspectionItem, String inspectionItemSubclass,String laboratory) {
        return Result.success(deviceService.selectDeviceByCategory(inspectionItem, inspectionItemSubclass,laboratory));
    public Result selectDeviceByCategory(String inspectionItem, String inspectionItemSubclass, String laboratory) {
        return Result.success(deviceService.selectDeviceByCategory(inspectionItem, inspectionItemSubclass, laboratory));
    }
    @ApiOperation(value = "通过设备编号获取设备列表")
@@ -149,8 +151,14 @@
    @ApiOperation("/数采-数据采集")
    @PostMapping("/dataCollection")
    public Result<?> dataAcquisition(HttpServletRequest request,@RequestBody DeviceCollectionDto dto) {
    public Result<?> dataAcquisition(HttpServletRequest request, @RequestBody DeviceCollectionDto dto) {
        return deviceService.dataAcquisition(request, dto);
    }
    @ApiOperation("/数采-数据采集")
    @PostMapping("/dataCollection1")
    public Result<?> dataCollection1(HttpServletRequest request, @RequestBody DeviceCollectionDto dto) {
        return deviceService.dataCollection1(request, dto);
    }
    @ApiOperation(value = "维护数采配置")
@@ -166,6 +174,12 @@
        return dataConfigService.queryDataAcquisitionConfiguration(dataConfig);
    }
    @ApiOperation(value = "查询数采配置")
    @GetMapping("/queryDataAcquisitionConfigurationTwo")
    public Result<?> queryDataAcquisitionConfigurationTwo(DataConfig dataConfig) {
        return dataConfigService.queryDataAcquisitionConfigurationTwo(dataConfig);
    }
    @ApiOperation(value = "删除数采配置")
    @DeleteMapping("/deleteDataAcquisitionConfiguration")
@@ -175,7 +189,6 @@
        dataConfigService.removeBatchByIds(collect);
        return Result.success();
    }
    @ApiOperation(value = "左侧设备树形栏")
@@ -188,7 +201,7 @@
    @ApiOperation(value = "设备档案导出")
    @GetMapping("/exportDeviceFile")
    public void exportDeviceFile(@RequestParam Integer deviceId, HttpServletResponse response) throws Exception {
        deviceService.exportDeviceFile(deviceId,response);
        deviceService.exportDeviceFile(deviceId, response);
    }
    @ApiOperation(value = "仪器设备一览表导出")
@@ -196,4 +209,29 @@
    public void exportEquipmentDetails(HttpServletResponse response) throws Exception {
        deviceService.exportEquipmentDetails(response);
    }
    /**
     * 导入设备
     *
     * @return
     */
    @ApiOperation(value = "导入设备")
    @PostMapping("/importDevice")
    public Result importDevice(@RequestParam("file") MultipartFile file) {
        try {
            EasyExcel.read(file.getInputStream(), Device.class, new DeviceListener(deviceService))
                    .registerConverter(new LocalDateTimeStringConverters())
                    .sheet().doRead();
        } catch (IOException e) {
            // 这里可以根据实际情况进行更完善的错误处理,比如记录日志等
            System.err.println("读取文件时发生错误: " + e.getMessage());
        }
        return Result.success();
    }
    @ApiOperation(value = "判断该设备是否可以数采")
    @GetMapping("/determineWhetherToCollectData")
    public Result<?> determineWhetherToCollectData(@RequestParam(value = "managementNumber", defaultValue = "") String managementNumber, HttpServletRequest request) {
        return deviceService.determineWhetherToCollectData(managementNumber, request);
    }
}