广丰卷烟厂数采质量分析系统
zhuguifei
2026-03-02 80ff784bf60637cd348ae665fc907f7b1e527dd8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
package org.dromara.workflow.mapper;
 
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.workflow.domain.FlowInstanceBizExt;
 
import java.util.List;
 
/**
 * 流程实例业务扩展Mapper接口
 *
 * @author may
 * @date 2025-08-05
 */
public interface FlwInstanceBizExtMapper extends BaseMapperPlus<FlowInstanceBizExt, FlowInstanceBizExt> {
 
    /**
     * 根据 instanceId 保存或更新流程实例业务扩展
     *
     * @param entity 流程实例业务扩展实体
     * @return 操作是否成功
     */
    default int saveOrUpdateByInstanceId(FlowInstanceBizExt entity) {
        // 查询是否存在
        FlowInstanceBizExt exist = this.selectOne(new LambdaQueryWrapper<FlowInstanceBizExt>()
            .eq(FlowInstanceBizExt::getInstanceId, entity.getInstanceId()));
 
        if (ObjectUtil.isNotNull(exist)) {
            // 存在就带上主键更新
            entity.setId(exist.getId());
            return updateById(entity);
        } else {
            // 不存在就插入
            return insert(entity);
        }
    }
 
    /**
     * 按照流程实例ID删除单个流程实例业务扩展
     *
     * @param instanceId 流程实例ID
     * @return 删除的行数
     */
    default int deleteByInstId(Long instanceId) {
        return this.delete(new LambdaQueryWrapper<FlowInstanceBizExt>()
            .eq(FlowInstanceBizExt::getInstanceId, instanceId));
    }
 
    /**
     * 按照流程实例ID批量删除流程实例业务扩展
     *
     * @param instanceIds 流程实例ID列表
     * @return 删除的行数
     */
    default int deleteByInstIds(List<Long> instanceIds) {
        return this.delete(new LambdaQueryWrapper<FlowInstanceBizExt>()
            .in(FlowInstanceBizExt::getInstanceId, instanceIds));
    }
 
}