yangys
2025-07-08 ffd5abc74eea1f6ee6433ac11e401aaa57bcc4ab
接口文档描述修改
已修改4个文件
48 ■■■■■ 文件已修改
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/MdmParamController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/NcProgramController.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/MdmProgramImportService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramService.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/MdmParamController.java
@@ -27,7 +27,7 @@
@RestController
@RequestMapping("/system/param/")
@AllArgsConstructor
@Tag(name = "DNC导入", description = "DNC导入接口")
@Tag(name = "MDM系统参数", description = "MDM系统参数")
@Slf4j
public class MdmParamController {
    private final ISysClient sysClient;
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/NcProgramController.java
@@ -127,4 +127,16 @@
    public R<List<NcProgramVO>> send(@Parameter(description="所属节点ID")@RequestParam Long id) {
        return null;//R.data(ncProcessProgRefService.listByProcess(processInstanceId));
    }
    @GetMapping("/send-to-machine-by-nodeid")
    @Operation(summary = "下发", description = "下发给机床设定的目录")
    public R<Void> sendToMachineByNodeId(@Parameter(description = "节点id") Long nodeId) {
        try {
            ncProgramService.sendByBindNodeId(nodeId);
            return R.success();
        }catch(Exception e) {
            log.error("删除文件失败",e);
            return R.fail(e.getMessage());
        }
    }
}
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/MdmProgramImportService.java
@@ -68,6 +68,7 @@
            //设置一个缓存,2小时过期
            bladeRedis.setEx(getFileKey(),bfile.getName(), Duration.ofHours(2));
            String pkgFileName = bladeRedis.get(getFileKey());
            //String fileName = file.getOriginalFilename();
            //InputStream zipFileInputStream = FileExchangeUtil.convertFileToZip(file.getInputStream());
            InputStream zipFileInputStream = file.getInputStream();//test
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramService.java
@@ -31,7 +31,9 @@
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
import org.flowable.engine.*;
import org.springblade.core.mp.base.BizServiceImpl;
import org.springblade.core.mp.support.Condition;
@@ -53,6 +55,7 @@
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.nio.charset.StandardCharsets;
@@ -264,4 +267,34 @@
    public IPage<NcProgramVO> pageQuery(NcNodeProgramQueryVO query) {
        return this.getBaseMapper().pageQuery(Condition.getPage(query),query);
    }
    /**
     * 下发给你机床
     * @param bindNcNodeId 与程序绑定的节点id
     */
    public void sendByBindNodeId(Long bindNcNodeId) throws IOException {
        //NcNode node = this.nodeService.getById(bindNodeId);
        LambdaQueryWrapper<NcProgram> wrapper = new LambdaQueryWrapper<>();
        wrapper.eq(NcProgram::getBindNcNodeId, bindNcNodeId);
        wrapper.eq(NcProgram::getIsLastEdition,1);
        NcProgram prog = this.getOne(wrapper);
        String filePath = prog.getName();
        try(InputStream ins = ossTemplate.statFileStream(prog.getOssName());){
            File targetFile = new File(filePath);
            FileUtils.copyInputStreamToFile(ins, targetFile);
        }
    }
    String getFilePath(NcProgram prog){
        Machine machine = machineService.getByCode(prog.getMachineCode());
        String dirPath = machine.getProgSendDir();
        dirPath = StringUtils.removeEnd(StringUtils.removeEnd(dirPath,"/"),"\\");
        File dirs = new File(dirPath);
        if(!dirs.exists()){
            dirs.mkdirs();
        }
        return dirPath+File.separator+prog.getName();
    }
}