“linengliang”
2023-10-09 75a376746ef2ef0d19abc134c4fac69c4274a3ca
设备台账修改
已修改4个文件
100 ■■■■■ 文件已修改
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/PrecisionParametersController.java 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/PrecisionParametersTemplateController.java 95 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/PrecisionParametersTemplateDetail.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java
@@ -523,7 +523,8 @@
         queryWrapper.in("equipment_status",statusList);
         IPage<Equipment> pageList = equipmentService.page(page, queryWrapper);
         return Result.OK(pageList);
     }/**
     }
     /**
      * 导入
      * @return
      */
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/PrecisionParametersController.java
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/PrecisionParametersTemplateController.java
@@ -4,10 +4,15 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.constant.CommonConstant;
@@ -15,13 +20,22 @@
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.common.system.query.QueryGenerator;
//import org.jeecg.modules.base.service.IUnitService;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.eam.entity.*;
import org.jeecg.modules.eam.service.*;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -216,5 +230,86 @@
                .collect(Collectors.toList());
        return Result.OK(nums);
    }
    /**
     * 导入
     * @return
     */
    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
    @Transactional(rollbackFor = Exception.class)
    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
        MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
        LoginUser user= (LoginUser) SecurityUtils.getSubject().getPrincipal();
        Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
        String exceptionInfo = "";
        int exceptionNum = 0;
        for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
            MultipartFile file = entity.getValue();
            ImportParams params = new ImportParams();
            params.setNeedSave(true);
            try {
                InputStream fis = file.getInputStream();
                Workbook workbook = new XSSFWorkbook(fis);
                Sheet sheet = workbook.getSheetAt(0);
                PrecisionParametersTemplate precisionParametersTemplate = new PrecisionParametersTemplate();
                Row row1 = sheet.getRow(1);
                Cell cell15 = row1.getCell(5);
                if(ObjectUtils.isNotNull(cell15)&&cell15.getCellType()==CellType.NUMERIC){
                    String num = (int)cell15.getNumericCellValue()+"";
                    precisionParametersTemplate.setNum(num);
                    EquipmentPrecisionParameters equipmentPrecisionParameters = new EquipmentPrecisionParameters();
                }
                for (Row row : sheet) {
                    Cell cell1 = row.getCell(1);
                    if(row.getRowNum()>4){
                    }
                    for (Cell cell : row) {
                        String cellValue = "";
                        if (cell.getCellType() == CellType.STRING) {
                            cellValue = cell.getStringCellValue();
                        } else if (cell.getCellType() == CellType.NUMERIC) {
                            cellValue = String.valueOf(cell.getNumericCellValue());
                        }
                        // 在这里可以根据您的逻辑处理和清理数据
                        System.out.println("Cell Value: " + cellValue);
                    }
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        return Result.error("文件导入失败!");
    }
    // 检查单元格是否在合并单元格范围内
    private boolean isMergedCell(Sheet sheet, Cell cell) {
        for (CellRangeAddress mergedRegion : sheet.getMergedRegions()) {
            if (mergedRegion.isInRange(cell.getRowIndex(), cell.getColumnIndex())) {
                return true;
            }
        }
        return false;
    }
    // 获取合并单元格的值
    private String getMergedCellValue(Sheet sheet, Cell cell) {
        for (CellRangeAddress mergedRegion : sheet.getMergedRegions()) {
            if (mergedRegion.isInRange(cell.getRowIndex(), cell.getColumnIndex())) {
                Row firstRow = sheet.getRow(mergedRegion.getFirstRow());
                Cell firstCell = firstRow.getCell(mergedRegion.getFirstColumn());
                if (firstCell != null) {
                    if (firstCell.getCellType() == CellType.STRING) {
                        return firstCell.getStringCellValue();
                    } else if (firstCell.getCellType() == CellType.NUMERIC) {
                        return String.valueOf(firstCell.getNumericCellValue());
                    }
                }
            }
        }
        return null;
    }
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/PrecisionParametersTemplateDetail.java
@@ -113,6 +113,8 @@
    private Double upper;
    private Double lower;
    private Double actualValue;
    @TableField(exist = false)
    private String precisionParametersUda1;