package org.springblade.mdm.test; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.mail.MessagingException; import lombok.extern.slf4j.Slf4j; import org.apache.commons.io.IOUtils; import org.springblade.core.tool.api.R; import org.springblade.mdm.basesetting.machine.entity.Machine; import org.springblade.mdm.commons.service.EmailService; import org.springblade.mdm.flow.service.WIthdrawService; import org.springblade.mdm.machinefile.entity.MachineFile; import org.springblade.mdm.program.entity.NcNode; import org.springblade.mdm.program.service.NcNodeService; import org.springblade.mdm.program.service.ProgramAnnotationService; import org.springblade.mdm.task.MachineFileScanTask; import org.springblade.mdm.utils.FileContentUtil; import org.springblade.system.feign.IDictBizClient; import org.springblade.system.pojo.entity.DictBiz; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.List; @Slf4j @RestController @RequestMapping("/test/") @Tag(name = "测试", description = "测试") public class MyTestController { @Autowired private NcNodeService service; @Autowired private MachineFileScanTask machineFileScanTask; @Autowired private ProgramAnnotationService programAnnotationService; @Autowired private IDictBizClient bizDictClient; @Autowired private EmailService mailService; @Autowired private WIthdrawService withdrawService; /** * 新增 */ @GetMapping("/like") @Operation(summary = "like", description = "like") public R like() { try { List nodes = service.lambdaQuery() .likeRight(NcNode::getParentIds,"0,2,").list(); return R.data(nodes); }catch (Exception e) { log.error("同步失败", e);; return R.fail(e.getMessage()); } } /** * 新增 */ @GetMapping("/readline") @Operation(summary = "like", description = "like") public R like(String file,int line) throws IOException { FileInputStream fis = new FileInputStream(file); return R.data(FileContentUtil.readLineAt(fis,line)); } @GetMapping("/scan") @Operation(summary = "test扫描", description = "test扫描") public R scan() throws IOException { Machine machine = new Machine(); machine.setCode("M_01_FN"); machine.setProgReceiveDir("d:/data/machine1/rec"); machineFileScanTask.scanDir(machine, MachineFile.DIR_TYPE_REC); return R.success(); } @GetMapping("/repalce-anno") @Operation(summary = "替换注释", description = "test扫描") public R> repalceAnno() throws IOException { InputStream res; try(FileInputStream fis = new FileInputStream("d:/b.txt");) { res = programAnnotationService.setSendDirAndStatusAnnotation("D:/mysend", "PL", fis,"FANUC"); } List lines = null; if(res!=null) { try(res) { lines = IOUtils.readLines(res, "utf-8"); } } return R.data(lines); } @GetMapping("/dict-biz") @Operation(summary = "biz", description = "test扫描") public R> giz(String code) throws IOException { log.info("mytset中的日志"); return this.bizDictClient.getList (code); } @GetMapping("/sendmail") @Operation(summary = "sendmail", description = "sendmail") public R sendmail(String code) throws IOException, MessagingException { return R.success(); } @GetMapping("/withdraw") public R withdraw(String id) throws IOException, MessagingException { withdrawService.withdraw(id); return R.success(); } }