baoshiwei
2025-03-12 f1208474f771a1c233d7425c8ed13fbaa0d521ac
ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwDefinitionService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,79 @@
package org.dromara.workflow.service;
import jakarta.servlet.http.HttpServletResponse;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.warm.flow.orm.entity.FlowDefinition;
import org.dromara.workflow.domain.vo.FlowDefinitionVo;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.util.List;
/**
 * æµç¨‹å®šä¹‰ æœåС层
 *
 * @author may
 */
public interface IFlwDefinitionService {
    /**
     * æŸ¥è¯¢æµç¨‹å®šä¹‰åˆ—表
     *
     * @param flowDefinition å‚æ•°
     * @param pageQuery      åˆ†é¡µ
     * @return è¿”回分页列表
     */
    TableDataInfo<FlowDefinitionVo> queryList(FlowDefinition flowDefinition, PageQuery pageQuery);
    /**
     * æŸ¥è¯¢æœªå‘布的流程定义列表
     *
     * @param flowDefinition å‚æ•°
     * @param pageQuery      åˆ†é¡µ
     * @return è¿”回分页列表
     */
    TableDataInfo<FlowDefinitionVo> unPublishList(FlowDefinition flowDefinition, PageQuery pageQuery);
    /**
     * å‘布流程定义
     *
     * @param id æµç¨‹å®šä¹‰id
     * @return ç»“æžœ
     */
    boolean publish(Long id);
    /**
     * å¯¼å‡ºæµç¨‹å®šä¹‰
     *
     * @param id       æµç¨‹å®šä¹‰id
     * @param response å“åº”
     * @throws IOException å¼‚常
     */
    void exportDef(Long id, HttpServletResponse response) throws IOException;
    /**
     * å¯¼å…¥æµç¨‹å®šä¹‰
     *
     * @param file     æ–‡ä»¶
     * @param category åˆ†ç±»
     * @return ç»“æžœ
     */
    boolean importJson(MultipartFile file, String category);
    /**
     * åˆ é™¤æµç¨‹å®šä¹‰
     *
     * @param ids æµç¨‹å®šä¹‰id
     * @return ç»“æžœ
     */
    boolean removeDef(List<Long> ids);
    /**
     * æ–°å¢žç§Ÿæˆ·æµç¨‹å®šä¹‰
     *
     * @param tenantId ç§Ÿæˆ·id
     */
    void syncDef(String tenantId);
}