From 813f0f6d391b7f24682204c22c059ef69b124fa6 Mon Sep 17 00:00:00 2001 From: yangys <y_ys79@sina.com> Date: 星期一, 30 六月 2025 23:59:15 +0800 Subject: [PATCH] 增加流程与程序关联查询 --- blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProcessProgRefService.java | 104 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 104 insertions(+), 0 deletions(-) diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProcessProgRefService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProcessProgRefService.java new file mode 100644 index 0000000..69cf391 --- /dev/null +++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProcessProgRefService.java @@ -0,0 +1,104 @@ +/** + * BladeX Commercial License Agreement + * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. + * <p> + * Use of this software is governed by the Commercial License Agreement + * obtained after purchasing a license from BladeX. + * <p> + * 1. This software is for development use only under a valid license + * from BladeX. + * <p> + * 2. Redistribution of this software's source code to any third party + * without a commercial license is strictly prohibited. + * <p> + * 3. Licensees may copyright their own code but cannot use segments + * from this software for such purposes. Copyright of this software + * remains with BladeX. + * <p> + * Using this software signifies agreement to this License, and the software + * must not be used for illegal purposes. + * <p> + * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is + * not liable for any claims arising from secondary or illegal development. + * <p> + * Author: Chill Zhuang (bladejava@qq.com) + */ +package org.springblade.mdm.program.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.io.IOUtils; +import org.springblade.core.mp.base.BizServiceImpl; +import org.springblade.core.mp.support.Condition; +import org.springblade.core.oss.OssTemplate; +import org.springblade.core.oss.model.BladeFile; +import org.springblade.mdm.basesetting.machine.MachineService; +import org.springblade.mdm.basesetting.machine.entity.Machine; +import org.springblade.mdm.program.entity.NcNode; +import org.springblade.mdm.program.entity.NcProgram; +import org.springblade.mdm.program.entity.ProcessProgRef; +import org.springblade.mdm.program.entity.ProgramSeq; +import org.springblade.mdm.program.mapper.NcProgramMapper; +import org.springblade.mdm.program.mapper.ProcessProgRefMapper; +import org.springblade.mdm.program.mapper.ProgramSeqMapper; +import org.springblade.mdm.program.vo.NcNodeProgramQueryVO; +import org.springblade.mdm.program.vo.NcProgramUploadVO; +import org.springblade.mdm.program.vo.NcProgramVO; +import org.springblade.mdm.utils.FileContentUtil; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.multipart.MultipartFile; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.StandardCharsets; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.List; + +/** + * 宸ヤ綔娴佹湇鍔″疄鐜扮被 + * + * @author Chill + */ +@Slf4j +@Service +@AllArgsConstructor +public class ProcessProgRefService extends BizServiceImpl<ProcessProgRefMapper, ProcessProgRef> { + + /** + * 鏌ヨ鐜版湁鍥哄寲鐨勭▼搴忥紝鏆傚畾鏉′欢锛氶浂缁勪欢鍙风浉鍚岋紝涓旀槸鍚屼竴鏈哄簥缁� + * @param processInstanceId 娴佺▼瀹炰緥id + * @param programIds 绋嬪簭id + * @return + */ + @Transactional + public void addRelations(String processInstanceId, List<Long> programIds) { + if(programIds == null || programIds.isEmpty()) { + return; + } + + this.lambdaUpdate().eq(ProcessProgRef::getProcessInstanceId, processInstanceId).remove(); + List<ProcessProgRef> entities = new ArrayList<>(); + for (Long programId : programIds) { + ProcessProgRef entity = new ProcessProgRef(); + entity.setProcessInstanceId(processInstanceId); + entity.setNcProgramId(programId); + + entities.add(entity); + } + this.saveBatch(entities); + } + + /** + * 鏌ヨ娴佺▼鍏宠仈鐨勭▼搴廼浜屾爣 + * @param processInstanceId + * @return + */ + public List<NcProgramVO> listByProcess(String processInstanceId) { + return this.getBaseMapper().listByProcess(processInstanceId); + } +} -- Gitblit v1.9.3