栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Springboot整合Activiti-6.0.0 三

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Springboot整合Activiti-6.0.0 三

概要:

        作为一名人类高质量程序员,我对即将到来的国庆节表示无比的激动,也衷心祝福我的祖国生日快乐、繁荣昌盛。

        上一篇博文已经成功整合流程设计器,对于流程的实现,变得轻松可达。本章内容将对Activiti的模型展开探究。

内容:

        1、实现模型列表分页查询并可以根据模型名称模糊匹配

        Activiti引擎提供的7个服务完全可以满足对模型、流程、任务等信息的核查,但是在使用的时候,需要注意其用法,我曾掉进坑里,无法自拔。接下来的所有接口查询中,大鱼只展示实现层的代码。点火,开干!!!

@Override
public JsonResult list(Integer page, Integer size, String modelName) {
    // 获取模型查询实例
    ModelQuery modelQuery = repositoryService.createModelQuery();
    // 根据模型名称模糊查询
    Integer total;
    List models;
    if (StringUtils.isNotEmpty(modelName)) {
        // 获取模型总数
        total = (int) modelQuery.modelNameLike("%" + modelName + "%").count();
        // 获取列表数据
        models = modelQuery
            .modelNameLike("%" + modelName + "%")
            .orderByLastUpdateTime()
            .desc()
            .listPage((page - 1) * size, size);
    } else {
        // 获取模型总数
        total = (int) modelQuery.count();
        // 获取列表数据
        models = modelQuery
            .orderByLastUpdateTime()
            .desc()
            .listPage((page - 1) * size, size);
    }
    return models.size() > 0 ? JsonResult.success(total, models) : JsonResult.success(ResultCode.NO_DATA.getCode(), ResultCode.NO_DATA.getMessage());
}

        (1)第一坑 模糊匹配

        根据模型名称进行模糊匹配时,可以直接使用方法modelNameLike(),但如果直接将关键字填入其中,如:modelNameLike(key),是无法成功进行匹配的(这不知道是不是自己用法不对),将其拼接%符号即可实现此功能,如:modelNameLike("%" + key + "%")。

        (2)第二坑 分页查询

        分页查询可以使用listPage(int firstResult, int maxResults),但此方法中需要注意firstResult参数。原以为该参数就是pageNo(当前页),但不以为然,我错了,参数firstResult表示从第firstResult个起开始查询,而不是第firstResult页,这就造成了理解上的错误,所以实现分页,务必将firstResult参数的值改为:(page - 1)* size,page和size具体为当前页和页面容量。

        (3)时间格式(这不算坑哈~_~)

        该问题只需要在yml中进行简单的配置即可,如下:

spring:
  jackson:
    date-format: yyyy-MM-dd HH:mm:ss
    time-zone: GMT+8

        2、根据模型ID删除模型

public JsonResult delete(String modelId) {
    try {
        // 删除模型
        repositoryService.deleteModel(modelId);
    } catch (Exception e) {
        e.printStackTrace();
        return JsonResult.failure();
    }
    return JsonResult.success();
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/284921.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号