zss
2025-02-17 087991c76f078defe5eb55d84223021b4199fb3d
设备模块修改bug
已修改12个文件
81 ■■■■■ 文件已修改
cnas-personnel/src/main/java/com/yuanchu/mom/controller/PersonBasicInfoController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceBorrowController.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceStateController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cnas-server/src/main/java/com/yuanchu/mom/pojo/DeviceBorrow.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cnas-server/src/main/java/com/yuanchu/mom/pojo/DeviceMetricRecord.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cnas-server/src/main/java/com/yuanchu/mom/pojo/Document.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceMaintenancePlanServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceRecordServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
cnas-server/src/main/resources/static/word/device-calibration-plan.docx 补丁 | 查看 | 原始文档 | blame | 历史
cnas-server/src/main/resources/static/word/examine-record.docx 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/com/yuanchu/mom/config/PowerConfig.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/com/yuanchu/mom/utils/FileSaveUtil.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cnas-personnel/src/main/java/com/yuanchu/mom/controller/PersonBasicInfoController.java
@@ -80,7 +80,7 @@
    @PostMapping("/saveCNASFile")
    @ValueAuth
    public Result saveFile(@RequestPart("file") MultipartFile file) {
        String s = FileSaveUtil.StoreFile(file);
        String s = FileSaveUtil.uploadWordFile(file);
        return Result.success("上传成功", s);
    }
cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceBorrowController.java
@@ -3,6 +3,7 @@
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.mom.annotation.ValueAuth;
import com.yuanchu.mom.pojo.DeviceBorrow;
import com.yuanchu.mom.service.DeviceBorrowService;
import com.yuanchu.mom.utils.JackSonUtil;
@@ -32,6 +33,7 @@
    //分页
    @PostMapping("/deviceBorrowPage")
    @ValueAuth
    public Result deviceBorrowPage(@RequestBody Map<String, Object> data) throws Exception {
        Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class);
        DeviceBorrow deviceBorrow = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), DeviceBorrow.class);
@@ -40,24 +42,28 @@
    //查询
    @GetMapping("/getDeviceBorrow")
    @ValueAuth
    public Result getDeviceBorrow(Integer id) {
        return Result.success(deviceBorrowService.getDeviceBorrow(id));
    }
    //新增
    @PostMapping("/saveDeviceBorrow")
    @ValueAuth
    public Result saveDeviceBorrow(@RequestBody DeviceBorrow deviceBorrow) {
        return Result.success(deviceBorrowService.saveDeviceBorrow(deviceBorrow));
    }
    //删除
    @PostMapping("/deleteDeviceBorrow")
    @ValueAuth
    public Result deleteDeviceBorrow(Integer id) {
        return Result.success(deviceBorrowService.removeById(id));
    }
    //导出
    @PostMapping("/deviceBorrowExport")
    @ValueAuth
    public Result deviceBorrowExport(@RequestParam("deviceId") Integer deviceId, HttpServletResponse response) throws Exception {
        List<DeviceBorrow> deviceBorrows = deviceBorrowService.getDeviceBorrowBydeviceId(deviceId);
        response.setHeader("requestType", "excel");
cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceStateController.java
@@ -43,6 +43,7 @@
    private NumberGenerator<DeviceState> numberGenerator;
    @PostMapping("saveDeviceState")
    @ValueAuth
    public Result saveIncidentReportData(@RequestBody DeviceState deviceState) {
        if (ObjectUtils.isEmpty(deviceState.getProcessNumber())) {
            String year = new SimpleDateFormat("yy", Locale.CHINESE).format(new Date());
@@ -55,16 +56,19 @@
    }
    @GetMapping("/getDeviceStatePage")
    @ValueAuth
    public Result getDeviceStatePage(@RequestParam("deviceId") Integer deviceId, Page page, String processNumber){
        return Result.success(deviceStateService.getDeviceStatePage(deviceId, page, processNumber));
    }
    @DeleteMapping("/deleteDeviceState")
    @ValueAuth
    public Result deleteDeviceState(@RequestParam("stateId") Integer stateId){
        return Result.success(deviceStateService.removeById(stateId));
    }
    @PostMapping("/deviceStateExport")
    @ValueAuth
    public Result deviceStateExport(@RequestParam("deviceId") Integer deviceId, String processNumber, HttpServletResponse response) throws Exception {
        IPage<DeviceStateDto> deviceBorrows = deviceStateService.getDeviceStatePage(deviceId, new Page<>(1, -1), processNumber);
        List<DeviceStateExport> studentList  = JSONObject.parseArray(JSON.toJSONString(deviceBorrows.getRecords()), DeviceStateExport.class);
cnas-server/src/main/java/com/yuanchu/mom/pojo/DeviceBorrow.java
@@ -66,6 +66,7 @@
    @ValueTableShow(5)
    @ApiModelProperty("借用日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelProperty(value = "提交日期")
    private Date recipientTime;
cnas-server/src/main/java/com/yuanchu/mom/pojo/DeviceMetricRecord.java
@@ -38,9 +38,11 @@
    private String unitOfMeasure;
    @ApiModelProperty("校准日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date calibrationDate;
    @ApiModelProperty("下次校准日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date nextCalibrationDate;
    @ApiModelProperty("计算器具")
@@ -85,5 +87,6 @@
    private String type;
    @ApiModelProperty("确认时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date confirmDate;
}
cnas-server/src/main/java/com/yuanchu/mom/pojo/Document.java
@@ -4,9 +4,11 @@
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;
@Data
@@ -58,6 +60,13 @@
    private LocalDateTime provideDate;
    /**
     * 归档日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime archiveDate;
    /**
     * 备注
     */
    private String comments;
@@ -88,4 +97,4 @@
    private String fileName;
}
}
cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceMaintenancePlanServiceImpl.java
@@ -94,7 +94,6 @@
        List<DeviceMaintenancePlanDetailsDto> deviceMaintenancePlanDetails = deviceMaintenancePlanDto.getDeviceMaintenancePlanDetails();
        if (CollectionUtils.isNotEmpty(deviceMaintenancePlanDetails)) { // 详情不为空
            List<DeviceMaintenancePlanDetails> collect = deviceMaintenancePlanDetails.stream().map(deviceMaintenancePlanDetail -> { // 遍历详情
                deviceMaintenancePlanDetail.setDeviceId(deviceMaintenancePlanDto.getDeviceId()); // 设备ID
                deviceMaintenancePlanDetail.setMaintenancePlanId(deviceMaintenancePlanDto.getMaintenancePlanId()); // 保养计划ID
                DeviceMaintenancePlanDetails planDetails = new DeviceMaintenancePlanDetails();
                BeanUtils.copyProperties(deviceMaintenancePlanDetail, planDetails);
cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceRecordServiceImpl.java
@@ -68,7 +68,7 @@
        // 查询设备属于哪个实验室
        String laboratoryName = "装备线缆实验室";
        String laboratoryName = "通信产品实验室";
        // 要映射到word数据
        List<DeviceRecordExportWord> deviceExportList = new ArrayList<>();
cnas-server/src/main/resources/static/word/device-calibration-plan.docx
Binary files differ
cnas-server/src/main/resources/static/word/examine-record.docx
Binary files differ
framework/src/main/java/com/yuanchu/mom/config/PowerConfig.java
@@ -4,6 +4,7 @@
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSON;
import com.yuanchu.mom.annotation.ValueAuth;
import com.yuanchu.mom.annotation.ValueClassify;
import com.yuanchu.mom.exception.ErrorException;
import com.yuanchu.mom.exception.MyFileException;
import com.yuanchu.mom.mapper.AuthMapper;
@@ -42,6 +43,11 @@
            Integer userId = Integer.parseInt(obj.get("id") + "");
            int i = authMapper.isPower(userId, h.getMethod().getName());
            if (i == 0){
                // 判断是否有权限注解
                ValueClassify valueClassify = h.getMethodAnnotation(ValueClassify.class);
                if (valueClassify == null) {
                    return HandlerInterceptor.super.preHandle(request, response, handler);
                }
                throw new ErrorException(obj.get("name") + " 无权限访问 " + h.getMethod().getName() + " 接口");
            }
        }
framework/src/main/java/com/yuanchu/mom/utils/FileSaveUtil.java
@@ -14,6 +14,8 @@
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
/**
 * 保存文件工具
@@ -25,10 +27,15 @@
    // 取yml中的路径 + /
    private static String FILE_PATH;
    private static String WORD_URL_PATH;
    private static String[] ALLOWED;
    @Value("${file.path}")
    private String file;
    @Value("${wordUrl}")
    private String wordUrl;
    @Value("${file.allowed}")
    private String[] allowed;
@@ -36,6 +43,11 @@
    @PostConstruct
    public void getFile() {
        FILE_PATH = this.file;
    }
    @PostConstruct
    public void getWordUrl(){
        WORD_URL_PATH = this.wordUrl;
    }
    @PostConstruct
@@ -114,4 +126,37 @@
        }
        return false;
    }
    /**
     * 保存文件到word文件夹里
     * @param file
     * @return
     */
    public static String uploadWordFile(MultipartFile file) {
        String urlString;
        String pathName;
        String path;
        try {
            String contentType = file.getContentType();
            if (contentType != null && contentType.startsWith("image/")) {
                // 是图片
                path = FILE_PATH;
            } else {
                // 是文件
                path = WORD_URL_PATH;
            }
            File realpath = new File(path);
            if (!realpath.exists()) {
                realpath.mkdirs();
            }
            pathName = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyMMddHHmmss")) + "-" + file.getOriginalFilename();
            urlString = realpath + "/" + pathName;
            file.transferTo(new File(urlString));
            return pathName;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }
}